.rec-section{flex-direction:column;gap:8px;display:flex}.rec-section-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.rec-rows{border:1px solid var(--border);border-radius:10px;flex-direction:column;margin:0;display:flex;overflow:hidden}.rec-rows>div{grid-template-columns:140px 1fr;gap:10px;padding:8px 12px;font-size:14px;display:grid}.rec-rows>div+div{border-top:1px solid var(--border)}.rec-rows dt{color:var(--text-3);font-size:13px}.rec-rows dd{overflow-wrap:anywhere;margin:0}.rec-field{color:var(--text-2);flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}.rec-field small{color:var(--text-3);font-weight:400}.rec-field .input,.rec-field .select,.rec-field textarea{width:100%;min-width:0}.rec-field textarea{resize:vertical;min-height:90px;font:inherit;border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:10px;padding:10px 12px}.rec-switch,.tm-form label.rec-switch{color:var(--text);cursor:pointer;flex-direction:row;align-items:flex-start;gap:10px;font-size:14px;font-weight:400;display:flex}.rec-switch input{width:16px;height:16px;accent-color:var(--brand);margin-top:3px}.rec-switch small{color:var(--text-3);font-size:12px;display:block}.rec-dialog{max-height:calc(100vh - 32px);overflow-y:auto}.rec-dialog h2{margin:0 0 12px}.rec-grid2{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (width<=560px){.rec-grid2{grid-template-columns:1fr}.rec-rows>div{grid-template-columns:110px 1fr}}.rec-actions{flex-wrap:wrap;gap:8px;display:flex}.rec-trail{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.rec-trail li{background:var(--surface);border-radius:10px;flex-direction:column;gap:4px;padding:10px 12px;display:flex}.rec-trail-head{flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}.rec-trail-change span{color:var(--text-3)}.rec-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.rec-list li{border:1px solid var(--border);border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;font-size:14px;display:flex}.rec-list li.clickable{cursor:pointer}.rec-list li.clickable:hover{border-color:var(--border-strong);background:var(--surface)}tr.clickable:hover td{background:var(--surface)}tr.clickable:focus-visible{outline:2px solid var(--brand-light);outline-offset:-2px}.toasts{z-index:80;flex-direction:column;gap:8px;max-width:min(380px,100vw - 32px);display:flex;position:fixed;bottom:20px;right:20px}.toast{box-shadow:var(--shadow-lift);background:var(--brand);color:#fff;animation:tm-slide var(--dur) var(--ease);border-radius:10px;padding:10px 14px;font-size:14px;font-weight:600}.toast.error{background:var(--error)}@font-face{font-family:Inter;font-weight:400;src:url(/Inter-Regular.ttf)format("truetype");font-display:swap}@font-face{font-family:Inter;font-weight:600;src:url(/Inter-SemiBold.ttf)format("truetype");font-display:swap}@font-face{font-family:Inter;font-weight:700;src:url(/Inter-Bold.ttf)format("truetype");font-display:swap}:root{--brand:#075e45;--brand-mid:#0b7254;--brand-light:#148263;--saffron:#ff6b00;--flag-green:#0d7c3d;--bg:#f5f8f7;--card:#fff;--surface:#edf4f0;--tint:#e1f3e9;--text:#0a1628;--text-2:#3d5166;--text-3:#56677b;--muted:#74869b;--border:#dce8e1;--border-strong:#bdd4c7;--success:#059669;--success-bg:#d1fae5;--warning:#d97706;--warning-bg:#fef3c7;--error:#dc2626;--error-bg:#fee2e2;--info:#087c59;--info-bg:#dbeafe;--unknown:#6b7280;--unknown-bg:#f3f4f6;--revisit:#7c3aed;--revisit-bg:#ede9fe;--radius:12px;--shadow:0 3px 10px #0a16280f;--shadow-lift:0 10px 28px #0a16281c;--ease:cubic-bezier(.22, 1, .36, 1);--dur-fast:.14s;--dur:.24s;--dur-slow:.52s;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font-family:Inter,system-ui,-apple-system,Segoe UI,Noto Sans Kannada,sans-serif}*{box-sizing:border-box}body{background:var(--bg);margin:0}a{color:var(--brand-light);text-decoration:none}a:hover{text-decoration:underline}button,input,select{font:inherit}.shell{grid-template-columns:248px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--brand);color:#fff;flex-direction:column;height:100vh;display:flex;position:sticky;top:0}.flag{height:4px;display:flex}.flag span{flex:1}.brand{align-items:center;gap:12px;padding:20px 20px 16px;display:flex}.brand-mark{width:40px;height:40px;color:var(--brand);letter-spacing:-.5px;box-shadow:inset 0 0 0 2px var(--saffron), 0 4px 12px #0000002e;background:linear-gradient(145deg,#fff 55%,#fff1e6);border-radius:12px;place-items:center;font-size:15px;font-weight:700;display:grid}.brand strong{letter-spacing:-.2px;font-size:17px;display:block}.brand small{opacity:.8;font-size:12px}.nav{scrollbar-width:thin;scrollbar-color:transparent transparent;flex-direction:column;flex:1;gap:3px;min-height:0;padding:8px 12px;display:flex;overflow-y:auto}.nav:hover{scrollbar-color:#ffffff47 transparent}.nav::-webkit-scrollbar{width:6px}.nav::-webkit-scrollbar-thumb{background:0 0;border-radius:6px}.nav:hover::-webkit-scrollbar-thumb{background:#ffffff47}.nav-divider{background:#ffffff29;height:1px;margin:8px 12px}.nav-count{text-align:center;background:#ffffff24;border-radius:999px;min-width:22px;margin-left:auto;padding:1px 7px;font-size:11px;font-weight:700}.nav a.active .nav-count{background:var(--tint);color:var(--brand)}.nav a{color:#ffffffd1;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), transform var(--dur) var(--ease);border-radius:10px;align-items:center;gap:12px;padding:8px 12px;font-size:14px;font-weight:600;display:flex;position:relative}.nav a svg{opacity:.9;transition:transform var(--dur) var(--ease);flex:none}.nav a:hover{color:#fff;background:#ffffff1c;text-decoration:none}.nav a:hover svg{transform:scale(1.12)}.nav a.active{color:var(--brand);background:#fff;box-shadow:0 4px 14px #00000029}.nav a.active:before{content:"";background:var(--saffron);width:4px;animation:nav-bar var(--dur) var(--ease);border-radius:0 4px 4px 0;position:absolute;top:9px;bottom:9px;left:-12px}.nav a:focus-visible{outline-offset:1px;outline:2px solid #fff}.user-box{border-top:1px solid #ffffff26;flex-direction:column;gap:12px;padding:14px 16px 16px;font-size:13px;display:flex}.user-row{align-items:center;gap:10px;min-width:0;display:flex}.avatar{background:#ffffff2e;border-radius:50%;flex:none;place-items:center;width:36px;height:36px;font-size:13px;font-weight:700;display:grid}.user-text{flex-direction:column;min-width:0;display:flex}.user-text strong{white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.user-text span{opacity:.8;font-size:12px}.user-box .btn{justify-content:center;align-items:center;gap:8px;width:100%;display:inline-flex}.main{min-width:0}.topbar{background:color-mix(in srgb, var(--card) 88%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(10px);backdrop-filter:saturate(1.4)blur(10px);border-bottom:1px solid var(--border);z-index:5;justify-content:space-between;align-items:center;gap:16px;padding:16px 28px;display:flex;position:sticky;top:0}.topbar h1{letter-spacing:-.3px;margin:0;font-size:21px}.topbar p{color:var(--text-3);margin:2px 0 0;font-size:13px}.crumb{color:var(--brand-light);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:4px;margin-bottom:2px;font-size:12px;font-weight:700;display:inline-flex}.crumb:hover{color:var(--brand);text-decoration:none}.section-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;display:grid}.section-box{color:var(--text);animation:fade-up var(--dur-slow) var(--ease) backwards;flex-direction:column;gap:6px;padding:18px;display:flex}.section-box:hover{border-color:var(--border-strong);text-decoration:none;transform:translateY(-3px);box-shadow:0 10px 28px #075e451f}.section-box:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.section-head{justify-content:space-between;align-items:flex-start;margin-bottom:6px;display:flex}.section-icon{background:var(--tint);width:44px;height:44px;color:var(--brand);transition:background var(--dur) var(--ease), color var(--dur) var(--ease);border-radius:12px;place-items:center;display:grid}.section-box:hover .section-icon{background:var(--brand);color:#fff}.section-name{font-size:15px}.section-stat{align-items:baseline;gap:6px;min-height:34px;display:flex}.section-stat b{letter-spacing:-.5px;color:var(--brand);font-size:26px;font-weight:800}.section-stat span{color:var(--text-3);font-size:13px;font-weight:600}.section-stat .section-hint{background:var(--surface);color:var(--brand-light);border-radius:999px;align-self:center;padding:3px 10px;font-size:12px;font-weight:700}.section-stat-wait{background:linear-gradient(90deg, var(--surface), var(--tint), var(--surface));background-size:200% 100%;border-radius:6px;align-self:center;width:72px;height:18px;animation:1.2s linear infinite shimmer}.section-sub{color:var(--text-3);margin:0;font-size:13px;line-height:1.45}.section-go{color:var(--muted);transition:transform var(--dur) var(--ease), color var(--dur) var(--ease)}.section-box:hover .section-go{color:var(--brand);transform:translate(3px)}.sync{background:var(--surface);color:var(--text-3);white-space:nowrap;transition:background var(--dur) var(--ease), color var(--dur) var(--ease);border-radius:999px;align-items:center;gap:7px;padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex}.sync.busy{background:var(--tint);color:var(--brand)}.sync-dot{background:var(--muted);border-radius:50%;flex:none;width:8px;height:8px}.sync.live{color:var(--brand)}.sync.live .sync-dot{background:var(--flag-green);animation:2s ease-out infinite live-pulse}@keyframes live-pulse{0%{box-shadow:0 0 #0d7c3d80}70%,to{box-shadow:0 0 0 7px #0d7c3d00}}@media (prefers-reduced-motion:reduce){.sync.live .sync-dot{animation:none}}.sync.busy svg{animation:.9s linear infinite spin}.content{padding:24px 28px 48px}.page{animation:page-in var(--dur-slow) var(--ease) backwards;flex-direction:column;gap:20px;display:flex}.card{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);transition:box-shadow var(--dur) var(--ease), transform var(--dur) var(--ease), border-color var(--dur) var(--ease);border-radius:16px;padding:20px}.card h2{align-items:center;gap:8px;margin:0 0 14px;font-size:16px;display:flex}.card h2:before{content:"";background:var(--saffron);border-radius:2px;width:4px;height:18px}.reveal{animation:fade-up var(--dur-slow) var(--ease) backwards;animation-delay:calc(var(--i,0) * 55ms)}.kpi:hover{box-shadow:var(--shadow-lift);border-color:var(--border-strong);transform:translateY(-3px)}.grid{gap:16px;display:grid}.grid.kpis{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.grid.two{grid-template-columns:repeat(auto-fit,minmax(380px,1fr))}.kpi{flex-direction:column;gap:6px;display:flex}.kpi .kpi-icon{width:42px;height:42px;transition:transform var(--dur) var(--ease);border-radius:12px;place-items:center;font-size:19px;display:grid}.kpi:hover .kpi-icon{transform:scale(1.08)rotate(-4deg)}.kpi .value{letter-spacing:-.6px;font-size:27px;font-weight:700}.kpi .label{color:var(--text-3);font-size:13px;font-weight:600}.kpi .sub{color:var(--muted);font-size:12px}.btn{cursor:pointer;background:var(--brand);color:#fff;transition:background var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);border:0;border-radius:10px;padding:9px 16px;font-size:14px;font-weight:600}.btn:hover{background:var(--brand-mid)}.btn:active:not(:disabled){transform:translateY(1px)scale(.985)}.btn:focus-visible{outline:2px solid var(--brand-light);outline-offset:2px}.btn:disabled{opacity:.55;cursor:default}.btn.ghost{color:var(--brand);border:1px solid var(--border-strong);background:0 0}.btn.ghost:hover{background:var(--surface)}.btn.light{color:#fff;background:#ffffff26}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.input,.select{border:1px solid var(--border);background:var(--card);height:40px;color:var(--text);border-radius:10px;min-width:160px;padding:0 12px}.input:focus,.select:focus{outline:2px solid var(--brand-light);outline-offset:-1px}.input.search{flex:1;min-width:280px;max-width:420px}.pill{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-flex}.pill:before{content:"";background:currentColor;border-radius:3px;width:6px;height:6px}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:left;color:var(--text-3);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);background:var(--surface);padding:10px 12px;font-size:12px;font-weight:600;position:sticky;top:0}td{border-bottom:1px solid var(--border);vertical-align:top;padding:11px 12px}tr:hover td{background:#fafcfb}.table-wrap{border:1px solid var(--border);border-radius:12px;overflow-x:auto}.muted{color:var(--muted)}.small{font-size:12px}.pager{color:var(--text-3);justify-content:space-between;align-items:center;gap:12px;font-size:13px;display:flex}.bar{background:var(--surface);border-radius:8px;min-width:80px;height:8px;overflow:hidden}.bar>span{background:var(--brand-light);height:100%;transition:width .9s var(--ease);border-radius:8px;display:block}.state{text-align:center;color:var(--text-3);padding:40px}.state.error{color:var(--error)}.skeleton{vertical-align:middle;background:linear-gradient(90deg, var(--surface) 25%, #f7fbf9 50%, var(--surface) 75%);background-size:200% 100%;animation:1.4s linear infinite shimmer;display:inline-block}.page-skeleton{flex-direction:column;gap:18px;display:flex}.page-skeleton-tiles{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;display:grid}.gate-loading{max-width:1100px;margin:0 auto;padding:32px 24px}.skeleton-rows{flex-direction:column;gap:12px;padding:18px 4px;display:flex}@keyframes fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes page-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes nav-bar{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes shimmer{to{background-position:-200% 0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pop-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:none}}@keyframes pulse-dot{50%{box-shadow:0 0 0 6px color-mix(in srgb, currentColor 0%, transparent)}0%{box-shadow:0 0 0 0 color-mix(in srgb, currentColor 35%, transparent)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}.thumbs{flex-wrap:wrap;gap:6px;display:flex}.thumbs img{object-fit:cover;border:1px solid var(--border);border-radius:8px;width:44px;height:44px}.login{place-items:center;min-height:100vh;padding:24px;display:grid}.login .card{flex-direction:column;gap:16px;width:100%;max-width:420px;padding:32px;display:flex}.login h1{color:var(--brand);letter-spacing:-.8px;margin:0;font-size:28px}.login label{flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}.login .input{width:100%;height:46px}.alert{background:var(--error-bg);color:var(--error);border-radius:10px;padding:10px 12px;font-size:13px}@media (width<=900px){.shell{grid-template-columns:1fr}.sidebar{grid-template-columns:1fr auto;align-items:center;height:auto;display:grid;position:static}.flag,.nav{grid-column:1/-1}.brand{padding:12px 16px}.nav{scrollbar-width:none;flex-flow:row;padding:4px 12px 12px;overflow-x:auto}.nav::-webkit-scrollbar{display:none}.nav a{flex:none;padding:8px 12px}.nav a.active:before,.nav-divider{display:none}.user-box{border-top:0;flex-direction:row;grid-area:2/2;align-items:center;padding:8px 16px}.user-text{display:none}.user-box .btn{width:auto}.content,.topbar{padding-left:16px;padding-right:16px}}.pass-sheet{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;display:grid}.pass-card{border:1.5px dashed var(--border-strong);break-inside:avoid;page-break-inside:avoid;background:#fff;border-radius:12px;align-items:center;gap:12px;padding:12px;display:flex}.pass-qr{flex:none;width:120px;height:120px}.pass-qr svg{width:100%;height:100%}.pass-body{flex-direction:column;gap:3px;min-width:0;display:flex}.pass-round{color:var(--brand);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:700}.pass-name{color:var(--text);font-size:15px;font-weight:700}.pass-meta{color:var(--text-3);font-size:12px}.pass-code{letter-spacing:.12em;margin-top:4px;font-family:ui-monospace,Consolas,monospace;font-size:18px;font-weight:700}@media print{@page{size:A4;margin:10mm}body{background:#fff}.sidebar,.topbar,.no-print{display:none!important}.shell{display:block}.content{padding:0}.pass-sheet{grid-template-columns:1fr 1fr;gap:6mm}.pass-card{border-color:#999}}.btn.sm{border-radius:8px;padding:6px 11px;font-size:13px}.btn.xs{border-radius:7px;flex-shrink:0;padding:3px 8px;font-size:12px}.btn.wide{width:100%}.btn.danger{background:var(--error)}.btn.danger:hover{background:#b91c1c}.btn.ghost.danger-text{color:var(--error);border-color:#fecaca}.btn.ghost.danger-text:hover{background:var(--error-bg)}kbd{border:1px solid var(--border-strong);background:var(--card);color:var(--text-2);border-bottom-width:2px;border-radius:5px;padding:2px 5px;font:600 11px/1 Inter,system-ui,sans-serif}tr.clickable{cursor:pointer}tr.selected td{background:var(--tint)}.modal-backdrop{z-index:50;background:#0a162873;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{width:100%;max-width:520px}.modal-body{color:var(--text-2);flex-direction:column;gap:10px;font-size:14px;line-height:1.55;display:flex}.modal-body p{margin:0}.modal-actions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.call-link{white-space:nowrap;font-variant-numeric:tabular-nums;align-items:center;gap:6px;display:inline-flex}.call-link>svg{flex:none}.wb-layout{grid-template-columns:minmax(0,1fr) 370px;align-items:start;gap:16px;display:grid}.wb-map-col{flex-direction:column;gap:10px;min-width:0;display:flex;position:relative}.wb-map-wrap{isolation:isolate;border:1px solid var(--border);box-shadow:var(--shadow);background:var(--surface);border-radius:16px;position:relative;overflow:hidden}.wb-map{height:calc(100vh - 170px);min-height:520px}.wb-map-empty{color:var(--text-3);place-items:center;display:grid}.wb-keynote{background:var(--info-bg);color:#1e3a8a;border-radius:12px;justify-content:space-between;align-items:flex-start;gap:10px;padding:9px 12px;font-size:13px;line-height:1.45;display:flex}.wb-map-error{background:var(--card);border:1px solid #fecaca;border-left:4px solid var(--error);z-index:3;border-radius:12px;width:min(520px,100% - 32px);padding:16px 18px;font-size:14px;line-height:1.5;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 8px 30px #0a162833}.wb-panel{max-height:calc(100vh - 116px);padding:0;position:sticky;top:92px;overflow-y:auto}.wb-section{border-bottom:1px solid var(--border);flex-direction:column;gap:10px;padding:14px 18px;display:flex}.wb-section:last-child{border-bottom:0}.wb-section h3{text-transform:uppercase;letter-spacing:.5px;color:var(--text-3);margin:0;font-size:12px}.wb-section:first-child h3{text-transform:none;letter-spacing:-.2px;color:var(--text);font-size:16px}.wb-line{margin:0;font-size:14px;line-height:1.5}.wb-hint{color:var(--muted);margin:0;font-size:12px;line-height:1.5}.wb-note{background:var(--info-bg);color:#1e3a8a;border-radius:10px;margin:0;padding:10px 12px;font-size:13px;line-height:1.45}.wb-badges{flex-wrap:wrap;gap:6px;display:flex}.wb-badges:empty{display:none}.wb-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.wb-row.tight{flex-wrap:nowrap;gap:4px}.wb-panel>.alert,.wb-panel>.wb-notice{margin:12px 18px 0}.wb-panel .alert{justify-content:space-between;align-items:flex-start;gap:8px;line-height:1.45;display:flex}.wb-notice{border-radius:10px;justify-content:space-between;align-items:flex-start;gap:8px;padding:10px 12px;font-size:13px;line-height:1.45;display:flex}.wb-notice.ok{background:var(--success-bg);color:#065f46}.wb-notice.info{background:var(--tint);color:var(--brand)}.wb-warn{background:var(--warning-bg);color:#92400e;border-radius:10px;justify-content:space-between;align-items:flex-start;gap:8px;padding:9px 12px;font-size:13px;line-height:1.45;display:flex}.wb-ok{color:var(--success);margin:0;font-size:13px;font-weight:600}.wb-stats{grid-template-columns:1fr 1fr;gap:8px;display:grid}.wb-stats div{background:var(--surface);border-radius:10px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.wb-stats span{color:var(--text-3);text-transform:uppercase;letter-spacing:.4px;font-size:11px;font-weight:600}.wb-stats strong{font-variant-numeric:tabular-nums;font-size:16px}.wb-check{cursor:pointer;align-items:center;gap:8px;font-size:14px;display:flex}.wb-check input{width:16px;height:16px;accent-color:var(--brand);margin:0}.swatch{border-radius:2px;flex-shrink:0;width:18px;height:4px;display:inline-block}.swatch.dash,.wb-legend i.dash{background:repeating-linear-gradient(90deg,currentColor 0 5px,#0000 5px 9px)}.wb-range{flex-direction:column;gap:4px;font-size:13px;display:flex}.wb-range input{width:100%;accent-color:var(--brand)}.wb-file{justify-content:space-between;align-items:center;gap:8px;font-size:13px;display:flex}.wb-file span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.wb-picker{border:1px solid var(--border-strong);background:var(--surface);border-radius:10px;flex-direction:column;gap:8px;padding:10px;font-size:13px;display:flex}.wb-picker .input,.wb-picker .select{width:100%;min-width:0}.wb-picker .select{height:auto;padding:4px}.wb-point{border:1px solid var(--saffron);background:#fff7f0;border-radius:12px;flex-direction:column;gap:8px;margin:12px 18px;padding:10px 12px;display:flex}.wb-point-head{justify-content:space-between;align-items:center;gap:8px;font-size:13px;display:flex}.wb-coords{grid-template-columns:1fr 1fr;gap:8px;display:grid}.wb-coords label{color:var(--text-3);flex-direction:column;gap:4px;font-size:12px;font-weight:600;display:flex}.wb-coords .input{font-variant-numeric:tabular-nums;width:100%;min-width:0;height:34px}.wb-coords .wb-row{grid-column:1/-1}.wb-maptools{z-index:2;pointer-events:none;flex-wrap:wrap;gap:8px;display:flex;position:absolute;top:10px;left:10px;right:64px}.wb-maptools>*{pointer-events:auto}.seg{background:var(--card);border-radius:10px;display:inline-flex;overflow:hidden;box-shadow:0 2px 8px #0a162833}.seg button{color:var(--text-2);cursor:pointer;background:0 0;border:0;padding:8px 12px;font-size:13px;font-weight:600}.seg button:hover{background:var(--surface)}.seg button.on{background:var(--brand);color:#fff}.wb-chip{background:var(--card);color:var(--brand);cursor:pointer;border:0;border-radius:10px;padding:8px 12px;font-size:13px;font-weight:600;box-shadow:0 2px 8px #0a162833}.wb-chip:hover{background:var(--surface)}.wb-drawbar{color:#fff;z-index:2;background:#0a1628e6;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;width:min(680px,100% - 24px);padding:10px 14px;font-size:13px;line-height:1.45;display:flex;position:absolute;top:58px;left:50%;transform:translate(-50%)}.btn.ghost.light-bg{color:#fff;border-color:#ffffff73}.btn.ghost.light-bg:hover{background:#ffffff1f}.wb-legend{color:var(--text-2);pointer-events:none;z-index:2;background:#fffffff0;border-radius:10px;flex-direction:column;gap:4px;padding:8px 10px;font-size:12px;font-weight:600;display:flex;position:absolute;bottom:30px;left:10px;box-shadow:0 2px 8px #0a162833}.wb-legend span{align-items:center;gap:6px;display:flex}.wb-legend i{border-radius:2px;width:18px;height:4px;display:inline-block}.map-marker{box-sizing:border-box;position:absolute;transform:translate(-50%,-50%)}.map-marker.draw-point{background:#fff;border:2px solid #0b7254;border-radius:50%;width:10px;height:10px}.map-marker.draw-first{background:#0b7254;border:3px solid #fff;border-radius:50%;width:16px;height:16px;box-shadow:0 0 0 2px #0b7254}.map-marker.draw-first.ready{width:22px;height:22px;animation:1.2s ease-in-out infinite wb-pulse}@keyframes wb-pulse{50%{box-shadow:0 0 0 2px #0b7254,0 0 0 9px #0b725440}}.map-marker.crossing{pointer-events:none;width:20px;height:20px}.map-marker.crossing:before,.map-marker.crossing:after{content:"";background:#dc2626;border-radius:2px;width:20px;height:4px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(45deg);box-shadow:0 0 0 1.5px #fff}.map-marker.crossing:after{transform:translate(-50%,-50%)rotate(-45deg)}.map-marker.vertex-selected{pointer-events:none;border:3px solid #ff6b00;border-radius:50%;width:26px;height:26px;box-shadow:0 0 0 2px #fff,0 0 12px #ff6b00b3}.map-marker.outside-building{background:#dc2626;border:2px solid #fff;border-radius:50%;width:14px;height:14px;box-shadow:0 1px 4px #00000073}.map-marker.outside-building.focus{z-index:1;width:22px;height:22px;box-shadow:0 0 0 5px #dc262659,0 1px 4px #00000073}.trace-image{pointer-events:none;-webkit-user-select:none;user-select:none;max-width:none;position:absolute}.trace-handle{cursor:nesw-resize;touch-action:none;background:#fff;border:2px solid #2563eb;border-radius:4px;place-items:center;width:18px;height:18px;display:grid;box-shadow:0 1px 4px #0006}.trace-handle.move{cursor:move;color:#2563eb;border-radius:50%;width:30px;height:30px;font-size:16px}.trace-handle.dragging{background:#dbeafe}@media (width<=1100px){.wb-layout{grid-template-columns:1fr}.wb-map{height:62vh;min-height:380px}.wb-panel{max-height:none;position:static}.wb-drawbar{flex-direction:column;align-items:stretch;top:auto;bottom:96px}}
