/* Atelier 1.1 — the office is the primary interface. */
#app{height:100svh;overflow:hidden;background:#dfe6d4}#app>.sidebar,main>.topbar,.page-heading,main footer,#bureau-view>.overview,#bureau-view>.lower-grid,.office-wrap>.section-heading,.office-caption{display:none}main{margin:0;height:100svh}.main-content{max-width:none;padding:0;height:100%;position:relative}#bureau-view{height:100%}.office-wrap{height:100%}.office{height:100%;border:0;border-radius:0;box-shadow:none;background:radial-gradient(ellipse at 50% 45%,#f0f1df,#dce4d1 80%);display:flex;align-items:center;justify-content:center;padding:78px 14px 100px}.office>.office-wall,.office>.office-floor{display:none}#status-banner{position:fixed;top:80px;left:50%;transform:translateX(-50%);max-width:650px;width:calc(100% - 40px);z-index:30;font-size:11px;padding:9px 14px;margin:0;box-shadow:0 3px 12px #31482a12}
.world{width:min(calc(100vw - 40px),calc((100svh - 178px)*1.5625));aspect-ratio:1000/640;position:relative;container-type:inline-size;outline:8px solid #8b9d7b;box-shadow:0 12px 0 #71866a,0 30px 80px #4c624933;background:repeating-linear-gradient(0deg,transparent 0 3.8%,#a7b29430 3.8% 4%),repeating-linear-gradient(90deg,#d6debf 0 7.8%,#becbab 7.8% 8%);overflow:hidden;border-radius:2px;touch-action:manipulation}
.north-wall{position:absolute;inset:0 0 auto;height:15%;background:#eceddb;border-bottom:1.1cqw solid #a1ae8a;box-shadow:inset 0 -4px #cdd4b7;display:flex;align-items:center;justify-content:space-around}.north-wall .window{width:12%;height:70%;border-width:.6cqw;box-shadow:0 .5cqw #acb79e}.north-wall .window:before{top:45%;height:.4cqw}.north-wall .window:after{width:.4cqw}.world-sign{text-align:center;color:#5a6d4e;font-size:2.3cqw;font-weight:750;letter-spacing:.7cqw}.world-sign small{font-size:.65cqw;display:block;letter-spacing:.15cqw}.north-wall .wall-clock{width:3.5cqw;height:3.5cqw;border-width:.4cqw}.north-wall .wall-clock:before,.north-wall .wall-clock:after{width:.3cqw;height:1.1cqw;left:1.1cqw;top:.3cqw}
.world-rug{position:absolute;left:11%;top:45%;width:78%;height:13%;background:#aebb94;border:.6cqw solid #c2cfa8;box-shadow:inset 0 0 0 .2cqw #839c75}.world-rug:after{content:'L’ATELIER';position:absolute;inset:0;display:grid;place-items:center;color:#cdd8bd;font-size:1.3cqw;letter-spacing:.7cqw}.workstation{position:absolute;width:16%;height:12%;transform:translate(-50%,-5%);border:0;background:none;padding:0;z-index:3}.workstation .desk{width:90%;height:60%;left:5%;top:18%;border-width:.45cqw;box-shadow:0 .5cqw #8e7858}.workstation .desk:before,.workstation .desk:after{width:.8cqw;height:1.6cqw;top:100%}.workstation .monitor{left:17%;top:-13%;width:29%;height:45%;border-width:.4cqw;box-shadow:0 .3cqw #6f805f}.workstation .monitor:after{width:1.8cqw;height:.3cqw;top:.6cqw;left:.5cqw;box-shadow:0 .7cqw #859e7f}.workstation .desk-book{width:2.2cqw;height:1.5cqw;top:43%;right:20%;border-right:.4cqw solid #fff9}.workstation .mug{width:.9cqw;height:1.1cqw;left:51%;top:49%;box-shadow:.4cqw .2cqw #a98f66}.station-label{position:absolute;top:107%;left:50%;transform:translateX(-50%);white-space:nowrap;padding:.35cqw .8cqw;background:#f4f6e8e8;color:#526149;border:1px solid #b5c2a5;border-radius:4px;font-size:.95cqw;font-weight:650;pointer-events:none}.station-status{position:absolute;width:.65cqw;height:.65cqw;border-radius:50%;background:#a5b295;right:10%;top:-5%}.station-status.running{background:#42845a;box-shadow:0 0 0 .4cqw #83a57844}.station-status.blocked{background:#b07c3f}.workstation:hover .desk{filter:brightness(1.08)}
.actor{position:absolute;left:0;top:0;width:4.8%;height:9.4%;transform:translate(-50%,-82%);padding:0;background:none;border:0;will-change:left,top;z-index:4;transition:none}.actor .avatar-body{display:block;width:100%;height:100%;filter:drop-shadow(0 3px 0 #6a755b55)}.actor svg{display:block;width:100%;height:100%;image-rendering:pixelated}.actor.walking .avatar-body{animation:footsteps .28s steps(2,end) infinite}.actor-name{position:absolute;top:100%;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:.8cqw;line-height:1.3;background:#fffff0e8;padding:.3cqw .6cqw;border:1px solid #b5bfa6;border-radius:3px;pointer-events:none}.actor .speech-dot{display:none;position:absolute;right:-.7cqw;top:-1.1cqw;background:white;font-size:1cqw;line-height:1.5;padding:0 .5cqw;border-radius:4px;color:#748d66}.actor.busy .speech-dot{display:block}.actor.player .actor-name{background:#425944;color:#fff;border-color:#425944}.actor.player:after{content:'▼';position:absolute;left:38%;top:-1.5cqw;font-size:1cqw;color:#425944}.actor:hover .actor-name{font-weight:750;background:#fff}.actor.player:hover .actor-name{background:#425944}
.bookshelf{position:absolute;top:18%;left:3%;width:5.8%;height:21%;background:repeating-linear-gradient(0deg,#aa8e65 0 8%,transparent 8% 29%,#aa8e65 29% 33%),repeating-linear-gradient(90deg,#697f60 0 15%,#e7d9ac 15% 25%,#af8059 25% 36%,#8c759b 36% 48%);border:.6cqw solid #9c835e;box-shadow:0 .7cqw #7a694b}.cabinet{position:absolute;right:3.5%;top:19%;width:6%;height:18%;background:repeating-linear-gradient(0deg,#8e9d80 0 30%,#6f8063 30% 33%);border:.5cqw solid #6e815f;box-shadow:0 .8cqw #5c6f50}.cabinet:after{content:'•••';position:absolute;inset:0;writing-mode:vertical-lr;text-align:center;color:#d8dfca;font-size:1.4cqw;letter-spacing:1.6cqw;left:30%}.meeting-table{position:absolute;left:43%;top:78%;width:14%;height:11%;border-radius:2cqw;background:#c1a47c;border:.5cqw solid #a78b66;box-shadow:0 .7cqw #8e795a;display:grid;place-items:center;color:#8d7754;font-size:.8cqw;letter-spacing:.2cqw}.meeting-table:before{content:'';position:absolute;top:30%;left:15%;width:2.5cqw;height:1.8cqw;transform:rotate(-10deg);background:#ece8cc;border-left:.4cqw solid #76886a}.world-plant{position:absolute;width:5%;height:10%;color:#749958;font-size:4cqw;line-height:1;text-shadow:.5cqw -.2cqw #98ae76}.world-plant:after{content:'';display:block;position:absolute;width:2.7cqw;height:2.3cqw;background:#b59568;border-bottom:.5cqw solid #8c7452;left:1cqw;top:3cqw}.world-plant.p1{left:3%;bottom:7%}.world-plant.p2{right:3%;bottom:7%}.world-entry{position:absolute;left:67%;bottom:0;width:18%;height:5%;background:#9eaf89;border:3px solid #839872;border-bottom:0;color:#dce5cc;display:grid;place-items:center;font-size:.8cqw;letter-spacing:.3cqw}
.office-top{position:fixed;z-index:40;left:24px;right:24px;top:18px;display:flex;justify-content:space-between;align-items:center;pointer-events:none}.office-brand,.office-tools{display:flex;align-items:center;gap:10px;pointer-events:auto}.office-brand{background:#f7f9f0e8;padding:9px 15px 9px 9px;border:1px solid #fff;border-radius:12px;box-shadow:0 4px 20px #435b3610}.office-brand .brand-icon{width:35px;height:35px;font-size:28px}.office-brand strong{font-size:14px;display:block}.office-brand small{font-size:9px;color:#8a967d}.office-tools button{background:#f7f9f0ed;border:1px solid #c8d3bb;color:#607153;border-radius:8px;padding:10px 13px;font-size:11px;box-shadow:0 3px 12px #475b3810}.office-dock{position:fixed;z-index:40;left:50%;bottom:22px;transform:translateX(-50%);display:flex;gap:6px;padding:8px;background:#f8faf3f2;border:1px solid #fff;border-radius:15px;box-shadow:0 8px 25px #3e56342b;white-space:nowrap}.office-dock button{background:transparent;padding:12px 17px;border-radius:9px;color:#5f7155;font-size:12px;font-weight:600}.office-dock button:hover{background:#e8eedf}.office-dock button.voice-dock{background:#425d48;color:#fff;padding:12px 22px}.world-help{position:fixed;bottom:95px;left:50%;transform:translateX(-50%);color:#829173;font-size:10px;white-space:nowrap;text-align:center}.world-help small{display:block;font-size:8px;color:#98a38d;margin-top:3px}.joystick{position:fixed;bottom:105px;right:25px;z-index:40;display:grid;grid-template-columns:repeat(3,33px);grid-template-rows:repeat(2,31px);gap:3px}.joystick button{border-radius:6px;background:#f5f7e9c9;border:1px solid #b4c4a2;color:#6b805e;font-size:14px;touch-action:none}.joystick button:first-child{grid-column:2}.joystick button:nth-child(2){grid-column:1;grid-row:2}.joystick button:nth-child(3){grid-column:2;grid-row:2}.joystick button:nth-child(4){grid-column:3;grid-row:2}
#missions-view,#settings-view{position:fixed;inset:80px 30px 105px;z-index:35;background:#f5f7eff5;border:1px solid #c5d3b8;border-radius:15px;padding:24px;overflow:auto;box-shadow:0 15px 70px #31452d33}#settings-view>form{max-width:1100px;margin:auto}.overlay-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.overlay-title h2{font-size:22px}dialog{z-index:60;width:min(760px,calc(100vw - 24px))}#workspace-dialog{width:min(920px,calc(100vw - 24px));min-height:380px}#voice-dialog{width:min(650px,calc(100vw - 24px))}.folder-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}.folder-card{padding:20px 15px;text-align:left;background:#f4f7ed;border:1px solid #d7e1cc;border-radius:10px;color:#43573c;min-width:0}.folder-card:hover{background:#eaf1df;border-color:#95ad7e}.folder-icon{display:block;width:39px;height:27px;background:#d1bb7e;border:2px solid #bca469;border-radius:2px;margin-bottom:13px;position:relative;box-shadow:0 3px #b7a365}.folder-icon:before{content:'';position:absolute;left:-2px;top:-8px;width:19px;height:8px;background:#bca469;border-radius:3px 3px 0 0}.folder-card strong{display:block;font-size:13px;overflow-wrap:anywhere}.folder-card small{display:block;margin-top:7px;font-size:10px;color:#89967d}.workspace-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.workspace-toolbar select{width:auto;max-width:220px;margin:0;padding:9px}.folder-context{white-space:pre-wrap;overflow-wrap:anywhere;background:#f4f7ef;border-left:3px solid #9fb58b;padding:14px;margin:18px 0;font-size:12px;color:#77866c}.review-form{border-top:1px solid #e0e6d9;padding-top:15px;margin-top:25px}.review-form h3{margin-bottom:5px}.review-form .form-row{grid-template-columns:1fr 1fr}.comment-card{border-left:3px solid #bdcdb0;background:#f6f8f1;padding:12px;margin:12px 0;font-size:12px}.comment-card>p{white-space:pre-wrap;color:#53664b;overflow-wrap:anywhere}.comment-card small{display:block;color:#8b9a80;margin-bottom:7px}.comment-card.approved{border-color:#649874}.comment-card.revise{border-color:#c19758}.folder-picker{margin-top:20px;display:flex;gap:10px;align-items:end}.folder-picker label{flex:1}.folder-picker button{margin-bottom:0}.voice-orb{margin:8px auto 18px;width:72px;height:72px;border-radius:50%;background:#e5eddd;display:grid;place-items:center;border:7px solid #f2f6ec;font-size:28px;color:#749464;box-shadow:0 0 0 1px #d8e2cd}.voice-orb.listening{animation:listen 1.1s ease-in-out infinite;background:#7c9d6a;color:white}.voice-status{text-align:center;font-size:12px;margin-bottom:17px;color:#7a896e}.voice-buttons{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}.voice-buttons button{flex:1}.voice-replies{margin-top:24px;max-height:260px;overflow:auto}.voice-reply{border:1px solid #dfe7d7;border-radius:9px;padding:14px;margin-top:12px}.voice-reply p{font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere;margin:10px 0}.voice-reply h3{font-size:13px}.voice-reply .text-button{padding-left:0}.voice-privacy{font-size:10px!important;margin-top:12px;color:#8d9983}.motion-off .actor.walking .avatar-body{animation:none}.toast{z-index:100}.inline-feedback{color:#70885f;font-size:11px;margin-top:10px;min-height:16px}@keyframes footsteps{50%{transform:translateY(-3px) rotate(3deg)}}@keyframes listen{50%{box-shadow:0 0 0 10px #a8bd8c33}}
@media(max-width:700px){.office-top{left:12px;right:12px;top:12px}.office-brand{padding:7px 10px 7px 7px}.office-brand strong{font-size:12px}.office-brand small{font-size:8px}.office-tools{gap:5px}.office-tools button{font-size:10px;padding:9px}.office-tools .hide-phone{display:none}.office-dock{bottom:12px;width:calc(100% - 20px);gap:2px;padding:6px;justify-content:space-around}.office-dock button{padding:10px 9px;font-size:10px}.office-dock button.voice-dock{padding:10px 13px}.world-help{bottom:77px;white-space:normal;width:75%;font-size:9px}.world-help small{font-size:7px}.joystick{bottom:115px;right:13px;grid-template-columns:repeat(3,29px);grid-template-rows:repeat(2,27px)}.office{overflow:auto;align-items:center;justify-content:flex-start;padding:100px 18px 160px}.world{width:850px;min-width:850px;max-width:none;flex-shrink:0}.office:after{content:'';min-width:18px}#status-banner{top:69px;font-size:10px}#missions-view,#settings-view{inset:110px 10px 75px;padding:15px}.folder-grid{grid-template-columns:repeat(2,1fr)}.workspace-toolbar{flex-wrap:wrap}.review-form .form-row{grid-template-columns:1fr}.voice-orb{width:56px;height:56px;font-size:22px}.folder-picker{align-items:stretch;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.actor.walking .avatar-body,.voice-orb.listening{animation:none}}
.local-toast{position:sticky;bottom:0;background:#425b48;color:#fff!important;border-radius:6px;padding:10px 14px;margin-top:15px!important;font-size:12px!important}

.world-plant.p2{display:none} #billing-dialog{width:min(850px,94vw)} #billing-content .folder-card{display:block;margin:12px 0;padding:18px} .office-dock{max-width:96vw;overflow-x:auto}

/* 1.1.1 — open space edge-to-edge; controls float above the room. */
html,body{margin:0;width:100%;min-height:100%}
body:has(#app:not([hidden])){overflow:hidden}
#app,main,.main-content,#bureau-view,.office-wrap{height:100dvh}
.office{position:absolute;inset:0;width:100%;height:100%;padding:0;display:block;overflow:hidden}
.world{width:100%;height:100%;min-width:0;max-width:none;aspect-ratio:auto;outline:0;border-radius:0;box-shadow:none}
.office-top{top:12px;left:14px;right:14px}
.office-brand{padding:6px 11px 6px 6px;background:#f7f9f0d9}
.office-dock{bottom:12px;padding:6px;background:#f8faf3df}
.world-help{bottom:80px;pointer-events:none;background:#f4f7e9d9;padding:5px 10px;border-radius:7px}
.joystick{bottom:90px}
#status-banner{top:72px}
@media(max-width:700px){
 .office{padding:0;overflow-x:auto;overflow-y:hidden;display:block}
 .world{width:max(100%,780px);min-width:780px;height:100%;aspect-ratio:auto}
 .office:after{display:none}
 .office-brand small{display:none}
 .office-brand .brand-icon{width:28px;height:28px;font-size:23px}
 .world-help{bottom:76px;width:70%;font-size:8px}
 .world-help small{display:none}
 .joystick{bottom:110px}
}

/* 1.1.2 — agents at their desks, occasional coffee service and cats. */
.actor.at-desk .avatar-body{transform:translateY(3%)}
.actor.at-desk.typing .avatar-body{animation:desk-work .9s steps(2,end) infinite}
.actor.ambient{pointer-events:none}
.actor.ambient[hidden]{display:none}
.actor.cat{width:3.6%;height:4.5%}
.coffee-tray{position:absolute;left:45%;top:58%;width:70%;height:9%;background:#725e43;box-shadow:0 2px #514632;display:flex;gap:15%;justify-content:center}
.coffee-tray i{display:block;position:relative;width:25%;height:180%;background:#f6f1dc;transform:translateY(-95%);border-bottom:2px solid #c7bd9d}
.coffee-tray i:after{content:'';position:absolute;right:-35%;top:15%;width:40%;height:45%;border:1px solid #f6f1dc}
.motion-off .actor .avatar-body{animation:none!important}
@keyframes desk-work{50%{transform:translateY(5%) rotate(1deg)}}
@media(prefers-reduced-motion:reduce){.actor.at-desk.typing .avatar-body{animation:none}}

.connection-status{display:block;padding:16px 18px;border:2px solid #c2cbb9;border-radius:10px;margin:12px 0 18px;background:#f3f5ee}.connection-status strong{display:block;font-size:16px}.connection-status span{display:block;font-size:12px;margin-top:7px;line-height:1.5}.connection-ok{color:#245337;background:#e6f4e8;border-color:#76a787}.connection-error{color:#873c2d;background:#fff0eb;border-color:#d99c88}.connection-pending{color:#76602e;background:#fff8e7;border-color:#d5bd82}
