@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;font-family:'DM Sans',sans-serif;font-synthesis:none;--bg:#171717;--panel:#202020;--soft:#282828;--line:#343434;--muted:#969494;--text:#eeeae5;--accent:#e4a87a}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #e4a87a;outline-offset:2px}button{border:0}svg{flex:none}.shell{height:100vh;display:flex;overflow:hidden}.sidebar{width:236px;flex:none;border-right:1px solid #313131;background:#1b1a1a;display:flex;flex-direction:column;padding:21px 13px 14px}.brand{display:flex;align-items:center;gap:9px;padding:1px 11px 27px;font-family:Manrope,sans-serif;font-size:17px;font-weight:800;letter-spacing:-.75px}.brand-mark{width:24px;height:24px;display:grid;place-items:center;color:#df956c;font-size:27px;line-height:1}.search{height:34px;border:1px solid #343434;border-radius:7px;display:flex;align-items:center;gap:8px;color:#818181;padding:0 10px;margin:0 2px 15px;font-size:12px}.nav-link{height:38px;width:100%;display:flex;align-items:center;gap:12px;border-radius:7px;background:transparent;color:#b4b1ae;text-align:left;padding:0 12px;font-size:13px}.nav-link:hover,.nav-link.active{background:#313030;color:#f1efeb}.nav-link svg{opacity:.77}.nav-link.active svg{opacity:1}.nav-section{font-size:10px;text-transform:uppercase;letter-spacing:1.4px;color:#77736f;margin:30px 12px 13px;font-weight:700}.recent-link{background:transparent;color:#a7a4a0;text-align:left;width:100%;padding:9px 12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px;border-radius:6px}.recent-link:hover{background:#2b2928;color:#fff}.sidebar-spacer{flex:1}.sidebar-bottom{border-top:1px solid #333;padding:16px 10px 2px;display:flex;align-items:center;gap:9px;font-size:11px;color:#b3afab}.avatar{background:#876a5a;color:#fff;border-radius:50%;width:24px;height:24px;display:grid;place-items:center;font-size:11px;font-weight:700}.main{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:62px;flex:none;border-bottom:1px solid #303030;display:flex;align-items:center;padding:0 28px;gap:13px;background:#1c1b1b}.crumb{display:flex;align-items:center;gap:10px;color:#a9a6a2;font-size:13px}.crumb strong{color:#eae8e4;font-weight:600}.top-spacer{flex:1}.btn{background:#2e2d2c;color:#eeeae7;border:1px solid #3e3c3a;border-radius:8px;padding:8px 13px;font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:8px;justify-content:center;white-space:nowrap}.btn:hover{background:#393735}.btn-primary{background:#e7a879;color:#221c19;border-color:#e7a879}.btn-primary:hover{background:#f0bc92}.btn-ghost{background:transparent;border-color:transparent;color:#aaa6a2}.btn-ghost:hover{color:#fff;background:#2b2929}.btn-small{padding:6px 9px;font-size:11px}.icon-btn{width:32px;height:32px;padding:0;display:grid;place-items:center;border-radius:7px;background:transparent;color:#a6a29d}.icon-btn:hover,.icon-btn.selected{background:#353331;color:#fff}.dashboard{overflow:auto;padding:68px clamp(34px,7vw,112px) 90px;width:100%}.eyebrow{display:flex;align-items:center;gap:9px;color:#db9c74;font-size:11px;text-transform:uppercase;font-weight:700;letter-spacing:2.1px}.eyebrow:before{content:'';width:18px;height:1px;background:currentColor}.dashboard h1{font-family:Manrope,sans-serif;font-size:clamp(38px,4vw,64px);line-height:1.13;letter-spacing:-3.8px;font-weight:600;margin:20px 0 16px}.dashboard h1 em{font-style:normal;color:#cf9c7e}.intro{max-width:610px;color:#a8a4a0;font-size:16px;line-height:1.7;margin:0}.hero-actions{display:flex;align-items:center;gap:16px;margin:31px 0 57px}.hero-note{color:#77736f;font-size:12px}.section-head{display:flex;justify-content:space-between;align-items:end;margin:0 0 19px}.section-head h2{font-family:Manrope,sans-serif;font-size:18px;letter-spacing:-.6px;margin:0}.section-head span{font-size:12px;color:#797672}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px}.project-card{cursor:pointer;border:1px solid #3a3734;border-radius:12px;overflow:hidden;background:#242221;transition:transform .2s,border-color .2s;text-align:left;padding:0;color:inherit;display:block;width:100%}.project-card:hover{transform:translateY(-3px);border-color:#a57659}.project-art{height:185px;background:#bcb0a1;overflow:hidden;position:relative}.project-art iframe{width:1080px;height:700px;border:0;transform:scale(.36);transform-origin:top left;pointer-events:none;position:absolute;top:0;left:0}.project-art .art-fallback{height:100%;display:grid;place-items:center;background:radial-gradient(ellipse at 77% 30%,#634a3e 0%,transparent 48%),#282624;font-family:Manrope,sans-serif;font-size:72px;color:#f2b88b}.project-info{padding:20px}.project-info h3{margin:0 0 7px;font-family:Manrope,sans-serif;font-size:15px}.project-info p{margin:0;color:#aaa5a0;font-size:12px;line-height:1.5;min-height:36px}.project-meta{border-top:1px solid #3a3734;margin-top:16px;padding-top:13px;display:flex;justify-content:space-between;font-size:11px;color:#85817c}.new-card{min-height:275px;border:1px dashed #514a45;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:10px;background:transparent;color:#a49b94}.new-card:hover{border-color:#dfad84;color:#dfad84}.new-card .plus{height:47px;width:47px;border-radius:12px;background:#3a302a;display:grid;place-items:center;color:#e6af89}.new-card strong{color:#e8e2dd;font-size:13px}.new-card span{font-size:11px}.workspace{flex:1;min-height:0;display:flex}.work-left{width:226px;flex:none;border-right:1px solid #303030;padding:21px 12px;display:flex;flex-direction:column;background:#1d1c1c}.work-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:#77736f;margin:0 10px 14px;display:flex;justify-content:space-between;align-items:center}.work-label button{border:0;background:transparent;color:#b8b1aa;font-size:17px;padding:0 4px}.page-row{width:100%;text-align:left;display:flex;gap:9px;align-items:center;padding:10px;border-radius:7px;background:transparent;color:#b8b4ae;font-size:12px;overflow:hidden;white-space:nowrap}.page-row span{overflow:hidden;text-overflow:ellipsis}.page-row:hover,.page-row.active{background:#33302e;color:#f4ede8}.version-list{border-left:1px solid #42403d;margin:3px 0 13px 18px;padding:2px 0 2px 12px;display:flex;flex-direction:column;gap:2px}.version-row{display:flex;align-items:center;gap:8px;text-align:left;width:100%;padding:8px;border-radius:6px;background:none;color:#88837e;font-size:11px;line-height:1.25}.version-row:hover,.version-row.active{background:#302c29;color:#eee9e4}.version-dot{width:5px;height:5px;background:#786a5f;border-radius:50%;flex:none}.version-row.active .version-dot{background:#e8a97e}.work-left-footer{margin-top:auto;padding:13px 9px;color:#79746f;font-size:11px;line-height:1.5;border-top:1px solid #353331}.center{flex:1;min-width:0;display:flex;flex-direction:column;background:#202020}.toolbar{height:59px;flex:none;border-bottom:1px solid #343434;display:flex;align-items:center;gap:10px;padding:0 20px;background:#222121}.toolbar-title{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:210px}.toolbar-hint{font-size:11px;color:#827e79;white-space:nowrap}.toolbar-sep{height:20px;width:1px;background:#41403d;margin:0 5px}.toolbar .spacer{flex:1}.zoom{font-size:11px;color:#b6b1ac;background:#292827;border:1px solid #3d3b39;border-radius:7px;padding:7px 9px}.canvas-scroll{flex:1;overflow:hidden;position:relative;background-color:#202020;background-image:radial-gradient(#363331 .8px,transparent .8px);background-size:22px 22px;padding:45px 42px 85px;cursor:grab;touch-action:none}.canvas-scroll.is-panning{cursor:grabbing}.canvas-content{position:absolute;left:50%;top:50%;width:max-content;max-width:none;will-change:transform}.canvas-tip{position:absolute;left:18px;bottom:15px;color:#8e8882;background:#252322d9;border:1px solid #403c38;border-radius:5px;padding:6px 9px;font-size:10px;pointer-events:none}.canvas-content .stage{cursor:default}.canvas-empty{max-width:430px;margin:14vh auto;text-align:center;color:#aaa5a0}.canvas-empty .empty-icon{font-size:40px;color:#e7a879;margin-bottom:15px}.canvas-empty h2{color:#f1ece8;font-family:Manrope,sans-serif;letter-spacing:-.8px;font-size:22px}.canvas-empty p{font-size:13px;line-height:1.7}.stage{margin:0 auto;position:relative;box-shadow:0 20px 75px #0008;border:1px solid #47413e;background:#fff}.stage iframe{border:0;width:100%;height:100%;display:block;background:#fff;transform-origin:top left}.stage-label{position:absolute;top:-27px;left:0;font-size:10px;color:#afa8a1;font-weight:600}.pin{position:absolute;width:25px;height:25px;border-radius:50%;background:#e7a879;color:#231c18;font-size:11px;font-weight:800;border:2px solid #fff;box-shadow:0 2px 9px #0008;transform:translate(-50%,-50%);z-index:3}.right{width:290px;flex:none;border-left:1px solid #343230;display:flex;flex-direction:column;background:#211f1e}.right-head{padding:21px 18px;border-bottom:1px solid #373431;display:flex;align-items:center;justify-content:space-between}.right-head strong{font-size:13px}.right-head span{font-size:10px;color:#8f8a85}.right-scroll{overflow-y:auto;padding:17px;flex:1}.revision-card{padding:14px;border:1px solid #403c39;border-radius:9px;background:#282522;margin-bottom:20px}.revision-kicker{color:#d49d78;font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.revision-card h3{font-size:13px;margin:8px 0 5px}.revision-card p{font-size:11px;color:#99938e;margin:0;line-height:1.5}.panel-title{font-size:10px;text-transform:uppercase;letter-spacing:1.4px;color:#88817c;font-weight:700;display:flex;justify-content:space-between;margin:0 0 12px}.comment{border:1px solid #403b37;border-radius:9px;background:#292625;margin:0 0 10px;padding:12px}.comment-top{display:flex;align-items:center;gap:8px;font-size:10px;color:#caab95}.comment-index{background:#e7a879;color:#201a17;border-radius:50%;width:19px;height:19px;display:grid;place-items:center;font-weight:800}.comment-target{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comment p{font-size:12px;line-height:1.55;margin:11px 0 10px;color:#e1dbd5}.comment-foot{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#827c76}.text-btn{background:transparent;color:#d1a487;font-size:10px;padding:0}.text-btn:hover{text-decoration:underline}.right-empty{border:1px dashed #47413c;border-radius:9px;text-align:center;padding:26px 14px;color:#8f8982;font-size:11px;line-height:1.6}.right-bottom{padding:15px;border-top:1px solid #373431}.composer{width:100%;height:91px;border:1px solid #48413c;border-radius:8px;background:#2d2927;color:#f4ece5;resize:vertical;padding:11px;font-size:12px;line-height:1.5}.composer::placeholder{color:#77716b}.composer-actions{display:flex;justify-content:space-between;align-items:center;margin-top:10px;gap:8px}.model-select{max-width:140px;background:transparent;border:0;color:#b5afa9;font-size:10px;overflow:hidden;text-overflow:ellipsis}.model-select option{background:#292725}.running{font-size:11px;color:#dfb18f;background:#392e27;border:1px solid #604532;padding:12px 15px;border-radius:8px;margin:0 0 12px;line-height:1.5}.run-log{font-size:10px;white-space:pre-wrap;max-height:120px;overflow:auto;color:#99918a;margin-top:8px;word-break:break-all}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:20;background:#eee4d9;color:#30231c;border-radius:8px;padding:11px 17px;box-shadow:0 12px 35px #0008;font-size:12px}.modal-backdrop{position:fixed;inset:0;z-index:30;background:#000a;display:grid;place-items:center;padding:18px}.modal{width:min(470px,100%);border:1px solid #51463f;background:#272321;box-shadow:0 30px 100px #000a;border-radius:14px;padding:28px}.modal h2{font-family:Manrope,sans-serif;letter-spacing:-1px;font-size:23px;margin:0 0 8px}.modal p{font-size:12px;color:#aaa29b;line-height:1.6;margin:0 0 21px}.field{display:block;font-size:11px;color:#bbb3ac;margin:0 0 17px}.field input,.field textarea{display:block;background:#1d1b1a;border:1px solid #514941;color:#f4ede7;padding:11px 12px;border-radius:8px;width:100%;margin-top:7px;resize:vertical}.field textarea{min-height:70px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.login-layout{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 50% 22%,#463328 0,transparent 42%),#191817}.login-box{width:min(390px,calc(100% - 30px));text-align:center}.login-box .brand{justify-content:center;padding:0 0 23px;font-size:22px}.login-box h1{font-family:Manrope,sans-serif;font-size:32px;letter-spacing:-1.6px;margin:0 0 9px}.login-box p{font-size:13px;color:#aaa39c;margin:0 0 27px}.login-box input{width:100%;background:#2d2926;border:1px solid #51453c;border-radius:9px;color:#fff;padding:13px;margin-bottom:12px}.login-box .btn{width:100%;padding:12px}.login-error{color:#e2a28b;font-size:11px;min-height:18px;margin-top:9px}.annotation-banner{position:absolute;top:11px;left:50%;transform:translateX(-50%);z-index:4;background:#322922;color:#f2cfad;border:1px solid #9b6b4f;border-radius:7px;padding:8px 12px;font-size:11px;box-shadow:0 3px 20px #0006;white-space:nowrap}.annotation-compose{position:absolute;z-index:5;width:265px;background:#292421;border:1px solid #a7795d;border-radius:10px;box-shadow:0 12px 35px #0008;padding:13px;color:#fff}.annotation-compose strong{display:block;font-size:11px;color:#e5ae87;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.annotation-compose textarea{width:100%;background:#1c1a19;color:#fff;border:1px solid #4e433d;border-radius:6px;min-height:75px;resize:vertical;padding:8px;font-size:11px;margin:9px 0}.annotation-compose .row{display:flex;gap:7px;justify-content:flex-end}.quick-instructions{background:#292523;border:1px solid #423a35;border-radius:8px;padding:11px;margin:14px 0;font-size:10px;color:#aaa19b;line-height:1.5}.quick-instructions code{color:#dbac88;word-break:break-all}.compare-stage{display:flex;gap:16px;align-items:start;justify-content:center}.compare-stage .stage{margin:0;flex:none}.modal pre{white-space:pre-wrap;word-break:break-all;background:#1b1918;color:#dbb99e;padding:12px;border-radius:7px;font-size:11px;line-height:1.6}.divider{width:1px;height:18px;background:#494541}@media(max-width:1150px){.right{width:255px}.work-left{width:184px}.toolbar-hint{display:none}}@media(max-width:850px){.sidebar{width:59px;padding:19px 7px}.brand{justify-content:center;padding:0 0 26px}.brand .brand-name,.search,.nav-link span,.nav-section,.recent-link,.sidebar-bottom span,.work-left-footer{display:none}.nav-link{justify-content:center;padding:0}.sidebar-bottom{justify-content:center}.dashboard{padding:45px 26px}.right{width:245px}.work-left{width:150px}.toolbar{padding:0 10px}.toolbar-title{max-width:125px}}@media(max-width:670px){.shell{height:100dvh}.work-left{display:none}.right{position:fixed;right:0;top:62px;bottom:0;z-index:10;box-shadow:-12px 0 30px #0007;display:none}.right.mobile-open{display:flex}.topbar{padding:0 12px}.canvas-scroll{padding:35px 18px}.dashboard h1{letter-spacing:-2px}.hero-actions{flex-wrap:wrap}.toolbar .zoom,.toolbar .toolbar-sep{display:none}}
@media(max-width:1150px){.sidebar{width:59px;padding:19px 7px}.brand{justify-content:center;padding:0 0 26px}.brand .brand-name,.search,.nav-link span,.nav-section,.recent-link,.sidebar-bottom span{display:none}.nav-link{justify-content:center;padding:0}.sidebar-bottom{justify-content:center}.work-left{width:160px}}

.selection-ui{position:absolute;inset:0;pointer-events:none;z-index:5}.selection-outline{position:absolute;border:2px solid #91c2ff;box-shadow:0 0 0 1px #1251bb,0 0 0 9999px #0000;pointer-events:none}.selection-outline:before,.selection-outline:after{content:'';position:absolute;width:7px;height:7px;background:#5d9afe;border:1px solid white;top:-5px}.selection-outline:before{left:-5px}.selection-outline:after{right:-5px}.element-toolbar{position:absolute;transform:translate(-35%,-115%);display:flex;align-items:center;gap:5px;padding:5px;background:#2a2929;color:#f7f3f0;border:1px solid #4a4745;border-radius:8px;box-shadow:0 8px 26px #0009;white-space:nowrap;pointer-events:auto;max-width:280px}.element-name{font-size:11px;max-width:130px;overflow:hidden;text-overflow:ellipsis;color:#d8d3ce;padding:0 6px}.element-pin{display:flex;align-items:center;gap:4px;border-radius:5px;padding:6px 8px;background:#3d3530;color:#f2c4a5;font-size:11px}.element-pin:hover{background:#604838}.element-toolbar .icon-btn{width:25px;height:25px}.selection-ui .annotation-compose{pointer-events:auto;z-index:2}.canvas-scroll.is-panning .selection-ui{pointer-events:none}

.draft-card{padding:13px;border:1px solid #70523f;border-radius:9px;background:#302820;margin:0 0 18px}.draft-card p{font-size:11px;color:#c6b7aa;line-height:1.5;margin:8px 0 11px}.working-row .version-dot{background:#e5a87b}.working-row.active{color:#eec5a5}.working-row.active .version-dot{box-shadow:0 0 0 3px #e5a87b44}

.pin-resolved{background:#777a70;color:#fff}.pin-bubble{position:absolute;z-index:7;width:260px;background:#292624;color:#f5f1ec;padding:12px;border:1px solid #b08063;border-radius:9px;box-shadow:0 10px 36px #000b}.pin-bubble-head{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#e7b18d;font-size:11px;font-weight:700;white-space:nowrap;overflow:hidden}.pin-bubble-head span{overflow:hidden;text-overflow:ellipsis}.pin-bubble p{font-size:12px;line-height:1.5;margin:8px 0 9px}.pin-bubble small{color:#9a928b;font-size:10px}.pin-model{width:100%;color:#dfd2c6;background:#211e1c;border:1px solid #5a4b42;border-radius:6px;padding:6px 7px;font-size:10px;margin-bottom:8px}

@media(max-width:1150px){.toolbar-title,.toolbar-hint{display:none}.toolbar .spacer{display:none}.toolbar{gap:4px;padding:0 8px}.toolbar [data-action=annotate].btn{display:none}.toolbar [data-action=zoom-out],.toolbar [data-action=zoom-in]{display:none}.toolbar .toolbar-sep{margin:0 2px}}@media(max-width:670px){.toolbar [data-action=zoom-fit]{display:none}.canvas-tip{display:none}}

.canvas-scroll.playing .pin,.canvas-scroll.playing .pin-bubble,.canvas-scroll.playing .selection-ui{display:none}
