:root{color-scheme:dark;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#0d0f13;color:#eef0f5;font-synthesis:none}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}body{font-size:14px}button,input,textarea{font:inherit}button{cursor:pointer;border:1px solid #343944;border-radius:9px;background:#242831;color:#e8ebf1;padding:10px 14px;white-space:nowrap}button:hover,.import:hover{background:#333946}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #91a9ff;outline-offset:2px}.primary{background:#e8ebf1;color:#111318;border-color:#e8ebf1;font-weight:650}.primary:hover{background:white}.app-shell{height:100dvh;display:grid;grid-template-rows:66px 48px minmax(0,1fr) 40px;background:#101217}.app-header{display:flex;align-items:center;justify-content:space-between;padding:0 clamp(16px,3vw,42px);background:#171a20;border-bottom:1px solid #292d36}.brand,.header-right{display:flex;align-items:center;gap:12px}.brand-icon{display:grid;place-items:center;width:37px;height:37px;border-radius:11px;background:#2d3542;font-size:20px}.brand strong{display:block;font-size:15px;line-height:1.3}.brand small{display:block;color:#949caa;font-size:9px;letter-spacing:2px;margin-top:3px}.header-right{gap:14px;color:#a9b1be;font-size:12px}.status-dot{width:7px;height:7px;background:#56d89d;border-radius:50%}.icon-button{width:36px;height:36px;padding:0;display:grid;place-items:center}.main-nav{display:flex;align-items:center;gap:6px;padding:0 clamp(16px,3vw,42px);border-bottom:1px solid #292d36;background:#171a20}.main-nav button{padding:7px 12px;border:0;background:transparent;color:#a6adba}.main-nav button:hover,.main-nav .nav-active{color:white;background:#2b303a}.nav-spacer{flex:1}#saveStatus{color:#8c96a6;font-size:12px}.main-area{min-height:0;display:flex;justify-content:center;padding:clamp(16px,3vh,32px) clamp(16px,4vw,64px)}.editor{width:min(100%,1120px);min-height:0;display:flex;flex-direction:column;gap:18px}.editor-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.eyebrow,.panel-subtitle{font-size:10px;letter-spacing:1.6px;font-weight:750;color:#929bac}.editor h1{font-size:25px;letter-spacing:-.6px;margin:7px 0 5px}.editor-head p{margin:0;color:#929baa;font-size:13px}.editor-actions{display:flex;gap:8px}.editor-actions button{font-size:12px}.editor-surface{flex:1;min-height:0;display:flex;flex-direction:column;background:#1a1e25;border:1px solid #343944;border-radius:14px;overflow:hidden;box-shadow:0 12px 40px #0002}.editor-surface #title{border:0;border-bottom:1px solid #343944;border-radius:0;background:#20242c;color:white;font-size:17px;font-weight:650;padding:18px 24px;outline-offset:-2px}.script-body{flex:1;min-height:0;resize:none;border:0;outline-offset:-3px;background:transparent;color:#e9ebf0;font-size:18px;line-height:1.8;padding:22px 24px}.script-body::placeholder{color:#798292}.editor-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;color:#8e97a7;font-size:12px}.editor-bottom button{padding:8px 12px;font-size:12px}.app-footer{display:flex;align-items:center;justify-content:space-between;padding:0 clamp(16px,3vw,42px);background:#171a20;border-top:1px solid #292d36;color:#858f9e;font-size:11px}.drawer-backdrop{position:fixed;inset:0;background:#0009;z-index:19}.drawer-backdrop[hidden],.immersive[hidden],.icon-rail[hidden],#preview[hidden],.buttons[hidden]{display:none!important}.drawer,.control{position:fixed;z-index:20;top:0;bottom:0;width:min(370px,92vw);padding:24px;background:#1a1e25;box-shadow:0 0 50px #0008;overflow:auto;visibility:hidden;pointer-events:none;transition:transform .2s ease,visibility .2s}.drawer{left:0;transform:translateX(-105%);border-right:1px solid #343944}.control{right:0;transform:translateX(105%);border-left:1px solid #343944}.drawer.sidebar-open,.control.settings-open{visibility:visible;pointer-events:auto;transform:translateX(0)}.drawer-head,.panel-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.drawer h2,.control h2{font-size:20px;margin:0}.full{width:100%}.script-list{margin:18px 0;display:grid;gap:8px}.script-item{padding:14px;border:1px solid #353a45;border-radius:9px;cursor:pointer;overflow-wrap:anywhere}.script-item:hover,.script-item.active{background:#303846;border-color:#5c6b80}.side-actions{display:flex;gap:8px}.side-actions>*{flex:1;text-align:center}.import{display:grid;place-items:center;cursor:pointer;border:1px solid #343944;border-radius:9px;background:#242831;padding:10px}.danger{margin-top:16px;color:#ffadb1}.settings{display:grid;gap:22px}.settings label{display:grid;gap:12px;color:#c7ced9}.settings output{float:right;color:#fff}.settings input[type=range]{width:100%;accent-color:#dfe6f2}.settings input:not([type=range]):not([type=checkbox]){width:100%;padding:12px;background:#11151b;color:white;border:1px solid #3b424f;border-radius:9px}.settings label.check{display:flex;align-items:center;gap:10px}.settings input[type=checkbox]{accent-color:#dfe6f2}.hint{color:#aeb5c0}.immersive{position:fixed;inset:0;z-index:50;background:#000;color:#fff;overflow:hidden}.immersive-stage{position:absolute;inset:0;overflow:hidden;display:flex;justify-content:center}.immersive-text{position:absolute;top:55vh;left:10%;width:80%;white-space:pre-wrap;overflow-wrap:anywhere;text-align:center;line-height:1.5;will-change:transform}.immersive-controls{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:8px;background:#20232de8;border:1px solid #444b58;border-radius:16px;padding:9px;opacity:0;transition:opacity .2s}.immersive:hover .immersive-controls,.immersive:focus-within .immersive-controls{opacity:1}.immersive-controls button{min-width:44px;min-height:44px}.immersive-controls span{font-size:12px;color:#aab2bf;padding:0 12px}.presenting .app-shell>.app-header,.presenting .app-shell>.main-nav{visibility:hidden}@media(max-width:700px){.app-shell{grid-template-rows:60px 44px minmax(0,1fr) 36px}.app-header,.main-nav{padding:0 14px}.header-right #connection,.header-right .status-dot{display:none}.brand small{font-size:8px}.main-area{padding:16px 12px}.editor{gap:12px}.editor-head{align-items:flex-start;flex-direction:column;gap:12px}.editor h1{font-size:21px}.editor-actions{width:100%}.editor-actions button{flex:1;padding:9px 6px}.script-body{font-size:16px;padding:16px}.editor-surface #title{padding:15px 16px}.editor-bottom{font-size:11px}.app-footer{padding:0 12px;font-size:10px}.main-nav button{padding:7px 8px;font-size:12px}#saveStatus{font-size:10px}}@media(max-height:530px){.editor-head p{display:none}.editor{gap:10px}.main-area{padding-top:10px;padding-bottom:10px}}



/* v13: unified visual system */
[hidden]{display:none!important}
:root{color-scheme:dark;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#0e1015;color:#f3f4f7}
body{font-size:14px}.app-shell{display:flex;flex-direction:column;height:100dvh;min-height:100dvh;background:#0e1015}
.app-header{height:72px;flex:none;padding:0 clamp(20px,4vw,64px);background:#151820;border-bottom:1px solid #282d37}
.brand-icon{width:40px;height:40px;border-radius:12px;background:#303b50;color:#e8eefc;font-size:20px}.brand strong{font-size:16px;letter-spacing:-.25px}.brand small{font-size:9px;letter-spacing:1.7px;color:#8d99ab}
.header-right{gap:14px}.header-right .primary{padding:11px 21px;border-radius:10px}.main-nav{height:58px;flex:none;gap:8px;padding:0 clamp(20px,4vw,64px);background:#151820;border-bottom:1px solid #282d37}
.main-nav button{padding:10px 18px;border:1px solid transparent;border-radius:9px;background:transparent;color:#a0a8b7;font-weight:600;font-size:13px}.main-nav button.nav-active{background:#303642;border-color:#3c4655;color:#fff}.main-nav button:hover{background:#252b35;color:#fff}.nav-spacer{flex:1}#saveStatus{font-size:12px;color:#909aaa}
.main-area{display:block;flex:1;min-height:0;overflow:auto;width:100%;padding:clamp(28px,4vh,54px) clamp(22px,5vw,80px);background:#0e1015}
.page{width:100%;max-width:1240px;margin:0 auto}.page-top{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:30px}.eyebrow{font-size:10px;letter-spacing:1.9px;color:#8994a8;font-weight:750}.page-top h1,.editor h1{font-size:clamp(30px,3vw,40px);letter-spacing:-1.1px;line-height:1.2;margin:10px 0 9px;font-weight:750}.page-top p,.editor-head p{font-size:14px;color:#9da6b6;margin:0;line-height:1.6}.library-actions .primary{padding:13px 22px;border-radius:10px}
.library-tools{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:26px}.library-tools input{width:min(460px,70%);height:48px;padding:0 17px;background:#1b1f28;border:1px solid #353b49;border-radius:11px;color:#f3f4f7;outline:none}.library-tools input:focus{border-color:#8296b7}.library-tools input::placeholder{color:#808b9d}.view-switch{display:flex;gap:4px;padding:4px;border:1px solid #363d4a;border-radius:11px;background:#1a1e26}.view-switch button{border:0;border-radius:7px;background:transparent;padding:9px 14px;color:#9fa8b7;font-size:17px}.view-switch button.selected{background:#363e4e;color:#fff}
.library-items.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(285px,1fr));gap:20px;align-items:stretch}.library-card{position:relative;display:flex;flex-direction:column;gap:15px;min-height:220px;padding:25px;border:1px solid #303746;border-radius:16px;background:#1b1f28;color:#f5f6f9;text-align:left;white-space:normal;transition:transform .15s ease,border-color .15s ease,background .15s ease,box-shadow .15s ease}.library-card:hover{transform:translateY(-3px);border-color:#667b9e;background:#222835;box-shadow:0 12px 32px #0003}.library-card:focus-visible{outline:2px solid #9ab5eb;outline-offset:3px}.library-card strong{display:block;font-size:17px;letter-spacing:-.3px;line-height:1.4;padding-right:25px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-excerpt{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;white-space:pre-wrap;overflow:hidden;overflow-wrap:anywhere;color:#a7b0c0;line-height:1.65;font-size:13px;flex:1}.library-card small{color:#8995a8;font-size:12px;margin-top:auto}.card-arrow{position:absolute;top:24px;right:23px;color:#a3afc2;font-size:17px}
.library-items.list{display:flex;flex-direction:column;gap:10px}.library-items.list .library-card{display:grid;grid-template-columns:minmax(150px,1fr) minmax(140px,1.6fr) 135px 22px;align-items:center;gap:20px;min-height:84px;padding:18px 23px}.library-items.list .library-card .card-excerpt{display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.library-items.list .library-card .card-arrow{position:static}.library-items.list .library-card small{margin:0}.empty-library{padding:45px 16px;text-align:center;color:#9aa6b7}
.editor{width:100%;max-width:1240px;min-height:calc(100dvh - 265px);display:flex;flex-direction:column;gap:22px}.editor-head{display:flex;justify-content:space-between;align-items:center;gap:24px}.editor-actions{display:flex;gap:9px}.editor-actions button{padding:11px 16px;font-size:13px}.editor-surface{min-height:450px;flex:1;display:flex;flex-direction:column;background:#1a1e27;border:1px solid #343c4a;border-radius:16px;overflow:hidden}.editor-surface #title{background:#202631;border:0;border-bottom:1px solid #343c4a;padding:19px 24px;font-size:18px;font-weight:650;color:#fff;border-radius:0}.script-body{flex:1;min-height:340px;resize:none;border:0;background:transparent;padding:26px;font-size:18px;line-height:1.75;color:#edf0f7}.editor-bottom{display:flex;justify-content:space-between;align-items:center;color:#9ba5b6;font-size:12px}
.display-page{height:100%;min-height:calc(100dvh - 270px);display:flex;flex-direction:column}.display-stage{flex:1;min-height:300px;overflow:auto;background:#000;border:1px solid #303744;border-radius:16px;text-align:center;padding:25vh 8% 35vh}.display-content{max-width:900px;margin:auto;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5;font-weight:600}.display-toolbar{display:flex;justify-content:center;gap:12px;padding:18px 0}.display-toolbar button,.display-actions button{padding:11px 17px}.display-actions{display:flex;gap:9px}
.app-footer{height:40px;flex:none;background:#151820;border-top:1px solid #282d37;padding:0 clamp(20px,4vw,64px);color:#8793a4;font-size:11px}
.drawer-backdrop{position:fixed;inset:0;background:#000a;z-index:19}.drawer,.control{z-index:20}.drawer-backdrop[hidden],.immersive[hidden],.icon-rail[hidden],#preview[hidden],.buttons[hidden]{display:none!important}
@media(max-width:720px){.app-header{height:64px;padding:0 16px}.main-nav{height:52px;padding:0 12px}.main-nav button{padding:9px 12px}.main-nav #saveStatus{display:none}.main-area{padding:26px 16px}.page-top{align-items:flex-start;gap:20px}.page-top h1{font-size:31px}.library-tools{gap:12px}.library-tools input{width:100%;min-width:0}.library-items.cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:14px}.library-card{min-height:192px;padding:20px}.editor{min-height:calc(100dvh - 220px)}.editor-head{align-items:flex-start;flex-direction:column}.editor-actions{width:100%}.editor-actions button{flex:1;padding:10px 5px}.script-body{font-size:16px;padding:18px}.app-footer{padding:0 16px}.header-right #connection,.header-right .status-dot{display:none}}
@media(max-width:520px){.brand small{font-size:7px}.header-right{gap:8px}.header-right .primary{padding:10px 12px}.page-top{flex-direction:column}.library-actions,.library-actions button{width:100%}.library-items.cards{grid-template-columns:1fr}.library-items.list .library-card{grid-template-columns:minmax(0,1fr) 20px}.library-items.list .card-excerpt,.library-items.list small{display:none}.display-toolbar{flex-wrap:wrap}.display-stage{padding:20vh 6% 30vh}.app-footer span:last-child{display:none}}
