/* Storyverse v36.44 — visible theme workspace + macOS desktop */

/* Global dark mode: this layer intentionally wins over the legacy light-only stylesheet. */
html.storyverse-dark,body.storyverse-dark,body.storyverse-dark #app{background:#0f0e15!important;color:#f5f1fb!important;color-scheme:dark!important}
.storyverse-dark .theme-root{--u-bg1:#111018!important;--u-bg2:#181521!important;--u-text:#f5f1fb!important;--u-card:#201c29!important;--ink:#f5f1fb!important;--muted:#bdb5ca!important;--card:#201c29!important;color-scheme:dark!important}
.storyverse-dark .theme-root,.storyverse-dark .julia-shell,.storyverse-dark .yukio-shell,.storyverse-dark .admin-main,.storyverse-dark .device-content{color:#f5f1fb!important}
.storyverse-dark .soft-card,.storyverse-dark .dash-card,.storyverse-dark .detail-card,.storyverse-dark .character-card,.storyverse-dark .profile-hero,.storyverse-dark .post,.storyverse-dark .composer,.storyverse-dark .messages-app,.storyverse-dark .modal,.storyverse-dark .drawer{background:rgba(31,27,40,.94)!important;color:#f5f1fb!important;border-color:rgba(255,255,255,.11)!important}
.storyverse-dark input,.storyverse-dark textarea,.storyverse-dark select{background:#272231!important;color:#f5f1fb!important;border-color:rgba(255,255,255,.13)!important}
.storyverse-dark .muted,.storyverse-dark .hint,.storyverse-dark small{color:#bdb5ca}
.storyverse-dark .v31-mac-desktop{background-image:linear-gradient(135deg,rgba(17,16,24,.84),rgba(24,21,33,.86))!important}
.storyverse-dark .v31-mac-menubar,.storyverse-dark .v33-mac-windowbar,.storyverse-dark .v36-dock{background:rgba(28,24,36,.78)!important;color:#f5f1fb!important;border-color:rgba(255,255,255,.12)!important}
.storyverse-dark .v33-mac-window{background:rgba(31,27,40,.96)!important;color:#f5f1fb!important;border-color:rgba(255,255,255,.12)!important}

/* Theme page */
.theme44-page{gap:16px!important}
.theme44-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;padding:24px 26px;border-radius:28px;background:linear-gradient(135deg,color-mix(in srgb,var(--u-accent) 11%,var(--u-card)),color-mix(in srgb,var(--u-card) 88%,transparent));border:1px solid color-mix(in srgb,var(--u-text) 9%,transparent)}
.theme44-hero h1{margin:6px 0 8px;font-size:clamp(25px,3vw,38px);letter-spacing:-.045em;line-height:1.02}.theme44-hero p{margin:0;max-width:660px;color:var(--muted);font-size:12px;line-height:1.6}.theme44-sync{display:flex;align-items:center;gap:7px;padding:9px 12px;border-radius:999px;background:color-mix(in srgb,var(--u-accent) 10%,var(--u-card));border:1px solid color-mix(in srgb,var(--u-accent) 24%,transparent);font-size:10px;font-weight:900;white-space:nowrap}.theme44-sync i{width:7px;height:7px;border-radius:50%;background:#43bd68;box-shadow:0 0 0 4px rgba(67,189,104,.12)}
.theme44-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,430px);gap:16px;align-items:start}.theme44-controls{display:grid;gap:14px}.theme44-panel,.theme44-preview-panel{border:1px solid color-mix(in srgb,var(--u-text) 9%,transparent);border-radius:24px;background:color-mix(in srgb,var(--u-card) 86%,transparent);padding:18px}.theme44-panel-head,.theme44-preview-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:14px}.theme44-panel-head>div,.theme44-preview-head>div{display:grid;gap:2px}.theme44-panel-head small,.theme44-preview-head small{font-size:8px;font-weight:900;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}.theme44-panel-head h2{font-size:17px;margin:0}.theme44-panel-head>span,.theme44-panel-head>strong,.theme44-preview-head>span{font-size:9px;color:var(--muted)}
.theme44-mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:9px}.theme44-mode-switch button{min-height:92px;border:1px solid color-mix(in srgb,var(--u-text) 10%,transparent);border-radius:18px;background:color-mix(in srgb,var(--u-card) 76%,transparent);color:var(--u-text);padding:12px;text-align:left;display:grid;grid-template-columns:38px 1fr;grid-template-rows:auto auto;column-gap:10px;transition:.16s ease;cursor:pointer}.theme44-mode-switch button>span{grid-row:1/3;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--u-text) 6%,transparent);font-size:18px}.theme44-mode-switch button b{align-self:end;font-size:13px}.theme44-mode-switch button small{font-size:9px;color:var(--muted)}.theme44-mode-switch button.active{border-color:var(--u-accent);background:color-mix(in srgb,var(--u-accent) 10%,var(--u-card));box-shadow:0 0 0 3px color-mix(in srgb,var(--u-accent) 10%,transparent)}
.theme44-color-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}.theme44-color-grid label{display:grid;grid-template-columns:1fr auto;align-items:center;gap:7px;padding:9px;border-radius:16px;background:color-mix(in srgb,var(--u-text) 4%,transparent)}.theme44-color-grid label>span{grid-column:1/-1;font-size:9px;font-weight:850;color:var(--muted)}.theme44-color-grid input{width:42px;height:42px;padding:2px;border:0;border-radius:12px;background:transparent;cursor:pointer}.theme44-color-grid code{font-size:8px;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.theme44-presets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.theme44-preset{border:1px solid color-mix(in srgb,var(--u-text) 9%,transparent);border-radius:16px;background:transparent;color:inherit;padding:8px;text-align:left;display:flex;align-items:center;gap:8px;cursor:pointer}.theme44-preset:hover,.theme44-preset.active{border-color:var(--u-accent);background:color-mix(in srgb,var(--u-accent) 7%,transparent)}.theme44-preset-art{width:40px;height:40px;border-radius:12px;flex:0 0 40px;background:linear-gradient(135deg,var(--p1),var(--p2));position:relative;overflow:hidden}.theme44-preset-art i{position:absolute;right:5px;bottom:5px;width:12px;height:12px;border-radius:50%;background:var(--pa);border:2px solid rgba(255,255,255,.8)}.theme44-preset strong,.theme44-preset small{display:block}.theme44-preset strong{font-size:10px}.theme44-preset small{font-size:8px;color:var(--muted);margin-top:2px}
.theme44-preview-panel{position:sticky;top:16px}.theme44-preview-head strong{font-size:13px}.theme44-preview-head>span{padding:5px 8px;border-radius:999px;background:color-mix(in srgb,var(--u-text) 5%,transparent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.theme44-preview{height:420px;border-radius:22px;padding:14px;display:grid;grid-template-columns:1fr 118px;gap:12px;background:linear-gradient(135deg,var(--pv1),var(--pv2));color:var(--pvt);overflow:hidden;transition:.18s ease}.theme44-preview.is-dark{--pv1:#111018!important;--pv2:#181521!important;--pvt:#f5f1fb!important;--pvc:#201c29!important}
.theme44-preview-desktop{border-radius:16px;overflow:hidden;background:color-mix(in srgb,var(--pvc) 48%,transparent);border:1px solid rgba(255,255,255,.28);box-shadow:0 15px 35px rgba(0,0,0,.12)}.theme44-preview-menubar{height:26px;padding:0 8px;display:flex;align-items:center;gap:7px;background:color-mix(in srgb,var(--pvc) 62%,transparent);font-size:7px}.theme44-preview-menubar b{font-size:8px}.theme44-preview-menubar i{font-style:normal;margin-left:auto}.theme44-preview-wall{height:calc(100% - 26px);position:relative;padding:28px 16px}.theme44-preview-window{height:245px;border-radius:14px;overflow:hidden;background:color-mix(in srgb,var(--pvc) 93%,transparent);box-shadow:0 15px 35px rgba(0,0,0,.14);border:1px solid color-mix(in srgb,var(--pvt) 9%,transparent)}.theme44-preview-window header{height:26px;display:flex;align-items:center;gap:5px;padding:0 8px;background:color-mix(in srgb,var(--pvc) 75%,transparent)}.theme44-preview-window header i{width:7px;height:7px;border-radius:50%;background:#ff5f57}.theme44-preview-window header i:nth-child(2){background:#febc2e}.theme44-preview-window header i:nth-child(3){background:#28c840}.theme44-preview-window header b{font-size:7px;margin-left:5px}.theme44-preview-window main{padding:18px;display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.theme44-preview-window main span{height:54px;border-radius:10px;background:color-mix(in srgb,var(--pva) 12%,var(--pvc))}.theme44-preview-window main strong,.theme44-preview-window main p{grid-column:1/-1}.theme44-preview-window main strong{font-size:11px;margin-top:4px}.theme44-preview-window main p{font-size:7px;opacity:.66;margin:0}.theme44-preview-dock{position:absolute;left:50%;bottom:9px;transform:translateX(-50%);display:flex;gap:4px;padding:5px 7px;border-radius:10px;background:color-mix(in srgb,var(--pvc) 55%,transparent);border:1px solid rgba(255,255,255,.28)}.theme44-preview-dock i{width:20px;height:20px;border-radius:6px;background:color-mix(in srgb,var(--pva) 45%,var(--pvc))}
.theme44-preview-phone{align-self:center;height:280px;border-radius:24px;border:4px solid color-mix(in srgb,var(--pvt) 80%,#17151d);background:linear-gradient(160deg,var(--pv1),var(--pv2));padding:24px 9px 10px;position:relative;box-shadow:0 14px 30px rgba(0,0,0,.17)}.theme44-notch{position:absolute;top:6px;left:50%;transform:translateX(-50%);width:42px;height:10px;border-radius:10px;background:color-mix(in srgb,var(--pvt) 82%,#111)}.theme44-phone-title{display:block;font-size:9px;font-weight:900;margin:5px 0 12px}.theme44-phone-card{padding:10px;border-radius:12px;background:color-mix(in srgb,var(--pvc) 90%,transparent);display:grid;gap:3px}.theme44-phone-card b{font-size:9px}.theme44-phone-card small{font-size:6px}.theme44-phone-icons{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:12px}.theme44-phone-icons i{height:42px;border-radius:11px;background:color-mix(in srgb,var(--pva) 18%,var(--pvc))}
.theme44-savebar{display:flex;align-items:center;gap:14px;padding:13px 15px;border-radius:20px;background:color-mix(in srgb,var(--u-card) 92%,transparent);border:1px solid color-mix(in srgb,var(--u-text) 9%,transparent);position:sticky;bottom:10px;z-index:60;backdrop-filter:blur(24px)}.theme44-savebar>div{display:grid;gap:2px;min-width:0}.theme44-savebar strong{font-size:11px}.theme44-savebar span{font-size:9px;color:var(--muted)}.theme44-savebar .btn{margin-left:auto;min-width:150px}

/* Desktop behaves like a Mac, independent from legacy bind chains. */
@media(min-width:761px){
  .v36-mac-root .v31-mac-shell{grid-template-rows:34px minmax(0,1fr)!important}
  .v36-mac-root .v36-dock{position:absolute!important;left:50%!important;bottom:12px!important;margin:0!important;justify-self:auto!important;align-self:auto!important;transform:translate(-50%,calc(100% + 30px))!important;opacity:0!important;pointer-events:none!important;overflow:visible!important;z-index:1100!important;transition:transform .2s ease,opacity .16s ease!important}
  .v36-mac-root.v3644-dock-open .v36-dock,.v36-mac-root .v36-dock:hover,.v36-mac-root .v36-dock:focus-within{transform:translate(-50%,0)!important;opacity:1!important;pointer-events:auto!important}
  .v3644-dock-hotzone{position:absolute;left:0;right:0;bottom:0;height:54px;z-index:1090;background:transparent}
  .v36-dock button{transition:transform .13s ease!important;transform-origin:center bottom}.v36-dock button:hover{transform:translateY(-10px) scale(1.17)}.v36-dock button:has(+ button:hover),.v36-dock button:hover + button{transform:translateY(-5px) scale(1.08)}
  .v36-dock button small{position:absolute;bottom:58px;padding:4px 7px;border-radius:7px;background:rgba(24,21,30,.84);color:white!important;font-size:8px!important;opacity:0;transform:translateY(4px);pointer-events:none;transition:.12s}.v36-dock button:hover small,.v36-dock button:focus-visible small{opacity:1;transform:none}
  .v36-mac-root .v33-mac-window{border-radius:16px!important;box-shadow:0 26px 80px rgba(30,22,38,.25)!important}
  .v36-mac-root .v33-mac-windowbar{height:40px!important;min-height:40px!important;cursor:grab!important}.v36-mac-root .v33-mac-windowbar:active{cursor:grabbing!important}
  .v36-mac-root .v31-traffic{gap:7px!important}.v36-mac-root .v31-traffic button{width:13px!important;height:13px!important;cursor:pointer!important;position:relative!important;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}.v36-mac-root .v31-traffic button::after{position:absolute;inset:-3px;display:grid;place-items:center;font-size:9px;font-weight:950;color:rgba(40,25,22,.72);opacity:0}.v36-mac-root .v31-traffic:hover button::after{opacity:1}.v36-mac-root .v31-traffic .close::after{content:'×'}.v36-mac-root .v31-traffic .min::after{content:'−'}.v36-mac-root .v31-traffic .max::after{content:'+'}
  .v36-mac-root .v33-resize-corner{pointer-events:auto!important;width:24px!important;height:24px!important;z-index:5}
}
@media(max-width:979px){.theme44-workspace{grid-template-columns:1fr}.theme44-preview-panel{position:relative;top:auto}.theme44-preview{height:360px}.theme44-color-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.theme44-card-color{grid-column:auto}.theme44-presets{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.theme44-page{gap:11px!important}.theme44-hero{padding:18px;border-radius:22px;align-items:flex-start;flex-direction:column}.theme44-hero h1{font-size:26px}.theme44-sync{align-self:flex-start}.theme44-panel,.theme44-preview-panel{padding:14px;border-radius:20px}.theme44-mode-switch{grid-template-columns:1fr}.theme44-mode-switch button{min-height:74px}.theme44-color-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.theme44-card-color{grid-column:1/-1}.theme44-presets{grid-template-columns:1fr 1fr}.theme44-preview{height:300px;grid-template-columns:1fr 86px;padding:10px}.theme44-preview-window{height:185px}.theme44-preview-phone{height:215px;border-width:3px;border-radius:19px;padding:19px 7px 7px}.theme44-phone-icons i{height:28px}.theme44-savebar{bottom:max(8px,env(safe-area-inset-bottom));padding:10px 11px}.theme44-savebar span{display:none}.theme44-savebar .btn{min-width:132px;min-height:44px}}
@media(max-width:430px){.theme44-color-grid{grid-template-columns:1fr}.theme44-card-color{grid-column:auto}.theme44-presets{grid-template-columns:1fr}.theme44-preview-panel{display:none}.theme44-savebar strong{font-size:10px}}
@media(prefers-reduced-motion:reduce){.v36-mac-root .v36-dock,.v36-dock button,.theme44-mode-switch button{transition:none!important}}
