@import "https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;600;700&display=swap";:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f3f4f7;--surface:#fff;--ink:#212121;--line:#e6e8ec;--dim:#6b7280;--dim-2:#9aa0a6;--dim-3:#4b5563;--dim-4:#757575;--primary:#1e88e5;--ok:#43a047;--ok-ink:#2e7031;--ok-line:#c3e2c6;--ok-bg:#f1f8f2;--warn:#fb8c00;--warn-ink:#ea7b0c;--warn-ink-2:#b4650a;--warn-line:#ffd6a0;--warn-bg:#fffcf7;--warn-chip-bg:#fff4e5;--danger:#d32f2f;--danger-strong:#e52222;--danger-ink:#a32020;--danger-line:#f3c2c2;--danger-bg:#fff8f8;--idle:#9aa0a6;--ink-2:#374151;--line-soft:#f1f3f6;--line-strong:#ccc;--line-hover:#d5d9e0;--chip-line:#e0e3e8;--row-hover:#fafbfc;--surface-veil:#fffffff2;--surface-veil-soft:#ffffffc7;--surface-veil-line:#0f141c1f;--map-void:#f0f2f5;--scroll-thumb:#c6cbd3;--scroll-thumb-hover:#aeb4be;--backdrop:#0f141c6b;--shadow-modal:0 24px 60px #0f141c47;--skeleton:#e9ecf1;--skeleton-sheen:#ffffffbf;--radius-card:12px;--radius-item:10px;--radius-row:8px;--header-height:64px;--side-width:372px;--canvas-max-width:1440px}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0e1218;--surface:#161b23;--ink:#e7eaf0;--ink-2:#c7ccd6;--line:#262d38;--dim:#98a1af;--dim-2:#6c7583;--dim-3:#c2c8d2;--dim-4:#8a929e;--primary:#4da3ff;--ok:#4caf50;--ok-ink:#8fd694;--ok-line:#2c4630;--ok-bg:#15241a;--warn:#ffa726;--warn-ink:#ffc377;--warn-ink-2:#ffb25c;--warn-line:#4a3820;--warn-bg:#221a0f;--warn-chip-bg:#33240f;--danger:#ef5350;--danger-strong:#ff5a5a;--danger-ink:#ff9a9a;--danger-line:#4a2626;--danger-bg:#271616;--idle:#6c7583;--line-soft:#202632;--line-strong:#2e3643;--line-hover:#39424f;--chip-line:#2e3643;--row-hover:#1c222b;--surface-veil:#161b23f2;--surface-veil-soft:#161b23d1;--surface-veil-line:#ffffff24;--map-void:#10151c;--scroll-thumb:#39424f;--scroll-thumb-hover:#4a5464;--backdrop:#0000009e;--shadow-modal:0 24px 60px #0000008c;--skeleton:#1e242e;--skeleton-sheen:#ffffff12}*{box-sizing:border-box}body{word-break:keep-all;overflow-wrap:break-word;text-wrap:pretty;background:var(--bg);color:var(--ink);margin:0;font-family:Pretendard,Noto Sans KR,-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,sans-serif;font-size:14px}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}.grow{flex-grow:1}.muted{color:var(--dim-2)}.small{font-size:11px}.strong{color:var(--ink);font-weight:600}.ellip{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card)}.sec-title{letter-spacing:-.2px;font-size:14px;font-weight:700}.empty{color:var(--dim-2);text-align:center;padding:14px 4px;font-size:13px}.dot{border-radius:50%;flex:none;width:10px;height:10px}.pill{color:var(--dim);background:var(--bg);border-radius:5px;padding:2px 7px;font-size:11px;font-weight:600}.badge{white-space:nowrap;border-radius:6px;flex:none;padding:2px 7px;font-size:11px;font-weight:700}.badge-primary{background:var(--primary);color:#fff}.badge-urgent{background:var(--danger-strong);color:#fff;text-align:center;min-width:34px}.badge-warning{background:var(--warn-chip-bg);border:1px solid var(--warn-line);color:var(--warn-ink);text-align:center;min-width:34px}.badge-info{background:var(--ok-bg);border:1px solid var(--ok-line);color:var(--ok-ink);text-align:center;min-width:34px}.badge-danger{background:var(--danger-bg);border:1px solid var(--danger-line);color:var(--danger)}.badge-muted{background:var(--bg);border:1px solid var(--chip-line);color:var(--dim)}header{height:var(--header-height);background:var(--surface);border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:20px;padding:0 20px;display:flex}.brand{align-items:center;gap:10px;display:flex}.brand-name{letter-spacing:-.3px;font-size:16px;font-weight:700}.brand-scope{margin-left:-4px}.divider{background:var(--line);width:1px;height:24px}.site-pill{border:1px solid var(--line);border-radius:var(--radius-row);align-items:center;gap:8px;padding:7px 12px;font-size:14px;font-weight:700;display:flex}.conn{color:var(--dim-3);align-items:center;gap:7px;font-size:13px;font-weight:500;display:flex}.conn i{background:var(--idle);border-radius:50%;width:8px;height:8px;transition:background-color .3s;display:block}.demo-toggle{color:var(--dim);cursor:pointer;align-items:center;gap:6px;font-size:12px;display:flex}.clock{color:var(--dim-3);font-size:13px;font-weight:500}.export-menu{position:relative}.export-menu>summary{border:1px solid var(--line);border-radius:var(--radius-row);padding:5px 10px;list-style:none}.export-menu>summary::-webkit-details-marker{display:none}.export-menu[open]>summary{border-color:var(--primary);color:var(--primary)}.export-menu-list{z-index:50;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-item);width:max-content;max-width:calc(100vw - 32px);box-shadow:var(--shadow-modal);flex-direction:column;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0}.export-menu-item{text-align:left;border-radius:var(--radius-row);color:var(--ink);padding:8px 10px;font-size:13px}.export-menu-item:hover{background:var(--row-hover)}.export-menu-note{color:var(--warn-ink);padding:4px 10px 6px;font-size:11px}.export-menu-caption{color:var(--ink);padding:4px 10px 2px;font-size:12px}.export-menu-period{align-items:center;gap:6px;padding:4px 10px 8px;font-size:12px;display:flex}.export-menu-period input{border:1px solid var(--line);border-radius:var(--radius-row);font:inherit;color:var(--ink);background:var(--surface);padding:4px 6px}.export-menu-item[aria-pressed=true]{background:var(--row-hover);color:var(--primary);font-weight:600}.export-menu-options{color:var(--ink);align-items:center;gap:4px;padding:2px 6px 6px;font-size:13px;display:flex}.export-menu-options label{cursor:pointer;align-items:center;gap:4px;padding:4px;display:flex}.export-menu-options .export-menu-item{padding:4px 10px}.export-menu-submit{border-radius:var(--radius-row);background:var(--primary);color:var(--surface);margin:6px 4px 2px;padding:8px 10px;font-size:13px;font-weight:600}.export-menu-submit:disabled{opacity:.5;cursor:default}main{height:calc(100vh - var(--header-height));min-height:0;max-width:var(--canvas-max-width);align-items:stretch;gap:16px;margin:0 auto;padding:16px;display:flex}.left{flex-direction:column;flex-grow:1;gap:12px;min-width:0;min-height:0;display:flex;container-type:inline-size}.kpis{flex-shrink:0;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(84px,auto);gap:12px;display:grid}@container (width<=700px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}.kpi{flex-direction:column;justify-content:center;gap:4px;min-width:0;padding:12px 16px;display:flex}.kpi-label{color:var(--dim);font-size:13px;font-weight:500;transition:color .3s}.kpi-line{flex-wrap:wrap;align-items:baseline;gap:0 6px;display:flex}.kpi-chunk{white-space:nowrap}.kpi-value{letter-spacing:-.5px;font-size:28px;font-weight:700;line-height:1.1;transition:color .3s}.kpi-suffix{color:var(--dim-2);font-size:13px}.kpi.tone-warning{border-color:var(--warn-line);background:var(--warn-bg)}.kpi.tone-warning .kpi-label{color:var(--warn-ink-2)}.kpi.tone-warning .kpi-value{color:var(--warn)}.kpi.tone-danger{border-color:var(--danger-line);background:var(--danger-bg)}.kpi.tone-danger .kpi-label{color:var(--danger-ink)}.kpi.tone-danger .kpi-value{color:var(--danger)}#map{flex-direction:column;flex-grow:1;gap:10px;min-height:0;padding:14px;display:flex}.map-head{flex-shrink:0;align-items:center;gap:12px;display:flex}.map-head>.sec-title{white-space:nowrap;flex:none}.legend{color:var(--dim);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px 14px;font-size:11px;font-weight:500;display:flex}.legend div{align-items:center;gap:5px;display:flex}.legend i{box-sizing:border-box;width:10px;height:10px;display:block}.legend-marker{background:var(--surface);border:2px solid;border-radius:3px}.legend-ring{border:2px dashed var(--dim-2);background:0 0;border-radius:50%}.map-box{border:1px solid var(--line-strong);border-radius:var(--radius-row);background:var(--map-void);isolation:isolate;flex-grow:1;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.plan{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:relative}.plan img{object-fit:contain;filter:brightness(.74)saturate(.78)contrast(.92);-webkit-user-drag:none;-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:100%;display:block}.zone-anchor{width:0;height:0;position:absolute}.zone-anchor>*{position:absolute;top:0;left:0;translate:-50% -50%}.ring{pointer-events:none;border-style:dashed;border-radius:50%;box-shadow:0 0 0 1px #00000047}.ring-beacon{border-width:calc(2px * var(--map-scale,1));background:#1e88e529;border-color:#ffffffd1}.ring-beacon.ring-idle{background:#1e88e50f}.ring-beacon.ring-restricted{background:#d32f2f30;border-color:#d32f2fba}.ring-beacon.ring-restricted:not(.ring-idle){background:#d32f2f54;border-style:solid;border-color:#d32f2f}.ring-detect{border-width:calc(3px * var(--map-scale,1))}.ring-beacon-edge{border-width:calc(2px * var(--map-scale,1));box-shadow:none;background:0 0;border-color:#ffffffd1}.danger-pulse{pointer-events:none;border-style:solid;border-width:calc(3px * var(--map-scale,1));border-radius:50%}.direction-dot{width:calc(20px * var(--map-scale,1));height:calc(20px * var(--map-scale,1));border:calc(3px * var(--map-scale,1)) solid #fff;pointer-events:none;border-radius:50%;box-shadow:0 2px 6px #00000059}.zone-marker{width:calc(44px * var(--map-scale,1));height:calc(44px * var(--map-scale,1));border-radius:calc(10px * var(--map-scale,1));background:var(--surface);border:calc(3px * var(--map-scale,1)) solid var(--primary);justify-content:center;align-items:center;display:flex}.zone-marker svg{width:calc(20px * var(--map-scale,1));height:calc(20px * var(--map-scale,1))}.zone-device-badge{left:50%;bottom:calc(100% + 4px * var(--map-scale,1));white-space:nowrap;background:var(--danger-strong);color:#fff;font-size:max(calc(9px / var(--plan-zoom,1)), calc(10px * var(--map-scale,1)));pointer-events:none;border-radius:4px;padding:1px 6px;font-weight:700;position:absolute;transform:translate(-50%)}.zone-device-badge-register{background:var(--warn-chip-bg);border:1px solid var(--warn-line);color:var(--warn-ink)}.zone-marker.selected{outline-style:solid;outline-width:calc(2px * var(--map-scale,1));outline-offset:calc(4px * var(--map-scale,1))}.zone-name{left:50%;top:calc(26px * var(--map-scale,1));padding:calc(1px * var(--map-scale,1)) calc(6px * var(--map-scale,1));background:var(--surface);font-size:max(calc(9px / var(--plan-zoom,1)), calc(11px * var(--map-scale,1)));white-space:nowrap;border:1.2px solid var(--primary);border-radius:4px;font-weight:700;position:absolute;transform:translate(-50%)}#eventLog{flex-direction:column;flex-shrink:0;gap:6px;height:176px;padding:12px 14px;display:flex;overflow:hidden}.log-head{align-items:center;gap:10px;display:flex}.log-rows{flex-direction:column;flex:auto;min-height:0;display:flex;overflow-y:auto}.log-rows>*{flex-shrink:0}.row{border-radius:var(--radius-row);align-items:center;gap:10px;padding:9px 12px;display:flex}.row-urgent{background:var(--danger-bg)}.row-outlined{border:1px solid var(--line);justify-content:space-between}.row-left{align-items:center;gap:8px;min-width:0;display:flex}.row-right{color:var(--dim);flex:none;align-items:center;gap:10px;font-size:12px;display:flex}.row-selectable{cursor:pointer;background:var(--surface);text-align:left;width:100%;font:inherit;color:inherit}.row-selectable:hover{border-color:var(--line-strong)}.row-selected{border-color:var(--primary);box-shadow:0 0 0 2px #1e88e51f}.route-summary{border-radius:var(--radius-row);border:1px solid var(--line);flex-shrink:0;align-items:center;gap:10px;margin:0 14px 8px;padding:9px 12px;display:flex}.route-summary-swatch{border-radius:2px;flex:none;align-self:stretch;width:4px}.route-summary-body{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.route-summary-title{font-size:13px;font-weight:700}.route-summary-detail{color:var(--dim);font-size:11px;line-height:1.5}.route-summary-close{color:var(--dim);border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:6px;flex:none;padding:3px 8px;font-size:11px;font-weight:600}.log-who{flex:none;width:76px;font-size:14px;font-weight:700}.log-who-unknown{color:var(--dim-2);font-size:13px;font-weight:400}.log-text{color:var(--ink-2);flex:auto;font-size:13px}.log-time{color:var(--dim-4);flex:none;font-size:12px;font-weight:500}#side{width:var(--side-width);flex-direction:column;flex-shrink:0;min-height:0;padding:0;display:flex;overflow:hidden}.tabs{border-bottom:1px solid var(--line);flex-shrink:0;display:flex}.tab{text-align:center;color:var(--dim-2);flex-grow:1;padding:14px 0;font-size:14px;font-weight:600;transition:color .2s;position:relative}.tab.on{color:var(--primary);font-weight:700}.tab-underline{background:var(--primary);height:2px;position:absolute;bottom:-1px;left:0;right:0}.chips{flex-wrap:wrap;flex-shrink:0;gap:6px;padding:12px 14px 8px;display:flex}.list{flex:auto;min-height:0;padding:4px 10px 12px;overflow-y:auto}.list-inner{flex-direction:column;gap:6px;display:flex}.hint{color:var(--dim-2);padding:0 14px 10px;font-size:11px;line-height:1.6}.log-rows,.list{scrollbar-width:thin;scrollbar-color:var(--scroll-thumb) transparent}.log-rows::-webkit-scrollbar{width:6px}.list::-webkit-scrollbar{width:6px}.log-rows::-webkit-scrollbar-track{background:0 0}.list::-webkit-scrollbar-track{background:0 0}.log-rows::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:3px}.list::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:3px}.log-rows::-webkit-scrollbar-thumb:hover{background:var(--scroll-thumb-hover)}.list::-webkit-scrollbar-thumb:hover{background:var(--scroll-thumb-hover)}.worker-name{font-size:14px;font-weight:600}.item{border:1px solid var(--line);border-radius:var(--radius-item);cursor:pointer;flex-direction:column;gap:7px;padding:11px 12px;transition:border-color .3s,background-color .3s;display:flex}.item:hover{background:var(--row-hover)}.item.selected{border-color:var(--primary);box-shadow:0 0 0 2px #1e88e51f}.item.tone-warning{border-color:var(--warn-line);background:var(--warn-bg)}.item.tone-danger{border-color:var(--danger-line);background:var(--danger-bg)}.item-head{flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.item-row{color:var(--dim-3);align-items:center;gap:10px;font-size:12px;display:flex}.zone-title{max-width:110px;font-size:15px;font-weight:700}.dir-line{align-items:center;gap:4px;display:flex}.env-line{align-items:center;gap:5px;display:flex}.dot-sm{border-radius:50%;flex:none;width:7px;height:7px}.expandable{cursor:zoom-in;transition:border-color .2s}.link-action{color:var(--primary);align-items:center;gap:2px;font-size:12px;font-weight:600;display:flex}.modal-backdrop{z-index:100;background:var(--backdrop);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);justify-content:center;align-items:center;padding:32px;display:flex;position:fixed;inset:0}.modal-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);width:min(1080px,100%);max-height:min(78vh,760px);box-shadow:var(--shadow-modal);cursor:default;flex-direction:column;display:flex;overflow:hidden}.modal-head{border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:10px;padding:16px 18px;display:flex}.modal-close{width:30px;height:30px;color:var(--dim);border-radius:8px;justify-content:center;align-items:center;transition:background-color .2s,color .2s;display:flex}.modal-close:hover{background:var(--bg);color:var(--ink)}.modal-filters{flex-shrink:0;gap:6px;padding:12px 18px 10px;display:flex}.modal-filters-kind{flex-wrap:wrap;padding-top:0}.filter-chip{border:1px solid var(--line);color:var(--dim);background:var(--surface);border-radius:999px;padding:5px 12px;font-size:12px;font-weight:600;transition:background-color .18s,color .18s,border-color .18s}.filter-chip:hover{background:var(--bg)}.filter-chip.on{background:var(--primary);border-color:var(--primary);color:#fff}.modal-table-head,.modal-row{grid-template-columns:58px 92px 110px minmax(0,1fr) 176px 78px;align-items:center;gap:12px;display:grid}.modal-table-head{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg);color:var(--dim-2);flex-shrink:0;padding:8px 18px;font-size:11px;font-weight:700}.modal-body{flex:auto;min-height:0;padding:4px 0;overflow-y:auto}.modal-row{color:var(--dim-3);border-bottom:1px solid var(--line-soft);padding:10px 18px;font-size:13px}.modal-row:last-child{border-bottom:none}.modal-row.row-urgent{background:var(--danger-bg)}.modal-row .col-who{color:var(--ink);font-weight:700}.modal-row .col-text{color:var(--ink)}.modal-row .col-time{font-variant-numeric:tabular-nums;color:var(--dim-4);font-size:12px}.modal-row .col-ago{font-size:12px}.kind-tag{white-space:nowrap;border-radius:6px;padding:2px 7px;font-size:11px;font-weight:700;display:inline-block}.kind-anonymous,.kind-neutral{background:var(--bg);border:1px solid var(--chip-line);color:var(--dim)}.kind-identified{background:var(--danger-bg);border:1px solid var(--danger-line);color:var(--danger)}.modal-row .kind-tag{white-space:normal}html:lang(en) .modal-table-head,html:lang(en) .modal-row{grid-template-columns:66px 92px 110px minmax(0,1fr) 176px 78px}html:lang(en) .zone-event{grid-template-columns:66px 84px minmax(0,1fr) auto}.modal-foot{border-top:1px solid var(--line);background:var(--bg);color:var(--dim);flex-shrink:0;padding:12px 18px;font-size:12px}.modal-foot b{color:var(--ink);font-weight:700}.modal-body{scrollbar-width:thin;scrollbar-color:var(--scroll-thumb) transparent}.modal-body::-webkit-scrollbar{width:8px}.modal-body::-webkit-scrollbar-track{background:0 0}.modal-body::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:4px}.modal-body::-webkit-scrollbar-thumb:hover{background:var(--scroll-thumb-hover)}.worker-line{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.zone-workers{left:50%;top:calc(46px * var(--map-scale,1));max-width:max(calc(104px / var(--plan-zoom,1)), calc(168px * var(--map-scale,1)));padding:calc(2px * var(--map-scale,1)) calc(7px * var(--map-scale,1));background:var(--surface-veil);border:1px solid var(--surface-veil-line);font-size:max(calc(10px / var(--plan-zoom,1)), calc(11px * var(--map-scale,1)));color:var(--ink);text-align:center;white-space:normal;word-break:keep-all;border-radius:5px;font-weight:600;line-height:1.35;position:absolute;transform:translate(-50%);box-shadow:0 2px 6px #00000040}.zone-panel{width:min(760px,100%)}.zone-swatch{border-radius:4px;flex:none;width:12px;height:12px}.zone-status{background:var(--line);border-bottom:1px solid var(--line);flex-shrink:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid}.zone-stat{background:var(--surface);flex-direction:column;gap:4px;padding:14px 18px;display:flex}.zone-stat-label{color:var(--dim);font-size:12px;font-weight:500}.zone-stat-value{letter-spacing:-.3px;font-size:18px;font-weight:700}.zone-stat-small{color:var(--dim-3);font-size:14px;font-weight:600}.zone-dir{align-items:center;gap:6px;display:flex}.zone-body{padding:0 0 8px}.zone-section-title{color:var(--dim);padding:14px 18px 8px;font-size:12px;font-weight:700}.zone-worker-list,.zone-event-list{flex-direction:column;gap:6px;padding:0 12px;display:flex}.zone-worker{border:1px solid var(--line);border-radius:var(--radius-item);align-items:center;gap:10px;padding:10px 12px;display:flex}.zone-worker-name{font-size:14px;font-weight:700}.zone-worker-mac{color:var(--dim-2);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.zone-worker-time{color:var(--dim-4);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.zone-worker-ago{text-align:right;min-width:56px;font-size:12px}.zone-event{border-radius:var(--radius-row);color:var(--dim-3);grid-template-columns:44px 84px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 12px;font-size:13px;display:grid}.zone-event-who{color:var(--ink);font-size:13px;font-weight:700}.zone-event-text{color:var(--ink)}.zone-event-time{color:var(--dim-4);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;font-size:12px}@media (width<=900px){main{height:auto;min-height:calc(100vh - var(--header-height));flex-direction:column}.left{min-height:0}#map{flex-grow:0}.map-box{aspect-ratio:var(--plan-aspect,1);max-height:70vh}.map-box:not(.map-geo){min-height:min(280px,70vh)}#side{width:100%}.list{max-height:420px}#eventLog{height:auto}.log-rows{max-height:240px}}@media (width>=901px) and (width<=1279px){:root{--side-width:320px}header{gap:12px;padding:0 14px}main{gap:12px;padding:12px}.left,.kpis{gap:10px}.kpi{padding:10px 12px}.kpi-value{font-size:24px}.map-head{flex-wrap:wrap;row-gap:8px}.legend{justify-content:flex-start}.tab{font-size:13px}}@media (width<=900px){header{height:auto;min-height:var(--header-height);flex-wrap:wrap;gap:8px 14px;padding:10px 16px}.map-head{flex-wrap:wrap;row-gap:8px}.legend{justify-content:flex-start}main{min-height:calc(100dvh - var(--header-height))}}@media (width<=640px){header{height:auto;min-height:var(--header-height);flex-wrap:wrap;gap:8px 12px;padding:10px 14px}.brand-name{font-size:15px}.divider{display:none}.clock{font-size:12px}.site-pill{padding:5px 10px;font-size:13px}main{gap:12px;padding:12px}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi{padding:10px 12px}.kpi-value{font-size:24px}.kpi-label,.kpi-suffix{font-size:12px}#map{padding:10px}.map-box{max-height:none}.map-head{flex-wrap:wrap;gap:6px 10px}.legend{gap:10px}.list{max-height:none}.log-rows{max-height:200px}.modal-backdrop{align-items:flex-end;padding:10px}.modal-panel{border-radius:14px;max-height:88vh}.modal-head{padding:14px}.modal-filters{flex-wrap:wrap;padding:10px 14px 8px}.modal-table-head{display:none}.modal-row{flex-wrap:wrap;align-items:center;gap:6px 8px;padding:12px 14px;display:flex}.modal-row .col-who{width:auto}.modal-row .col-text{white-space:normal;flex:100%}.modal-row .col-time,.modal-row .col-ago{font-size:11px}.zone-status{grid-template-columns:repeat(2,minmax(0,1fr))}.zone-stat{padding:12px 14px}.zone-worker-list,.zone-event-list{padding:0 10px}.zone-worker{flex-wrap:wrap;gap:4px 8px}.zone-worker-mac{flex:100%}.modal-head .sec-title{white-space:nowrap;flex:none}.modal-head .zone-worker-mac{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;overflow:hidden}.zone-event{flex-wrap:wrap;align-items:center;gap:6px 8px;display:flex}.zone-event-text{white-space:normal;flex:100%}.zone-event-time{text-align:left}}@media (width>=901px) and (height<=900px){.kpis{grid-auto-rows:minmax(76px,auto)}.kpi-value{font-size:25px}#eventLog{height:150px}}@media (width>=901px) and (height<=760px){main{gap:10px;padding:12px}.left{gap:10px}.kpis{grid-auto-rows:minmax(68px,auto)}.kpi{padding:8px 14px}.kpi-value{font-size:22px}#eventLog{height:124px}#map{padding:10px}}@media (width>=901px){.map-box{aspect-ratio:var(--plan-aspect,1);width:auto;max-width:100%;height:100%;max-height:calc((100cqw - 30px) / var(--plan-aspect,1));align-self:center;margin-block:auto}}.site-pill{cursor:pointer;transition:background-color .18s,border-color .18s}.site-pill:hover{background:var(--bg);border-color:var(--line-hover)}.site-picker{width:min(520px,100%)}.site-row{text-align:left;border-bottom:1px solid var(--line-soft);align-items:center;gap:10px;width:100%;padding:12px 18px;transition:background-color .15s;display:flex}.site-row:last-child{border-bottom:none}.site-row:hover{background:var(--bg)}.site-row.current{background:#1e88e50f}.site-row-name{font-size:14px;font-weight:700}.site-row-id{color:var(--dim-2);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.map-empty{background:var(--bg);justify-content:center;align-items:center}.map-empty .empty{line-height:1.7}.map-notice{border-radius:var(--radius-row);background:var(--surface-veil);border:1px solid var(--line);color:var(--dim-3);white-space:nowrap;padding:10px 16px;font-size:13px;font-weight:600;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 2px 10px #00000029}.map-box.map-geo{aspect-ratio:auto;background:var(--bg);align-self:stretch;width:100%;max-width:none;height:auto;min-height:360px}@media (width<=900px){.map-box.map-geo{aspect-ratio:4/3}}@media (width>=901px){main:has(.map-geo){height:auto;min-height:calc(100vh - var(--header-height))}main:has(.map-geo) #map{flex-grow:0}main:has(.map-geo) #side{height:calc(100vh - var(--header-height) - 32px);align-self:flex-start;position:sticky;top:16px}.map-box.map-geo{height:clamp(480px, calc(100vh - var(--header-height) - 194px), 920px);flex:none}#map.expanded .map-box.map-geo{flex:auto;height:auto}}.geo-map{isolation:isolate;background:var(--map-void);position:absolute;inset:0}.geo-map-canvas{font:inherit;position:absolute;inset:0}.geo-overlay{pointer-events:none;-webkit-user-select:none;user-select:none;position:absolute;top:0;left:0}.geo-overlay .zone-marker{pointer-events:auto}.geo-overlay .zone-name{font-size:max(calc(10px / var(--plan-zoom,1)), calc(22px * var(--map-scale,1)));padding:0 5px;line-height:1.4;top:calc(100% + 2px)}.geo-overlay .zone-workers{max-width:140px;font-size:max(calc(10px / var(--plan-zoom,1)), calc(20px * var(--map-scale,1)));top:calc(100% + 24px)}.geo-labels-hidden .zone-name,.geo-labels-hidden .zone-workers,.map-box.map-geo .map-notice{z-index:800}.map-notice-foot{top:auto;bottom:12px;transform:translate(-50%)}.route-path{pointer-events:none;width:1px;height:1px;position:absolute;top:0;left:0;overflow:visible}.route-casing{fill:none;stroke:#ffffffd9;stroke-linecap:round;stroke-linejoin:round}.route-line{fill:none;stroke-linecap:round;stroke-linejoin:round}.legend-route{border-radius:2px;height:4px!important}.tile-picker{border:1px solid var(--line);background:var(--surface);border-radius:7px;flex:none;display:flex;overflow:hidden}.tile-option{color:var(--dim);white-space:nowrap;background:0 0;padding:3px 10px;font-size:11px;font-weight:600;transition:background-color .15s,color .15s}.tile-option+.tile-option{border-left:1px solid var(--line)}.tile-option:hover{background:var(--bg)}.tile-option.on{background:var(--primary);color:#fff}.plan{touch-action:none;overflow:hidden}.plan-stage{transform-origin:50%;will-change:transform;transition:transform .18s ease-out;position:absolute;inset:0}.plan.grabbable{cursor:grab}.plan.grabbable:active{cursor:grabbing}.plan.grabbable .plan-stage{transition:none}.plan-zoom{z-index:5;border:1px solid var(--line);background:var(--surface);border-radius:8px;flex-direction:column;display:flex;position:absolute;top:10px;left:10px;overflow:hidden;box-shadow:0 2px 8px #0000001f}.plan-zoom button{width:28px;height:28px;color:var(--ink);background:var(--surface);justify-content:center;align-items:center;font-size:16px;font-weight:700;transition:background-color .15s;display:flex}.plan-zoom button+button{border-top:1px solid var(--line)}.plan-zoom button:hover:not(:disabled){background:var(--bg)}.plan-zoom button:disabled{color:var(--dim-2);opacity:.55;cursor:default}.map-controls{--control-size:40px;--control-radius:8px;--control-ink:#5f6368;--control-ink-hover:#202124;--control-line:#e8eaed;--control-shadow:0 1px 2px #3c40434d, 0 1px 3px 1px #3c404326;z-index:5;flex-direction:column;align-items:center;gap:10px;display:flex;position:absolute;bottom:24px;right:10px}.map-controls-top{top:10px;bottom:auto}.map-control{width:var(--control-size);height:var(--control-size);color:var(--control-ink);background:#fff;flex:none;justify-content:center;align-items:center;transition:color .15s,background-color .15s;display:flex}.map-control:hover{color:var(--control-ink-hover);background:#f8f9fa}.map-control:focus-visible{outline-offset:-2px;outline:2px solid #1a73e8}.map-control-round{box-shadow:var(--control-shadow);color:#1a73e8;border-radius:50%}.map-control-round:hover{color:#174ea6}.map-control-square{border-radius:var(--control-radius);box-shadow:var(--control-shadow)}.map-control-group{border-radius:var(--control-radius);box-shadow:var(--control-shadow);background:#fff;flex-direction:column;display:flex;overflow:hidden}.map-control-group .map-control+.map-control{border-top:1px solid var(--control-line)}#map.expanded{z-index:60;background:var(--surface);border:none;border-radius:0;margin:0;padding:14px 16px 16px;position:fixed;inset:0}#map.expanded .map-box{max-height:none}@keyframes skeleton-sweep{0%{transform:translate(-60%)}to{transform:translate(160%)}}.skeleton-bar,.skeleton-sheet{background:var(--skeleton);border-radius:var(--radius-row);position:relative;overflow:hidden}.skeleton-bar:after,.skeleton-sheet:after{content:"";background:linear-gradient(90deg, transparent, var(--skeleton-sheen), transparent);animation:1.4s ease-in-out infinite skeleton-sweep;position:absolute;inset:0}.map-skeleton{background:var(--bg)}.skeleton-sheet{border-radius:0;position:absolute;inset:0}.skeleton-note{z-index:1;color:var(--dim-2);font-size:13px;font-weight:600;position:relative}.skeleton-row{align-items:center;gap:10px}.skeleton-bar{border-radius:6px;height:11px}.map-veil{z-index:30;background:var(--surface-veil-soft);-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);border-radius:var(--radius-card);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}#map{position:relative}body,.card,header,.row,.item,.modal-panel,.site-row,.map-box,.plan-zoom{transition:background-color .25s,border-color .25s,color .25s}.plan-stage,.geo-overlay,.zone-anchor,.zone-anchor{transition:none}:root[data-theme=dark] .plan img{filter:brightness(.86)saturate(.85)contrast(.95)}.display-mode-picker{border:1px solid var(--line);background:var(--surface);border-radius:7px;flex:none;display:flex;overflow:hidden}.display-mode-option{color:var(--dim);white-space:nowrap;background:0 0;padding:4px 10px;font-size:12px;font-weight:600;transition:background-color .15s,color .15s}.display-mode-option+.display-mode-option{border-left:1px solid var(--line)}.display-mode-option:hover:not(:disabled){background:var(--bg)}.display-mode-option.on{background:var(--primary);color:#fff}.display-mode-option:disabled{opacity:.38;cursor:not-allowed;text-decoration:line-through}.tab-count{color:var(--dim-2);margin-left:2px;font-size:12px;font-weight:600}.tab.on .tab-count{color:var(--primary)}.tab-count.alert{color:var(--danger);font-weight:700}.list-tools{flex-shrink:0;gap:6px;padding:12px 14px 0;display:flex}.search-input{min-width:0;font:inherit;color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-row);background:var(--surface);flex:auto;padding:7px 10px;font-size:13px}.search-input:focus,.sort-select:focus{border-color:var(--primary);outline:2px solid #1e88e540}.sort-select{font:inherit;color:var(--dim-3);border:1px solid var(--line);border-radius:var(--radius-row);background:var(--surface);flex:none;padding:7px 8px;font-size:12px}.inline-badge{vertical-align:1px;margin-left:6px}.route-summary .route-summary-close+.route-summary-close{margin-left:-4px}.row-place{max-width:128px}.row-selectable .worker-name{flex:0 auto;min-width:3.2em}.row-alert{border-color:var(--danger-line);background:var(--danger-bg)}.segment-name{font-size:13px;font-weight:600}.list-section-title{color:var(--dim);padding:14px 2px 4px;font-size:12px;font-weight:700}.anomaly-item{text-align:left;width:100%;font:inherit;color:inherit;background:var(--surface)}.item-time{color:var(--dim-4);font-variant-numeric:tabular-nums;flex:none;font-size:12px}.notice-box{border-radius:var(--radius-row);background:var(--bg);border:1px dashed var(--chip-line);color:var(--dim-3);flex-shrink:0;margin:12px 14px 4px;padding:10px 12px;font-size:12px;line-height:1.6}.layer-toggles{flex:none;gap:10px;display:flex}.layer-toggle{color:var(--dim);cursor:pointer;white-space:nowrap;align-items:center;gap:4px;font-size:11px;font-weight:600;display:flex}.layer-toggle input:disabled+*{opacity:.5;cursor:default}.layer-toggle:has(input:disabled){opacity:.5;cursor:default}.normal-path-casing{fill:none;stroke:#0f141c73;stroke-linecap:round;stroke-linejoin:round}.normal-path{fill:none;stroke-linecap:round;stroke-linejoin:round;opacity:.95}.trail-segment-hit{fill:none;stroke:#0000;pointer-events:stroke;cursor:pointer}.segment-label{fill:#fff;paint-order:stroke;stroke:#0f141cbf;stroke-linejoin:round;pointer-events:none;font-weight:700}.visitor-anchor{width:0;height:0;position:absolute}.visitor-panel{width:min(820px,100%)}.last-signal{border-radius:var(--radius-item);background:var(--bg);border:2px solid;flex-shrink:0;align-items:center;gap:24px;margin:14px 18px 12px;padding:14px 18px;display:flex}.last-signal-main{flex-direction:column;flex:none;gap:2px;display:flex}.last-signal-label{color:var(--dim);font-size:12px;font-weight:700}.last-signal-ago{letter-spacing:-.6px;font-size:30px;font-weight:800;line-height:1.15}.last-signal-time{color:var(--dim-3);font-variant-numeric:tabular-nums;font-size:12px}.last-signal-facts{color:var(--ink);flex:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 18px;min-width:0;font-size:13px;display:grid}.last-signal-facts .muted{margin-right:6px;font-size:12px}.last-signal-heading{align-items:center;gap:4px;display:flex}.timeline{flex-direction:column;padding:0 18px 8px;display:flex}.timeline-row{grid-template-columns:96px 14px minmax(0,1fr);align-items:start;gap:8px;padding:6px 0;display:grid}.timeline-time{color:var(--dim-4);font-variant-numeric:tabular-nums;white-space:nowrap;padding-top:1px;font-size:12px}.timeline-dot{background:var(--route-dot,#8e24aa);border-radius:50%;width:10px;height:10px;margin-top:4px}.timeline-pass .timeline-dot{background:0 0;border:2px solid #8e24aa}.timeline-anomaly .timeline-dot{background:var(--warn)}.timeline-body{flex-direction:column;gap:2px;min-width:0;display:flex}.timeline-title{align-items:center;gap:6px;font-size:13px;font-weight:700;display:flex}.timeline-detail{color:var(--dim-3);font-size:12px}.zone-worker-button,.zone-event-button{text-align:left;width:100%;font:inherit;color:inherit;background:var(--surface)}.zone-worker-button:hover,.zone-event-button:hover{background:var(--row-hover)}@media (width<=640px){.clock{display:none}.kpis{grid-auto-rows:auto}#map .legend{display:none}.tile-option{padding:4px 7px;font-size:11px}.geo-overlay .zone-workers,#map.segment-view .zone-name{display:none}.log-rows .row{flex-wrap:wrap;row-gap:2px}.log-rows .log-who{flex:auto;width:auto}.log-rows .log-text{white-space:normal;flex:100%;order:3}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.map-box.map-geo{min-height:55dvh}.kpi{padding:10px 12px}.kpi-value{font-size:22px}.map-head{flex-wrap:wrap;row-gap:8px}.legend{justify-content:flex-start}.last-signal{flex-direction:column;align-items:flex-start;gap:10px;margin:12px}.last-signal-facts{grid-template-columns:minmax(0,1fr)}.zone-status{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-backdrop{padding:10px}.modal-panel{max-height:92vh}.zone-event{grid-template-columns:44px 72px minmax(0,1fr)}.zone-event-time{grid-column:2/-1}}.segment-view .ring,.segment-view .danger-pulse,.segment-view .direction-dot,.segment-view .zone-workers{display:none}.segment-group .normal-path{opacity:1}.segment-group.selected .normal-path-casing{stroke:#fff}.modal-more{border:1px solid var(--line);border-radius:var(--radius-row);background:var(--surface);width:100%;color:var(--ink);cursor:pointer;margin:8px 0 4px;padding:10px;font-size:13px;font-weight:600;display:block}.modal-more:disabled{cursor:default;opacity:.6}.segment-panel-empty{flex-direction:column;gap:6px;padding:16px 14px;display:flex}.segment-panel-head{border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:8px;padding:14px 14px 10px;display:flex}.segment-directions{flex-direction:column;flex-shrink:0;gap:8px;padding:12px 14px 4px;display:flex}.segment-direction{border:1px solid var(--line);border-radius:var(--radius-row);flex-direction:column;gap:4px;padding:9px 12px;display:flex}.segment-direction-name{flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;font-weight:700;display:flex}.segment-direction-stats{color:var(--dim-3);flex-wrap:wrap;gap:10px;font-size:12px;display:flex}.segment-direction-stats b{color:var(--ink)}.warn-text{color:var(--warn-ink-2);font-weight:600}.search-line{fill:none;stroke-linecap:round;opacity:.55;pointer-events:none}.expectation-block{border-radius:var(--radius-item);border:1px solid var(--line);background:var(--surface);flex-direction:column;flex-shrink:0;gap:6px;margin:0 18px 12px;padding:10px 14px;display:flex}.expectation-block.stage-warning{border-color:var(--warn-line);background:var(--warn-bg)}.expectation-block.stage-danger{border-color:var(--danger-line);background:var(--danger-bg)}.expectation-title{flex-wrap:wrap;align-items:baseline;gap:10px;font-size:13px;font-weight:700;display:flex}.expectation-title .muted{font-size:12px;font-weight:500}.expectation-row{color:var(--dim-3);flex-wrap:wrap;gap:10px;font-size:12px;display:flex}.expectation-foot{font-size:11px}.row-selectable .row-left{flex:auto;overflow:hidden}.visitor-row .row-left{flex:1 1 0}.visitor-row .row-right{flex:0 auto;justify-content:flex-end;min-width:0;max-width:55%}.visitor-row .row-place{max-width:none}.visitor-row .row-right>span:last-child{flex:none}.visitor-focus .zone-workers,.visitor-focus .ring-beacon,.visitor-focus .ring-detect,.visitor-focus .danger-pulse,.visitor-focus .direction-dot,.visitor-focus .ring-beacon-edge{display:none}.focus-anchor{z-index:5;pointer-events:none;--focus-size:max(calc(16px / var(--plan-zoom,1)), calc(46px * var(--map-scale,1)))}.focus-anchor>*{position:absolute;top:0;left:0;translate:-50% -50%}.focus-core{width:var(--focus-size);height:var(--focus-size);background:var(--tone);border:max(2px, calc(var(--focus-size) * .13)) solid #fff;box-shadow:0 0 0 max(1px, calc(var(--focus-size) * .06)) var(--tone), 0 2px 8px #00000073;border-radius:50%}.focus-halo{width:var(--focus-size);height:var(--focus-size);background:var(--tone);opacity:.45;border-radius:50%;animation:1.8s ease-out infinite focus-halo}@keyframes focus-halo{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(2.6)}}.focus-heading{position:absolute;inset:0}.focus-heading:before{content:"";left:50%;top:calc(var(--focus-size) * -.55);border-left:calc(var(--focus-size) * .26) solid transparent;border-right:calc(var(--focus-size) * .26) solid transparent;border-bottom:calc(var(--focus-size) * .38) solid var(--tone);filter:drop-shadow(0 0 1px #fff);position:absolute;translate:-50%}.focus-label{padding:max(2px, calc(var(--focus-size) * .12)) max(6px, calc(var(--focus-size) * .3));white-space:nowrap;background:var(--tone);color:#fff;font-size:max(calc(10px / var(--plan-zoom,1)), calc(var(--focus-size) * .3));border-radius:6px;flex-direction:column;align-items:center;gap:1px;line-height:1.3;display:flex;box-shadow:0 2px 8px #00000059;translate:-50% calc(-100% - var(--focus-size) * .8)!important}.focus-label b{font-size:max(11px, calc(var(--focus-size) * .35));font-weight:800}.focus-label{gap:max(4px, calc(var(--focus-size) * .15));flex-direction:row}.focus-core,.focus-label{pointer-events:auto}.focus-core,.focus-label-body{cursor:pointer}.focus-label-body{flex-direction:column;align-items:center;gap:1px;display:flex}.focus-clear{color:#fff;cursor:pointer;width:max(20px, calc(var(--focus-size) * .55));height:max(20px, calc(var(--focus-size) * .55));font-size:max(calc(10px / var(--plan-zoom,1)), calc(var(--focus-size) * .28));background:#ffffff40;border:none;border-radius:50%;padding:0;line-height:1}.focus-clear:hover{background:#fff6}.worker-line-link{cursor:pointer}.worker-line-link:hover{text-decoration:underline}.map-select-bar{z-index:810;border-radius:var(--radius-row);background:var(--surface-veil);border:1px solid var(--line);max-width:calc(100% - 120px);color:var(--ink-2);align-items:center;gap:10px;padding:6px 6px 6px 14px;font-size:13px;display:flex;position:absolute;top:10px;left:50%;transform:translate(-50%);box-shadow:0 2px 10px #00000029}.map-select-clear{border:1px solid var(--line);background:var(--surface);color:var(--ink-2);font:inherit;cursor:pointer;border-radius:6px;flex:none;padding:4px 12px;font-weight:700}.focus-label:after{content:"";border-left:5px solid #0000;border-right:5px solid #0000;border-top:5px solid var(--tone);position:absolute;bottom:-5px;left:50%;translate:-50%}.hourly-bars{align-items:stretch;gap:4px;height:96px;padding:0 18px 4px;display:flex}.hourly-bar{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:3px;min-width:0;display:flex}.hourly-bar-fill{background:var(--primary);border-radius:3px 3px 0 0;width:100%;max-width:28px;min-height:2px}.hourly-bar-count{color:var(--ink-2);font-size:11px;font-weight:600}.hourly-bar-hour{color:var(--dim);white-space:nowrap;font-size:10px}.device-line{border-bottom:1px solid var(--line);color:var(--dim-3);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:10px;padding:10px 18px;font-size:12px;display:flex}main.settings{height:auto;min-height:calc(100dvh - var(--header-height));flex-direction:column;align-items:stretch;max-width:880px}.header-button{border:1px solid var(--line);border-radius:var(--radius-row);padding:5px 10px;font-size:13px}.header-button.on{border-color:var(--primary);color:var(--primary)}.settings-head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.settings-card{flex-direction:column;gap:10px;padding:16px 18px;display:flex}.settings-help{color:var(--dim);margin:0;font-size:13px;line-height:1.5}.settings-note{color:var(--warn-ink-2);background:var(--warn-chip-bg);border:1px solid var(--warn-line);border-radius:var(--radius-row);padding:8px 10px;font-size:13px}.settings-error{color:var(--danger);font-size:12px}.settings-field{color:var(--dim-3);flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;display:flex}.settings-label{min-width:88px}.settings-number{flex:none;width:88px}.settings-text{flex:none;width:180px}.settings-small{padding:4px 10px;font-size:12px}.settings-coordinates .settings-text{width:130px}.coordinate-picker{flex-direction:column;gap:6px;display:flex}.coordinate-picker-box{border:1px solid var(--line);border-radius:var(--radius-row);height:320px;transition:height .2s;position:relative;overflow:hidden}.coordinate-picker-box.expanded{height:min(72dvh,720px)}.coordinate-picker-map{position:absolute;inset:0}.plan-picker{border:1px solid var(--line);border-radius:var(--radius-row);line-height:0;position:relative;overflow:hidden}.plan-picker-image{cursor:crosshair;-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block}.plan-picker-zone,.plan-picker-picked{pointer-events:none;border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.plan-picker-zone{background:#fff;border:3px solid #1e88e5;width:12px;height:12px}.plan-picker-zone.restricted{border-color:var(--danger)}.plan-picker-label{white-space:nowrap;color:#fff;text-shadow:0 0 3px #000,0 0 3px #000,0 0 6px #000;margin-top:2px;font-size:11px;font-weight:700;line-height:1.3;position:absolute;top:100%;left:50%;transform:translate(-50%)}.plan-picker-picked{background:var(--primary);width:18px;height:18px;box-shadow:0 0 0 2px var(--primary);border:3px solid #fff}.picker-zone-label{text-shadow:0 0 3px #000,0 0 3px #000,0 0 6px #000;font-weight:700}.settings-segments{flex-direction:column;gap:8px;display:flex}.settings-segment{border:1px solid var(--line);border-radius:var(--radius-row);flex-direction:column;gap:8px;padding:12px 14px;display:flex}.settings-segment-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.settings-travel{flex-wrap:wrap;align-items:center;gap:4px;font-size:12px;display:flex}.settings-thresholds{flex-wrap:wrap;gap:8px 24px;display:flex}.settings-add{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.settings-add .sort-select{min-width:140px}.settings-button,.settings-remove,.settings-save{border:1px solid var(--line);border-radius:var(--radius-row);background:var(--surface);padding:6px 12px;font-size:13px}.settings-remove{color:var(--danger);padding:4px 10px;font-size:12px}.settings-save{background:var(--primary);border-color:var(--primary);color:#fff;padding:7px 18px;font-weight:600}.settings-button:disabled,.settings-save:disabled{opacity:.45;cursor:default}.settings-button:hover:not(:disabled),.settings-remove:hover{border-color:var(--line-strong)}@media (width<=640px){.settings-card{padding:14px}.settings-add .sort-select{flex:120px;min-width:0}}.trip-toolbar,.trip-actions,.trip-confirm{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.trip-toolbar .search-input{flex:180px;min-width:0}.trip-confirm{border:1px solid var(--line-strong);border-radius:var(--radius-row);background:var(--bg);color:var(--ink);padding:8px 10px;font-size:13px}.trip-result{align-self:flex-start}.trip-pending{margin-left:6px}.trip-name{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.trip-row-actions{white-space:nowrap;text-align:right}.trip-row-actions>*{margin-left:4px}.trip-table tr.trip-form-row{cursor:default}.trip-table tr.trip-form-row:hover{background:0 0}.trip-pending-delete .trip-name,.trip-pending-delete .muted,.trip-pending-delete .trip-time,.settings-pending-delete .strong,.settings-pending-delete .settings-travel{opacity:.45;text-decoration:line-through}.trip-table-wrap{border:1px solid var(--line);border-radius:var(--radius-row);max-height:480px;overflow:auto}.trip-table{border-collapse:collapse;width:100%;color:var(--ink-2);font-size:13px}.trip-table th{z-index:1;background:var(--surface);text-align:left;color:var(--dim);border-bottom:1px solid var(--line);padding:8px 10px;font-size:12px;font-weight:600;position:sticky;top:0}.trip-table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:8px 10px}.trip-table tbody tr{cursor:pointer}.trip-table tbody tr:hover,.trip-table tbody tr.selected{background:var(--row-hover)}.trip-table th:first-child,.trip-table td:first-child{width:32px}.trip-time{white-space:nowrap}.trip-table.roster-only th:first-child,.trip-table.roster-only td:first-child{width:auto}@media (width<=640px){.trip-table th:nth-child(4),.trip-table td:nth-child(4),.trip-table th:nth-child(5),.trip-table td:nth-child(5){display:none}.trip-table-wrap{max-height:60dvh}.trip-table td{overflow-wrap:anywhere}.trip-actions>span{flex-basis:100%}}@media (pointer:coarse),(width<=1279px){:root{--touch:44px;--touch-compact:40px}button,summary,.demo-toggle,.layer-toggle{white-space:nowrap;touch-action:manipulation}input[type=checkbox],input[type=radio]{flex:none;width:22px;height:22px}header{gap:10px 14px}.site-pill{min-height:var(--touch);padding:0 14px;font-size:15px}.display-mode-option{min-height:var(--touch);padding:0 16px;font-size:14px}.header-button,.export-menu>summary{min-height:var(--touch);align-items:center;padding:0 16px;font-size:14px;display:flex}.demo-toggle{min-height:var(--touch);gap:8px;font-size:14px}.clock{font-size:13px}.export-menu-item{min-height:var(--touch-compact);align-items:center;padding:0 14px;font-size:14px;display:flex}.export-menu-options{flex-wrap:wrap;gap:6px;font-size:14px}.export-menu-options label{min-height:var(--touch-compact);gap:8px;padding:0 6px}.export-menu-options .export-menu-item{padding:0 14px}.export-menu-period{font-size:14px}.export-menu-period input{min-height:var(--touch-compact);padding:0 8px;font-size:16px}.export-menu-submit{min-height:var(--touch);font-size:15px}.map-head{gap:10px}.tile-option{min-height:var(--touch-compact);padding:0 14px;font-size:13px}.layer-toggle{min-height:var(--touch-compact);gap:8px;font-size:13px}.legend{font-size:12px}.plan-zoom button{width:var(--touch-compact);height:var(--touch-compact)}.map-controls{--control-size:44px}.tab{padding:16px 0;font-size:15px}.filter-chip{min-height:var(--touch-compact);padding:0 16px;font-size:14px}.search-input,.sort-select{min-height:var(--touch);font-size:16px}.list-tools .search-input,.list-tools .sort-select{font-size:14px}.sort-select{padding:0 10px}.row{min-height:48px;padding:10px 12px}.link-action{min-height:var(--touch-compact);padding:0 4px;font-size:14px}.route-summary-close{min-height:var(--touch-compact);padding:0 14px;font-size:13px}.modal-close{width:var(--touch);height:var(--touch)}.modal-more{min-height:var(--touch);font-size:15px}.settings-button,.settings-remove,.settings-save,.settings-small{min-height:var(--touch);padding:0 16px;font-size:14px}.settings-field{gap:8px;font-size:14px}.settings-number{width:110px}.settings-text{width:min(220px,100%)}.settings-coordinates .settings-text{width:min(160px,100%)}.trip-table td,.trip-table th{padding:12px 10px}.trip-table th:first-child,.trip-table td:first-child{width:44px}.trip-row-actions>*{margin-left:6px}}.tab{flex:1 1 0;min-width:0}.export-menu-item{font-weight:600}.settings-save{text-align:center;min-width:92px}.settings-toggle-wide{text-align:center;min-width:108px}.keep-space-hidden{visibility:hidden;pointer-events:none}.list-inner>.route-summary{margin:0}.header-button{text-align:center;justify-content:center;min-width:92px}.brand-name,.conn,.clock,.site-pill{white-space:nowrap}header{height:auto;min-height:var(--header-height);flex-wrap:wrap;row-gap:8px}@media (width>=1280px){header{padding-block:8px}}.site-pill{min-width:0;max-width:100%}.site-pill>span{text-overflow:ellipsis;min-width:0;overflow:hidden}.conn,.demo-toggle,.header-button{white-space:nowrap;flex:none}@media (pointer:coarse),(width<=1279px){header{height:auto;min-height:var(--header-height);flex-wrap:wrap;padding-block:8px}.chips{gap:6px}.chips .filter-chip{padding:0 12px}}@media (pointer:coarse) and (width<=1499px),(width<=1279px){:is(header .clock,header .divider:has(+.clock)){display:none}}.pick-page{background:var(--bg);flex-direction:column;display:flex;position:fixed;inset:0}.pick-page .coordinate-picker{flex:1;gap:0;min-height:0}.pick-page .coordinate-picker-box{border:0;border-radius:0;flex:1;height:auto}.pick-page .map-controls-top,.pick-page .coordinate-picker>.settings-help{display:none}.pick-page .empty{flex:1;justify-content:center;align-items:center;display:flex}.pick-plan{flex:1;min-height:0;overflow:auto}.pick-plan .coordinate-picker{height:100%}.pick-plan .plan-picker{border:0;border-radius:0;width:max-content;height:100%}.pick-plan .plan-picker-image{width:auto;max-width:none;height:100%}.pick-bar{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;display:flex}.settings-sites{flex-direction:column;gap:6px;font-size:13px;display:flex}.settings-sites summary{cursor:pointer;padding:10px 0;font-weight:600}.settings-sites .settings-field{min-height:40px}.header-back{width:44px;height:44px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:10px;flex:none;justify-content:center;align-items:center;margin-left:-8px;display:flex}@media (pointer:coarse) and (width>=700px) and (height>=560px){html,body{height:100%;overflow:hidden}#root{flex-direction:column;height:100dvh;display:flex}header{flex:none;gap:6px 10px;padding:6px 12px}header .brand-name,header .brand+.divider{display:none}main.settings{flex:1 1 0;height:auto;min-height:0;overflow-y:auto}main:not(.settings){flex:1 1 0;grid-template:"kpi side""map side"minmax(0,1fr)"map log"minmax(0,36%)/minmax(0,1fr) 350px;gap:10px;max-width:none;height:auto;min-height:0;margin:0;padding:10px;display:grid}main:not(.settings)>.left{display:contents}main:not(.settings) .kpis{grid-area:kpi;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:auto;gap:8px}main:not(.settings) .kpi{gap:0;padding:6px 12px}main:not(.settings) .kpi-label{font-size:12px}main:not(.settings) .kpi-value{font-size:20px}main:not(.settings) .kpi-suffix{font-size:12px}main:not(.settings) #map{grid-area:map;gap:8px;min-height:0;padding:10px}main:not(.settings) #map .map-box{aspect-ratio:auto;flex:1 1 0;align-self:stretch;width:100%;min-height:0;max-height:none}main:not(.settings) .map-head{flex-wrap:wrap;gap:6px 10px}main:not(.settings) #eventLog{grid-area:log;height:auto;min-height:0;padding:8px 10px}main:not(.settings) .log-rows{max-height:none}main:not(.settings) #eventLog .row{min-height:40px;padding:6px 10px}main:not(.settings) #side{grid-area:side;align-self:stretch;width:auto;height:auto;min-height:0;position:static}main:not(.settings) .list{max-height:none}main:not(.settings) .tab{padding:11px 0}main:not(.settings) .list-tools{padding:8px 10px 0}main:not(.settings) .chips{padding:8px 10px 6px}main:not(.settings) .row{min-height:44px;padding:8px 10px}}@media (pointer:coarse) and (width>=700px) and (height>=560px) and (orientation:portrait){main:not(.settings){grid-template:"kpi kpi""map map"minmax(0,1fr)"log side"minmax(0,40%)/minmax(0,1fr) minmax(0,1fr)}}.plan-area{flex:1 1 0;justify-content:center;align-items:center;width:100%;min-height:0;display:flex}.plan-area>.plan-box{aspect-ratio:auto;flex:none;align-self:auto;max-width:none;min-height:0;max-height:none;margin:0;transition:width .45s cubic-bezier(.22,1,.36,1),height .45s cubic-bezier(.22,1,.36,1)}@media (width<=900px){.plan-area{aspect-ratio:var(--plan-aspect,1);flex:none;min-height:min(280px,70vh);max-height:70vh}}@media (pointer:coarse) and (width>=700px) and (height>=560px){main:not(.settings) #map .plan-area{aspect-ratio:auto;flex:1 1 0;min-height:0;max-height:none}main:not(.settings) #map .plan-area>.plan-box{flex:none;align-self:auto}}.settings-gate{max-width:420px}.settings-gate-actions{justify-content:flex-end;gap:8px;display:flex}.brand{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}main.settings.uptime-page{max-width:1440px}.uptime-sites{flex-wrap:wrap;gap:6px;display:flex}.uptime-layout{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:14px;display:grid}.uptime-map-card{height:max(420px, calc(100dvh - var(--header-height) - 160px));flex-direction:column;display:flex;position:sticky;top:12px;overflow:hidden}.uptime-map{flex:1;min-height:0;position:relative}.uptime-map-canvas{position:absolute;inset:0}.uptime-map-failed{color:var(--dim);justify-content:center;align-items:center;font-size:13px;display:flex;position:absolute;inset:0}.uptime-map-card.uptime-plan-card{height:auto;position:static}.uptime-layout.uptime-layout-plan{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}.uptime-plan.filled{height:max(420px, calc(100dvh - var(--header-height) - 160px));max-height:none}.uptime-plan{max-height:calc(100dvh - var(--header-height) - 200px);background:var(--map-void);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.uptime-plan-box{flex:none;transition:width .25s,height .25s;position:relative}.uptime-plan-image{-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.uptime-plan-marker{justify-content:center;align-items:center;width:22px;height:22px;display:flex;position:absolute;transform:translate(-50%,-50%)}.uptime-plan-marker>i{border:2.5px solid #fff;border-radius:50%;width:14px;height:14px;box-shadow:0 0 0 1px #0f141c73}.uptime-legend{color:var(--dim);border-top:1px solid var(--line);flex-wrap:wrap;gap:14px;padding:8px 12px;font-size:12px;display:flex}.uptime-legend i{vertical-align:-1px;border-radius:50%;width:10px;height:10px;margin-right:5px;display:inline-block}.uptime-legend i.uptime-legend-line{vertical-align:2px;border-radius:2px;width:16px;height:4px;box-shadow:0 0 0 1px #0f141c73}.uptime-grid{flex-direction:column;gap:6px;display:flex}.uptime-row{grid-template-columns:150px minmax(0,1fr) 160px;align-items:center;gap:10px;display:grid}.uptime-name{text-align:left;white-space:normal;overflow-wrap:anywhere;align-items:center;gap:7px;min-width:0;padding:4px 0;font-size:13px;font-weight:600;display:flex}.uptime-name:hover span{color:var(--primary);text-decoration:underline}.uptime-dot{border-radius:50%;flex:none;width:9px;height:9px}.uptime-mac{color:var(--dim);font-size:11px;font-weight:400}.uptime-axis{height:16px;color:var(--dim);font-size:11px;position:relative}.uptime-axis>span{white-space:nowrap;position:absolute;transform:translate(-50%)}.uptime-bar{background:var(--line-soft);border-radius:6px;width:100%;height:22px;display:block;position:relative;overflow:hidden}.uptime-tick{background:var(--line);width:1px;position:absolute;top:0;bottom:0}.uptime-period{background:var(--ok);border-radius:4px;min-width:2px;position:absolute;top:3px;bottom:3px;overflow:hidden}.uptime-estimated,.uptime-key-estimated{background:repeating-linear-gradient(135deg, var(--ok) 0 4px, var(--ok-line) 4px 8px)}.uptime-estimated{position:absolute;top:0;bottom:0;left:0}.uptime-stats{flex-direction:column;align-items:flex-start;gap:3px;font-size:12px;display:flex}.uptime-key{vertical-align:middle;border-radius:3px;width:18px;height:10px;margin:0 4px 0 10px;display:inline-block}.uptime-key:first-child{margin-left:0}.uptime-key-recorded{background:var(--ok)}.uptime-periods{flex-direction:column;padding:0 18px;display:flex}.uptime-period-row{border:1px solid var(--line);border-radius:var(--radius-item);grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;font-size:13px;display:grid}.uptime-period-no{color:var(--dim-2);font-variant-numeric:tabular-nums;font-weight:700}.uptime-period-time{font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:4px;display:flex}.uptime-period-span{white-space:nowrap;font-weight:700}.uptime-gap{color:var(--danger);border-left:2px dashed var(--danger-line);margin-left:26px;padding:6px 0 6px 50px;font-size:12px}.uptime-note{padding:12px 18px 0}@media (width<=1100px){.uptime-layout,.uptime-layout.uptime-layout-plan{grid-template-columns:minmax(0,1fr)}.uptime-map-card{height:360px;position:static}.uptime-plan.filled{height:min(70dvh,560px)}}@media (width<=640px){.uptime-map-card{height:280px}.uptime-row{grid-template-columns:minmax(0,1fr) auto}.uptime-row>.uptime-bar{order:3;grid-column:1/-1}.uptime-row>div:empty{display:none}.uptime-gap{margin-left:12px;padding-left:16px}.uptime-axis>span:nth-child(2n){display:none}}.login-page{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:16px;display:flex}.login-card{flex-direction:column;gap:14px;width:100%;max-width:360px;padding:28px 24px;display:flex}.login-title{color:var(--ink);margin:0;font-size:24px}.login-sub{color:var(--dim);margin:0;font-size:13px}.login-field{color:var(--dim);flex-direction:column;gap:6px;font-size:13px;display:flex}.login-field input{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:8px;padding:10px 12px;font-size:15px}.login-keep{color:var(--ink);cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.login-keep input{width:16px;height:16px;accent-color:var(--primary);margin:0}.login-error{color:var(--danger-ink);font-size:13px}.login-submit{padding:11px;font-size:15px}.ad-page{--ad-primary:#3385ff;--ad-primary-strong:#1d6fe8;--ad-primary-surface:#eaf2fe;--ad-primary-border:#c9defe;--ad-danger:#d32f2f;--ad-danger-strong:#c62828;--ad-danger-bg:#fff5f5;--ad-danger-border:#ffcdd2;--ad-success:#16a05d;--ad-success-bg:#e8f6ef;--ad-ink:#111827;--ad-body:#374151;--ad-dim:#6b7280;--ad-faint:#9ca3af;--ad-line:#e5e7eb;--ad-line-strong:#d1d5db;--ad-bg:#f3f4f7;--ad-surface:#fff;background:var(--ad-bg);min-height:100vh;color:var(--ad-body);-webkit-font-smoothing:antialiased;flex-direction:column;font-family:Pretendard Variable,Pretendard,Hiragino Sans,Noto Sans JP,Noto Sans KR,-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,sans-serif;font-size:15px;line-height:1.6;display:flex}:where(.ad-page) :where(h1,h2,h3,p,ul,ol){margin:0;padding:0}.ad-wrap{width:100%;max-width:1120px;margin:0 auto;padding-inline:32px}.ad-header{background:var(--ad-surface);border-bottom:1px solid var(--ad-line);z-index:1;position:sticky;top:0}.ad-header-row{align-items:center;gap:10px;height:64px;display:flex}.ad-brand{color:var(--ad-ink);letter-spacing:-.3px;font-size:18px;font-weight:800}.ad-header-company{color:var(--ad-dim);margin-left:auto;font-size:14px;font-weight:600}.ad-main{flex:1;padding-top:48px;padding-bottom:64px}.ad-hero{max-width:720px;margin-bottom:32px}.ad-eyebrow{color:var(--ad-primary);letter-spacing:.2px;margin-bottom:8px;font-size:13px;font-weight:700}.ad-title{color:var(--ad-ink);letter-spacing:-.8px;font-size:34px;font-weight:800;line-height:1.3}.ad-subtitle{color:var(--ad-dim);margin-top:12px;font-size:16px}.ad-grid{grid-template-columns:minmax(0,1fr) minmax(0,440px);align-items:start;gap:32px;display:grid}.ad-info{background:var(--ad-surface);border:1px solid var(--ad-line);border-radius:16px;padding:32px}.ad-section-title{color:var(--ad-ink);margin-bottom:8px;font-size:18px;font-weight:700}.ad-info-list{list-style:none}.ad-info-item{border-bottom:1px solid var(--ad-line);gap:16px;padding:20px 0;display:flex}.ad-info-item:last-child{border-bottom:0;padding-bottom:0}.ad-info-icon{background:var(--ad-primary-surface);width:44px;height:44px;color:var(--ad-primary);border-radius:12px;flex:none;place-items:center;display:grid}.ad-info-title{color:var(--ad-ink);margin-bottom:4px;font-size:16px;font-weight:700}.ad-info-body{color:var(--ad-body);font-size:14px}.ad-panel{background:var(--ad-surface);border:1px solid var(--ad-line);border-radius:16px;padding:28px 32px 32px;position:sticky;top:88px;box-shadow:0 8px 24px #1118270f}.ad-steps{border-bottom:1px solid var(--ad-line);margin-bottom:28px;padding-bottom:24px;list-style:none;display:flex}.ad-steps li{color:var(--ad-faint);text-align:center;flex-direction:column;flex:1;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex;position:relative}.ad-steps li+li:before{content:"";background:var(--ad-line);border-radius:1px;height:2px;position:absolute;top:14px;left:calc(20px - 50%);right:calc(50% + 20px)}.ad-steps li.is-done+li:before{background:var(--ad-primary)}.ad-step-dot{background:var(--ad-bg);width:30px;height:30px;color:var(--ad-faint);border:2px solid var(--ad-line);border-radius:50%;place-items:center;font-size:13px;font-weight:700;display:grid}.ad-step-dot svg{stroke-width:2.6px;width:16px;height:16px}.ad-steps li.is-current{color:var(--ad-ink)}.ad-steps li.is-current .ad-step-dot{background:var(--ad-surface);border-color:var(--ad-primary);color:var(--ad-primary)}.ad-steps li.is-done{color:var(--ad-body)}.ad-steps li.is-done .ad-step-dot{background:var(--ad-primary);border-color:var(--ad-primary);color:#fff}.ad-body{flex-direction:column;gap:16px;display:flex}.ad-panel-title{color:var(--ad-ink);letter-spacing:-.3px;font-size:20px;font-weight:700}.ad-panel-desc{color:var(--ad-dim);margin-top:4px;font-size:14px}.ad-account{background:var(--ad-bg);color:var(--ad-ink);border-radius:999px;margin-top:8px;padding:4px 12px;font-size:14px;font-weight:600;display:inline-block}.ad-field{color:var(--ad-ink);flex-direction:column;gap:6px;font-size:14px;font-weight:600;display:flex}.ad-field input{border:1px solid var(--ad-line-strong);height:48px;font:inherit;color:var(--ad-ink);background:var(--ad-surface);border-radius:8px;padding:0 14px;font-size:16px;font-weight:400;transition:border-color .15s,box-shadow .15s}.ad-field input:focus{border-color:var(--ad-primary);outline:none;box-shadow:0 0 0 3px #3385ff2e}.ad-error{background:var(--ad-danger-bg);border:1px solid var(--ad-danger-border);color:var(--ad-danger-strong);border-radius:8px;align-items:flex-start;gap:8px;padding:12px 14px;font-size:14px;display:flex}.ad-error svg,.ad-callout svg{flex:none;width:20px;height:20px;margin-top:1px}.ad-callout{color:var(--ad-ink);border-radius:12px;align-items:flex-start;gap:12px;padding:16px;font-size:14px;display:flex}.ad-callout-danger{background:var(--ad-danger-bg);border:1px solid var(--ad-danger-border)}.ad-callout-danger svg{color:var(--ad-danger)}.ad-callout-info{background:var(--ad-primary-surface);border:1px solid var(--ad-primary-border)}.ad-callout-info svg{color:var(--ad-primary)}.ad-actions{gap:12px;display:flex}.ad-actions .ad-btn{flex:1}.ad-btn{border:1px solid #0000;border-radius:8px;min-height:52px;padding:0 20px;font-size:16px;font-weight:700;transition:background .15s,border-color .15s,opacity .15s}.ad-btn:disabled{opacity:.4;cursor:default}.ad-btn:focus-visible{outline-offset:2px;outline:3px solid #3385ff59}.ad-btn-primary{background:var(--ad-primary);color:#fff}.ad-btn-primary:hover:not(:disabled){background:var(--ad-primary-strong)}.ad-btn-danger{background:var(--ad-danger);color:#fff}.ad-btn-danger:hover:not(:disabled){background:var(--ad-danger-strong)}.ad-btn-outline{background:var(--ad-surface);border-color:var(--ad-line-strong);color:var(--ad-body)}.ad-btn-outline:hover:not(:disabled){border-color:var(--ad-dim);background:var(--ad-bg)}.ad-result{text-align:center;align-items:center;padding:8px 0}.ad-result-icon{background:var(--ad-success-bg);width:64px;height:64px;color:var(--ad-success);border-radius:50%;place-items:center;display:grid}.ad-result-icon svg{stroke-width:2.4px;width:32px;height:32px}.ad-date{background:var(--ad-bg);color:var(--ad-ink);border-radius:8px;padding:10px 16px;font-weight:700}.ad-footer{border-top:1px solid var(--ad-line);background:var(--ad-surface);color:var(--ad-dim);font-size:13px}.ad-footer-row{flex-wrap:wrap;justify-content:space-between;gap:8px 24px;padding-top:24px;padding-bottom:24px;display:flex}.ad-footer a{color:var(--ad-primary);font-weight:600;text-decoration:none}.ad-footer a:hover{text-decoration:underline}.ad-footer-company{font-weight:600}@media (width<=899px){.ad-main{padding-top:36px;padding-bottom:48px}.ad-grid{grid-template-columns:minmax(0,1fr);gap:24px}.ad-panel{position:static}.ad-info{padding:24px}.ad-info-list{grid-template-columns:1fr 1fr;gap:12px;margin-top:12px;display:grid}.ad-info-item{border:1px solid var(--ad-line);border-radius:12px;flex-direction:column;gap:10px;padding:16px}.ad-info-item:last-child{border-bottom:1px solid var(--ad-line);padding-bottom:16px}}@media (width<=599px){.ad-wrap{padding-inline:16px}.ad-header-row{height:56px}.ad-main{padding-top:24px;padding-bottom:32px}.ad-hero{margin-bottom:20px}.ad-title{letter-spacing:-.5px;font-size:26px}.ad-subtitle{margin-top:8px;font-size:15px}.ad-grid{gap:16px}.ad-info,.ad-panel{border-radius:12px;padding:20px 16px}.ad-info-list{grid-template-columns:1fr;gap:0;margin-top:0}.ad-info-item{border:0;border-bottom:1px solid var(--ad-line);border-radius:0;flex-direction:row;gap:12px;padding:14px 0}.ad-info-item:last-child{border-bottom:0;padding-bottom:0}.ad-info-icon{border-radius:8px;width:36px;height:36px}.ad-info-icon svg{width:20px;height:20px}.ad-info-title{font-size:15px}.ad-steps{margin-bottom:20px;padding-bottom:20px}.ad-actions{flex-direction:column-reverse}.ad-footer-row{flex-direction:column}}.ad-lang{gap:4px;margin-left:auto;display:flex}.ad-lang a{color:var(--ad-dim);white-space:nowrap;border-radius:8px;padding:6px 10px;font-size:14px;font-weight:600;text-decoration:none}.ad-lang a:hover{background:var(--ad-bg);color:var(--ad-ink)}.ad-lang a[aria-current]{color:var(--ad-primary);background:var(--ad-primary-surface)}.ad-footer-links{flex-wrap:wrap;gap:4px 16px;width:100%;display:flex}.ad-footer-links a{color:var(--ad-body)}.ad-footer-links a[aria-current]{color:var(--ad-primary)}.pp-meta{color:var(--ad-dim);flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:12px;font-size:15px;display:flex}.pp-version{align-items:center;gap:8px;font-size:14px;display:inline-flex}.pp-version select{border:1px solid var(--ad-line-strong);height:36px;font:inherit;color:var(--ad-ink);background:var(--ad-surface);border-radius:8px;padding:0 10px}.pp-doc{max-width:880px;padding:40px 48px}.pp-frame{border:0;width:100%;height:0;display:block}.pp-status{text-align:center;color:var(--ad-dim);flex-direction:column;align-items:center;gap:16px;padding:48px 0;display:flex}.pp-status .ad-btn{align-items:center;min-height:44px;font-size:15px;text-decoration:none;display:inline-flex}@media (width<=599px){.pp-doc{padding:20px 16px}.ad-lang a{padding:6px 8px;font-size:13px}}
