:root{--ink:#0b1117;--panel:#101922;--panel2:#16232d;--line:#2a3a45;--blue:#bacfd9;--ice:#eef3f6;--paper:#f4f1ea;--brown:#6d312f;--muted:#8396a3;--accent:#d7e5ec;--sans:"Noto Sans SC",sans-serif;--display:"Saira Condensed","Arial Narrow",sans-serif;--mono:"IBM Plex Mono",monospace}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--ink);color:var(--ice);font-family:var(--sans)}button,input,textarea,select{font:inherit}.app-shell{min-height:100vh;display:grid;grid-template-columns:230px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;padding:26px 22px;border-right:1px solid var(--line);background:#080d12;display:flex;flex-direction:column}.studio-logo{width:158px;height:44px;object-fit:contain;object-position:left center;filter:brightness(0) invert(1)}.studio-name{margin:34px 0 30px;font:400 24px/1.05 var(--display);letter-spacing:.12em}.studio-name span{color:var(--blue);font-size:13px}.side-nav{display:grid;gap:8px}.side-link{border:0;background:transparent;color:var(--ice);padding:14px 12px;text-align:left;cursor:pointer;border-left:2px solid transparent}.side-link span{color:var(--muted);font:12px var(--mono);margin-right:13px}.side-link.active{background:var(--panel);border-color:var(--blue)}.phase-note{margin-top:auto;border-top:1px solid var(--line);padding-top:20px;color:var(--muted);font-size:12px;line-height:1.7}.phase-note b{font:11px var(--mono);letter-spacing:.17em;color:var(--blue)}.main-area{min-width:0}.topbar{min-height:106px;padding:24px 30px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;position:sticky;top:0;z-index:20;background:rgba(11,17,23,.96);backdrop-filter:blur(12px)}.eyebrow{color:var(--blue);font:11px var(--mono);letter-spacing:.18em;text-transform:uppercase}.topbar h1{margin:7px 0 0;font:400 29px/1.05 var(--display);letter-spacing:.04em}.top-actions,.inline-actions{display:flex;gap:9px;flex-wrap:wrap}.btn{border:1px solid var(--blue);background:transparent;color:var(--ice);min-height:40px;padding:10px 15px;font:500 12px var(--mono);letter-spacing:.05em;cursor:pointer}.btn:hover,.btn.primary{background:var(--blue);color:var(--ink)}.btn.danger{border-color:#81504e;color:#e7b7b3}.btn:disabled{opacity:.42;cursor:not-allowed}.list-page{padding:28px 30px 60px}.list-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:24px}.summary-card{border:1px solid var(--line);background:var(--panel);padding:20px}.summary-card b{display:block;font:400 34px var(--display);margin-bottom:5px}.summary-card span{color:var(--muted);font-size:13px}.quote-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:15px}.quote-card{border:1px solid var(--line);background:linear-gradient(145deg,var(--panel),#0d151c);padding:22px;min-height:235px;display:flex;flex-direction:column;cursor:pointer;transition:.18s ease}.quote-card:hover{border-color:var(--blue);transform:translateY(-2px)}.quote-card-head{display:flex;justify-content:space-between;gap:15px}.status{display:inline-flex;align-items:center;border:1px solid #59707e;padding:5px 8px;color:var(--blue);font:10px var(--mono);letter-spacing:.1em}.quote-card h2{font:400 34px/1.05 var(--display);letter-spacing:.04em;margin:27px 0 8px}.quote-card p{margin:0;color:var(--muted);font-size:13px}.quote-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;border-top:1px solid var(--line);padding-top:16px;margin-top:auto}.quote-meta span{font-size:11px;color:var(--muted)}.quote-meta b{display:block;color:var(--ice);font-weight:400;margin-top:4px}.editor-page{height:calc(100vh - 106px);display:grid;grid-template-columns:minmax(500px,56%) minmax(380px,44%);overflow:hidden}.editor-panel{overflow:auto;border-right:1px solid var(--line);padding:0 28px 70px}.editor-tabs{position:sticky;top:0;z-index:10;display:flex;gap:0;overflow:auto;background:var(--ink);padding:17px 0 12px;border-bottom:1px solid var(--line)}.tab{border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);padding:10px 13px;white-space:nowrap;cursor:pointer;font-size:13px}.tab.active{color:var(--ice);border-color:var(--blue)}.form-section{padding:26px 0;border-bottom:1px solid var(--line)}.form-section>h2{margin:0 0 8px;font:400 26px var(--display);letter-spacing:.06em}.section-note{color:var(--muted);font-size:13px;line-height:1.6;margin:0 0 22px}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label,.field-label{font:11px var(--mono);letter-spacing:.08em;color:var(--blue)}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:0;background:#0e171e;color:var(--ice);padding:11px 12px;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--blue)}textarea{min-height:94px;resize:vertical;line-height:1.55}.array-card{border:1px solid var(--line);background:var(--panel);padding:18px;margin:13px 0}.array-card-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:16px}.array-card-head h3{font:400 22px var(--display);margin:0;letter-spacing:.04em}.compact-row{display:grid;grid-template-columns:110px 1fr auto;gap:9px;margin:9px 0;align-items:start}.compact-row input{min-height:42px}.icon-btn{width:42px;height:42px;border:1px solid var(--line);background:transparent;color:var(--ice);cursor:pointer}.icon-btn:hover{border-color:var(--blue)}.sub-block{border-top:1px solid var(--line);padding-top:16px;margin-top:18px}.sub-block-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.sub-block-title h4{margin:0;font:400 15px var(--mono);letter-spacing:.06em}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.photo-slot{position:relative;aspect-ratio:4/3;border:1px dashed #50636f;background:#121e27;display:grid;place-items:center;overflow:hidden}.photo-slot img{width:100%;height:100%;object-fit:cover}.photo-slot span{font:9px var(--mono);letter-spacing:.12em;color:var(--muted);text-align:center;padding:8px}.photo-slot input{position:absolute;inset:0;opacity:0;cursor:pointer}.photo-remove{position:absolute;right:4px;top:4px;width:27px;height:27px;border:0;background:rgba(8,13,18,.84);color:white;cursor:pointer}.preview-panel{background:#070b0f;display:grid;grid-template-rows:auto minmax(0,1fr);min-width:0}.preview-panel.open{position:fixed;inset:106px 0 0 230px;z-index:30;display:grid}.preview-toolbar{display:flex;justify-content:space-between;align-items:center;padding:13px 16px;border-bottom:1px solid var(--line)}.device-switch{display:flex;border:1px solid var(--line)}.device-switch button{border:0;background:transparent;color:var(--muted);padding:8px 11px;cursor:pointer;font:11px var(--mono)}.device-switch button.active{background:var(--blue);color:var(--ink)}.save-state{font:11px var(--mono);color:var(--muted)}.preview-stage{overflow:auto;padding:18px;display:flex;justify-content:center;align-items:flex-start}.preview-frame-wrap{width:100%;height:100%;background:#fff;transition:.2s ease;box-shadow:0 12px 40px rgba(0,0,0,.35)}.preview-frame-wrap.mobile{width:406px;min-width:406px;max-width:406px;flex:0 0 406px;height:780px;border:8px solid #1f2b34;border-radius:22px;overflow:hidden}.preview-frame{border:0;width:100%;min-width:0;height:100%;background:#fff}.empty-state{border:1px dashed var(--line);padding:50px;text-align:center;color:var(--muted)}.toast{position:fixed;right:24px;bottom:24px;z-index:80;background:var(--paper);color:#231815;padding:13px 17px;box-shadow:0 10px 35px rgba(0,0,0,.4);font-size:13px;opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}@media(max-width:1100px){.app-shell{grid-template-columns:190px minmax(0,1fr)}.editor-page{grid-template-columns:1fr}.preview-panel{position:fixed;inset:106px 0 0 190px;z-index:30;display:none}.preview-panel.open{display:grid}.editor-panel{border:0}.fields{grid-template-columns:1fr}.field.full{grid-column:auto}}@media(max-width:720px){.app-shell{display:block}.sidebar{position:static;height:auto;padding:15px 18px;display:grid;grid-template-columns:145px 1fr;align-items:center;border-right:0;border-bottom:1px solid var(--line)}.studio-logo{width:130px}.studio-name,.phase-note{display:none}.side-nav{justify-self:end}.side-link{padding:10px}.main-area{min-width:0}.topbar{position:static;padding:18px;align-items:flex-start}.topbar h1{font-size:24px}.top-actions{justify-content:flex-end}.list-page{padding:20px 18px 50px}.list-summary{grid-template-columns:1fr}.quote-grid{grid-template-columns:1fr}.editor-page{height:auto;display:block}.editor-panel{padding:0 18px 60px}.preview-panel{inset:0;z-index:100}.preview-toolbar{padding-top:18px}.photo-grid{grid-template-columns:repeat(2,1fr)}.compact-row{grid-template-columns:88px 1fr auto}}
.quote-card-actions{display:flex;align-items:center;gap:7px}.card-status-select{width:auto;min-width:88px;padding:5px 25px 5px 8px;border-color:#59707e;color:var(--blue);font:10px var(--mono);letter-spacing:.06em;cursor:pointer}.card-action{border:1px solid #59707e;background:transparent;color:var(--blue);padding:5px 8px;font:10px var(--mono);letter-spacing:.06em;cursor:pointer}.card-action:hover,.card-action:focus-visible{background:var(--blue);color:var(--ink);outline:none}.quote-card.archived{opacity:.58}.quote-card.archived:hover{opacity:.82}.draft-delete{border:1px solid #81504e;background:transparent;color:#e7b7b3;padding:5px 8px;font:10px var(--mono);letter-spacing:.06em;cursor:pointer}.draft-delete:hover,.draft-delete:focus-visible{background:#81504e;color:#fff;outline:none}
.auth-page{min-height:calc(100vh - 106px);display:grid;place-items:center;padding:40px}.auth-card{width:min(440px,100%);border:1px solid var(--line);background:var(--panel);padding:36px;display:grid;gap:16px}.auth-card h2{font:400 38px var(--display);margin:8px 0 0}.auth-card p{color:var(--muted);font-size:13px;line-height:1.7;margin:0 0 8px}.auth-card label{display:grid;gap:7px;color:var(--blue);font:11px var(--mono)}.auth-error{min-height:20px;color:#e7b7b3;font-size:12px}.photo-slot.loading:after{content:'UPLOADING';position:absolute;inset:0;display:grid;place-items:center;background:rgba(8,13,18,.84);color:#fff;font:10px var(--mono);letter-spacing:.12em}.publish-issues{margin-top:20px;color:#e7b7b3;font-size:13px;line-height:1.6}.publish-issues h3{font:400 22px var(--display);margin:0}.versions-list{display:grid;gap:10px}.version-card{border:1px solid var(--line);padding:17px;display:grid;grid-template-columns:1fr auto;gap:8px 20px;align-items:center}.version-card>div:first-child{display:flex;gap:15px;align-items:baseline}.version-card b{font:400 28px var(--display)}.version-card span,.version-card p{color:var(--muted);font-size:12px}.version-card p{margin:0}.version-card .inline-actions{grid-column:2;grid-row:1/3}.field input:disabled{opacity:.62;cursor:not-allowed}
.review-box{border:1px solid #81504e;background:#211617;padding:20px;margin-top:20px}.review-box h2{margin:6px 0 0;font:400 27px var(--display)}.review-box select{width:auto;min-width:190px}.review-box ul{margin:16px 0 0;padding-left:20px;color:#d9b8b5;font-size:13px;line-height:1.8}
@media(max-width:720px){.auth-page{min-height:65vh;padding:24px 18px}.auth-card{padding:26px}.version-card{grid-template-columns:1fr}.version-card .inline-actions{grid-column:auto;grid-row:auto}}
