/* Staging UI only: one neutral surface and restrained motion system. */
:root{--ui-space-1:4px;--ui-space-2:8px;--ui-space-3:12px;--ui-space-4:16px;--ui-space-5:24px;--ui-space-6:32px;--ui-radius-sm:10px;--ui-radius:16px;--ui-radius-lg:22px;--ui-bg:#f5f5f7;--ui-surface:#fff;--ui-secondary:#f8f8fa;--ui-text:#202026;--ui-muted:#62626d;--ui-accent:#6750a4;--ui-accent-soft:#f0edf7;--ui-border:#e4e4eb;--ui-shadow:0 2px 12px #20202606;--ui-fast:140ms;--ui-panel:220ms;--ui-view:260ms;--ui-ease:cubic-bezier(.2,.75,.25,1);--blue:var(--ui-accent);--blue-dark:#513b88;--gray:var(--ui-muted);--border:var(--ui-border);--shadow:var(--ui-shadow)}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:var(--ui-bg);color:var(--ui-text);line-height:1.5}h1,h2,h3,p{overflow-wrap:anywhere}h2{font-weight:650;letter-spacing:-.025em}h3{font-weight:600}p{margin:var(--ui-space-3) 0}.muted{color:var(--ui-muted)}
.main{width:100%;padding:var(--ui-space-6);max-width:1440px;min-width:0}.head{margin-bottom:var(--ui-space-5)}.head h2{font-size:clamp(25px,3vw,32px);font-weight:650}.head p{margin:var(--ui-space-2) 0}.card,.auth-card{background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);box-shadow:var(--ui-shadow);backdrop-filter:none;padding:var(--ui-space-5)}.section.active>.card,.section.active>form,.section.active>.grid{margin-bottom:var(--ui-space-5)}.grid{gap:var(--ui-space-4)}.tile strong{font-size:32px;font-weight:650;color:var(--ui-text)}.tile h3{font-size:13px;font-weight:500;color:var(--ui-muted)}
.auth{background:var(--ui-bg)}.hero h1{font-weight:650}.field label{font-size:13px;font-weight:550;letter-spacing:0;text-transform:none}input,select,textarea{border-color:var(--ui-border);border-radius:var(--ui-radius-sm);min-height:44px}input[type=checkbox],input[type=radio]{width:20px;min-height:20px;height:20px;accent-color:var(--ui-accent);vertical-align:middle;margin-right:var(--ui-space-2)}label:has(input[type=checkbox]){display:flex;align-items:center;gap:var(--ui-space-2);min-height:44px}
.btn,.btn.small,.tab,.dot-toolbar button,summary{min-height:44px}.btn{font-weight:600;border-radius:var(--ui-radius-sm);box-shadow:none;transition:background-color var(--ui-fast) var(--ui-ease),transform var(--ui-fast) var(--ui-ease),opacity var(--ui-fast) var(--ui-ease)}.btn.secondary{color:var(--ui-text);background:var(--ui-surface)}.btn.secondary:hover{background:var(--ui-secondary)}button:active:not(:disabled){transform:translateY(1px)}button:disabled{cursor:wait;opacity:.6}button:focus-visible,summary:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--ui-accent);outline-offset:3px}.btn[aria-busy=true]{opacity:.65}
.top{backdrop-filter:blur(8px);background:#fffffff2}.side{background:var(--ui-surface);box-shadow:none}.nav{min-height:44px;font-weight:550;color:var(--ui-muted)}.nav.active{background:var(--ui-accent-soft);color:var(--ui-accent)}.side{transition:transform var(--ui-panel) var(--ui-ease)}.label{font-weight:600}.mobile-menu{min-width:44px;min-height:44px}.mobile-menu::after{content:'☰';font:20px Arial}.mobile-menu i{display:none}.section.active{animation:ui-enter var(--ui-view) var(--ui-ease)}
@keyframes ui-enter{from{opacity:.45;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
.ui-status{display:inline-flex;gap:var(--ui-space-2);align-items:center;padding:var(--ui-space-1) var(--ui-space-3);border-radius:99px;background:var(--ui-secondary);color:var(--ui-text);font-size:13px;font-weight:600;border:1px solid var(--ui-border)}.ui-next{border-left:3px solid var(--ui-accent);padding:var(--ui-space-3) var(--ui-space-4);background:var(--ui-secondary);border-radius:var(--ui-radius-sm);margin:var(--ui-space-4) 0}.ui-next small{display:block;color:var(--ui-muted);font-weight:600}.ui-referral{display:flex;gap:var(--ui-space-2);align-items:center;margin-top:var(--ui-space-3)}.ui-referral input{min-width:0;flex:1}.ui-referral [data-copy]{min-width:112px;white-space:nowrap}.ui-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.ui-metrics .card{box-shadow:none;background:var(--ui-secondary)}
.ui-disclosure{border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-surface);margin:var(--ui-space-4) 0;padding:0 var(--ui-space-4)}.ui-disclosure>summary{display:flex;align-items:center;gap:var(--ui-space-2);cursor:pointer;font-weight:600;padding:var(--ui-space-3) 0;list-style:none}.ui-disclosure>summary::after{content:'+';margin-left:auto;color:var(--ui-muted)}.ui-disclosure[open]>summary::after{content:'−'}.ui-disclosure[open]>:not(summary){animation:ui-enter var(--ui-panel) var(--ui-ease)}.ui-disclosure>summary::-webkit-details-marker{display:none}.ui-disclosure .card{border:0;box-shadow:none;padding:var(--ui-space-4) 0}.ui-disclosure [data-ui-advanced]{padding:var(--ui-space-4) 0}.activation-card ul{margin:0}.activation-card li{display:flex;align-items:center;gap:var(--ui-space-3);border-bottom:1px solid var(--ui-border);padding:var(--ui-space-3) 0;margin:0!important}.activation-card li:last-child{border-bottom:0}.ui-step-marker{font-size:13px;flex:0 0 76px;color:var(--ui-muted)}.activation-card [role=status]{color:var(--ui-text)}
.ui-telegram-summary{display:flex;gap:var(--ui-space-3);align-items:center;justify-content:space-between;flex-wrap:wrap}.ui-telegram-summary h3{margin:0}.ui-telegram-summary p{margin:var(--ui-space-1) 0;font-size:13px}.ui-load{min-height:100px;display:flex;align-items:center;gap:var(--ui-space-3);color:var(--ui-muted);background:var(--ui-secondary);border-radius:var(--ui-radius);padding:var(--ui-space-5)}.ui-load::before{content:'';width:28px;height:28px;border:2px solid var(--ui-border);border-top-color:var(--ui-accent);border-radius:50%;animation:ui-spin 1s linear infinite}@keyframes ui-spin{to{transform:rotate(360deg)}}
.ui-handover-steps{display:flex;gap:var(--ui-space-2);list-style:none;padding:0;margin:0 0 var(--ui-space-5);font-size:12px;flex-wrap:wrap}.ui-handover-steps li{border-bottom:2px solid var(--ui-border);padding:var(--ui-space-2)}.ui-handover-steps .current{border-color:var(--ui-accent);font-weight:600}.ui-handover-steps .complete{color:var(--ui-muted)}.ui-handover-steps .complete::before{content:'✓ ';}.table-wrap{max-width:100%}th{letter-spacing:.04em;font-weight:600}td{line-height:1.5}.mobile-item{box-shadow:none;border-color:var(--ui-border)}.empty{background:var(--ui-secondary);border:1px solid var(--ui-border);color:var(--ui-muted)}
.dot-viewport{min-height:360px;background:var(--ui-secondary)!important;border:1px solid var(--ui-border)!important;border-radius:var(--ui-radius)!important}.dot-toolbar{flex-wrap:wrap;gap:var(--ui-space-3)}.dot-toolbar>div{display:flex;flex-wrap:wrap;gap:var(--ui-space-2);align-items:center}.dot-scene .dot-member,.dot-scene .dot-group{animation:ui-tree-enter var(--ui-panel) var(--ui-ease)}.dot-member.ui-root .dot-visible{stroke:var(--ui-accent);stroke-width:1.2}.dot-member.selected .dot-visible{filter:none!important;stroke:var(--ui-accent);stroke-width:1.5}.dot-selection{min-height:60px}.tree-group-dialog,dialog{max-width:min(640px,calc(100vw - 32px));border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);padding:var(--ui-space-5);box-shadow:0 12px 40px #2020261a}.tree-group-dialog::backdrop,dialog::backdrop{background:#20202655}.tree-expanded-view{background:var(--ui-surface)!important;padding:var(--ui-space-5)!important}.tree-expanded-view .dot-viewport{height:calc(100dvh - 200px)}
@media(max-width:980px){.main{padding:var(--ui-space-5)}.side{box-shadow:var(--ui-shadow)}}@media(max-width:620px){.main{padding:var(--ui-space-4)}.card,.auth-card{padding:var(--ui-space-4);border-radius:var(--ui-radius)}.ui-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.ui-referral{flex-wrap:wrap}.ui-referral input{flex-basis:100%}.ui-referral .btn{flex:1}.ui-metrics .tile strong{font-size:28px}.dot-viewport{min-height:380px}.tree-expanded-view{padding:var(--ui-space-4)!important}.btn.small{min-height:44px}.auth{padding-top:88px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.ui-load::before{animation:none}}

@keyframes ui-tree-enter{from{opacity:.3}to{opacity:1}}
.ui-handover-steps [aria-current=step]{border-color:var(--ui-accent);font-weight:600}
body .network-dashboard{color:var(--ui-text)}body .network-metrics article,body .network-metrics article:first-child{background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:var(--ui-radius);padding:var(--ui-space-5);animation:ui-enter var(--ui-view) var(--ui-ease)}body .network-metrics strong{color:var(--ui-text);font-weight:650}body .network-metrics span,body .network-metrics small,body .network-intro p,body .network-panel-head p{color:var(--ui-muted)}body .network-eyebrow{color:var(--ui-muted)}body .network-panel{border-color:var(--ui-border)}body .network-stats{color:var(--ui-muted)}body .network-tree .dot-toolbar button{min-width:44px;min-height:44px}body .tile strong{color:var(--ui-text)}.section.active .activation-card{margin-bottom:var(--ui-space-5)}.card>h3:first-child{margin-top:0}summary{touch-action:manipulation}.ui-referral input:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--ui-accent);outline-offset:2px}

.ui-handover-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.ui-handover-steps li{padding:8px 4px;min-width:0}body .section .tile strong{font-size:28px;color:var(--ui-text);font-weight:650}body .section .tile h3{color:var(--ui-muted)}.nav.active{background:var(--ui-accent-soft)!important;color:var(--ui-accent)!important}.ui-disclosure:not(.card)>summary{color:var(--ui-text)}

.dot-scene>path{animation:ui-tree-enter var(--ui-panel) var(--ui-ease)}.ui-home-summary{margin-bottom:var(--ui-space-5)}.ui-home-summary h2{margin-top:0}.ui-home-counts{margin-top:var(--ui-space-5);color:var(--ui-muted)}

.dot-toolbar button{min-width:44px}.dot-toolbar>span,.network-legend{color:var(--ui-muted)!important}.dot-scene text:not(.genealogy-name){fill:var(--ui-muted)}.dot-scene .genealogy-name{fill:var(--ui-text)}@media(max-width:620px){body .network-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}body .network-metrics article{padding:var(--ui-space-4)}body .network-metrics article:first-child{grid-column:1/-1}}
/* Compact navigation: original role containers still control access. */
.side .nav-group{border:0;background:transparent;padding:0;margin:4px 0}.side .nav-group>summary{padding:10px 12px;color:var(--ui-text);font-size:13px;font-weight:600;cursor:pointer}.side .nav-group .nav{padding-left:24px}.side .nav-group[hidden]{display:none}.side .nav-group>summary::after{font-weight:400}.side .label[hidden]{display:none}
/* Original controls remain in their permission scopes; the category menu delegates to them. */
.side .navigation-source{display:none!important}
.side .simple-navigation .nav[hidden],.side .personal-navigation .nav[hidden]{display:none}
.side .personal-navigation{border-top:1px solid var(--ui-border,#e8e5ec);margin-top:8px;padding-top:4px}
