html,body,#root{height:100%;margin:0}.world-shell{--world-paper:#fbf6ec;--world-wood:#3a2c20;position:relative;height:100dvh;display:flex;flex-direction:column;overflow:hidden;background:#2b2118;color:#2b2118;font-family:Segoe UI,system-ui,sans-serif}.world-top{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;padding-top:max(6px,env(safe-area-inset-top));background:linear-gradient(#4a382a,#3a2c20);border:0;color:#fff3df;z-index:5;box-shadow:0 2px #241a12}.world-top nav{display:flex;padding:0;border:0;gap:6px}.world-top nav button{background:#2c2118;border:2px solid #5e4835;border-radius:12px;color:#d9c6ab;font-weight:700;padding:6px 14px}.world-top nav button[aria-current]{background:#f2c94c;color:#3a2c20;border-color:#ffe08a;box-shadow:0 2px #9a7a1e}.world-account{display:flex;align-items:center;gap:12px;font-size:12px}.world-account button{background:#2c2118;border-color:#5e4835;color:#fff3df;min-width:44px;padding:4px}.world-space{flex:1;min-height:0;position:relative;overflow:hidden}.world-workshop{background:radial-gradient(ellipse at 50% 35%,#5b4a3b,#2f251c 75%)}.world-home{background:radial-gradient(ellipse at 50% 35%,#a9cfe6,#6f9bb8 80%)}.world-stage{height:100%;width:100%;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#99836b transparent}.world-canvas{height:100%;margin:auto}.world-art{height:100%;width:100%;display:block;overflow:visible}.world-art .obj{cursor:pointer;outline:none}.world-art .obj:hover>*,.world-art .obj:focus-visible>*,.world-art .obj.selected>*{filter:brightness(1.12) drop-shadow(0 0 2px #ffe08a)}.world-art .obj:focus-visible .marker-dot,.world-art .obj.selected .marker-dot{stroke:#ffe08a;stroke-width:3}.world-sign{font-size:13px;fill:#f2c94c;font-weight:900;text-anchor:middle;letter-spacing:.12em}.world-camera{position:absolute;top:12px;left:12px;z-index:4;display:flex;gap:4px}.world-camera button{min-width:44px;min-height:44px;padding:5px;background:#2c2118dd;border:2px solid #796147;color:#fff1d6;box-shadow:0 3px #21190f80;font-weight:800;font-size:18px}.world-camera button:disabled{opacity:.45;cursor:default}.world-hint{position:absolute;bottom:8px;left:50%;transform:translate(-50%);margin:0;color:#fff4e1;font-size:12px;background:#2c2118c9;padding:5px 12px;border-radius:12px;pointer-events:none;max-width:90%;text-align:center}.pan-hint{display:none}.world-bottom{margin:0;background:linear-gradient(#3a2c20,#2b2118);padding-bottom:env(safe-area-inset-bottom);z-index:5;box-shadow:0 -2px #66503a}.world-bottom nav{display:flex;justify-content:center;gap:8px;border:0;padding:5px 12px;overflow:visible}.world-bottom button{flex:1;max-width:180px;background:none;border:0;color:#f3e6d0;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px;min-height:55px;border-radius:12px}.world-bottom button:hover,.world-bottom button[aria-current]{background:#fff2d51a;color:#f2c94c}.world-bottom b{font-size:24px;line-height:1}.world-bottom span{font-size:12px;font-weight:700}.world-sheet-shade{position:absolute;top:60px;right:0;bottom:72px;left:0;z-index:9;pointer-events:auto;background:#21160c14}.world-sheet{position:absolute;right:16px;top:12px;bottom:12px;width:min(480px,calc(100% - 32px));background:var(--world-paper);border:3px solid #5a4636;border-radius:18px;box-shadow:0 8px #0004,0 20px 40px #0005;display:flex;flex-direction:column;overflow:hidden;animation:sheet-in .16s ease-out}.sheet-title{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-bottom:2px dashed #e0d2b8}.sheet-title h2{margin:0;font-size:19px;font-family:inherit;font-weight:750}.sheet-title button{padding:0;min-width:44px;font-size:24px;background:#efe3cc;border:0}.sheet-content{overflow:auto;padding:16px;flex:1;min-height:0;overflow-wrap:anywhere}.world-shell .world-feature{padding:0;margin:0;max-width:none}.world-list{display:flex;flex-direction:column;gap:9px;margin-bottom:16px}.world-list button{text-align:left;background:#f2e9d8;border-color:#d4c3a5;box-shadow:0 2px #d5c3a4;padding:12px;overflow-wrap:anywhere}.world-list small{display:block;margin-top:5px;color:#75674f}.world-shell .cards{grid-template-columns:1fr}.world-shell .card{min-height:unset;box-shadow:none;border-color:#d4c3a5;padding:12px;background:#f9f2e5}.world-shell .card h3{font-family:inherit;font-size:16px;font-weight:700}.world-shell .card-top{margin-bottom:8px}.world-shell .empty{padding:20px 12px}.world-shell .empty>span{font-size:30px}.world-shell .create-form{padding:0;background:transparent;border:0;margin:0}.world-shell .panel-backdrop{position:absolute;top:60px;right:0;bottom:72px;left:0;background:#21160c14;z-index:11;pointer-events:auto;padding:12px 16px}.world-shell .panel{height:100%;width:min(540px,100%);padding:20px;background:var(--world-paper);border:3px solid #5a4636;border-radius:18px;box-shadow:0 8px #0004,0 20px 40px #0005;animation:sheet-in .16s ease-out}.world-shell .panel h2{font:750 21px Segoe UI,sans-serif}.world-shell button:focus-visible{outline:3px solid #f2c94c;outline-offset:2px}.world-loading{flex:1;display:grid;place-items:center;color:#fff3df}.world-alert{position:absolute;bottom:85px;left:12px;max-width:calc(100% - 24px);z-index:6;background:#f2c94c;color:#2b2118}.world-shell .form-grid{grid-template-columns:1fr}.world-shell .section-heading{flex-wrap:wrap}.world-shell .section-heading input{max-width:none}.world-shell h1{font-family:inherit;font-size:24px}.world-shell .notice{overflow-wrap:anywhere}.world-shell .badge{background:#e9dfcb;color:#5b4c35}@keyframes sheet-in{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:650px){.world-top{padding:6px}.world-top nav button{font-size:13px;padding:6px 10px}.world-account{gap:6px}.world-account span{max-width:60px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.world-camera{top:8px;left:8px;gap:3px}.world-camera button{min-width:44px}.world-bottom nav{padding:5px 2px;gap:0}.world-bottom span{font-size:11px}.world-sheet-shade{top:58px;right:0;bottom:70px;left:0}.world-sheet{inset:auto 6px 6px;width:calc(100% - 12px);height:82%;border-radius:18px 18px 12px 12px}.world-shell .panel-backdrop{top:58px;right:0;bottom:70px;left:0;padding:6px;align-items:flex-end}.world-shell .panel{height:88%;padding:16px}.pan-hint{display:inline}.world-hint{white-space:nowrap;font-size:11px}.sheet-content{padding:12px}}@media(prefers-reduced-motion:reduce){.world-shell *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.world-art{pointer-events:none}.world-art .obj{pointer-events:bounding-box}.world-art .obj>*{pointer-events:visiblePainted}.world-closed{display:grid;place-items:center;color:#f3e6d0;text-align:center;padding:24px}.world-shell .panel.chat-panel{display:flex;flex-direction:column;overflow:hidden;padding:14px}.chat-panel>.section-heading{flex-shrink:0;margin-bottom:8px}.chat-panel .conversation{display:flex;flex-direction:column;flex:1;min-height:0}.chat-panel .conversation>h2{flex-shrink:0;margin:0 0 10px}.chat-transcript{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:0 8px 8px 0;overflow-wrap:anywhere}.chat-transcript>.message{margin:8px 0;padding:12px}.world-shell .panel .chat-composer{flex-shrink:0;max-height:43%;overflow:auto;margin:8px 0 0;padding:8px;border-top:1px solid #d4c3a5;background:#f2e9d8}.chat-composer>label{margin:0 0 6px}.chat-composer textarea{min-height:65px;height:65px}.chat-composer .muted{display:none}.chat-composer .chat-attachments{margin:0;display:inline-block;font-size:12px}.chat-composer>button{float:right}.chat-context{font-size:12px}.chat-context pre{max-height:240px;overflow:auto}.chat-panel .conversation details{margin:6px 0}.chat-panel .conversation summary{padding:5px 0}:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#253c36;background:#f5f3ec;font-synthesis:none;line-height:1.5}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{min-height:44px;padding:.6rem 1rem;border:1px solid #c8cec0;border-radius:9px;background:#fffef9;color:#29483c;cursor:pointer}button:hover{background:#e7ecdf}button:disabled{opacity:.5;cursor:wait}.primary{background:#355e4c;color:#fff;border-color:#355e4c}.primary:hover{background:#244837}input,select,textarea{width:100%;border:1px solid #c2c9bc;border-radius:7px;padding:.7rem;background:#fffefa;color:#253c36;min-height:44px}textarea{min-height:90px;resize:vertical}label{display:block;font-size:.9rem;font-weight:600;margin:.8rem 0}label input,label select,label textarea{display:block;margin-top:.35rem;font-weight:400}h1,h2,h3,p{margin-top:0}h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(2rem,4vw,3.5rem);line-height:1.15;margin-bottom:.8rem}h2{font-size:1.3rem}h3{font-size:1.05rem}header{padding:1.2rem 3rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d7ddce;background:#fffdf6}.brand{font-family:Georgia,serif;font-size:1.4rem;color:#355e4c;text-decoration:none}.account{display:flex;gap:1rem;align-items:center}nav{display:flex;gap:.5rem;padding:1rem 3rem;overflow-x:auto;border-bottom:1px solid #e0e2d7}nav button{white-space:nowrap;background:transparent;border-color:transparent}nav [aria-current]{background:#e0e8d8;border-color:#b7c7ac}.app main{max-width:1320px;margin:auto;padding:2.5rem 3rem}.heading{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-bottom:2.5rem}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.7rem;font-weight:700;color:#6c7c63}.muted,small{color:#657267}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.section-heading h2{margin:0}.section-heading input{max-width:280px}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.1rem}.card{text-align:left;min-height:230px;padding:1.4rem;border:1px solid #d5d9ca;border-radius:14px;background:#fffef8;box-shadow:0 3px 10px #263c3610;display:flex;flex-direction:column;align-items:flex-start}.card:hover{transform:translateY(-2px);background:#fff}.card-top{display:flex;align-items:center;gap:.8rem;font-size:.72rem;color:#73826d;margin-bottom:1.3rem}.symbol{display:grid;place-items:center;font-size:1.5rem;width:42px;height:42px;background:#e9eddf;border-radius:12px;color:#4c6b48}.card h3{font-family:Georgia,serif;font-size:1.35rem;font-weight:400;margin-bottom:.5rem}.card p{font-size:.9rem;color:#6c756a;flex:1}.card small{display:block;margin-top:.6rem}.badge{display:inline-block;padding:.3rem .65rem;border-radius:6px;background:#efeadb;color:#6e6142;font-size:.77rem}.badge.ready{background:#e0ecdd;color:#3a623f}.completed{opacity:.75}.empty{text-align:center;border:1px dashed #bbcbb0;border-radius:16px;padding:4rem 1rem;margin-top:1.5rem;color:#6b7c5f}.empty>span{font-size:4rem}.notice{border:1px solid #c8b57a;background:#fff9e4;padding:1rem;border-radius:10px;margin:1rem 0}.notice.error{background:#fceee8;border-color:#c8a28e}.notice>div{border-top:1px solid #d8ceb2;padding:.8rem 0}.notice button{margin:.5rem}.create-form{background:#e9edde;padding:1.5rem;border:1px solid #bcc9ad;border-radius:14px;margin-bottom:2rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}.panel-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#1d302c66;display:flex;justify-content:flex-end;z-index:10}.panel{background:#fffef8;width:min(600px,100%);height:100%;overflow:auto;padding:2rem;box-shadow:-10px 0 60px #172d2930}.panel h2{font-family:Georgia,serif;font-size:2rem;font-weight:400}.panel h3{margin-top:1.7rem}.panel form{background:#f3f4eb;padding:1rem;border-radius:10px;margin:1rem 0}.panel .body{white-space:pre-wrap;margin-top:1rem}.dependency{border-left:3px solid #bcccae;padding-left:1rem;margin:1rem 0}.text-button{border:none;background:transparent;padding:0;min-height:44px;text-decoration:underline;text-align:left}.activity article,.message{padding:1rem;border-bottom:1px solid #dde2d4}.message{background:#edf1e5;border-radius:10px;margin:1rem 0}.message p{white-space:pre-wrap}.actions{display:flex;gap:.5rem}.login{max-width:650px;margin:12vh auto;padding:2rem}.login h1{margin-top:3rem}.login>p{margin:1.5rem 0}footer{margin-top:3rem;color:#74816c;font-size:.75rem}pre{white-space:pre-wrap;overflow-wrap:anywhere}details{margin:1.5rem 0}summary{cursor:pointer;min-height:44px;padding:.6rem 0}@media(max-width:650px){header{padding:1rem}.brand{font-size:1.1rem}.account{gap:.5rem;font-size:.8rem}nav{padding:.6rem 1rem}.app main{padding:1.5rem 1rem}.heading{align-items:flex-start;flex-direction:column;gap:.5rem;margin-bottom:1.5rem}.section-heading{flex-wrap:wrap}.section-heading input{max-width:none}.cards{grid-template-columns:1fr}.panel{padding:1.2rem}.form-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}.card:hover{transform:none}}.care{max-width:860px;margin:auto}.care-clock{display:flex;flex-direction:column;gap:.5rem;padding:1.4rem;background:#eef3e9;border-radius:16px;margin:1rem 0}.care-clock strong{font-size:clamp(2.8rem,10vw,4.2rem);font-variant-numeric:tabular-nums}.care-controls{border:1px solid #c5ccbd;border-radius:14px;padding:1rem}.care-controls button,.care-actions button{margin:.25rem;min-height:46px}.care-controls h3{width:100%}.care-actions{margin:.5rem 0;display:flex;flex-wrap:wrap;gap:.25rem}.care-form{margin:1rem 0;padding:1rem;border:2px solid #526e4c;border-radius:12px}.care-form label,.care-form input,.care-form textarea{display:block;width:100%}.care-form button{margin:.7rem .5rem 0 0}.care pre{white-space:pre-wrap;overflow-wrap:anywhere}.care article{padding:.7rem 0;border-bottom:1px solid #d8d9d1;overflow-wrap:anywhere}.care label{display:block}.care select{max-width:100%}.care fieldset{min-width:0}.conversation .message{padding:1rem;overflow-wrap:anywhere}.conversation .assistant{background:#e8eee3;border-left:3px solid #50765b}.conversation .streaming{border:1px dashed #66856d}.turn-status,.approval,.capacity-card{padding:1rem;border:1px solid #c5ccbd;border-radius:12px;margin:1rem 0;background:#fffdf6}.attachment{display:flex;align-items:center;gap:.6rem;margin:.5rem 0;overflow-wrap:anywhere}.capacity{max-width:860px;margin:auto}.capacity meter{width:100%;height:1rem}.checkbox{display:flex;align-items:center;gap:.6rem}.checkbox input{width:auto;min-height:0}.attention-next{padding:1.5rem;border:1px solid #b7c4ad;background:#eef2e9;border-radius:16px;margin-bottom:1.5rem}.attention-filters{display:flex;align-items:end;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}.attention-filters label{flex:1;min-width:180px}.attention-group{margin:2rem 0}.attention-card{background:#fffdf9;border:1px solid #ddd6c9;border-radius:14px;padding:1.25rem;margin:1rem 0;overflow-wrap:anywhere}.attention-card:focus{outline:3px solid #628066;outline-offset:3px}.attention-card h3{margin:.6rem 0}.attention-card .actions{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem}.attention-card details{margin-top:1rem}.attention pre{white-space:pre-wrap;overflow-wrap:anywhere}.attention button{min-height:44px}.attention textarea{width:100%;box-sizing:border-box}@media(max-width:480px){.attention-next,.attention-card{padding:1rem}.attention-filters{display:block}.attention-card .section-heading{align-items:start;flex-wrap:wrap}.attention input,.attention select{max-width:100%}}.pwa-controls{position:fixed;right:12px;bottom:calc(76px + env(safe-area-inset-bottom));z-index:90;display:flex;gap:6px}.pwa-controls:empty{display:none}.pwa-controls button{background:#355e4c;color:#fff;border:0;border-radius:16px;padding:9px 13px;font:inherit;font-size:12px;box-shadow:0 2px 10px #0002}.connection-status{position:fixed;top:calc(54px + env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:95;max-width:calc(100% - 20px);width:max-content;background:#fff6d9;color:#443d27;padding:6px 10px;border-radius:12px;font-size:12px;box-shadow:0 2px 10px #0002}.connection-status button{font:inherit;border:0;background:transparent;text-decoration:underline;margin-left:8px;color:inherit}.connection-status{display:flex;align-items:center;justify-content:center;gap:4px;flex-wrap:wrap}.connection-status button{padding:4px;min-height:28px;width:auto;margin-left:4px}
