:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font:"Plus Jakarta Sans", "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--ink:#16223a;--ink-2:#4a5876;--ink-3:#8592ab;--line:#16223a17;--wash:#16223a0b;--accent:#4f5bf0;--accent-soft:#4f5bf01f;--accent-grad:linear-gradient(135deg, #5a63f2 0%, #7a5cf0 100%);--good:#1f9d68;--warn:#dd9a12;--bad:#e5484d;--glass:#ffffffbd;--glass-border:#fffc;--shadow:0 24px 60px -14px #18285a52, 0 2px 8px #18285a14;--radius:22px}html,body,#root{width:100%;height:100%;font-family:var(--font);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;padding:0;overflow:hidden}*{box-sizing:border-box}button{font-family:inherit}.glass{background:var(--glass);-webkit-backdrop-filter:blur(22px)saturate(1.6);border:1px solid var(--glass-border);box-shadow:var(--shadow), inset 0 1px 0 #ffffffe6;border-radius:var(--radius)}.bldg-label{-webkit-backdrop-filter:blur(10px)saturate(1.4);font-family:var(--font,system-ui, sans-serif);letter-spacing:-.005em;color:#16223a;white-space:nowrap;-webkit-user-select:none;user-select:none;background:#ffffffdb;border:1px solid #ffffffe6;border-radius:999px;align-items:center;gap:7px;padding:4px 10px 4px 4px;font-size:12px;font-weight:700;display:inline-flex;transform:translateY(-4px);box-shadow:0 6px 18px #1c2c5438,0 1px 3px #1c2c541f}.bldg-label-badge{background:var(--accent);color:#fff;border-radius:50%;place-items:center;width:22px;height:22px;display:grid}.bldg-label-dot{background:#22a06b;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #22a06b2e}.bldg-label--ok .bldg-label-dot{background:#e8a217;box-shadow:0 0 0 3px #e8a21733}.bldg-label--low .bldg-label-dot{background:#e5484d;box-shadow:0 0 0 3px #e5484d33}.compare-canvas-wrap .bldg-label{padding:3px 8px 3px 3px;font-size:10.5px}.compare-canvas-wrap .bldg-label-badge{width:18px;height:18px}.panel{z-index:10;width:316px;max-height:calc(100vh - 168px);font-family:var(--font);color:var(--ink);flex-direction:column;gap:12px;padding:16px;display:flex;position:absolute;top:24px;left:24px}.panel-brand{align-items:center;gap:11px;padding:2px 2px 4px;display:flex}.panel-logo{color:#fff;background:var(--accent-grad);border-radius:12px;place-items:center;width:38px;height:38px;display:grid;box-shadow:0 8px 18px -6px #5a63f2b3,inset 0 1px #ffffff59}.panel-brand-text{flex-direction:column;min-width:0;line-height:1.15;display:flex}.panel-brand-name{letter-spacing:-.02em;font-size:18px;font-weight:800}.panel-brand-team{color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;overflow:hidden}.panel-section-head{justify-content:space-between;align-items:center;padding:0 2px;display:flex}.panel-section-title{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);align-items:center;gap:7px;font-size:11px;font-weight:800;display:inline-flex}.panel-count{background:var(--wash);min-width:19px;height:19px;color:var(--ink-2);letter-spacing:0;border-radius:999px;place-items:center;padding:0 6px;font-size:11px;display:inline-grid}.panel-add{cursor:pointer;color:#fff;background:var(--accent-grad);border:none;border-radius:999px;align-items:center;gap:5px;height:30px;padding:0 12px 0 9px;font-size:12.5px;font-weight:700;transition:transform .15s,box-shadow .15s,background .2s;display:inline-flex;box-shadow:0 8px 18px -8px #5a63f2cc}.panel-add:hover{transform:translateY(-1px);box-shadow:0 12px 22px -8px #5a63f2d9}.panel-add svg{transition:transform .25s}.panel-add--open{background:var(--wash);color:var(--ink-2);box-shadow:none}.panel-add--open svg{transform:rotate(45deg)}.panel-composer-wrap{opacity:0;grid-template-rows:0fr;margin-top:-6px;transition:grid-template-rows .32s cubic-bezier(.3,.9,.3,1),opacity .25s,margin .32s;display:grid}.panel-composer-wrap--open{opacity:1;grid-template-rows:1fr;margin-top:0}.panel-composer{flex-direction:column;gap:10px;min-height:0;display:flex;overflow:hidden}.panel-composer-wrap--open .panel-composer{overflow:visible}.composer-input-row{border:1.5px solid var(--line);background:#ffffffd9;border-radius:16px;align-items:center;gap:10px;padding:6px 12px 6px 6px;transition:border-color .2s,box-shadow .2s;display:flex}.composer-input-row:focus-within{border-color:var(--accent-shape);box-shadow:0 0 0 4px color-mix(in srgb, var(--accent-shape) 18%, transparent)}.composer-glyph{color:#fff;background:var(--accent-shape);border-radius:11px;flex:none;place-items:center;width:34px;height:34px;transition:background .25s;display:grid}.composer-input{min-width:0;color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:14px;font-weight:600}.composer-input::placeholder{color:var(--ink-3);font-weight:500}.composer-shapes{grid-template-columns:repeat(8,1fr);gap:5px;display:grid}.composer-shape{aspect-ratio:1;background:var(--wash);color:var(--ink-2);cursor:pointer;border:1.5px solid #0000;border-radius:10px;place-items:center;transition:transform .15s,background .15s,color .15s;display:grid}.composer-shape:hover{color:var(--shape);transform:translateY(-2px)}.composer-shape--on{background:var(--shape);color:#fff;box-shadow:0 6px 14px -6px var(--shape)}.composer-shape--on:hover{color:#fff}.composer-shape-caption{color:var(--ink-3);align-items:baseline;gap:8px;margin:-2px 2px 0;font-size:12px;font-weight:500;display:flex}.composer-shape-caption strong{color:var(--ink);font-weight:700}.composer-go{cursor:pointer;color:#fff;background:var(--accent-shape);height:40px;box-shadow:0 10px 20px -10px var(--accent-shape);border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;font-size:13.5px;font-weight:700;transition:transform .15s,opacity .2s,background .25s;display:flex}.composer-go:hover:not(:disabled){transform:translateY(-1px)}.composer-go:disabled{cursor:not-allowed;opacity:.4;box-shadow:none}.panel-list{scrollbar-width:thin;scrollbar-color:#16223a2e transparent;flex-direction:column;gap:6px;min-height:0;margin:0 -6px;padding:2px 6px;display:flex;overflow-y:auto}.panel-row{background:#ffffff8c;border:1.5px solid #0000;border-radius:16px;align-items:center;transition:transform .15s,background .15s,border-color .15s,box-shadow .15s;display:flex;position:relative}.panel-row:hover{background:#fffffff2;transform:translate(2px);box-shadow:0 8px 20px -10px #18285a4d}.panel-row--selected{border-color:color-mix(in srgb, var(--shape) 55%, transparent);box-shadow:0 0 0 3px color-mix(in srgb, var(--shape) 14%, transparent);background:#fff}.panel-row-main{text-align:left;cursor:pointer;min-width:0;color:inherit;background:0 0;border:none;flex:1;align-items:center;gap:11px;padding:8px 10px 8px 8px;display:flex}.panel-row-badge{color:#fff;background:linear-gradient(150deg, color-mix(in srgb, var(--shape) 82%, #fff), var(--shape));width:38px;height:38px;box-shadow:0 6px 14px -6px var(--shape), inset 0 1px 0 #ffffff59;border-radius:12px;flex:none;place-items:center;display:grid}.panel-row-text{flex-direction:column;flex:1;min-width:0;line-height:1.2;display:flex}.panel-row-name{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:700;overflow:hidden}.panel-row-kind{color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;font-weight:500;overflow:hidden}.panel-dot{background:var(--good);border-radius:50%;flex:none;width:8px;height:8px;box-shadow:0 0 0 4px #1f9d6826}.panel-dot--ok{background:var(--warn);box-shadow:0 0 0 4px #dd9a122e}.panel-dot--low{background:var(--bad);box-shadow:0 0 0 4px #e5484d2e}.panel-row-remove{height:30px;color:var(--ink-3);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:10px;align-items:center;gap:5px;margin-right:8px;padding:0 8px;font-size:11.5px;font-weight:700;transition:opacity .15s,background .15s,color .15s;display:inline-flex}.panel-row:hover .panel-row-remove,.panel-row-remove:focus-visible,.panel-row-remove--confirm{opacity:1}.panel-row-remove:hover{color:var(--bad);background:#e5484d1f}.panel-row-remove--confirm,.panel-row-remove--confirm:hover{background:var(--bad);color:#fff}.panel-empty{text-align:center;color:var(--ink-3);border:1.5px dashed #16223a29;border-radius:18px;flex-direction:column;align-items:center;gap:4px;padding:18px 12px;font-size:12px;display:flex}.panel-empty strong{color:var(--ink);font-size:13.5px}.panel-empty-icon{width:40px;height:40px;color:var(--accent);background:var(--accent-soft);border-radius:14px;place-items:center;margin-bottom:4px;display:grid}.panel-suggest{border-top:1px solid var(--line);margin-top:4px;padding:10px 4px 2px}.panel-suggest-head{color:var(--ink-3);justify-content:space-between;align-items:center;margin-bottom:8px;font-size:11px;font-weight:700;display:flex}.panel-suggest-all{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:2px 4px;font-size:11.5px;font-weight:700}.panel-suggest-all:hover{text-decoration:underline}.panel-chips{flex-wrap:wrap;gap:6px;display:flex}.panel-chip{height:28px;color:var(--ink-2);cursor:pointer;background:0 0;border:1.5px dashed #16223a33;border-radius:999px;align-items:center;gap:4px;padding:0 11px 0 8px;font-size:12.5px;font-weight:600;transition:all .15s;display:inline-flex}.panel-chip:hover{border-style:solid;border-color:var(--accent);background:var(--accent-soft);color:var(--accent);transform:translateY(-1px)}.panel-shared{border-top:1px solid var(--line);flex-direction:column;gap:7px;padding-top:10px;display:flex}.panel-shared>.panel-section-title{padding:0 2px}.panel-hint{background:var(--wash);color:var(--ink-2);border-radius:14px;align-items:center;gap:8px;padding:9px 12px;font-size:12px;font-weight:500;line-height:1.35;display:flex}.panel-hint svg{color:var(--ink-3);flex:none}.panel-hint strong{color:var(--ink);font-weight:700}@media (width<=820px){.panel{width:280px}}.coaching-note{flex-direction:column;display:flex}.coaching-note-trigger{color:var(--ink);cursor:pointer;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:9px 12px;font-size:12.5px;font-weight:700;transition:transform .15s;display:flex}.coaching-note-trigger:hover{transform:translateY(-1px)}.coaching-note-trigger svg{color:var(--accent);flex:none}.coaching-note-trigger--warning svg{color:var(--bad)}.coaching-note-card{color:var(--ink-2);border-radius:14px;flex-direction:column;gap:6px;max-height:220px;padding:11px 13px;font-size:12.5px;line-height:1.45;display:flex;overflow-y:auto}.coaching-note-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.coaching-note-label{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);align-items:center;gap:5px;font-size:10.5px;font-weight:800;display:inline-flex}.coaching-note-reset{color:var(--ink-3);cursor:pointer;background:0 0;border:none;padding:0;font-size:10.5px;font-weight:700}.coaching-note-reset:hover{color:var(--accent);text-decoration:underline}.coaching-note-status{color:var(--ink);margin:0;font-size:13px;font-weight:800}.coaching-note-row{flex-direction:column;gap:1px;margin:0;display:flex}.coaching-note-row span{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3);font-size:10px;font-weight:800}.coaching-note-card--loading{color:var(--ink-3);flex-direction:row;align-items:center;font-weight:600}.coaching-note-spin{animation:1.4s linear infinite coaching-note-spin}@keyframes coaching-note-spin{to{transform:rotate(360deg)}}.coaching-note-card--error{color:var(--bad)}.hud{z-index:10;width:268px;font-family:var(--font);color:var(--ink);scrollbar-width:thin;scrollbar-color:#16223a2e transparent;flex-direction:column;gap:10px;padding-bottom:4px;display:flex;position:absolute;top:24px;bottom:24px;right:24px;overflow:hidden auto}.hud-teams{border-radius:18px;flex-direction:column;gap:2px;padding:5px;display:flex}.hud-team-row{align-items:center;gap:2px;display:flex}.hud-team{min-width:0;color:var(--ink-2);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:13px;flex:1;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px 9px 12px;font-size:13px;font-weight:600;transition:background .15s,color .15s;display:flex}.hud-team:hover{background:var(--wash)}.hud-team--active{background:var(--ink);color:#fff}.hud-team--active:hover{background:var(--ink)}.hud-team-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hud-team-score{text-align:center;min-width:26px;color:var(--good);background:#1f9d6821;border-radius:999px;flex:none;padding:2px 7px;font-size:11.5px;font-weight:800}.hud-team-score--ok{color:#a86f00;background:#dd9a1229}.hud-team-score--low{color:var(--bad);background:#e5484d21}.hud-team--checked{background:var(--accent-soft);color:var(--accent)}.hud-team--checked:hover{background:var(--accent-soft)}.hud-team--capped{opacity:.4;cursor:not-allowed}.hud-team-actions{opacity:0;flex:none;align-items:center;gap:2px;transition:opacity .15s;display:flex}.hud-team-row:hover .hud-team-actions,.hud-team-actions:focus-within{opacity:1}.hud-team-edit,.hud-team-remove{color:var(--ink-3);cursor:pointer;background:0 0;border:none;border-radius:10px;flex:none;align-items:center;gap:4px;padding:6px;font-size:10.5px;font-weight:700;transition:background .15s,color .15s;display:flex}.hud-team-edit:hover{background:var(--wash);color:var(--ink)}.hud-team-remove:hover{color:var(--bad);background:#e5484d1f}.hud-team-remove--confirm{opacity:1;background:var(--bad);color:#fff;padding:6px 9px}.hud-team-remove--confirm:hover{background:var(--bad);color:#fff}.hud-team-add{color:var(--ink-3);cursor:pointer;background:0 0;border:none;border-radius:12px;align-items:center;gap:6px;margin-top:2px;padding:8px 10px;font-size:12px;font-weight:700;transition:background .15s,color .15s;display:flex}.hud-team-add:hover{background:var(--wash);color:var(--ink)}.hud-team-add--open svg{transform:rotate(45deg)}.hud-team-add svg{transition:transform .15s}.hud-team-composer-wrap{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .32s cubic-bezier(.3,.9,.3,1),opacity .25s,margin .32s;display:grid}.hud-team-composer-wrap--open{opacity:1;grid-template-rows:1fr;margin-top:4px}.hud-team-composer-wrap>.hud-team-composer{overflow:hidden}.hud-team-composer-wrap--open>.hud-team-composer{overflow:visible}.hud-team-composer{flex-direction:column;gap:6px;padding:10px;display:flex}.hud-team-field{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:10px;padding:8px 10px;font-size:12.5px}.hud-team-field:focus{border-color:var(--accent);outline:none}.hud-team-composer-go{background:var(--accent-grad);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:8px 10px;font-size:12.5px;font-weight:700}.hud-team-composer-go:disabled{cursor:not-allowed;opacity:.4;box-shadow:none}.hud-compare-picker-head{color:var(--ink-3);justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;font-size:11px;font-weight:700;display:flex}.hud-score{--level:var(--good);align-items:center;gap:14px;padding:12px 16px 12px 12px;display:flex}.hud-score--ok{--level:var(--warn)}.hud-score--low{--level:var(--bad)}.hud-ring{flex:none;width:60px;height:60px;position:relative}.hud-ring svg{transform:rotate(-90deg)}.hud-ring circle{fill:none;stroke-width:6px;stroke-linecap:round}.hud-ring-track{stroke:var(--wash)}.hud-ring-value{stroke:var(--level);transition:stroke-dashoffset .7s cubic-bezier(.3,.9,.3,1),stroke .4s}.hud-score-value{letter-spacing:-.03em;place-items:center;font-size:20px;font-weight:800;display:grid;position:absolute;inset:0}.hud-score-text{flex-direction:column;line-height:1.25;display:flex}.hud-score-title{font-size:14px;font-weight:700}.hud-score-label{color:var(--ink-3);font-size:12px;font-weight:500}.hud-signal{flex-direction:column;gap:6px;max-width:100%;display:flex}.hud-signal-toggle{width:100%;color:var(--ink);text-align:left;cursor:pointer;border-radius:16px;align-items:center;gap:9px;padding:10px 14px;font-size:12.5px;font-weight:600;transition:transform .15s;display:flex}.hud-signal-toggle:hover:not(:disabled){transform:translateY(-1px)}.hud-signal-toggle:disabled{cursor:wait;opacity:.7}.hud-signal-icon{width:26px;height:26px;color:var(--accent);background:var(--accent-soft);border-radius:9px;flex:none;place-items:center;display:grid}.hud-signal-label{flex:1;min-width:0}.hud-signal-toggle>svg{color:var(--ink-3);flex:none}.hud-signal-details{color:var(--ink-2);border-radius:16px;max-height:240px;padding:10px 12px;font-size:11.5px;line-height:1.45;overflow-y:auto}.hud-signal--muted{color:var(--ink-3);border-radius:16px;padding:10px 12px;font-size:11.5px;line-height:1.4}.hud-signal-details--error{color:var(--bad);word-break:break-word}.hud-detail-list{flex-direction:column;gap:7px;margin:0;padding-left:16px;display:flex}.hud-detail-list strong{color:var(--ink)}.hud-detail-done{color:var(--good);align-items:center;gap:3px;margin-left:6px;font-weight:700;display:inline-flex}.hud-compare-toggle{color:var(--ink);cursor:pointer;border-radius:16px;justify-content:center;align-items:center;gap:8px;padding:11px 14px;font-size:13px;font-weight:700;transition:transform .15s;display:flex}.hud-compare-toggle:hover{transform:translateY(-1px)}.hud-warning-wrap{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .45s,opacity .4s,transform .45s;display:grid;transform:translateY(-4px)}.hud-warning-wrap--visible{opacity:1;grid-template-rows:1fr;transform:translateY(0)}.hud-warning{color:#a13036;background:#fff0efeb;border:1px solid #e5484d47;border-radius:16px;align-items:center;gap:9px;min-height:0;padding:11px 13px;font-size:12.5px;font-weight:600;display:flex;overflow:hidden;box-shadow:0 14px 34px -14px #e5484d73}.hud-warning svg{flex:none}.hud-warning-wrap--visible .hud-warning{animation:2.2s ease-in-out infinite hud-warning-pulse}@keyframes hud-warning-pulse{0%,to{box-shadow:0 14px 34px -14px #e5484d59}50%{box-shadow:0 14px 34px -10px #e5484da6}}@media (width<=820px){.hud{width:232px}}.timeline{z-index:10;width:min(560px,100vw - 48px);font-family:var(--font);color:var(--ink);padding:14px 24px 10px;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.timeline-header{align-items:baseline;gap:6px;margin-bottom:6px;display:flex}.timeline-title{letter-spacing:-.01em;font-size:15px;font-weight:800}.timeline-sub{color:var(--ink-3);font-size:12px;font-weight:600}.timeline-slider{appearance:none;cursor:pointer;background:linear-gradient(90deg,#a5b4fc,#6366f1 60%,#8b5cf6);border-radius:999px;outline:none;width:100%;height:6px;margin:6px 0 8px}.timeline-slider::-webkit-slider-thumb{appearance:none;border:4px solid var(--accent);cursor:pointer;background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .15s;box-shadow:0 4px 10px #4f5bf066}.timeline-slider::-webkit-slider-thumb:hover{transform:scale(1.12)}.timeline-slider::-moz-range-thumb{border:4px solid var(--accent);cursor:pointer;background:#fff;border-radius:50%;width:12px;height:12px;box-shadow:0 4px 10px #4f5bf066}.timeline-ticks{justify-content:space-between;display:flex}.timeline-tick{color:var(--ink-3);cursor:pointer;background:0 0;border:none;border-radius:50%;width:24px;height:24px;font-size:11px;font-weight:700;transition:background .12s,color .12s}.timeline-tick:hover{background:var(--wash);color:var(--ink)}.timeline-tick--active,.timeline-tick--active:hover{background:var(--ink);color:#fff}.compare-view{font-family:var(--font);color:var(--ink);gap:20px;padding:88px 24px 116px;display:flex;position:absolute;inset:0}.compare-card{flex-direction:column;flex:1;gap:8px;min-width:0;padding:14px;display:flex}.compare-card-header{justify-content:space-between;align-items:center;padding:0 4px;display:flex}.compare-team-name{letter-spacing:-.01em;font-size:15px;font-weight:800}.compare-score{color:var(--good);background:#1f9d6821;border-radius:999px;padding:3px 12px;font-size:15px;font-weight:800}.compare-warning-wrap{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .45s,opacity .4s;display:grid}.compare-warning-wrap--visible{opacity:1;grid-template-rows:1fr}.compare-warning{color:#a13036;background:#fff0efeb;border:1px solid #e5484d47;border-radius:12px;align-items:center;gap:7px;min-height:0;padding:7px 11px;font-size:12px;font-weight:600;display:flex;overflow:hidden}.compare-canvas-wrap{background:#eaf6ff;border-radius:16px;flex:1;min-height:0;overflow:hidden}@media (width<=760px){.compare-view{flex-direction:column;padding:88px 16px 140px}}.details-popup{z-index:20;width:300px;font-family:var(--font);color:var(--ink);flex-direction:column;gap:12px;padding:14px;animation:.2s cubic-bezier(.3,1.2,.4,1) details-popup-in;display:flex;position:fixed;transform:translate(-50%,-100%)}@keyframes details-popup-in{0%{opacity:0;transform:translate(-50%,-100%)translateY(8px)scale(.95)}to{opacity:1;transform:translate(-50%,-100%)scale(1)}}.details-popup-arrow{border-right:1px solid var(--glass-border);border-bottom:1px solid var(--glass-border);background:#ffffffe6;border-radius:0 0 4px;width:14px;height:14px;margin-left:-7px;position:absolute;bottom:-7px;left:50%;transform:rotate(45deg)}.details-popup-header{align-items:center;gap:11px;display:flex}.details-popup-badge{color:#fff;background:linear-gradient(150deg, color-mix(in srgb, var(--shape) 78%, #fff), var(--shape));width:42px;height:42px;box-shadow:0 8px 18px -8px var(--shape), inset 0 1px 0 #ffffff59;border-radius:14px;flex:none;place-items:center;transition:background .2s;display:grid}.details-popup-titles{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.details-popup-name{letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;font-size:15.5px;font-weight:800;overflow:hidden}.details-popup-type{color:var(--ink-3);font-size:12px;font-weight:600}.details-popup-name-input{border:1.5px solid var(--shape);width:100%;color:var(--ink);box-shadow:0 0 0 3px color-mix(in srgb, var(--shape) 16%, transparent);background:#fff;border-radius:10px;outline:none;padding:5px 8px;font-family:inherit;font-size:14.5px;font-weight:700}.details-popup-actions{align-self:flex-start;gap:2px;display:flex}.details-popup-icon-btn{width:30px;height:30px;color:var(--ink-3);cursor:pointer;background:0 0;border:none;border-radius:10px;place-items:center;transition:background .15s,color .15s;display:grid}.details-popup-icon-btn:hover{background:var(--wash);color:var(--ink)}.details-popup-blurb{color:var(--ink-2);margin:0;font-size:12.5px;line-height:1.5}.details-popup-status{border:1px solid var(--line);--level:var(--good);background:#ffffffb3;border-radius:14px;flex-direction:column;gap:5px;padding:11px 12px;display:flex}.details-popup-status--ok{--level:var(--warn)}.details-popup-status--low{--level:var(--bad)}.details-popup-meter{background:var(--wash);border-radius:999px;height:6px;margin-bottom:3px;overflow:hidden}.details-popup-meter span{border-radius:inherit;background:var(--level);height:100%;transition:width .5s cubic-bezier(.3,.9,.3,1);display:block}.details-popup-status-headline{font-size:13px;font-weight:700}.details-popup-status-detail{color:var(--ink-2);font-size:12px;font-weight:500}.details-popup-notes{flex-direction:column;gap:3px;display:flex}.details-popup-notes p{color:var(--ink-2);white-space:pre-wrap;margin:0;font-size:12.5px;line-height:1.5}.details-popup-field-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-size:10.5px;font-weight:800}.details-popup-edit{flex-direction:column;gap:8px;display:flex}.details-popup-shapes{grid-template-columns:repeat(8,1fr);gap:5px;display:grid}.details-popup-shape{aspect-ratio:1;background:var(--wash);color:var(--ink-2);cursor:pointer;border:none;border-radius:9px;place-items:center;transition:transform .15s,background .15s,color .15s;display:grid}.details-popup-shape:hover{color:var(--tile);transform:translateY(-2px)}.details-popup-shape--on,.details-popup-shape--on:hover{background:var(--tile);color:#fff}.details-popup-notes-input{resize:none;border:1.5px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:12px;outline:none;padding:9px 11px;font-family:inherit;font-size:12.5px;transition:border-color .15s,box-shadow .15s}.details-popup-notes-input:focus{border-color:var(--shape);box-shadow:0 0 0 3px color-mix(in srgb, var(--shape) 16%, transparent)}.details-popup-edit-actions{align-items:center;gap:6px;margin-top:2px;display:flex}.details-popup-spacer{flex:1}.details-popup-btn{cursor:pointer;border:none;border-radius:10px;align-items:center;gap:5px;height:32px;padding:0 12px;font-size:12.5px;font-weight:700;transition:transform .15s,background .15s,opacity .15s;display:inline-flex}.details-popup-btn:hover:not(:disabled){transform:translateY(-1px)}.details-popup-btn:disabled{opacity:.4;cursor:not-allowed}.details-popup-btn--ghost{color:var(--ink-2);background:0 0}.details-popup-btn--ghost:hover{background:var(--wash)}.details-popup-btn--primary{color:#fff;background:var(--shape);box-shadow:0 8px 16px -8px var(--shape)}.details-popup-btn--danger{color:var(--bad);background:0 0;padding:0 8px}.details-popup-btn--danger:hover{background:#e5484d1a}.details-popup-btn--danger.is-confirm{background:var(--bad);color:#fff}.app-root{background:#eaf6ff;width:100vw;height:100vh;position:relative}.app-canvas{touch-action:none;cursor:grab;width:100%;height:100%}.empty-village{place-items:center;display:grid;position:absolute;inset:0}.empty-village-card{text-align:center;max-width:280px;color:var(--ink);flex-direction:column;align-items:center;gap:10px;padding:32px 28px;display:flex}.empty-village-card svg{color:var(--accent)}.empty-village-card strong{font-size:16px}.empty-village-card span{color:var(--ink-2);font-size:13px;line-height:1.45}.empty-village-cta{background:var(--accent-grad);color:#fff;cursor:pointer;border:none;border-radius:14px;align-items:center;gap:6px;margin-top:8px;padding:10px 16px;font-size:13px;font-weight:700;transition:transform .15s;display:flex}.empty-village-cta:hover{transform:translateY(-1px)}
