@font-face{font-family:Manrope;src:url('assets/fonts/manrope.ttf') format('truetype');font-weight:200 800;font-display:swap}
@font-face{font-family:Golos;src:url('assets/fonts/golos.ttf') format('truetype');font-weight:400 900;font-display:swap}
:root{color-scheme:dark;--bg:#111112;--panel:#1c1c1e;--raised:#272729;--input:#151516;--ink:#f2efea;--muted:#aaa7a5;--line:#353538;--soft-line:#2d2d30;--accent:#ff9b54;--accent-ink:#281a10;--error:#ffb2a5;--radius:26px;--workspace-width:1240px;--font:Golos,Manrope,"Segoe UI",sans-serif;--display:Manrope,"Segoe UI",sans-serif;--mono:Consolas,monospace}
*{box-sizing:border-box}html{scrollbar-gutter:stable;overflow-y:scroll;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#555258 #111112;scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.65 var(--font)}button,input,textarea,select{font:inherit}button,a,summary{touch-action:manipulation}button{cursor:pointer;transition:background .16s,border-color .16s,color .16s,transform .16s}button:disabled{opacity:.4;cursor:default}button,a,summary,input,textarea{outline-offset:4px}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent)}input:focus,textarea:focus,select:focus{outline:2px solid var(--accent);outline-offset:2px;border-color:transparent!important}button svg{width:18px;height:18px;stroke-width:1.7;flex-shrink:0}p,h1,h2,h3,h4{margin-top:0}button{color:inherit}[hidden]{display:none!important}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.skip-link{position:fixed;top:-90px;left:20px;z-index:200;background:var(--accent);color:var(--accent-ink);padding:12px 20px;border-radius:14px}.skip-link:focus{top:14px}
.app-shell{max-width:1600px;margin:auto}.app-header{display:flex;align-items:center;gap:26px;padding:26px 40px;border-bottom:1px solid var(--soft-line)}.brand{display:flex;align-items:center;gap:11px;border:0;background:transparent;text-align:left;padding:0;flex-shrink:0}.brand-mark{width:39px;height:39px;border-radius:13px;display:grid;place-items:center;background:var(--accent);color:var(--accent-ink);font:800 24px var(--display)}.brand b{display:block;font:800 20px/1.2 var(--display);letter-spacing:-.5px}.brand small{display:block;font:10px var(--font);color:var(--muted);letter-spacing:1.4px;margin-top:6px}.tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:4px;padding:4px;border-radius:28px;background:var(--panel);margin:0 auto;min-width:0;width:480px;flex:0 1 480px}.tab{position:relative;min-width:0;border:0;background:transparent;color:var(--muted);padding:10px 12px;font-size:12px;border-radius:23px;display:flex;align-items:center;justify-content:center;gap:0;white-space:nowrap;min-height:44px;line-height:1.2}.tab:hover{background:var(--raised);color:var(--ink)}.tab.active{color:var(--accent);background:var(--raised)}.tab span{position:absolute;top:3px;right:7px;font:9px/1 var(--mono);min-width:12px;text-align:center;color:var(--muted);pointer-events:none}.tab span.has-errors{color:var(--accent)}.tab.active span{color:inherit}.button{display:inline-flex;justify-content:center;align-items:center;gap:9px;min-height:44px;padding:11px 17px;border-radius:14px;border:1px solid transparent;font-size:12px;font-weight:600;line-height:1.5;text-decoration:none;white-space:nowrap}.button.primary{background:var(--accent);color:var(--accent-ink)}.button.primary:hover{background:#ffad73}.button.secondary{background:var(--raised);color:var(--ink);border-color:#ffffff05}.button.secondary:hover{background:#343437}.button.danger{background:#b65d4d;color:#fff}.button.danger:hover{background:#ca7060}.quiet-button{border:0;background:transparent;padding:8px 0;font-size:12px;color:var(--muted);display:inline-flex;align-items:center;gap:7px}.quiet-button:hover{color:var(--accent)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:34px;height:34px;border-radius:10px;border:1px solid transparent;background:transparent;color:var(--muted);padding:0;font-size:18px;line-height:1}.icon-btn:hover:not(:disabled){background:#ffffff0b;border-color:#ffffff10;color:var(--ink)}.icon-btn.remove{font-size:22px}.icon-btn.remove:hover:not(:disabled),.delete-button:hover:not(:disabled){background:#713b302e;color:var(--error)}
.workspace{padding:37px 40px 24px;outline:0}.library-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:7px 0 5px}.eyebrow{font-size:10px;font-weight:500;color:var(--accent);letter-spacing:1.7px;text-transform:uppercase;line-height:1.7}.library-heading h1{font:800 clamp(32px,3.4vw,47px)/1.25 var(--display);letter-spacing:-1.7px;margin:15px 0 12px}.library-heading p{font-size:13px;color:var(--muted);margin:0}.library-heading .primary>span{font-size:21px;font-weight:400}.library-heading kbd{font:10px var(--mono);opacity:.6;padding:1px 4px;border:1px solid #24180e35;border-radius:4px;margin-left:2px}.library-controls{display:grid;grid-template-columns:minmax(180px,1fr) minmax(210px,.34fr) minmax(225px,.36fr);gap:12px;margin-top:33px;align-items:stretch}.search-box{display:flex;flex-direction:row;align-items:center;gap:11px;background:var(--panel);border-radius:16px;padding:0 17px;min-width:0;border:1px solid transparent}.search-box:focus-within{outline:2px solid var(--accent);outline-offset:2px}.search-box svg{width:18px;height:18px;color:var(--muted);stroke-width:1.7;flex-shrink:0}.search-box input{background:transparent;border:0;outline:0!important;color:var(--ink);font-size:13px;min-width:0;width:100%;height:50px;padding:0}.search-box input::placeholder{color:#a09b98}.filter-control{display:flex;min-width:0}.filter-control>.select-control{flex:1}.filter-control .select-button{height:100%;min-height:50px;background:var(--panel);border-color:transparent;border-radius:16px;font-size:12px}.library-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:24px 0 20px}.filter-chips{display:flex;gap:7px;flex-wrap:wrap}.filter-chips button{border:1px solid var(--line);background:transparent;color:var(--muted);font-size:11px;border-radius:30px;padding:7px 12px;min-height:34px}.filter-chips button:hover{background:var(--raised)}.filter-chips button.active{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.results-count{font-size:12px;color:var(--muted);white-space:nowrap}.results-count b{font-weight:400;color:var(--ink)}.quest-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px;align-items:stretch}.quest-item{min-width:0;width:100%;display:flex;flex-direction:column;align-items:stretch;padding:0;text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:transform .18s,border-color .18s;position:relative}.quest-item:hover{transform:translateY(-3px);border-color:#986b49}.quest-item.selected{border-color:#8d6548}.quest-cover{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;height:92px;padding:16px 19px;background:radial-gradient(ellipse at 90% 130%,#b96d344f,transparent 65%),linear-gradient(135deg,#292624,#19191b);overflow:hidden}.quest-cover:after{content:"";position:absolute;width:200px;height:220px;border:1px solid #c29b6b20;border-radius:43%;right:-25px;top:-110px;transform:rotate(30deg);box-shadow:0 0 0 24px #bd966309,0 0 0 50px #bd966309,0 0 0 80px #bd966306;pointer-events:none}.quest-item:nth-child(even) .quest-cover{background:radial-gradient(ellipse at 0% 150%,#8f888f30,transparent 70%),linear-gradient(110deg,#1b1b1e,#302d2d)}.location-pill{position:relative;z-index:1;display:flex;align-items:center;gap:6px;max-width:74%;background:#131314a6;border:1px solid #ffffff18;border-radius:30px;padding:4px 9px;font-size:10px;color:#ddd5d0;line-height:1.5;overflow-wrap:anywhere}.location-pill svg{width:13px;height:13px;flex-shrink:0}.quest-number{font:800 39px/1.15 var(--display);color:#d1a37d35;letter-spacing:-2px;align-self:flex-end;white-space:nowrap;max-width:55%;overflow:hidden;text-overflow:ellipsis}.quest-item-content{display:flex;flex-direction:column;flex:1;min-width:0;padding:20px 20px 18px}.quest-item-content>b{font:700 17px/1.5 var(--display);letter-spacing:-.3px;overflow-wrap:anywhere;color:var(--ink)}.quest-meta{font-size:11px;color:var(--muted);margin-top:5px;overflow-wrap:anywhere}.quest-meta i{font-style:normal;color:var(--accent);margin-left:5px}.quest-footer{display:flex;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:15px;margin-top:auto;font-size:11px;color:var(--muted)}.quest-item-content .quest-footer{margin-top:19px}.quest-footer>span{display:flex;align-items:center;gap:6px;min-width:0}.quest-footer svg{width:14px;height:14px;flex-shrink:0}.quest-state{margin-left:auto}.quest-state.draft{color:#d5ae8f}.quest-arrow{color:var(--accent);font-size:18px}.list-empty{grid-column:1/-1;text-align:center;padding:65px 20px;color:var(--muted);border:1px dashed var(--line);border-radius:var(--radius);line-height:2}.pagination{display:flex;align-items:center;justify-content:center;gap:22px;margin:28px 0}.pagination .button{font-size:11px;min-height:38px;padding:8px 14px}.pagination>span{font-size:12px;color:var(--muted)}.source-banner{margin-top:30px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 26px;background:var(--panel);border-radius:21px;border:1px solid var(--soft-line)}.source-banner b{font-size:12px;font-weight:600}.source-banner small{display:block;margin-top:5px;font-size:11px;color:var(--muted)}.source-banner a{font-size:12px;color:var(--accent);text-decoration:none}.source-banner a:hover{text-decoration:underline}.app-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:27px 0 2px;margin-top:24px;border-top:1px solid var(--soft-line);font-size:11px;color:var(--muted)}.app-footer>div{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.app-footer .quiet-button{font-size:11px}.save-status{display:flex;align-items:center;gap:7px;font-size:11px}.save-status i{width:5px;height:5px;border-radius:50%;background:var(--accent);flex-shrink:0}.save-status.failed{color:var(--error)}.save-status.failed i{background:var(--error)}
.library,.editor-workspace,.app-footer{width:100%;max-width:var(--workspace-width);margin-inline:auto}.editor-topline{display:flex;justify-content:space-between;align-items:center;gap:18px}.editor-tools{display:flex;align-items:center;gap:10px}.editor-tools .button{font-size:11px;min-height:38px;padding:8px 13px}.editor-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:24px 0 29px}.editor-heading h1{font:800 clamp(28px,3vw,39px)/1.3 var(--display);letter-spacing:-1.2px;overflow-wrap:anywhere;margin:9px 0 8px}.editor-heading p{font-size:12px;color:var(--muted);margin:0}.editor-heading>div:first-child{min-width:0}.editor-primary-actions{display:flex;align-items:center;gap:9px;flex-shrink:0;flex-wrap:wrap}.editor-layout{display:grid;grid-template-columns:175px minmax(0,1fr);gap:30px;align-items:start}.section-nav{display:flex;flex-direction:column;gap:5px;position:sticky;top:22px;max-height:calc(100dvh - 44px);overflow:auto;scrollbar-width:thin}.section-nav button{display:flex;align-items:baseline;gap:10px;border:0;background:transparent;color:var(--muted);padding:12px 13px;border-radius:13px;font-size:12px;text-align:left;line-height:1.6;overflow-wrap:anywhere}.section-nav button:hover,.section-nav button.active{color:var(--ink);background:var(--panel)}.section-nav button>span{color:var(--accent);font:10px var(--mono);flex-shrink:0}.editor-panel{min-width:0}.section-card{background:var(--panel);border:1px solid #ffffff04;border-radius:var(--radius);padding:28px;margin-bottom:20px;scroll-margin-top:22px}.section-heading{display:flex;align-items:flex-start;gap:12px;margin-bottom:25px}.section-number{font:11px var(--mono);color:var(--accent);background:#ff9b5410;min-width:28px;height:28px;display:grid;place-items:center;border-radius:10px;margin-top:1px}.section-heading h2{font:700 17px/1.5 var(--display);margin:0 0 6px;letter-spacing:-.3px}.section-heading p{font-size:11px;color:var(--muted);line-height:1.8;margin:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:21px 18px}.form-grid.compact{margin-top:20px}.wide{grid-column:1/-1}.title-number{display:grid;grid-template-columns:70px minmax(0,1fr);gap:14px;grid-column:1/-1}.field{display:flex;flex-direction:column;gap:8px;min-width:0}.field-label{color:#d1cdca;font-size:12px;line-height:1.65}.required{color:var(--accent);margin-left:2px}.optional{color:var(--muted);font-size:10px;margin-left:5px}.field input,.field textarea,.field select,.speech-block textarea{width:100%;min-width:0;background:var(--input);color:var(--ink);border:1px solid #3a383b;border-radius:12px;font-size:14px;line-height:1.8;padding:11px 13px;min-height:46px}.field textarea,.speech-block textarea{resize:vertical;min-height:80px;scrollbar-width:thin;scrollbar-color:#5d5654 transparent}.field input::placeholder,.field textarea::placeholder,.speech-block textarea::placeholder{color:#99918e;font-size:12px}.field-hint{font-size:11px;color:var(--muted);line-height:1.7;overflow-wrap:anywhere}.field-error{font-size:11px;color:var(--error);line-height:1.7}.field-error:empty{display:none}[aria-invalid=true]{border-color:#e1a08b!important;background:#2a201e!important}.lead-note{display:flex;align-items:flex-start;gap:8px;margin-top:22px;padding-top:16px;border-top:1px solid var(--line);font-size:11px;line-height:1.9;color:var(--muted)}.lead-note>span{color:var(--accent);font-size:15px}.form-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--muted);font-size:11px}.advanced{border-top:1px solid var(--line);padding-top:19px;margin-top:23px}.advanced summary{font-size:12px;color:var(--ink);cursor:pointer}.advanced summary span{margin-left:8px;font-size:11px;color:var(--muted)}.advanced>div{margin-top:20px}.previous-field{margin-top:21px}.toggle-row{position:relative;display:flex;align-items:center;gap:18px;padding-top:19px;margin-top:11px;border-top:1px solid var(--line);cursor:pointer}.toggle-row>span:first-child{flex:1}.toggle-row b{font-size:12px;font-weight:500}.toggle-row small{display:block;font-size:11px;color:var(--muted);line-height:1.8;margin-top:4px}.toggle-row input{position:absolute;right:0;width:40px;height:24px;opacity:0}.toggle{width:39px;height:23px;background:#4a4544;border-radius:30px;position:relative;flex-shrink:0}.toggle:before{content:"";position:absolute;top:4px;left:4px;width:15px;height:15px;background:#c7c2bd;border-radius:50%;transition:transform .16s}.toggle-row input:checked+.toggle{background:var(--accent)}.toggle-row input:checked+.toggle:before{transform:translateX(16px);background:#372113}.toggle-row input:focus-visible+.toggle{outline:2px solid var(--accent);outline-offset:4px}.goals-list{display:flex;flex-direction:column;gap:16px}.goal-row{background:#222123;border:1px solid var(--line);padding:20px;border-radius:19px}.row-heading{display:flex;align-items:center;gap:9px;margin-bottom:16px}.row-heading b{font-size:12px;font-weight:500}.step-dot{font:11px var(--mono);width:26px;height:26px;border-radius:9px;background:var(--raised);display:grid;place-items:center;color:var(--accent);flex-shrink:0}.row-actions{display:flex;gap:3px;align-items:center;margin-left:auto;flex-shrink:0}.goal-type-count{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:14px;margin-bottom:18px}.add-button{width:100%;background:transparent;border:1px dashed #6c5140;color:#e4b795;border-radius:14px;padding:12px 16px;min-height:44px;font-size:12px;margin-top:17px;line-height:1.7}.add-button:hover{background:#ff9b540a;border-color:var(--accent);color:var(--accent)}.example-note,.dialogue-source-note{background:#242223;border:1px solid #494039;border-radius:19px;padding:17px 21px;margin-bottom:16px;font-size:12px;color:#c8bdb5;line-height:1.85}.example-note{display:flex;gap:12px;align-items:center}.example-note>span{color:var(--accent);font-size:22px}.example-note b,.dialogue-source-note b{display:block;font-size:12px;font-weight:600;color:#ead4c0}.example-note button{border:0;background:transparent;color:var(--muted);margin-left:auto;font-size:24px}.dialogue-source-note p{margin:7px 0 0;font-size:12px;color:var(--muted)}.npc-profile{border-color:#79604a;background:linear-gradient(110deg,#30261f,#222123)}.npc-profile b{color:var(--accent)}.dialogue-guide{display:flex;align-items:flex-start;gap:15px;background:var(--panel);border:1px solid var(--line);border-radius:21px;padding:20px 23px;margin-bottom:21px}.guide-icon{font-size:39px;color:var(--accent);line-height:1.2}.dialogue-guide b{font-size:13px;font-weight:600}.dialogue-guide p{font-size:12px;line-height:1.85;color:var(--muted);margin:7px 0 0}.scene-card{background:#171719;border:1px solid #3a3638;border-radius:21px;padding:23px;margin-bottom:22px;scroll-margin-top:25px}.blocks-list{display:flex;flex-direction:column;gap:19px;margin-top:24px}.speech-block{background:#242325;border:1px solid #3e3937;padding:20px;border-radius:22px 22px 22px 7px}.speech-block.player{background:#2a2622;border-color:#594536;border-radius:22px 22px 7px 22px;margin-left:34px}.speech-heading{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:16px}.speaker-picker{display:flex;flex-direction:row;align-items:center;gap:9px;flex:1;min-width:150px}.speech-avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;font:12px var(--display);background:#3a3029;color:var(--accent);flex-shrink:0}.speaker-picker .select-control{flex:1;min-width:0}.speaker-picker .select-button{background:transparent;border-color:transparent;min-height:38px;padding:6px 8px;font-size:12px;border-radius:10px}.speaker-picker .select-button:disabled{opacity:1;color:#e1d8cf}.first-npc-label{border:1px solid #62513f;padding:4px 8px;border-radius:20px;font-size:10px;color:#d2b08c;white-space:nowrap}.speech-heading .row-actions{margin-left:auto}.speech-block textarea{line-height:1.95;background:#1a191b;border-color:#47403c;resize:vertical}.speech-block.player textarea{background:#201c19;border-color:#5b4738}.block-direction{margin-top:17px}.block-direction .field-label{font-size:11px;color:var(--muted)}.block-direction input{font-size:12px;min-height:40px}.block-npc-name{flex:1;max-width:150px;min-width:90px}.block-npc-name input{width:100%;background:#211d19;border:1px solid #6d503a;color:var(--ink);border-radius:9px;padding:7px 9px;font-size:12px}.block-add{margin-top:3px}.trigger-card{background:#242222;border:1px solid #514339;border-radius:20px;padding:22px;margin-bottom:16px}.trigger-card>.form-grid{margin-top:18px}.trigger-card .row-heading>.remove{margin-left:auto}.trigger-symbol{font-size:23px;color:var(--accent)}.empty-block,.empty-editor{text-align:center;padding:40px 20px;color:var(--muted);line-height:1.9}.empty-editor{background:var(--panel);border-radius:var(--radius);border:1px dashed var(--line)}.empty-block>span,.empty-editor>span{font-size:46px;color:var(--accent)}.empty-block h3,.empty-editor h2{font:700 23px var(--display);color:var(--ink);margin:15px 0 10px}.empty-block p,.empty-editor p{font-size:12px}.empty-note{font-size:12px;color:var(--muted);line-height:1.9}
.check-summary{display:flex;align-items:center;gap:19px;border-radius:var(--radius);background:#272721;border:1px solid #605b42;padding:27px;margin-bottom:20px}.check-summary.incomplete{background:#30251e;border-color:#78543c}.check-emblem{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#494132;color:#ffc28d;flex-shrink:0;font:24px var(--display)}.check-summary h2{font:700 22px/1.5 var(--display);margin:0 0 7px}.check-summary p{font-size:12px;color:var(--muted);line-height:1.85;margin:0}.check-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:23px}.check-stats>div{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:23px}.check-stats b{font:700 31px/1.4 var(--display);color:var(--accent);display:block}.check-stats span{font-size:12px;color:var(--muted)}.issue-list{display:flex;flex-direction:column;gap:11px}.issue-item{display:flex;align-items:center;gap:13px;width:100%;padding:16px;border-radius:15px;border:1px solid #674839;background:#2a211d;color:#e7c5ac;text-align:left;line-height:1.8}.issue-item:hover{background:#36281f}.issue-item>span:first-child{display:grid;place-items:center;width:23px;height:23px;border:1px solid #98704d;border-radius:50%;flex-shrink:0;font:11px var(--mono)}.issue-item b{font-size:11px;font-weight:600;color:var(--accent)}.issue-item p{font-size:12px;margin:3px 0 0}.issue-item.warning{background:#272625;border-color:#4e4b45;color:#c2bdb4}.issue-item.warning b{color:#d6bd9f}.issue-item.warning>span:first-child{border-color:#817363}.issue-arrow{margin-left:auto;flex-shrink:0}.normalize{margin-top:18px}.project-rules>h2{font:700 17px var(--display);margin-bottom:23px}.project-rules>div{display:flex;align-items:flex-start;gap:14px;margin-bottom:20px}.project-rules>div:last-child{margin-bottom:0}.project-rules>div>span{font:11px var(--mono);color:var(--accent);background:var(--raised);border-radius:9px;padding:6px 7px}.project-rules p{font-size:12px;line-height:1.9;color:var(--muted);margin:0}.project-rules b{display:block;color:var(--ink);font-weight:500;margin-bottom:3px}
/* Every select uses the same accessible popover; native values remain the data source. */
.select-control{position:relative;display:block;min-width:0}.native-select{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;clip-path:inset(50%)!important}.select-button{display:flex;align-items:center;justify-content:space-between;gap:13px;width:100%;min-width:0;min-height:46px;background:var(--input);color:var(--ink);border:1px solid #3a383b;border-radius:12px;padding:11px 13px;text-align:left;font-size:14px;line-height:1.7}.select-button:hover:not(:disabled){border-color:#756153}.select-button[aria-expanded=true]{outline:2px solid var(--accent);outline-offset:2px}.select-value{min-width:0;flex:1;white-space:normal;overflow-wrap:anywhere}.select-chevron{border:solid currentColor;border-width:0 1.5px 1.5px 0;display:block;width:6px;height:6px;transform:rotate(45deg);flex-shrink:0;margin:-3px 3px 0 0;color:var(--muted)}.select-popover{position:fixed;z-index:1500;margin:0;padding:7px;background:#242426;color:var(--ink);border:1px solid #65503f;border-radius:17px;box-shadow:0 18px 70px #0009;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#716154 transparent;min-width:0;max-width:calc(100vw - 24px)}.select-option{position:relative;display:flex;align-items:center;gap:10px;border-radius:10px;padding:11px 13px;font-size:13px;line-height:1.7;min-height:42px;white-space:normal;overflow-wrap:anywhere;cursor:pointer}.select-option[aria-selected=true]{color:var(--accent);background:#ff9b5412}.select-option.is-active{background:#3a332e;outline:1px solid #ff9b5450;outline-offset:-1px}.select-option[aria-disabled=true]{opacity:.4;cursor:default}.select-option>span{min-width:0;flex:1}.select-check{color:var(--accent);font-size:13px;flex-shrink:0}
dialog{border:1px solid #4b4140;border-radius:28px;background:var(--panel);color:var(--ink);box-shadow:0 30px 110px #000a;padding:30px;max-width:540px;width:calc(100% - 32px);max-height:calc(100dvh - 36px);overflow:auto;scrollbar-width:thin;scrollbar-color:#665b53 transparent}dialog::backdrop{background:#060607b8;backdrop-filter:blur(7px)}body:has(dialog[open]){overflow:hidden}dialog h2{font:700 25px/1.4 var(--display);letter-spacing:-.6px;margin:10px 0 17px}dialog p{font-size:13px;line-height:1.9;color:var(--muted)}.modal-eyebrow{font-size:10px;color:var(--accent);letter-spacing:1.4px}.modal-buttons{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:25px}.manual-copy{width:100%;height:320px;resize:vertical;border:1px solid var(--line);background:var(--input);color:var(--ink);border-radius:13px;font:12px/1.9 var(--mono);padding:15px}.preview-modal{width:min(860px,calc(100% - 32px));max-width:860px;padding:30px}.preview-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px}.preview-heading h2{font-size:24px;margin:7px 0 0}.preview-heading>.icon-btn{font-size:27px;background:var(--raised);width:37px;height:37px;border-radius:50%}.preview-tabs{display:flex;gap:5px;background:var(--input);padding:5px;border-radius:18px;margin-bottom:20px}.preview-tabs button{width:50%;border:0;background:transparent;color:var(--muted);padding:11px;font-size:12px;border-radius:13px;min-height:42px}.preview-tabs button.active{background:var(--raised);color:var(--accent)}.paper{background:#f1eeE8;color:#35312d;padding:32px;border-radius:20px;overflow-wrap:anywhere}.paper-stamp{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:17px;margin-bottom:23px;border-bottom:1px solid #c6bfb6;font:10px var(--mono);letter-spacing:1px;color:#766859}.paper-stamp span{border:1px solid #baa58c;padding:3px 7px;border-radius:5px;transform:rotate(-3deg)}.paper-number{font:10px/1.8 var(--mono);color:#806c58;letter-spacing:.6px}.paper h3{font:800 29px/1.4 var(--display);letter-spacing:-.7px;color:#322d27;margin:9px 0 15px}.paper-meta{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:25px}.paper-meta>span{border-radius:30px;background:#e5dbce;border:1px solid #d1c3b0;padding:5px 10px;font-size:11px;color:#68513a}.paper-section{margin-top:25px}.paper-section h4,.paper-scene>h4{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:1.1px;color:#876c4e;margin:0 0 10px}.paper-section p,.paper-speech p{font-size:13px;line-height:1.95;white-space:pre-wrap;margin:0;color:#51483e}.hud-preview{background:#e5d7c4;border:1px solid #ccbaa0;border-left:3px solid #c08d56;border-radius:12px;padding:16px 18px;margin-top:0}.hud-preview p{font-weight:500;color:#62472d}.paper-section ol{padding-left:20px;margin:0}.paper-section li{font-size:13px;line-height:1.85;color:#51483e;padding:0 0 12px 3px;white-space:pre-wrap}.paper-section li::marker{font:12px var(--mono);color:#a6794b}.paper-section li small{display:block;font-size:11px;color:#877159}.paper-params{display:flex;flex-direction:column;gap:7px;border-block:1px solid #cfc4b5;padding:19px 0;margin-top:18px}.paper-params>div{display:flex;justify-content:space-between;gap:16px;font-size:11px;line-height:1.8}.paper-params span{color:#8a7054}.paper-params b{color:#68503a;font-weight:400;text-align:right}.reward-preview{background:#e9ddc9;border:1px solid #ccbaa0;border-radius:13px;padding:17px 19px}.reward-preview h4{color:#806337}.paper-divider{height:1px;background:#cfc3b1;margin:27px 0}.paper-scene{margin:0 0 23px;padding-bottom:22px;border-bottom:1px dashed #b9a78f}.paper-phase{font:10px var(--mono);color:#8e704e;letter-spacing:.8px}.paper-scene>h4{font-size:15px;color:#74512d;text-transform:none;letter-spacing:0;margin:9px 0 18px}.paper-speech{border-left:2px solid #d3b490;padding-left:15px;margin-bottom:20px}.paper-speech>b{display:block;font-size:12px;color:#915d2c;margin-bottom:7px}.paper-direction{display:block;font-size:12px;font-style:italic;color:#8b7359;margin-bottom:7px}.preview-trigger{font-style:italic;margin-bottom:14px!important}.preview-trigger small{display:block;font-size:11px;font-style:normal;color:#947351;margin-top:4px}.preview-empty{color:#8d7d6d;text-align:center;padding:30px;font-size:13px}.copy-area{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap;margin-top:22px}.copy-area p{flex-basis:100%;margin:2px 0 0;text-align:center;font-size:11px;color:var(--muted)}.toast{position:fixed;z-index:1800;left:50%;bottom:23px;transform:translateX(-50%);width:max-content;max-width:calc(100vw - 30px);padding:14px 20px;border-radius:18px;background:#e7ddd0;color:#33241a;box-shadow:0 7px 40px #0007;font-size:12px;line-height:1.9}.toast.error{background:#edc4b5;color:#502d22}.toast button{border:0;background:transparent;padding:3px 0;color:#824319;text-decoration:underline;font-size:12px;margin-left:12px}.noscript{position:fixed;inset:0;background:var(--bg);color:var(--ink);display:grid;place-items:center;padding:25px;font-size:20px;z-index:2000}
.library-view .tab span{display:none}.quest-meta{margin-bottom:19px}.quest-item-content .quest-footer{margin-top:auto}
.dialogue-context{border:1px solid var(--line);border-radius:19px;padding:16px 20px;margin-bottom:21px;background:#19191b}.dialogue-context summary{font-size:12px;color:var(--muted);cursor:pointer}.dialogue-context[open] summary{margin-bottom:19px;color:var(--ink)}.dialogue-context .dialogue-guide{margin-bottom:0}.scene-tabs{display:flex;gap:9px;flex-wrap:wrap;margin:0 0 23px}.scene-tabs button{background:transparent;color:var(--muted);border:1px solid var(--line);border-radius:30px;padding:9px 14px;font-size:12px;max-width:100%;overflow-wrap:anywhere;text-align:left;line-height:1.7;min-height:40px}.scene-tabs button.active{color:var(--accent);border-color:#aa744d;background:#ff9b5408}.scene-tabs button:hover{background:var(--raised)}
@media(min-width:1440px){.app-header{padding-inline:50px}.workspace{padding-inline:50px}.quest-item-content>b{font-size:18px}.quest-list{gap:23px}}
@media(max-width:1150px){.app-header{padding:23px 28px;gap:20px}.workspace{padding:30px 28px 23px}.brand small{font-size:9px;letter-spacing:1.1px}.tab{padding:9px 12px;font-size:11px}.tabs{gap:3px}.library-controls{grid-template-columns:minmax(180px,1fr) 215px 230px}.quest-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.library-heading h1{font-size:38px}.editor-layout{grid-template-columns:150px minmax(0,1fr);gap:23px}.section-nav button{padding:11px 10px;font-size:11px}.section-card{padding:24px}.editor-primary-actions .button{font-size:11px;padding:10px 13px}.editor-heading h1{font-size:32px}}
@media(max-width:900px){.app-header{flex-wrap:wrap;gap:20px}.tabs{order:3;flex:1 0 100%;width:100%;margin:0}.tab{flex:1;font-size:12px}.export-button{margin-left:auto}.library-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.search-box{grid-column:1/-1}.library-meta{align-items:flex-start}.filter-chips{max-width:75%}.editor-heading{align-items:flex-start;flex-wrap:wrap}.editor-primary-actions{width:100%}.editor-layout{grid-template-columns:minmax(0,1fr)}.section-nav{position:static;flex-direction:row;flex-wrap:wrap;max-height:none;overflow:visible;gap:4px}.section-nav button{padding:8px 12px;font-size:11px}.section-nav button>span{display:none}.app-footer{flex-wrap:wrap}.source-banner{padding:21px}.first-npc-label{font-size:10px}.speaker-picker{min-width:150px}.form-grid{gap:20px 17px}}
@media(max-width:620px){.app-header{padding:20px;gap:18px}.workspace{padding:25px 20px 23px}.brand-mark{width:36px;height:36px;font-size:22px;border-radius:12px}.brand b{font-size:18px}.brand small{font-size:9px;letter-spacing:1px}.export-button{font-size:11px;min-height:39px;padding:10px 13px}.export-button svg{width:15px;height:15px}.tabs{gap:2px;padding:4px}.tab{font-size:11px;padding:8px 7px;gap:4px;min-height:40px}.tab span{font-size:9px;min-width:12px}.library-heading{align-items:flex-start;flex-wrap:wrap;gap:22px}.library-heading h1{font-size:32px;letter-spacing:-1.1px;margin:12px 0}.library-heading p{font-size:12px}.eyebrow{font-size:9px;letter-spacing:1.4px}.library-heading .primary{padding:11px 16px;font-size:12px}.library-heading kbd{display:none}.library-controls{margin-top:26px;gap:12px;grid-template-columns:minmax(0,1fr)}.filter-control .select-button{font-size:13px;min-height:48px}.search-box input{font-size:14px}.search-box{padding-inline:15px}.library-meta{gap:12px;flex-wrap:wrap;margin:22px 0 19px}.filter-chips{max-width:none;gap:7px}.filter-chips button{font-size:11px;padding:7px 11px;min-height:36px}.results-count{font-size:11px;margin-left:auto}.quest-list{gap:16px;grid-template-columns:minmax(0,1fr)}.quest-cover{height:80px;padding:15px 18px}.quest-number{font-size:35px}.quest-item-content{padding:18px 20px}.quest-item-content>b{font-size:17px}.quest-meta{font-size:12px}.quest-footer{font-size:11px}.pagination{gap:15px}.pagination .button{min-height:40px}.source-banner{flex-wrap:wrap;gap:14px;padding:20px}.source-banner a{font-size:11px}.app-footer{gap:15px;font-size:11px;margin-top:22px}.app-footer>div{gap:10px;align-items:flex-start;flex-direction:column}.app-footer>div>span{font-size:10px;line-height:1.9}.editor-topline{gap:12px}.editor-tools{gap:4px}.editor-tools .button{font-size:10px;padding:8px 10px}.editor-heading{margin:22px 0 24px;gap:18px}.editor-heading h1{font-size:29px;letter-spacing:-.8px}.editor-primary-actions{gap:8px}.editor-primary-actions .button{padding:11px 13px;font-size:11px;flex:1;min-height:44px}.editor-primary-actions .button svg{width:16px}.editor-layout{gap:17px}.section-nav{gap:3px}.section-nav button{padding:8px 10px;font-size:10px}.section-card{padding:21px;border-radius:23px}.section-heading{gap:11px;margin-bottom:23px}.section-heading h2{font-size:16px}.section-heading p{font-size:11px}.section-number{font-size:10px;min-width:25px;height:25px;border-radius:9px}.form-grid{grid-template-columns:minmax(0,1fr);gap:19px}.title-number{grid-template-columns:60px minmax(0,1fr);gap:12px}.field-label{font-size:12px}.field input,.field textarea,.field select,.speech-block textarea{font-size:16px}.field input::placeholder,.field textarea::placeholder,.speech-block textarea::placeholder{font-size:13px}.select-button{font-size:14px;min-height:46px}.field-hint{font-size:11px}.lead-note{font-size:11px}.advanced summary>span{display:none}.goal-row{padding:16px;border-radius:18px}.goal-type-count{grid-template-columns:minmax(0,1fr) 88px;gap:12px}.icon-btn{width:33px;height:33px}.row-actions{gap:1px}.toggle-row small{font-size:11px}.form-footer{flex-wrap:wrap;font-size:11px;gap:14px}.form-footer .button{width:100%}.dialogue-guide{padding:18px;gap:13px}.dialogue-guide p{font-size:12px}.guide-icon{font-size:32px}.dialogue-source-note{padding:17px 19px}.scene-card{padding:16px;border-radius:19px}.speech-block{padding:16px;border-radius:19px 19px 19px 6px}.speech-block.player{margin-left:16px;border-radius:19px 19px 6px 19px}.speech-heading{gap:7px}.speaker-picker{min-width:135px;gap:7px;flex-basis:160px}.speaker-picker .select-button{font-size:12px;padding:6px}.speech-avatar{width:28px;height:28px;font-size:11px}.first-npc-label{font-size:9px;padding:3px 6px}.speech-heading .row-actions{margin-left:auto}.block-direction input{font-size:14px}.block-npc-name input{font-size:13px}.trigger-card{padding:17px;border-radius:18px}.trigger-card>.form-grid{gap:17px}.check-summary{padding:21px;gap:14px}.check-summary h2{font-size:18px}.check-emblem{width:39px;height:39px;font-size:21px}.check-stats{gap:10px}.check-stats>div{padding:17px 14px;border-radius:17px}.check-stats b{font-size:27px}.check-stats span{font-size:11px}.issue-item{padding:13px;gap:10px}.issue-item p{font-size:12px}.preview-modal{padding:20px;width:calc(100% - 24px);max-height:calc(100dvh - 24px);border-radius:23px}.paper{padding:23px;border-radius:17px}.paper h3{font-size:26px}.paper-section p,.paper-speech p,.paper-section li{font-size:13px}.paper-params>div{flex-wrap:wrap;gap:3px}.paper-params b{text-align:left}.preview-heading h2{font-size:22px}.copy-area .button{width:100%}.copy-area p{font-size:11px}dialog{padding:24px;border-radius:24px}.manual-copy{font-size:12px}.toast{font-size:12px;padding:13px 17px;bottom:17px}.select-option{padding:12px;font-size:14px;min-height:46px}.select-popover{border-radius:16px;padding:6px}}
@media(max-width:370px){.app-header{padding:18px 15px}.workspace{padding:23px 15px}.brand small{font-size:8px}.brand b{font-size:17px}.export-button{padding:9px 11px;font-size:10px}.tab{font-size:10px;padding:8px 5px;gap:3px}.tab span{font-size:8px}.library-heading h1{font-size:29px}.editor-heading h1{font-size:26px}.editor-primary-actions .button{font-size:10px;padding:10px}.section-card{padding:17px}.goal-row{padding:13px}.scene-card{padding:12px}.speech-block{padding:12px}.speech-block.player{margin-left:9px}.first-npc-label{display:none}.section-heading h2{font-size:15px}.goal-type-count{grid-template-columns:minmax(0,1fr) 78px;gap:10px}.check-summary{padding:17px}.check-summary h2{font-size:16px}.check-stats>div{padding:14px 11px}.paper{padding:19px}.location-pill{font-size:10px}.select-button{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
@media print{body{background:#fff;color:#222}.app-shell,.toast,#modal{display:none!important}.preview-modal{display:block!important;position:static;max-height:none;width:100%;max-width:none;border:0;padding:0;overflow:visible;box-shadow:none;background:#fff}.preview-heading,.preview-tabs,.copy-area{display:none!important}.paper{padding:0;background:#fff;color:#222;box-shadow:none}.paper-section p,.paper-speech p,.paper-section li{color:#222}}
.dialogue-mode .editor-layout{display:block}
.conversation-toolbar{display:flex;align-items:flex-start;gap:12px;margin-bottom:24px}
.conversation-toolbar .scene-tabs{flex:1;margin:0;gap:8px}
.conversation-toolbar .scene-tabs button{font-size:12px;padding:9px 14px}
.conversation-toolbar .scene-tabs .add-scene-pill,.conversation-more{display:grid;place-items:center;width:40px;min-width:40px;height:40px;padding:0;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--muted);font-size:22px;line-height:1}
.conversation-more:hover{background:var(--raised);color:var(--ink)}
.conversation-workspace .scene-card{padding:0;margin:0 0 28px;border:0;border-radius:0;background:transparent}
.conversation-workspace .blocks-list{margin:0;gap:20px}
.conversation-workspace .speech-block{position:relative;align-self:flex-start;width:90%;max-width:900px;padding:24px 28px 20px;background:#1c1c1e;border:0;border-radius:24px 24px 24px 6px}
.conversation-workspace .speech-block.player{align-self:flex-end;width:75%;max-width:760px;margin:0;padding:23px 28px 20px;background:#262628;border:0;border-radius:24px 24px 6px 24px}
.conversation-workspace .speech-heading{flex-wrap:nowrap;gap:12px;margin:0 0 17px;min-height:32px}
.conversation-workspace .speech-avatar{width:42px;height:42px;background:#272729;font-size:13px}
.speech-identity{flex:1;min-width:0;line-height:1.6}
.speech-name{display:block;font-size:13px;font-weight:600;overflow-wrap:anywhere}
.speech-subtitle{display:block;font-size:11px;color:var(--muted);margin-top:3px;overflow-wrap:anywhere}
.speech-subtitle:empty{display:none}
.conversation-workspace .player .speech-name{font-size:11px;color:var(--muted);font-weight:500}
.conversation-workspace .speech-block textarea{display:block;width:100%;min-height:32px;padding:0 0 3px;border:1px solid transparent;border-radius:5px;background:transparent;font:400 14px/1.95 var(--font);resize:vertical;color:var(--ink);box-shadow:none}
.conversation-workspace .speech-block textarea:focus-visible{outline:1px solid #ff9b5466;outline-offset:6px}
.back-button{min-height:44px;padding:10px 15px;gap:10px;border-radius:12px;border-color:#715642;background:#29231f;color:#f3e9e1;font-size:13px;font-weight:600}
.back-button svg{color:var(--accent);width:18px;height:18px;stroke-width:1.9}
.back-button:hover{background:#372b22;border-color:var(--accent);color:#fff}
.back-button:active{background:#211c18}
.conversation-workspace .speech-block textarea::placeholder{font-size:14px;color:#8d8a89}
.speech-annotation:empty{display:none}
.speech-annotation{margin-top:14px}
.response-action{display:flex;align-items:baseline;gap:8px;border:0;background:transparent;color:var(--accent);font-size:11px;line-height:1.8;padding:4px 0;text-align:left;max-width:100%;overflow-wrap:anywhere}
.response-action>span{font-size:19px;line-height:1}
.response-action:hover{text-decoration:underline;text-underline-offset:4px}
.speech-note{font-size:11px;line-height:1.8;color:var(--muted);font-style:italic;margin:0}
.conversation-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:22px}
.conversation-bottom .block-add{width:auto;margin:0;font-size:12px;padding:11px 16px;border-radius:14px}
.conversation-bottom>.quiet-button{font-size:11px}
.conversation-drawer{border:1px solid var(--line);border-radius:19px;background:#19191b;padding:18px 22px;margin:16px 0}
.conversation-drawer>summary{font-size:12px;color:var(--muted);cursor:pointer;line-height:1.8}
.conversation-drawer[open]>summary{color:var(--ink);margin-bottom:22px}
.conversation-drawer>summary>span{color:var(--accent);margin-left:8px}
.scene-settings:not([open]){display:none}
.scene-settings[open]{margin:0 0 24px}
.scene-settings>.form-grid{margin-top:18px}
.scene-management{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:18px}
.scene-management .quiet-button{font-size:11px;padding:6px 0}
.scene-management .quiet-button:last-child{margin-left:auto}
.scene-management button:disabled{opacity:.35;cursor:default}
.speech-menu{margin-left:auto;flex:0 0 30px}
.speech-menu>summary{display:grid;place-items:center;list-style:none;width:30px;height:30px;border-radius:10px;color:var(--muted);font-size:23px;cursor:pointer;line-height:1}
.speech-menu>summary::-webkit-details-marker{display:none}
.speech-menu>summary:hover,.speech-menu[open]>summary{background:#ffffff0b;color:var(--accent)}
.speech-menu-panel{position:absolute;z-index:30;right:20px;top:62px;width:340px;max-width:calc(100% - 40px);padding:20px;border:1px solid #494447;background:#222224;box-shadow:0 18px 50px #0008;border-radius:18px;display:flex;flex-direction:column;gap:16px}
.speech-menu-panel .block-direction{margin:0}
.speech-menu-panel .scene-management{margin:0}
.drawer-hint{font-size:11px;line-height:1.8;color:var(--muted);margin:0}
.speech-menu-panel input{font-size:13px}
.conversation-workspace .dialogue-context{background:transparent;border:0;padding:10px 0;margin:0}
.conversation-workspace .dialogue-context>summary{font-size:11px}
.conversation-workspace .dialogue-context[open]{padding-bottom:16px}
.conversation-footer{border-top:1px solid #ffffff08;margin-top:17px;padding-top:15px}
.conversation-footer .quiet-button{font-size:11px}
@media(max-width:620px){

 .conversation-workspace .speech-block{width:94%;padding:20px;border-radius:22px 22px 22px 6px}
 .conversation-workspace .speech-block.player{width:85%;padding:20px;border-radius:22px 22px 6px 22px}
 .conversation-workspace .speech-block textarea{font-size:16px;line-height:1.85}
 .conversation-workspace .speech-heading{gap:10px;margin-bottom:14px}
 .conversation-workspace .speech-avatar{width:36px;height:36px;font-size:11px}
 .speech-name{font-size:12px}
 .speech-subtitle{font-size:10px}
 .conversation-toolbar{gap:8px}
 .conversation-toolbar .scene-tabs{gap:7px}
 .conversation-toolbar .scene-tabs button{font-size:11px;padding:9px 12px}
 .conversation-toolbar .scene-tabs .add-scene-pill{padding:0}
 .conversation-bottom{gap:12px;flex-wrap:wrap}
 .conversation-bottom .block-add{font-size:11px;padding:10px 13px}
 .conversation-bottom>.quiet-button{font-size:10px}
 .conversation-drawer{padding:17px}
 .speech-menu-panel{right:12px;padding:17px;max-width:calc(100% - 24px)}
 .speech-menu-panel input{font-size:16px}
 .conversation-footer{gap:10px;font-size:10px}
}
.conversation-workspace:has(.scene-card) .trigger-drawer:not([open]){display:none}
.library-controls{grid-template-columns:minmax(200px,1fr) minmax(245px,320px) minmax(245px,340px)}
.catalog-filters{margin:-3px 0 23px;padding:0 0 18px;border-bottom:1px solid var(--soft-line)}
.catalog-filters>summary{font-size:12px;color:var(--muted);cursor:pointer;width:fit-content;line-height:1.8}
.catalog-filters>summary>span{margin-left:7px;color:var(--accent)}
.catalog-filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:700px;margin-top:20px}
.quest-structure{display:block;font-size:11px;line-height:1.7;color:#c3a68f;margin:9px 0 0;overflow-wrap:anywhere}
@media(max-width:1000px){.library-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.library-controls .search-box{grid-column:1/-1}}
@media(max-width:620px){.library-controls{grid-template-columns:minmax(0,1fr)}.catalog-filter-grid{grid-template-columns:minmax(0,1fr);gap:16px}.quest-structure{font-size:11px}}
.brand .brand-mark{width:42px;height:42px;border-radius:13px;background:transparent}
.brand-mark img{display:block;width:100%;height:100%}
.brand b{display:flex;align-items:center;gap:8px;letter-spacing:.3px;font-size:20px}
.brand .brand-tag{font:700 9px/1.2 var(--mono);letter-spacing:1px;color:#ee9b7f;border:1px solid #714238;padding:4px 5px;border-radius:6px}
.brand small{font-size:9px;letter-spacing:1.3px}
@media(max-width:620px){.brand .brand-mark{width:38px;height:38px}.brand{gap:9px}.brand b{font-size:18px;gap:7px}.brand small{font-size:8px;letter-spacing:1px}}
@media(max-width:370px){.brand .brand-mark{width:34px;height:34px}.brand b{font-size:16px}.brand .brand-tag{font-size:8px;padding:3px 4px}.brand small{font-size:7px}}
.library-heading #new-quest{align-self:flex-end;gap:8px;min-height:42px;padding:10px 15px;border-radius:12px;font-size:12px;line-height:1.5;margin-bottom:2px}
.library-heading #new-quest svg{width:16px;height:16px;flex-shrink:0}
.library-filter-tools{display:flex;align-items:center;gap:16px;flex-shrink:0;margin-left:auto}
.library-filter-tools .results-count{margin-left:0;white-space:nowrap}
.filter-reset{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--muted);padding:8px 0;font-size:11px;line-height:1.5;white-space:nowrap}
.filter-reset svg{width:15px;height:15px;flex-shrink:0}
.filter-reset:hover{color:var(--accent)}
.quest-navigation{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:-7px 0 26px}
.quest-step{display:flex;align-items:center;gap:14px;min-width:0;min-height:72px;padding:14px 17px;text-align:left;border:1px solid var(--line);border-radius:16px;background:var(--panel);color:var(--ink)}
.quest-step:hover:not(:disabled){background:#272321;border-color:#916747}
.quest-step svg{width:19px;height:19px;color:var(--accent);flex-shrink:0}
.quest-step.next{flex-direction:row-reverse;text-align:right}
.quest-step-text{display:block;min-width:0;flex:1}
.quest-step-text small{display:block;font-size:10px;font-weight:400;color:var(--muted);line-height:1.5;margin-bottom:5px}
.quest-step-text b{display:block;font-size:12px;font-weight:500;line-height:1.65;overflow-wrap:anywhere}
.quest-step:disabled{opacity:1;background:transparent;border-color:var(--soft-line);color:#777371}
.quest-step:disabled svg,.quest-step:disabled small{color:#777371}
.related-quest-list{display:flex;flex-direction:column;gap:10px;margin:22px 0}
.related-quest-option{position:relative;width:100%;padding:15px 42px 15px 16px;text-align:left;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--ink);min-width:0}
.related-quest-option:hover{border-color:#916747;background:#272321}
.related-quest-option b{display:block;font-size:13px;font-weight:500;line-height:1.6;overflow-wrap:anywhere}
.related-quest-option small{display:block;margin-top:5px;font-size:11px;color:var(--muted);overflow-wrap:anywhere}
.related-quest-option>span{position:absolute;right:15px;top:16px;color:var(--accent)}
@media(max-width:620px){.quest-navigation{gap:10px;margin:-4px 0 22px}.quest-step{padding:12px 11px;gap:8px;min-height:76px;border-radius:14px}.quest-step svg{width:16px;height:16px}.quest-step-text b{font-size:11px}.quest-step-text small{font-size:10px}}
.section-nav button[aria-current="location"]{background:var(--panel);color:var(--ink);box-shadow:inset 2px 0 var(--accent)}
@media(max-width:900px){
 .editor-layout{display:block}
 .section-nav{position:sticky;top:0;z-index:20;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;background:var(--bg);padding:8px 0;margin-bottom:17px;border-bottom:1px solid var(--soft-line);gap:6px}
 .section-nav::-webkit-scrollbar{display:none}
 .section-nav button{flex-shrink:0;white-space:nowrap;min-height:40px}
 .section-nav button[aria-current="location"]{box-shadow:inset 0 -2px var(--accent)}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(max-width:620px){.library-filter-tools{width:100%;justify-content:space-between;gap:12px}.filter-reset{min-height:40px}.library-heading #new-quest{margin-bottom:0}}

/* Imported NPC directory */
.npc-directory{margin:20px 0 28px;border:1px solid var(--line,#333);border-radius:18px;background:var(--panel,#1b1b1c)}
.npc-directory>summary{padding:18px 20px;cursor:pointer;font-size:13px;color:var(--text,#eee)}
.npc-directory>summary span{margin-left:8px;color:var(--accent,#ff9c4e)}
.npc-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 14px 14px}
.npc-directory-card{display:flex;flex-direction:column;gap:12px;text-align:left;background:#232324;border:1px solid #363637;border-radius:13px;padding:18px;font:inherit;color:inherit;min-width:0}
button.npc-directory-card{cursor:pointer}button.npc-directory-card:hover{border-color:var(--accent,#ff9c4e)}
.npc-directory-name{font-weight:650}.npc-directory-name small{display:block;font-size:11px;font-weight:400;color:#a5a5a6;margin-top:5px}
.npc-directory-role,.npc-directory-card q{font-size:12px;line-height:1.6;color:#b5b5b6}.npc-directory-card q{margin:0}
.npc-directory-count{font-size:11px;color:var(--accent,#ff9c4e);margin-top:auto}
@media(max-width:900px){.npc-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.npc-directory-grid{grid-template-columns:minmax(0,1fr)}}
