.activation { --ac-gap:20px; width:100%; min-width:0; grid-column:1/-1; }
.activation * { box-sizing:border-box; }
.ac-ip-picker { border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:18px 0; margin:18px 0; min-width:0; }
.ac-ip-picker label { display:grid; gap:8px; font-size:13px; }
.ac-ip-picker select { min-width:0; width:100%; max-width:100%; }
.ac-ip-picker .ac-actions { margin:12px 0; }
.ac-ip-picker small { display:block; color:var(--muted); line-height:1.6; }
.ac-head { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; margin-bottom:22px; flex-wrap:wrap; }
.ac-head h2 { margin:0 0 7px; font-size:24px; }
.activation p { color:var(--muted); line-height:1.6; }
.ac-head p { margin:0; max-width:760px; }
.ac-actions { display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
.activation button { border:1px solid var(--line); background:var(--panel); color:var(--text); padding:10px 14px; min-height:40px; height:auto; line-height:1.4; border-radius:8px; cursor:pointer; }
.activation button.ac-primary { background:var(--accent); border-color:var(--accent); color:white; }
.activation button:disabled { opacity:.5; cursor:not-allowed; }
.ac-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:0 0 24px; }
.ac-stat,.ac-box { background:var(--panel); border:1px solid var(--line); border-radius:12px; padding:20px; min-width:0; }
.ac-stat span { display:block; color:var(--muted); font-size:12px; margin-bottom:7px; }
.ac-stat strong { font-size:25px; }
.ac-tools { display:flex; gap:12px; margin:0 0 18px; flex-wrap:wrap; }
.ac-tools input { flex:1; }
.activation input,.activation select,.activation textarea { background:var(--panel); color:var(--text); border:1px solid var(--line); border-radius:7px; padding:11px 12px; min-width:0; width:100%; font:inherit; min-height:43px; }
.activation textarea { resize:vertical; min-height:90px; }
.activation label { display:flex; flex-direction:column; gap:8px; font-size:13px; min-width:0; }
.activation small { color:var(--muted); line-height:1.5; }
.ac-records { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.ac-record h3 { font-size:16px; margin:10px 0 6px; overflow-wrap:anywhere; }
.ac-record p { margin:5px 0; font-size:13px; overflow-wrap:anywhere; }
.ac-record-top { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.ac-badge { display:inline-block; font-size:11px; font-weight:600; padding:5px 9px; border-radius:20px; background:var(--nav); color:var(--accent); border:1px solid var(--line); }
.ac-badge.ok { color:var(--up); }.ac-badge.warn { color:var(--down); }
.ac-record .ac-actions { padding-top:15px; margin-top:15px; border-top:1px solid var(--line); }
.ac-grid { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr); gap:20px; align-items:start; }
.ac-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.ac-form-grid .ac-full { grid-column:1/-1; }
.ac-box h3 { margin:0 0 16px; font-size:17px; }
.ac-box + .ac-box { margin-top:16px; }
.ac-notice { border-left:3px solid var(--accent); padding:12px 16px; background:var(--nav); border-radius:6px; margin:16px 0; color:var(--text); font-size:13px; line-height:1.6; overflow-wrap:anywhere; }
.ac-error { color:var(--down); margin:12px 0; overflow-wrap:anywhere; }
.ac-empty { padding:45px 20px; text-align:center; border:1px dashed var(--line); border-radius:12px; color:var(--muted); grid-column:1/-1; }
.ac-kv { display:grid; grid-template-columns:140px minmax(0,1fr); gap:10px 16px; margin:0; font-size:13px; }
.ac-kv dt { color:var(--muted); }.ac-kv dd { margin:0; overflow-wrap:anywhere; }
.ac-review { margin-top:20px; border:1px solid var(--accent); }
.ac-review pre,.ac-output { font:12px/1.7 ui-monospace,monospace; white-space:pre-wrap; overflow-wrap:anywhere; background:var(--nav); padding:14px; border-radius:7px; }
.ac-import { margin-bottom:20px; }
.ac-import summary { cursor:pointer; font-weight:600; }.ac-import textarea { margin:14px 0; }
.ac-history { margin-top:24px; }.ac-history summary { cursor:pointer; color:var(--muted); }
.ac-history ul { padding-left:18px; }.ac-history li { margin:10px 0; font-size:12px; color:var(--muted); }
.activation [hidden] { display:none !important; }
@media(max-width:900px) { .ac-grid,.ac-records { grid-template-columns:minmax(0,1fr); }.ac-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }.ac-box { padding:16px; }.activation input,.activation textarea,.activation select { font-size:16px; }.ac-head h2 { font-size:21px; }.ac-kv { grid-template-columns:100px minmax(0,1fr); } }
@media(max-width:520px) { .ac-form-grid { grid-template-columns:minmax(0,1fr); }.ac-stat { padding:15px; }.ac-head .ac-actions { width:100%; }.ac-head .ac-actions button { flex:1; }.ac-tools { flex-direction:column; }.ac-actions button { flex-grow:1; } }

.ac-result-tabs { display:flex; gap:16px; border-bottom:1px solid var(--line); margin:0 0 20px; overflow:auto; }
.ac-result-tabs button { background:none; border:0; border-bottom:2px solid transparent; border-radius:0; flex:0 0 auto; }
.ac-result-tabs button[aria-pressed=true] { color:var(--accent); border-bottom-color:var(--accent); }
.ac-result-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; padding:0 0 20px; border-bottom:1px solid var(--line); margin-bottom:20px; }
.ac-result-stats span { display:block; color:var(--muted); font-size:12px; }.ac-result-stats strong { display:block; margin-top:8px; font-size:24px; }
.ac-result-filters { display:grid; grid-template-columns:minmax(220px,2fr) repeat(2,minmax(160px,1fr)); gap:16px; margin:0 0 18px; }
.ac-result-filters input,.ac-result-filters select { height:auto; min-height:44px; }
.ac-result-table-scroll { max-width:100%; overflow:auto; border:1px solid var(--line); border-radius:6px; }
.ac-result-table { width:100%; border-collapse:collapse; text-align:left; font-size:12px; }
.ac-result-table th { background:var(--nav); color:var(--muted); font-weight:600; white-space:nowrap; }
.ac-result-table th,.ac-result-table td { padding:12px; border-bottom:1px solid var(--line); vertical-align:top; line-height:1.5; }
.ac-result-table td { min-width:135px; max-width:240px; overflow-wrap:anywhere; background:var(--panel); }
.ac-result-table td > span { display:block; }.ac-result-table td > span+span { margin-top:5px; }
.ac-result-table td.ac-ip-cell { white-space:nowrap; }.ac-result-table td:last-child { min-width:90px; }.ac-result-table .ac-result-empty { text-align:center; color:var(--muted); padding:32px; }
.ac-result-pages { display:flex; justify-content:flex-end; align-items:center; flex-wrap:wrap; gap:10px; margin-top:14px; font-size:12px; }
.ac-result-detail { margin-top:26px; border-top:1px solid var(--line); padding-top:24px; scroll-margin-top:90px; }
.ac-result-detail h3 { font-size:19px; margin:0 0 10px; }.ac-result-detail-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }
@media(max-width:900px) { .ac-result-filters { grid-template-columns:repeat(2,minmax(0,1fr)); }.ac-result-filters label:first-child { grid-column:1/-1; }.ac-result-detail-grid { grid-template-columns:minmax(0,1fr); } }
@media(max-width:520px) { .ac-result-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }.ac-result-filters { grid-template-columns:minmax(0,1fr); }.ac-result-tabs { gap:0; }.ac-result-tabs button { font-size:13px; }.ac-result-table td { min-width:125px; } }
