:root{--bg:#0d0d0d;--surface:#1a1a1a;--surface-2:#202020;--line:#2e2e2e;--text:#f2f2f2;--muted:#a5a5a5;--brand-yellow:#c6ff00;--brand-orange:#c6ff00;--green:#c6ff00;--red:#ef5b55;--blue:#c0c0c0;--paper:var(--bg);--ink:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color-scheme:dark}
[data-theme="light"]{--bg:#0d0d0d;--surface:#1a1a1a;--surface-2:#202020;--line:#2e2e2e;--text:#f2f2f2;--muted:#a5a5a5;--brand-yellow:#c6ff00;--brand-orange:#c6ff00;--green:#c6ff00;--paper:var(--bg);--ink:var(--text);color-scheme:dark}
html,body{background:var(--bg);color:var(--text)}body{background:radial-gradient(circle at 20% -10%,color-mix(in srgb,var(--brand-yellow) 13%,transparent),transparent 35%),linear-gradient(180deg,color-mix(in srgb,var(--bg) 82%,#17243a) 0,var(--bg) 38%);background-attachment:fixed}button,input,select,textarea{color:inherit}.app-shell{background:transparent}.sidebar{background:rgba(7,16,31,.9);border-right:1px solid rgba(255,255,255,.08);backdrop-filter:blur(18px)}[data-theme="light"] .sidebar{background:rgba(255,255,255,.9);border-color:#dbe3ed}.sidebar .brand{color:var(--text)}.brand-mark{border-color:var(--brand-yellow);color:var(--brand-yellow);box-shadow:0 0 22px color-mix(in srgb,var(--brand-yellow) 18%,transparent)}.brand small{color:var(--muted)}.sidebar button{color:var(--muted);border-radius:13px;transition:.2s}.sidebar nav button:hover{background:color-mix(in srgb,var(--surface-2) 88%,transparent);color:var(--text)}.sidebar nav button.active{background:linear-gradient(135deg,color-mix(in srgb,var(--brand-yellow) 18%,var(--surface)),color-mix(in srgb,var(--brand-orange) 9%,var(--surface)));color:var(--text);box-shadow:inset 3px 0 0 var(--brand-yellow)}.sidebar nav button.active i{color:var(--brand-yellow)}.sidebar nav b{background:var(--brand-orange)}.profile{border-color:var(--line)}.profile>span{background:linear-gradient(135deg,var(--brand-orange),var(--brand-yellow));color:#17171a;font-weight:900}.workspace header{position:sticky;top:0;z-index:15;background:color-mix(in srgb,var(--bg) 82%,transparent);border-color:rgba(255,255,255,.07);backdrop-filter:blur(18px)}[data-theme="light"] .workspace header{border-color:#dbe3ed}.crumb,.muted{color:var(--muted)}.header-actions button,.menu{background:var(--surface-2);border-color:var(--line);color:var(--text);border-radius:50%}.header-actions button:hover,.menu:hover{border-color:var(--brand-yellow);color:var(--brand-yellow)}.header-actions b{background:var(--brand-orange)}
.eyebrow,.eyebrow.dark{color:var(--brand-yellow)}.page-head h1,.login-card h2,.project-admin h2,.annotation-form-head h2{font-family:inherit;font-weight:800;letter-spacing:-.035em}.primary,.button{background:linear-gradient(135deg,var(--brand-orange),var(--brand-yellow));color:#17171a;border:0;border-radius:14px;box-shadow:0 10px 25px color-mix(in srgb,var(--brand-orange) 22%,transparent)}.primary:hover{transform:translateY(-1px);filter:brightness(1.05)}.primary:disabled{filter:saturate(.3);opacity:.6}.project-card,.project-admin>header{background:linear-gradient(135deg,#17243a,#101925);border:1px solid color-mix(in srgb,var(--brand-yellow) 24%,transparent);border-radius:20px}.metric,.card,.project-admin,.building-admin,.floor-card,.team-member,.document-card,.registry-row,.registry-metrics article{background:color-mix(in srgb,var(--surface) 96%,transparent);border-color:var(--line);border-radius:18px;color:var(--text);box-shadow:0 12px 35px #00000018}.metric{border-top-color:var(--brand-yellow)!important}.metric strong,.registry-metrics strong{color:var(--text)}.metric small,.metric span,.document-info p,.document-info small{color:var(--muted)}.progress-list i,.progress{background:var(--surface-2)}.progress-list em,.progress>span{background:linear-gradient(90deg,var(--brand-orange),var(--brand-yellow))!important}.card-head button,.document-card>a,.floor-card button{color:var(--brand-yellow)!important}.registry-filters,.plan-toolbar,.plan-detail,.notification-drawer,.annotation-form,.search-dialog{background:var(--surface);border-color:var(--line);color:var(--text)}.registry-filters input,.registry-filters select,.plan-selects select,.plan-tools select,.annotation-form input:not([type=radio]),.annotation-form select,.annotation-form textarea,.search-dialog input{background:var(--surface-2);border-color:var(--line);color:var(--text);border-radius:13px}.registry-filters input:focus,.registry-filters select:focus,.annotation-form input:focus,.annotation-form select:focus,.annotation-form textarea:focus{border-color:var(--brand-orange);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-orange) 15%,transparent)}.registry-header{color:var(--muted)}.registry-row{border:1px solid var(--line);margin-bottom:8px}.status-tag{border:1px solid color-mix(in srgb,var(--status) 38%,transparent)}.plan-stage-wrap{background:#0b1628;border-color:var(--line)}[data-theme="light"] .plan-stage-wrap{background:#dfe6ef}.plan-transform{box-shadow:0 16px 45px #0008}.plan-legend{background:var(--surface);border-color:var(--line);color:var(--muted)}.plan-toolbar button{color:var(--muted)}.plan-toolbar button:hover{background:var(--surface-2);color:var(--text)}.plan-toolbar button.active{background:linear-gradient(135deg,var(--brand-orange),var(--brand-yellow));color:#17171a}.detail-comment,.document-upload-note,.notification-empty{background:var(--surface-2);color:var(--muted)}.annotation-modal,.notification-backdrop,.search-layer{background:#020711d9;backdrop-filter:blur(8px)}.annotation-form,.search-dialog,.notification-drawer{box-shadow:0 25px 80px #0009}.record-type label,.cancel-card,.export-bar button,.security-bar button{background:var(--surface-2);border-color:var(--line);color:var(--text)}.stored-photos figure,.task-discussion article,.task-history article{border-color:var(--line)}.task-discussion textarea{background:var(--surface-2)!important}.security-bar{background:color-mix(in srgb,var(--surface) 88%,var(--brand-yellow));border-color:color-mix(in srgb,var(--line) 70%,var(--brand-yellow))}.notification-item{background:var(--surface);border-color:var(--line)}.notification-item.unread{background:color-mix(in srgb,var(--surface) 90%,var(--green));border-left-color:var(--green)}.notification-item.overdue{background:color-mix(in srgb,var(--surface) 90%,var(--red));border-left-color:var(--red)}.search-dialog main>button{background:var(--surface);border-color:var(--line);color:var(--text)}.search-dialog main>button:hover{background:var(--surface-2)}
.login-brand{background:radial-gradient(circle at 20% -10%,rgba(247,211,49,.18),transparent 36%),linear-gradient(145deg,#07101f,#17243a)}.login-panel{background:var(--bg)}.login-card input{background:var(--surface);border-color:var(--line);color:var(--text)}.login-card input:focus{border-color:var(--brand-orange);box-shadow:0 0 0 3px rgba(243,154,32,.15)}.login-card .link{color:var(--brand-yellow)}.demo-note{color:var(--muted)!important}
.theme-toggle{font-size:16px}.theme-toggle::after{content:"☾"}[data-theme="light"] .theme-toggle::after{content:"☀"}
.help-grid{display:grid;gap:10px;margin-top:24px}.help-grid article{display:grid;grid-template-columns:38px 1fr;gap:12px;padding:14px;border:1px solid var(--line);border-radius:15px;background:var(--surface-2)}.help-grid article>b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--brand-orange),var(--brand-yellow));color:#17171a}.help-grid strong{font-size:13px}.help-grid p{margin:4px 0 0;color:var(--muted);font-size:11px;line-height:1.5}
@media(max-width:760px){.app-shell{display:block}.sidebar{position:fixed;left:0;right:0;bottom:0;top:auto;width:auto;height:auto;z-index:50;padding:7px 8px calc(7px + env(safe-area-inset-bottom));border:0;border-top:1px solid var(--line)}.sidebar .brand,.sidebar-foot{display:none}.sidebar nav{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.sidebar nav button{display:grid;place-items:center;gap:2px;padding:7px 2px;font-size:8px;text-align:center}.sidebar nav i{font-size:17px}.sidebar nav b{position:absolute;margin:0;transform:translate(13px,-12px)}.sidebar nav button.active{box-shadow:inset 0 3px 0 var(--brand-yellow)}.workspace{padding-bottom:calc(72px + env(safe-area-inset-bottom))}.workspace header{height:64px}.page-head h1{font-size:28px}.metrics{grid-template-columns:1fr 1fr}.grid{grid-template-columns:1fr}.plan-layout{grid-template-columns:1fr}.plan-detail{border-left:1px solid var(--line)}.registry-table{min-width:760px}.registry-filters{display:flex;overflow-x:auto}.registry-filters>*{flex:0 0 190px}.team-member{min-width:760px}.team-list{overflow-x:auto}.project-card{border-radius:18px}.annotation-form{border-radius:22px 22px 0 0;align-self:end;max-height:94vh}.annotation-modal{align-items:end;padding:0}}
@media(max-width:420px){#content{padding:18px 12px}.metrics{gap:8px}.metric{padding:14px}.header-actions{gap:5px}.header-actions button{width:36px;height:36px}.sidebar nav button{font-size:7px}}

/* Полноэкранный десктопный план без внутренней прокрутки. */
/* Точки и полигоны в стиле Mini App. */
.plan-transform{touch-action:none}.annotation-polygons{pointer-events:all}.plan-polygon{pointer-events:all;transform-box:fill-box;transform-origin:center;animation:polygonBreath 2.8s ease-in-out infinite}.plan-point{width:23px;height:23px;border:1px solid #fff;border-radius:50%;rotate:0;background:radial-gradient(circle at 35% 30%,#fff8 0 8%,var(--status) 42%,color-mix(in srgb,var(--status) 72%,#000));box-shadow:0 0 0 3px color-mix(in srgb,var(--status) 18%,transparent),0 3px 10px #0008;isolation:isolate}.plan-point::before{content:"";position:absolute;inset:-8px;border-radius:50%;z-index:-1;background:var(--status);filter:blur(8px);opacity:.48;animation:planPointGlow 2.2s ease-in-out infinite}.plan-point span{rotate:0;font-size:7px;text-shadow:0 1px 2px #000}.plan-point:hover,.plan-point.selected{outline:2px solid #fff;scale:1.18}@keyframes planPointGlow{0%,100%{transform:scale(.72);opacity:.24}50%{transform:scale(1.22);opacity:.65}}@keyframes polygonBreath{0%,100%{fill-opacity:.65;filter:drop-shadow(0 0 0 transparent)}50%{fill-opacity:1;filter:drop-shadow(0 0 2px var(--status))}}@media(prefers-reduced-motion:reduce){.plan-point::before,.plan-polygon{animation:none}}

/* В тёмной теме все списки и пустые состояния остаются тёмными. */
.projects-list,.buildings-list,.floor-cards,.documents-grid,.registry-table{background:transparent!important}.registry-header,.registry-filters label{background:var(--surface-2)!important}.registry-empty,.empty-state{background:var(--surface)!important;color:var(--text)!important;border:1px solid var(--line)!important}.registry-empty h3,.empty-state h2{color:var(--text)!important}.registry-empty p,.empty-state p{color:var(--muted)!important}.floor-settings{display:grid;gap:14px}.floor-summary{display:flex;gap:12px;align-items:center}.rooms-settings{background:var(--surface-2);border:1px solid var(--line);border-radius:14px;padding:12px;line-height:1.3}.rooms-settings header,.room-row{display:flex;align-items:center;gap:10px}.rooms-settings header{justify-content:space-between;margin-bottom:8px}.rooms-settings button{background:transparent;border:1px solid var(--line);border-radius:9px;color:var(--brand-yellow);padding:6px 9px}.rooms-settings>p{margin:8px 0 0;color:var(--muted);font-size:11px}.room-row{border-top:1px solid var(--line);padding:8px 0}.room-row>span{min-width:46px;color:var(--brand-yellow)}.room-row>strong{flex:1}.room-row button:last-child{color:var(--red)}

/* v39 — report markers do not gain a ring on hover. */
.plan-point:hover{border-color:transparent!important;outline:none!important}
.plan-point:hover::after{border-color:transparent!important}

/* v37 — active sidebar entries stay readable in the light theme. */
[data-theme="light"] .sidebar nav button.active,[data-theme="light"] .sidebar nav button.active span,[data-theme="light"] .sidebar nav button.active i{color:#151713!important}
[data-theme="light"] .sidebar nav button.active svg{color:#151713!important;stroke:#151713!important}

/* v38 — brand marks never behave like interactive hover cards. */
.brand,.brand:hover,.brand:focus,.brand:focus-visible,.sidebar .brand:hover,.login-brand>.brand:hover{background:transparent!important;background-color:transparent!important;border-color:transparent!important;box-shadow:none!important;filter:none!important;outline:none!important;transform:none!important}

/* v34 — readable dashboard project card in the light theme. */
[data-theme="light"] .project-card{color:var(--text)!important}
[data-theme="light"] .project-card h3,[data-theme="light"] .project-card>button{color:var(--text)!important}
[data-theme="light"] .project-card small{color:#587084!important}
[data-theme="light"] .project-card p{color:var(--muted)!important}
[data-theme="light"] .project-card .project-icon{background:rgba(22,58,95,.08)!important;color:#163a5f!important}
[data-theme="light"] .project-card>button svg{stroke:currentColor!important}

/* v36 — the login logo is decorative and never receives a hover-card background. */
.login-brand>.brand,.login-brand>.brand:hover,.login-brand>.brand:focus,.login-brand>.brand:focus-visible{background:transparent!important;border-color:transparent!important;box-shadow:none!important;outline:none!important;transform:none!important}

/* Brand motion, sidebar polish, plan crosshairs and calmer registries. */
.login-brand{isolation:isolate;overflow:hidden}.login-brand::before{content:"";position:absolute;z-index:0;inset:-35%;background-image:radial-gradient(circle,#fff 0 1px,transparent 1.5px),radial-gradient(circle,rgba(198,255,0,.9) 0 1px,transparent 1.7px),radial-gradient(circle,rgba(255,255,255,.65) 0 .7px,transparent 1.2px);background-size:83px 83px,137px 137px,211px 211px;background-position:0 0,31px 58px,94px 17px;opacity:.32;animation:star-drift 52s linear infinite}.login-brand>.brand,.login-brand>.brand-copy,.login-brand>.brand-facts{position:relative;z-index:1}.login-brand .brand-logo{animation:brand-breathe 3.8s ease-in-out infinite}@keyframes star-drift{to{transform:translate3d(9%,14%,0) rotate(.8deg)}}@keyframes brand-breathe{0%,100%{filter:drop-shadow(0 0 4px rgba(198,255,0,.16))}50%{filter:drop-shadow(0 0 18px rgba(198,255,0,.58)) drop-shadow(0 0 38px rgba(198,255,0,.2))}}
input[type="checkbox"]{accent-color:var(--brand-yellow)}
.sidebar-brand{margin-bottom:18px}.sidebar-brand .brand{flex:0 0 100%;width:100%}.sidebar>#sidebar-toggle{display:flex;align-items:center;gap:12px;width:100%;margin:10px 0 14px;padding:10px 13px;border:0;border-radius:12px;background:transparent;color:var(--muted);box-shadow:none}.sidebar>#sidebar-toggle:hover{background:color-mix(in srgb,var(--brand-yellow) 9%,var(--surface));color:var(--brand-yellow)}.sidebar>#sidebar-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.1}.sidebar>#sidebar-toggle span{font-size:12px}.sidebar-foot>button{display:flex;align-items:center;gap:12px}.sidebar-foot>button i{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border:1px solid var(--line);border-radius:9px;color:var(--brand-yellow);font-style:normal}.sidebar-collapsed .sidebar-brand .brand{width:43px;flex-basis:43px}.sidebar-collapsed .sidebar-brand .brand-logo{width:130px;height:48px;max-width:none;object-fit:contain;object-position:left center}.sidebar-collapsed .sidebar>#sidebar-toggle{justify-content:center;width:48px;height:42px;padding:0;margin:10px 0 14px}.sidebar-collapsed .sidebar>#sidebar-toggle span,.sidebar-collapsed .sidebar-foot>button span{display:none}.sidebar-collapsed .sidebar-foot>button{display:flex!important;justify-content:center;padding:8px 0}.sidebar nav b{background:var(--brand-yellow)!important;color:#0d0d0d!important}
.draft-line{fill:rgba(198,255,0,.08);stroke:#111;stroke-width:.48;stroke-dasharray:1.2 .55}.draft-cross-back{fill:#111;stroke:#fff;stroke-width:.38;filter:drop-shadow(0 0 .7px rgba(198,255,0,.95))}.draft-cross-lines{fill:none;stroke:#c6ff00;stroke-width:.5;stroke-linecap:round}.draft-cross-core{fill:#fff;stroke:#111;stroke-width:.18}.draft-dot-halo,.draft-dot-core{display:none}
.registry-filters{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;gap:10px}.registry-filters label,.registry-filters select{min-height:48px!important;background:var(--surface)!important;border:1px solid var(--line)!important;border-radius:14px!important}.registry-table{border:0!important;box-shadow:none!important;overflow:visible!important}.registry-header{border:1px solid var(--line);border-radius:14px 14px 0 0}.registry-row{position:relative;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease}.registry-row:hover{background:color-mix(in srgb,var(--surface) 92%,var(--brand-yellow))!important;color:var(--text)!important;transform:translateY(-1px);box-shadow:0 12px 30px rgba(198,255,0,.09),0 0 0 1px rgba(198,255,0,.14)!important}.registry-row:hover *{color:inherit}.registry-row:hover .status-tag{color:var(--status)!important}.registry-row:hover button{color:var(--brand-yellow)!important}
.search-dialog{overflow:hidden}.search-head{display:grid!important;grid-template-columns:minmax(0,1fr) auto 44px;gap:10px;padding:14px!important;border-bottom:1px solid var(--line)}.search-head input{min-width:0}.search-head button{height:44px;border-radius:12px;border:1px solid var(--line);font-weight:800}.search-head #global-search-submit{padding:0 22px;background:var(--brand-yellow);color:#0d0d0d;border-color:var(--brand-yellow)}.search-head #global-search-close{display:grid;place-items:center;background:var(--surface-2);color:var(--text);font-size:22px}.search-head #global-search-close:hover{border-color:var(--brand-yellow);color:var(--brand-yellow)}
@media(prefers-reduced-motion:reduce){.login-brand::before,.login-brand .brand-logo{animation:none}}
@media(max-width:900px){.sidebar>#sidebar-toggle{display:none}}

/* Interface refinement v21. */
[data-theme="light"]{--bg:#f1f2ee;--surface:#fff;--surface-2:#e8eae4;--line:#cfd3c8;--text:#151713;--muted:#686d63;--paper:var(--bg);--ink:var(--text);color-scheme:light}
[data-theme="light"] body{background:radial-gradient(circle at 18% -8%,rgba(143,180,0,.1),transparent 34%),linear-gradient(180deg,#f7f8f4,var(--bg) 38%)}[data-theme="light"] .sidebar{background:rgba(245,246,241,.96);border-color:var(--line)}[data-theme="light"] .workspace header{background:rgba(247,248,244,.92)}[data-theme="light"] .project-card,[data-theme="light"] .project-admin>header{background:linear-gradient(135deg,#fff,#e9ebe5)}
.login-brand::before{display:none}.login-brand .brand-logo{animation:none;filter:none}.login-brand>.brand{position:relative;isolation:isolate}.login-brand>.brand::before{content:"";position:absolute;z-index:-1;left:-7%;top:-45%;width:min(520px,86vw);height:190%;border-radius:50%;background:radial-gradient(ellipse,rgba(198,255,0,.22),rgba(198,255,0,.07) 42%,transparent 72%);filter:blur(20px);animation:brand-halo 11.4s ease-in-out infinite}@keyframes brand-halo{0%,100%{opacity:.22;transform:scale(.88)}50%{opacity:1;transform:scale(1.08)}}
.brand-copy{max-width:none}.brand-copy h1{display:grid;gap:8px}.brand-copy h1>span,.brand-copy h1>em{display:block;white-space:nowrap}.brand-copy h1>span{font-size:clamp(34px,4.1vw,64px)}.brand-copy h1>em{font-size:clamp(21px,2.25vw,34px);line-height:1.15}
.login-card>label{display:grid!important;gap:12px;margin:22px 0 0!important}.login-card>label input{margin:0!important}
.sidebar-collapsed .sidebar-brand{width:52px;overflow:hidden}.sidebar-collapsed .sidebar-brand .brand{width:52px!important;flex-basis:52px!important;padding:0}.sidebar-collapsed .sidebar-brand .brand-logo{width:190px!important;height:66px!important;max-width:none;object-position:left center}.sidebar-collapsed .profile{grid-template-columns:42px}.profile-avatar{width:38px!important;height:38px!important;padding:0!important;overflow:hidden;border-radius:50%!important;background:linear-gradient(135deg,var(--brand-yellow),#748f10)!important;color:#0d0d0d!important;font-size:11px!important;font-weight:900;display:grid!important;place-items:center!important}.profile-avatar img{width:100%;height:100%;object-fit:cover}.sidebar-collapsed .profile-avatar{display:grid!important}.sidebar-collapsed .profile>div,.sidebar-collapsed .profile>[data-action="logout"]{display:none}
.project-card>button{display:flex;align-items:center;gap:8px;padding:10px 12px!important;border-radius:12px!important;transition:.18s ease}.project-card>button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2}.project-card>button:hover{background:color-mix(in srgb,var(--brand-yellow) 10%,var(--surface-2))!important;box-shadow:0 9px 24px rgba(198,255,0,.09)}
.draft-cross-back{fill:none;stroke:none;filter:none}.draft-cross-lines{stroke:#050505;stroke-width:.65;filter:none}.draft-cross-core{display:none}.plan-tools #draft-cancel{color:#f2f2f2!important}.plan-tools #draft-cancel:hover{color:var(--brand-yellow)!important}
.registry-header{margin-bottom:10px;border-radius:14px!important}.registry-row{margin-bottom:10px!important}
select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--brand-yellow) 50%),linear-gradient(135deg,var(--brand-yellow) 50%,transparent 50%)!important;background-position:calc(100% - 17px) 50%,calc(100% - 12px) 50%!important;background-size:5px 5px,5px 5px!important;background-repeat:no-repeat!important;padding-right:34px!important}select option{background:var(--surface);color:var(--text)}
button,a,select,input,.profile-avatar,.project-switch-list button{transition:background .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease,border-color .18s ease}button:hover,a:hover,select:hover,.profile-avatar:hover{box-shadow:0 10px 28px rgba(198,255,0,.09)}button:focus,button:focus-visible,a:focus,a:focus-visible,select:focus,select:focus-visible,input:focus,input:focus-visible,textarea:focus,textarea:focus-visible{outline:none!important}.registry-filters input:focus,.registry-filters select:focus,.annotation-form input:focus,.annotation-form select:focus,.annotation-form textarea:focus{border-color:var(--line)!important;box-shadow:0 10px 28px rgba(198,255,0,.09)!important}
.profile-dialog{max-width:620px}.profile-editor{display:grid;grid-template-columns:190px 1fr;gap:24px;align-items:start}.avatar-picker{display:grid;justify-items:center;gap:9px;cursor:pointer}.avatar-picker>span{width:126px;height:126px;display:grid;place-items:center;border-radius:28px;overflow:hidden;background:linear-gradient(135deg,var(--brand-yellow),#718c0c);color:#0d0d0d;font-size:28px;font-weight:900;box-shadow:0 12px 32px rgba(198,255,0,.15)}.avatar-picker img{width:100%;height:100%;object-fit:cover}.avatar-picker b{color:var(--brand-yellow);font-size:12px}.avatar-picker small{color:var(--muted);font-size:10px}.profile-editor dl{display:grid;gap:8px;margin:0}.profile-editor dl div{padding:13px 15px;background:var(--surface-2);border-radius:13px}.profile-editor dt{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em}.profile-editor dd{margin:5px 0 0;font-weight:700}.project-switcher{max-width:620px}.project-switch-list{display:grid;gap:10px}.project-switch-list button{display:grid;grid-template-columns:42px 1fr 24px;align-items:center;gap:12px;width:100%;padding:14px;border:1px solid var(--line);border-radius:15px;background:var(--surface-2);color:var(--text);text-align:left}.project-switch-list button:hover{background:color-mix(in srgb,var(--surface-2) 90%,var(--brand-yellow));box-shadow:0 12px 30px rgba(198,255,0,.1);transform:translateY(-1px)}.project-switch-list button>span{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:color-mix(in srgb,var(--brand-yellow) 12%,var(--surface));color:var(--brand-yellow)}.project-switch-list strong,.project-switch-list small{display:block}.project-switch-list small{margin-top:4px;color:var(--muted)}.project-switch-list i{color:var(--brand-yellow);font-style:normal}
@media(max-width:760px){.brand-copy h1>span,.brand-copy h1>em{white-space:normal}.profile-editor{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.login-brand>.brand::before{animation:none}}

/* Light palette and compact global search v22. */
.primary,.button,.register-button{box-shadow:none!important}.primary:hover,.button:hover,.register-button:hover{box-shadow:none!important}
[data-theme="light"]{--brand-yellow:#163a5f;--brand-orange:#163a5f;--green:#163a5f}
[data-theme="light"] .plan-stage-wrap,[data-theme="light"] .plan-legend{background:#fff!important}
[data-theme="light"] .primary,[data-theme="light"] .button{color:#fff!important}
[data-theme="light"] .sidebar nav b,[data-theme="light"] .header-actions b{color:#fff!important}
.search-dialog{position:relative}.search-head{grid-template-columns:minmax(0,1fr) 46px!important;padding:18px 58px 18px 18px!important}.search-head #global-search-submit{width:46px;padding:0!important;display:grid;place-items:center}.search-head #global-search-submit svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.search-dialog>#global-search-close{position:absolute;z-index:2;right:14px;top:14px;width:30px;height:30px;display:grid;place-items:center;padding:0;border:0;border-radius:9px;background:transparent;color:var(--muted);font-size:21px;line-height:1}.search-dialog>#global-search-close:hover{background:var(--surface-2);color:var(--brand-yellow);box-shadow:none}
.brand-copy em,.brand-facts span:before{color:var(--brand-yellow)}.plan-tools button,.plan-selects button:not(.primary),.team-member>button,.registry-actions button,.building-head button,.floor-card button{background:var(--surface-2)!important;border-color:var(--line)!important;color:var(--brand-yellow)!important}.activity i.ok,.activity i.warn,.activity i.info{background:color-mix(in srgb,var(--brand-yellow) 12%,var(--surface-2));color:var(--brand-yellow)}

/* Graphite/lime brand palette without blue surfaces. */
body{background:radial-gradient(circle at 18% -8%,rgba(198,255,0,.08),transparent 34%),linear-gradient(180deg,#10110d 0,var(--bg) 38%)}.sidebar{background:rgba(10,10,10,.96);border-right-color:var(--line)}.workspace header{background:rgba(13,13,13,.92);border-color:var(--line)}.project-card,.project-admin>header{background:linear-gradient(135deg,#202020,#151515)}.plan-stage-wrap{background:#111}.status-review{--status:#c0c0c0}.metric.blue,.metric.violet{border-top-color:var(--brand-yellow)}[data-theme="light"] body{background:radial-gradient(circle at 18% -8%,rgba(22,58,95,.08),transparent 34%),linear-gradient(180deg,#f7f8f4 0,var(--bg) 38%)}[data-theme="light"] .sidebar{background:rgba(245,246,241,.96);border-color:var(--line)}[data-theme="light"] .workspace header{background:rgba(247,248,244,.92);border-color:var(--line)}[data-theme="light"] .project-card,[data-theme="light"] .project-admin>header{background:linear-gradient(135deg,#fff,#e9ebe5)}[data-theme="light"] .plan-stage-wrap{background:#fff}

/* Collapsible sidebar and recognizable vector icons. */
.app-shell{transition:grid-template-columns .22s ease}.sidebar{transition:padding .22s ease}.sidebar-brand{display:flex;align-items:center;gap:6px;margin-bottom:32px;min-height:58px}.sidebar-brand .brand{margin:0;min-width:0;overflow:hidden;flex:1}.sidebar-brand #sidebar-toggle{display:grid;place-items:center;flex:0 0 28px;width:28px;height:36px;padding:0;border:1px solid var(--line);font-size:24px;color:var(--brand-yellow)}.sidebar nav button svg{width:22px;height:22px;flex:0 0 22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.sidebar nav button.active svg{color:var(--brand-yellow)}.app-shell.sidebar-collapsed{grid-template-columns:78px 1fr}.sidebar-collapsed .sidebar{padding-left:12px;padding-right:12px}.sidebar-collapsed .sidebar-brand .brand{width:42px;flex:0 0 42px}.sidebar-collapsed .sidebar-brand .brand-logo{width:142px;height:48px;max-width:none}.sidebar-collapsed .sidebar-brand #sidebar-toggle{position:absolute;left:52px;top:70px;width:20px;height:28px;font-size:20px}.sidebar-collapsed .sidebar nav button{justify-content:center;padding-left:10px;padding-right:10px}.sidebar-collapsed .sidebar nav button span,.sidebar-collapsed .sidebar nav button b,.sidebar-collapsed .sidebar-foot>button,.sidebar-collapsed .profile>div,.sidebar-collapsed .profile>button{display:none}.sidebar-collapsed .profile{display:flex;justify-content:center;padding-left:0;padding-right:0}.sidebar-collapsed .profile>span{flex:0 0 36px}

/* Notification contrast and polygon hit surface. */
#notifications-button{color:var(--brand-yellow)}.notification-item strong,.notification-drawer h2{color:var(--text)!important}.notification-item span,.notification-content h3{color:var(--muted)!important}.notification-item>i{background:color-mix(in srgb,var(--brand-yellow) 16%,var(--surface));color:var(--brand-yellow)}.notification-drawer header button{background:var(--surface-2)!important;color:var(--brand-yellow)!important;border:1px solid var(--line)!important}.plan-hit-area{fill:transparent;stroke:none;pointer-events:all}.annotation-polygons{pointer-events:all}
@media(max-width:900px){.sidebar-brand #sidebar-toggle{display:none}.app-shell.sidebar-collapsed{grid-template-columns:1fr}.sidebar-collapsed .sidebar{padding:28px 18px}.sidebar-collapsed .sidebar nav button span,.sidebar-collapsed .sidebar nav button b,.sidebar-collapsed .sidebar-foot>button,.sidebar-collapsed .profile>div,.sidebar-collapsed .profile>button{display:initial}}
.brand-logo{display:block;width:190px;height:58px;object-fit:contain;object-position:left center}.login-brand .brand-logo{width:min(420px,72vw);height:auto}.mobile-logo .brand-logo{width:220px;height:auto}.sidebar .brand{margin-left:0;margin-right:0}.register-button{width:100%;margin-top:12px;padding:13px;border:1px solid var(--brand-yellow);border-radius:12px;background:transparent;color:var(--brand-yellow);font-weight:700}.registration-success{color:var(--brand-yellow);font-size:13px;line-height:1.5}.login-brand{background:radial-gradient(circle at 22% 8%,rgba(198,255,0,.12),transparent 30%),linear-gradient(145deg,#090909,#1a1a1a)}

/* Glass markers and refined polygon vertices. */
.plan-point{width:25px;height:25px;border:1px solid rgba(255,255,255,.82);background:linear-gradient(145deg,rgba(255,255,255,.72),color-mix(in srgb,var(--status) 58%,transparent) 48%,color-mix(in srgb,var(--status) 78%,#111));box-shadow:inset 0 1px 1px #fff,inset 0 -4px 8px #0004,0 0 0 3px color-mix(in srgb,var(--status) 16%,transparent),0 5px 15px #0008;backdrop-filter:blur(3px) saturate(1.5);overflow:visible}.plan-point::after{content:"";position:absolute;left:4px;top:3px;width:8px;height:5px;border-radius:50%;background:linear-gradient(135deg,#fff,#fff0);opacity:.82;transform:rotate(-18deg)}.plan-point span{font-size:7px;color:#fff;font-weight:900;text-shadow:0 1px 3px #000}.draft-line{fill:rgba(198,255,0,.1);stroke:#a9d900;stroke-width:.36;stroke-dasharray:1.1 .55}.draft-dot-halo{fill:rgba(198,255,0,.12);stroke:#c6ff00;stroke-width:.22;filter:drop-shadow(0 0 .8px #c6ff00)}.draft-dot-core{fill:url(#draft-glass);stroke:#fff;stroke-width:.18}.draft-vertex{pointer-events:none}

/* Compact brand mark, modern collapse control and notification badge. */
.sidebar-brand #sidebar-toggle{height:32px;border:0;background:var(--surface);border-radius:10px;box-shadow:inset 0 0 0 1px var(--line),0 5px 16px #0006}.sidebar-brand #sidebar-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.sidebar-brand #sidebar-toggle:hover{background:color-mix(in srgb,var(--brand-yellow) 12%,var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--brand-yellow) 50%,var(--line)),0 0 16px rgba(198,255,0,.12)}.sidebar-collapsed .sidebar-brand .brand{width:48px;flex-basis:48px}.sidebar-collapsed .sidebar-brand .brand-logo{width:144px;height:50px;object-fit:contain;object-position:left center}.sidebar-collapsed .sidebar-brand #sidebar-toggle{left:49px;top:60px;width:25px;height:25px;border-radius:9px;background:#151515}.header-actions button>svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.header-actions b{display:grid;place-items:center;right:-4px;top:-5px;width:auto;min-width:17px;height:17px;padding:0 4px;border:2px solid var(--bg);border-radius:999px;background:var(--brand-yellow);color:#0d0d0d;font-size:9px;font-weight:900;line-height:1;box-shadow:0 2px 8px #0008}.header-actions b[hidden]{display:none}

/* Rounded native/custom select menus v23. */
select{border-radius:18px!important;overflow:hidden}
@supports (appearance:base-select){select,::picker(select){appearance:base-select}::picker(select){margin-top:7px;padding:7px;border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--text);box-shadow:0 18px 44px rgba(0,0,0,.32);overflow:hidden}select option{padding:10px 13px;border-radius:11px}select option:hover,select option:focus,select option:checked{background:color-mix(in srgb,var(--surface) 88%,var(--brand-yellow));color:var(--text)}}

/* Blue hover feedback in the light theme v24. */
[data-theme="light"] button:not(.primary):not(.button):hover,[data-theme="light"] a:hover,[data-theme="light"] select:hover,[data-theme="light"] input:hover,[data-theme="light"] textarea:hover,[data-theme="light"] .profile-avatar:hover{border-color:#163a5f!important;box-shadow:0 10px 28px rgba(22,58,95,.16)!important}
[data-theme="light"] .registry-row:hover,[data-theme="light"] .project-switch-list button:hover,[data-theme="light"] .project-card>button:hover{background:color-mix(in srgb,var(--surface) 90%,#163a5f)!important;box-shadow:0 12px 30px rgba(22,58,95,.15),0 0 0 1px rgba(22,58,95,.16)!important}
[data-theme="light"] .sidebar nav button:hover,[data-theme="light"] .sidebar nav button.active{background:color-mix(in srgb,var(--surface) 88%,#163a5f)!important}
[data-theme="light"] .primary:hover,[data-theme="light"] .button:hover,[data-theme="light"] .register-button:hover{box-shadow:none!important}

/* Vertically centered select labels and arrows v25. */
select{min-height:48px;line-height:1.2!important;white-space:nowrap!important;vertical-align:middle}
@supports (appearance:base-select){select{display:flex;align-items:center;background-image:none!important;padding-block:0!important}select::picker-icon{align-self:center;margin-left:auto;color:var(--brand-yellow);transition:transform .18s ease}select:open::picker-icon{transform:rotate(180deg)}select option{display:flex;align-items:center;min-height:40px;white-space:nowrap}}

/* Unified card-like hover feedback without hover outlines v26. */
button:not(.primary):not(.button):hover,a:hover,select:hover,input:hover,textarea:hover,.profile-avatar:hover{border-color:var(--line)!important;background-color:color-mix(in srgb,var(--surface) 88%,var(--brand-yellow))!important;box-shadow:0 12px 30px rgba(198,255,0,.11)!important}
.registry-row:hover,.project-switch-list button:hover,.project-card>button:hover,.document-card:hover,.floor-card:hover,.team-member:hover{border-color:var(--line)!important;background:color-mix(in srgb,var(--surface) 90%,var(--brand-yellow))!important;box-shadow:0 12px 30px rgba(198,255,0,.12)!important}
[data-theme="light"] button:not(.primary):not(.button):hover,[data-theme="light"] a:hover,[data-theme="light"] select:hover,[data-theme="light"] input:hover,[data-theme="light"] textarea:hover,[data-theme="light"] .profile-avatar:hover{border-color:var(--line)!important;background-color:color-mix(in srgb,var(--surface) 92%,#163a5f)!important;box-shadow:0 12px 30px rgba(22,58,95,.14)!important}
[data-theme="light"] .registry-row:hover,[data-theme="light"] .project-switch-list button:hover,[data-theme="light"] .project-card>button:hover,[data-theme="light"] .document-card:hover,[data-theme="light"] .floor-card:hover,[data-theme="light"] .team-member:hover{border-color:var(--line)!important;background:color-mix(in srgb,var(--surface) 92%,#163a5f)!important;box-shadow:0 12px 30px rgba(22,58,95,.14)!important}
.primary:hover,.button:hover,.register-button:hover,[data-theme="light"] .primary:hover,[data-theme="light"] .button:hover,[data-theme="light"] .register-button:hover{box-shadow:none!important}

/* Whole-field hover, stable action buttons and visible select arrows v27. */
.registry-filters label:has(input:hover),.registry-filters label:has(input:focus){border-color:var(--line)!important;background:color-mix(in srgb,var(--surface) 88%,var(--brand-yellow))!important;box-shadow:0 12px 30px rgba(198,255,0,.11)!important}.registry-filters label input,.registry-filters label input:hover,.registry-filters label input:focus{background:transparent!important;border:0!important;box-shadow:none!important}
[data-theme="light"] .registry-filters label:has(input:hover),[data-theme="light"] .registry-filters label:has(input:focus){border-color:var(--line)!important;background:color-mix(in srgb,var(--surface) 92%,#163a5f)!important;box-shadow:0 12px 30px rgba(22,58,95,.14)!important}
#global-search-submit,#global-search-submit:hover,#global-search-submit:focus,#global-search-submit:active{background:var(--brand-yellow)!important;color:#0d0d0d!important;border-color:var(--brand-yellow)!important;filter:none!important;box-shadow:none!important;transform:none!important}
select{background-image:linear-gradient(45deg,transparent 50%,var(--brand-yellow) 50%),linear-gradient(135deg,var(--brand-yellow) 50%,transparent 50%)!important;background-position:calc(100% - 17px) 50%,calc(100% - 12px) 50%!important;background-size:5px 5px,5px 5px!important;background-repeat:no-repeat!important}
@supports (appearance:base-select){select{background-image:linear-gradient(45deg,transparent 50%,var(--brand-yellow) 50%),linear-gradient(135deg,var(--brand-yellow) 50%,transparent 50%)!important}select::picker-icon{display:none}}

/* Stable selected-value alignment and right-side picker icon v28. */
@supports (appearance:base-select){select{display:flex!important;align-items:center!important;justify-content:flex-start!important;width:100%;height:48px;padding:0 14px!important;background-image:none!important;line-height:48px!important}select selectedcontent{display:flex;align-items:center;height:100%;min-width:0;line-height:1.2}select::picker-icon{content:"⌄";display:block!important;align-self:center;margin-left:auto;color:var(--brand-yellow);font-size:18px;line-height:1;transform:translateY(-1px)}select:open::picker-icon{transform:translateY(1px) rotate(180deg)}select:not(:open)>option:checked{padding-block:0}}

/* Uniform vertically-centered triangular menu arrows v30. */
@supports (appearance:base-select){select::picker-icon{content:"▼"!important;display:grid!important;place-items:center;align-self:center;margin-left:auto;width:18px;height:100%;color:var(--brand-yellow);font-size:9px;line-height:1;transform:none!important}select:open::picker-icon{transform:rotate(180deg)!important}}
[data-theme="light"] .plan-toolbar button.active,[data-theme="light"] .sidebar nav button.active{color:#fff!important}[data-theme="light"] .plan-toolbar button.active svg,[data-theme="light"] .sidebar nav button.active svg{color:#fff!important;stroke:#fff!important}

/* Compact polygon action buttons v31. */
.plan-tools{gap:8px!important}.plan-tools select{width:auto!important;min-width:164px;flex:0 0 auto}.plan-tools button{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px;height:40px;min-width:auto;padding:0 14px!important;border:1px solid var(--line)!important;border-radius:11px!important;white-space:nowrap;line-height:1!important;font-size:12px;font-weight:700;background:var(--surface-2)!important;color:var(--muted)!important;box-shadow:none!important}.plan-tools button:hover:not(:disabled){background:color-mix(in srgb,var(--surface-2) 88%,var(--brand-yellow))!important;color:var(--brand-yellow)!important}.plan-tools #draft-cancel{background:transparent!important;color:var(--muted)!important}.plan-tools #draft-cancel:hover{background:color-mix(in srgb,var(--surface) 88%,var(--brand-yellow))!important;color:var(--brand-yellow)!important}.plan-tools .tool-done:not(:disabled){background:var(--brand-yellow)!important;border-color:var(--brand-yellow)!important;color:#0d0d0d!important}.plan-tools button:disabled{opacity:.38!important;background:var(--surface-2)!important;color:var(--muted)!important}
[data-theme="light"] .plan-tools button:hover:not(:disabled){background:color-mix(in srgb,var(--surface-2) 90%,#163a5f)!important;color:#163a5f!important}[data-theme="light"] .plan-tools .tool-done:not(:disabled){background:#163a5f!important;border-color:#163a5f!important;color:#fff!important}

/* Telegram Mini App pictograms, markers and statuses v32. */
.sidebar nav .nav-pictogram{display:grid;place-items:center;width:24px;height:24px;flex:0 0 24px;color:currentColor;font:400 20px/1 Arial,"Segoe UI Symbol",sans-serif;font-style:normal}.sidebar nav button[data-route="issues"] .nav-pictogram{font-weight:900}.sidebar nav button.active .nav-pictogram{color:var(--brand-yellow)}.sidebar-collapsed .sidebar nav .nav-pictogram{margin:auto}
.plan-point{width:20px!important;height:20px!important;padding:0!important;border:1px solid rgba(255,255,255,.94)!important;border-radius:50%!important;rotate:0!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#fff!important;font:900 11px/20px Arial,sans-serif!important;box-shadow:0 2px 8px rgba(0,0,0,.5)!important}.plan-point::before{inset:-5px!important;border-radius:50%!important;filter:blur(7px)!important;opacity:.28!important}.plan-point::after{inset:2px!important;width:auto!important;height:auto!important;border:1px solid rgba(255,255,255,.24)!important;border-radius:50%!important;background:none!important;transform:none!important}.plan-point span{rotate:0!important;font:900 11px/20px Arial,sans-serif!important;text-shadow:none!important}.plan-point.status-new,.plan-point.status-review{--point-glow:rgba(246,198,47,.82);background:linear-gradient(145deg,#ffd84f,#e79a0f)!important}.plan-point.status-progress{--point-glow:rgba(246,198,47,.82);background:linear-gradient(145deg,#ffd84f,#e79a0f)!important}.plan-point.status-done{--point-glow:rgba(54,189,114,.8);background:linear-gradient(145deg,#55db8e,#219e59)!important}.plan-point.status-new::before,.plan-point.status-progress::before,.plan-point.status-review::before{background:rgba(246,198,47,.82)!important}.plan-point.status-done::before{background:rgba(54,189,114,.8)!important}.plan-point:hover,.plan-point.selected{outline:0!important;scale:1.2}
.plan-polygon.status-new,.plan-polygon.status-progress,.plan-polygon.status-review{fill:rgba(246,198,47,.18)!important;stroke:rgba(246,198,47,.92)!important}.plan-polygon.status-done{fill:rgba(54,189,114,.16)!important;stroke:rgba(54,189,114,.94)!important}.plan-polygon:hover{filter:brightness(1.2) drop-shadow(0 0 6px rgba(255,196,54,.45))!important}
.status-tag{display:inline-flex;align-items:center;gap:5px;border:0!important;border-radius:999px!important;padding:5px 9px!important;font-size:10px!important;font-weight:700!important}.status-tag.status-new{color:#98c1ff!important;background:rgba(59,130,246,.14)!important}.status-tag.status-progress,.status-tag.status-review{color:#ffd88a!important;background:rgba(245,158,11,.14)!important}.status-tag.status-done{color:#7cf29c!important;background:rgba(34,197,94,.14)!important}.plan-legend i.new{background:#3b82f6!important}.plan-legend i.progress,.plan-legend i.review{background:#f6c62f!important}.plan-legend i.done{background:#3fbf7f!important}
.registry-row[data-record-card]{cursor:pointer}.record-view-card{max-width:720px}.record-view-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.record-view-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.record-view-details div,.record-view-comment,.record-view-photos{padding:13px 15px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}.record-view-details dt,.record-view-comment small,.record-view-photos>small{color:var(--muted);font-size:9px;letter-spacing:.12em;text-transform:uppercase}.record-view-details dd{margin:5px 0 0;font-weight:700}.record-view-comment p{margin:7px 0 0;line-height:1.55}.record-view-photos{margin-bottom:16px}.record-view-photos .detail-gallery{margin-top:10px}@media(max-width:600px){.record-view-details{grid-template-columns:1fr}}

/* Current plan is indicated by content, not by an outline around the card. */
.floor-card.current{border-color:var(--line)!important;box-shadow:none!important}.floor-card.current .floor-summary h4{color:var(--brand-yellow)}
.projects-list,.buildings-list,.floor-cards,.documents-grid,.registry-table{background:transparent!important}.registry-header,.registry-filters label{background:var(--surface-2)!important}.registry-empty,.empty-state{background:var(--surface)!important;color:var(--text)!important;border:1px solid var(--line)!important}.registry-empty h3,.empty-state h2{color:var(--text)!important}.registry-empty p,.empty-state p{color:var(--muted)!important}.floor-settings{display:grid;gap:14px}.floor-summary{display:flex;gap:12px;align-items:center}.rooms-settings{background:var(--surface-2);border:1px solid var(--line);border-radius:14px;padding:12px;line-height:1.3}.rooms-settings header,.room-row{display:flex;align-items:center;gap:10px}.rooms-settings header{justify-content:space-between;margin-bottom:8px}.rooms-settings button{background:transparent;border:1px solid var(--line);border-radius:9px;color:var(--brand-yellow);padding:6px 9px}.rooms-settings>p{margin:8px 0 0;color:var(--muted);font-size:11px}.room-row{border-top:1px solid var(--line);padding:8px 0}.room-row>span{min-width:46px;color:var(--brand-yellow)}.room-row>strong{flex:1}.room-row button:last-child{color:var(--red)}
/* Mobile plan panning and per-user unread record counters. */
.sidebar nav button{position:relative}
.sidebar nav .nav-record-badge{display:inline-grid;place-items:center;margin-left:auto;min-width:21px;height:21px;padding:0 6px;border:0;border-radius:999px;background:var(--brand-yellow)!important;color:#0d0d0d!important;font-size:10px;font-weight:900;line-height:1;box-shadow:none}
.sidebar-collapsed .sidebar nav .nav-record-badge{display:grid;position:absolute;top:4px;right:2px;margin:0;min-width:18px;height:18px;padding:0 4px;font-size:8px}
.plan-stage{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y}
.plan-stage .plan-transform{touch-action:pan-x pan-y}
.plan-stage.is-pinching,.plan-stage.is-pinching .plan-transform{touch-action:none;user-select:none}
.plan-stage.is-pinching .plan-transform{will-change:width}
@media(max-width:650px){
  .plan-stage{scrollbar-width:thin}
  .plan-stage[data-mode="view"]{cursor:grab}
  .plan-stage[data-mode="view"]:active{cursor:grabbing}
  .sidebar nav .nav-record-badge{position:absolute;top:3px;right:3px;margin:0;min-width:18px;height:18px;padding:0 4px;font-size:8px}
}
