
/* Forest workspace: natural materials, low-light foliage and calm motion. */
body{background:#10291f;color:#e3ead8}
.sidebar{background:#112b20;border-color:#2e4936}.brand{color:#edf0d7}.mark{background:#d5c18a;color:#233e2c;box-shadow:inset 0 0 0 1px #e9dba7}.brand strong{color:#a6b58d}.sidebar nav button{color:#a8baa1}.sidebar nav button.active{background:#2e4b32;color:#e8ebc7}.sidebar nav button:hover{background:#294732}.count{background:#b9ca83;color:#294b32}
.topbar,.floor-view .topbar{background:#173224;border-color:#304b33;color:#d6e1c4}.topbar .eyebrow{color:#94aa80}.topbar button{background:#213e2a;color:#d7e2c3;border-color:#3c5437}.topbar button:hover{background:#304d32}.topbar .badge{background:#314c2e;color:#cdd89b}.eyebrow,.nav-label{color:#a7bc88}.muted{color:#a7b69a}a{color:#c8d6a4}main{background:transparent}
.scene-title h1{color:#f0eed3;font-size:34px}.scene-title p{color:#a1b796}.scene-title .eyebrow{color:#bccb85;letter-spacing:2px;font-size:10px}.scene-indicators{color:#b7c795}.scene-indicators .dot{background:#c7d48b;box-shadow:0 0 12px #c7d45470}
.world-layout{grid-template-columns:minmax(0,1fr) 305px;gap:18px}.world-panel{background:#173723;border-color:#45603c;border-radius:18px;box-shadow:0 12px 35px #051b1633}.world-toolbar{background:#1b3927;border-bottom:1px solid #3c5735;padding:12px 17px}.world-toolbar .eyebrow{color:#b7c78d;font-size:9px}.world-toolbar button{background:#29432b;color:#cdd8b4;border-color:#4d6040}.world-toolbar button:hover{background:#3b5835}.world-viewport{height:clamp(460px,63vh,740px);max-height:none;background:#183822;scrollbar-color:#66804a #173324}#world-map{height:100%;min-width:650px;transition:width .25s,height .25s}.office-world{height:100%;width:100%;display:block}.forest-world{background:#153423}.world-overline{fill:#c0d29b;font-size:9px;letter-spacing:1.2px}.world-title{fill:#f3edd0;font-size:18px}.world-count{fill:#dae6b6;font-size:9px;letter-spacing:.5px}.world-role{fill:#354730;font-size:9px;font-weight:600;letter-spacing:0}.hub-title{fill:#ece5b3;font-size:22px}.hub-badge{fill:#c0d198;font-size:8px;letter-spacing:1px}.office-island:hover .island-surface{fill:#e3cf98;stroke:#e5e7a9;stroke-width:2.5}.office-island:focus-visible{outline-color:#e5db90}
.department-tabs{padding:12px 17px;background:#1b3927;border-top:1px solid #3b5434}.department-tabs button{background:#233e28;color:#b7c8a4;border-color:#455c3c;font-size:10px}.department-tabs button.selected{background:#d2d6a1;color:#24432c;border-color:#d2d6a1}.world-detail{background:#203d2a;border-color:#3d5736;padding:13px 18px;align-items:center}.world-detail h3{color:#e4e7c2}.world-detail p{color:#b2c3a0;font-size:11px;margin-top:4px}.world-detail .eyebrow{color:#a3b477;font-size:8px;margin-bottom:3px}.badge{background:#344e30;color:#d0daa4}.badge.warn{background:#5b5030;color:#e5dba1}.badge.bad{background:#613e32;color:#f0c0a1}
.command-rail{background:#f0efd9;color:#344a32;border-color:#cacdae;border-radius:15px;box-shadow:0 13px 30px #061f1733;padding:20px}.command-rail .rail-head .eyebrow{color:#75805a}.command-rail .rail-head .badge{background:#dde1bf;color:#657348}.command-rail h2{color:#365334}.command-rail .muted{color:#7d8665}.command-rail .avatar{background:#dce2bc;border-color:#c2cba4;color:#4e653e}.rail-welcome{color:#4d5f3d}.command-rail textarea{background:#f8f7e6;color:#3e5637;border-color:#d0d5b2}.command-rail textarea::placeholder{color:#8a9173}.command-rail .primary{background:#4a6741;border-color:#4a6741;color:#f6f1d8}.rail-summary button{background:transparent;color:#536443;border-color:#c6ceb0}.rail-summary span{color:#86916e}.compact h3{color:#506341}.text-button{color:#778b5d}.rail-task{border-color:#d6dcc0;color:#526544}.rail-task small{color:#8b9778}.task-bullet{background:#9dae77}.rail-empty{border-color:#c3ccab;color:#6e7f54;background:#e8edcf}.owner-note{background:#e0e6c3;color:#859465}.owner-note strong{color:#536d40}.owner-note span{color:#72845b}.command-rail .message{background:#e5e9cc;color:#4a613a}
.roster-agent{background:#1c3726;border-color:#3b5332;color:#d7e0bd;padding:11px}.roster-agent.selected{background:#334e30;border-color:#8b9d62}.roster-agent small{color:#9cae86}.agent-state{color:#c2ce9e}.mini-person{background:#3d5934;color:#d0dcad}.tone-1{background:#6e5536;color:#e5c28c}.tone-2{background:#3e5b5b;color:#bdcfd1}.tone-3{background:#60516b;color:#d8c8e0}.tone-4{background:#726b36;color:#e3daa0}.tone-5{background:#3b6651;color:#bad8bb}
.panel{background:#1d3928;border-color:#3d5636;color:#dce5c6}.panel p,.meta{color:#b5c6a3}.panel h1,.panel h2,.panel h3{color:#e6e9cc}.panel input,.panel select,.panel textarea,input,select,textarea{background:#173423;border-color:#46613b;color:#d8e4bf}label{color:#c0d0aa}button{background:#2c4730;border-color:#506444;color:#d9e4bc}button:hover{background:#3c5938}.primary{background:#a5b574;color:#213c28;border-color:#a5b574}.primary:hover{background:#c0cb94}.task-text{background:#152e21;color:#dce4c6}.message{background:#233e29;color:#d5e2b9}.empty{border-color:#577244;color:#aaba92}.empty h3{color:#dae5bd}.tabs button.active{background:#c2cd98;color:#2a492f}.linkbox{background:#152f21;color:#bdcfaa}.warn-note{background:#4d452d;color:#e1d3a2}.connection summary{color:#c1d091}.log-row{border-color:#3d5334}.log-row time{color:#90a479}.task-actions .primary{color:#243b27}.task-image{background:#eeeed9}#toast{background:#e0e5bf;color:#2e4a2e;box-shadow:0 8px 30px #0a1f1780}.auth-screen{background:radial-gradient(ellipse at 35% 25%,#496d3d,transparent 60%),#152f22}.auth-card{background:#f1efd8;color:#3b5035;border-color:#c5cfac;box-shadow:0 20px 80px #08190f66}.auth-card h1{font-family:Georgia,serif;font-weight:400}.auth-card .eyebrow{color:#728254}.auth-card .muted{color:#7d8b66}.auth-card label{color:#61764a}.auth-card input{background:#f9f7e7;color:#344e30;border-color:#c7d1ad}.auth-card .primary{background:#577447;color:#f4f0d7}dialog{background:#213d29;color:#dee7c4;border-color:#788c59}dialog::backdrop{background:#05170ee0}footer{background:#142e20;border-color:#355030;color:#839b72;font-size:10px}.subheading{color:#d9e4be}
.motion-on .tree-crown{transform-box:fill-box;transform-origin:50% 95%;animation:crownSway 7s ease-in-out infinite alternate}.motion-on .crown-1{animation-delay:-2s;animation-duration:8s}.motion-on .crown-2{animation-delay:-4s;animation-duration:9s}.motion-on .central-crown{animation-duration:10s}.motion-on .fern{transform-box:fill-box;transform-origin:50% 100%;animation:fernSway 6s ease-in-out infinite alternate}.motion-on .agent-breathe{transform-box:fill-box;transform-origin:center bottom;animation:agentBreathe 3.8s ease-in-out infinite}.motion-on .agent-1{animation-delay:-1.3s}.motion-on .agent-2{animation-delay:-2.6s}.motion-on .writing-hand{transform-box:fill-box;transform-origin:center;animation:writing 1.7s ease-in-out infinite alternate}.motion-on .screen-lines{animation:screenPulse 3.7s steps(2,end) infinite}.motion-on .sun-rays{animation:sunBreathe 12s ease-in-out infinite alternate}.motion-on .firefly circle{animation:fireflyGlow 4s ease-in-out infinite}.motion-on .firefly-1 circle{animation-delay:-1s}.motion-on .firefly-2 circle{animation-delay:-2.5s}.motion-on .firefly-3 circle{animation-delay:-3.5s}.motion-on .leaf-drift{animation:leafDrift 14s linear infinite}.motion-on .stream-shimmer{animation:streamFlow 6s linear infinite}.motion-on .hanging-vine{transform-box:fill-box;transform-origin:center top;animation:vineSway 7s ease-in-out infinite alternate}.motion-on .forest-lantern{animation:lanternGlow 5s ease-in-out infinite alternate}.motion-off *{animation:none!important}
@keyframes crownSway{from{transform:rotate(-.8deg)}to{transform:rotate(.9deg)}}@keyframes fernSway{from{rotate:-2deg}to{rotate:2deg}}@keyframes agentBreathe{0%,100%{translate:0 0}50%{translate:0 -.9px}}@keyframes writing{from{rotate:-1.5deg}to{rotate:2deg}}@keyframes screenPulse{0%,100%{opacity:1}50%{opacity:.6}}@keyframes sunBreathe{from{opacity:.45}to{opacity:.9}}@keyframes fireflyGlow{0%,100%{opacity:.15}50%{opacity:.95}}@keyframes leafDrift{0%{translate:0 -20px;opacity:0}15%{opacity:.7}80%{opacity:.6}100%{translate:22px 65px;opacity:0}}@keyframes streamFlow{to{stroke-dashoffset:-78}}@keyframes vineSway{from{rotate:-1deg}to{rotate:1deg}}@keyframes lanternGlow{from{opacity:.8}to{opacity:1}}
@media(max-width:1200px){.world-layout{grid-template-columns:minmax(0,1fr) 280px}.command-rail{padding:16px}.scene-title h1{font-size:29px}.world-viewport{height:590px}.world-toolbar .eyebrow{max-width:170px;font-size:8px}}
@media(max-width:950px){.world-layout{grid-template-columns:1fr}.world-viewport{height:620px}.world-toolbar .eyebrow{max-width:none}.command-rail{display:block}.scene-title h1{font-size:29px}}
@media(max-width:600px){.scene-title h1{font-size:26px}.world-viewport{height:520px;max-height:520px}.world-toolbar .eyebrow{font-size:8px}.world-title{font-size:19px}.world-role{font-size:10px}.world-detail{align-items:flex-start}.world-detail p{font-size:12px}#world-map{min-width:690px}.department-tabs button{font-size:10px}.sidebar nav button.active{background:#365334}.auth-card h1{font-size:34px}}
@media(prefers-reduced-motion:reduce){.forest-world *{animation:none!important}#world-map{transition:none}}

@media(max-width:760px){.sidebar .brand{flex-basis:100%}.sidebar nav{justify-content:flex-start}}
.world-layout:fullscreen{background:#10291f;padding:16px;height:100vh;overflow:auto;align-items:start}.world-layout:fullscreen .world-viewport{height:calc(100vh - 205px);min-height:430px}.world-layout:fullscreen .command-rail{max-height:calc(100vh - 32px);overflow:auto}@media(max-width:950px){.world-layout:fullscreen .command-rail{max-height:none}.world-layout:fullscreen .world-viewport{height:65vh}}
.school-mark{width:48px;height:48px;object-fit:contain}.auth-card .school-mark{width:88px;height:88px}.scene-canvas{position:relative}.world-viewport{overflow:hidden;touch-action:none;cursor:grab}.world-viewport:active{cursor:grabbing}#world-map{min-width:0!important;width:100%!important;height:100%!important;transition:none}.scene-controls{position:absolute;bottom:16px;right:16px;display:flex;align-items:center;gap:4px;padding:6px;background:#102b22ed;border:1px solid #62734c;border-radius:12px;box-shadow:0 5px 20px #091d1680}.scene-controls button{font-size:11px;padding:7px 9px}.scene-controls output{font-size:11px;min-width:38px;text-align:center}.scene-hint{position:absolute;top:14px;left:16px;padding:6px 10px;border-radius:20px;background:#102b22cc;color:#d8e4bd;font-size:11px;pointer-events:none}.scene-staff-count{font-size:11px;color:#b4c29a}.forest-world text{font-family:'Segoe UI',Arial,sans-serif}.forest-world .world-role{fill:#f4f2dc;font-size:11px;font-weight:600}.forest-desk{filter:url(#deskShadow)}.world-title{font-weight:600}.world-detail p{font-size:13px}.department-tabs button{font-size:12px}.workforce-heading{display:flex;justify-content:space-between;gap:12px;padding:16px 18px 10px;font-size:13px}.workforce-heading span{max-width:270px;color:#a8bc98;font-size:11px}.workforce-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:0 18px 18px}.workforce-grid>div{background:#142e21;border:1px solid #3b5637;border-radius:8px;padding:12px 9px;line-height:1.4;font-size:12px}.role-number{display:block;color:#b6c887;font-size:10px;margin-bottom:5px}.motion-on .connection-flow{animation:streamFlow 7s linear infinite}.motion-on .agent-3{animation-delay:-.6s}.motion-on .agent-4{animation-delay:-2s}.motion-on .agent-3 .writing-hand{animation-duration:1.2s}.motion-on .agent-4 .writing-hand{animation-duration:2.2s}@media(max-width:600px){.scene-controls{right:8px;bottom:8px;gap:2px}.scene-controls button{padding:7px;font-size:10px}.scene-staff-count{font-size:9px}.workforce-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workforce-heading{flex-direction:column}.world-viewport{height:450px}}
