/* Shared workspace skin: activated only by the authenticated portal bridge. */
html:has(.daily-workspace-view) { background: transparent; height: auto; color-scheme: dark; }
.daily-workspace-view.daily-studio {
 --daily-paper: #0b0e16; --daily-ink: #f4f6fb; --daily-muted: #a7b0c6; --daily-line: rgba(255,255,255,.14);
 --daily-accent: #6d8cff; --daily-focus: #8aa4ff; --studio-ink: #f4f6fb;
 --studio-mint: rgba(255,255,255,.08); --studio-violet: #6d8cff; --studio-violet-light: rgba(109,140,255,.18);
 background: transparent; min-height: 0; margin: 0; padding: 0; color: var(--daily-ink);
}
.daily-workspace-view.daily-studio > .topbar,
.daily-workspace-view.daily-studio main > .intro,
.daily-workspace-view.daily-studio :is(.family-footer,.below,footer,.ad-slot,.ad-side) { display: none !important; }
.daily-workspace-view.daily-studio main { width: 100%; max-width: none; padding: 12px 12px 20px; margin: 0; }
.daily-workspace-view.daily-studio .layout { gap: 24px; grid-template-columns: minmax(0,1fr) 270px; }
.daily-workspace-view.daily-studio :is(.game,.assembly-studio,.layout > aside) {
 background: linear-gradient(180deg, rgba(255,255,255,.085), rgba(255,255,255,.04));
 border: 1px solid var(--glass-border); border-radius: 22px; box-shadow: var(--glass-highlight), 0 20px 50px rgba(2,4,12,.35);
 -webkit-backdrop-filter: var(--glass-blur); backdrop-filter: var(--glass-blur);
}
.daily-workspace-view.daily-studio .game { overflow: hidden; }
.daily-workspace-view.daily-studio :is(.layout > aside) { padding: 24px; }
.daily-workspace-view.daily-studio .side-content { padding: 0; background: transparent; border: 0; box-shadow: none; min-width: 0; }
.daily-workspace-view.daily-studio .side-content > * { min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
.daily-workspace-view.daily-studio :is(.nextcard,.next) { background: transparent; border: 0; border-top: 1px solid var(--glass-border); border-radius: 0; padding: 18px 0 0; }
.daily-workspace-view.daily-studio :is(.nextcard,.next) strong { color: var(--daily-ink); }
.daily-workspace-view.daily-studio :is(.gamebar,.game-heading) { color: var(--daily-ink); background: transparent; padding: 22px 24px 16px; }
.daily-workspace-view.daily-studio :is(.gamebar strong,.game-heading strong) { font-size: 17px; font-weight: 650; letter-spacing: -.4px; }
.daily-workspace-view.daily-studio :is(.difficulty,.level) { color: #cdd9ff; background: rgba(109,140,255,.16); border: 1px solid rgba(109,140,255,.28); }
.daily-workspace-view.daily-studio :is(.howto,.howcard,.weekcard) h2 { font-size: 23px; line-height: 1.25; letter-spacing: -.5px; }
.daily-workspace-view.daily-studio :is(button,select,input,a):focus-visible { outline: 3px solid #8aa4ff; outline-offset: 3px; }
.daily-workspace-view.daily-studio :is(.primary,.primarybtn) { color: #fff; background: linear-gradient(135deg, #6d8cff, #8b6bff); border-color: transparent; border-radius: 16px; box-shadow: inset 0 1px 0 rgba(255,255,255,.3), 0 8px 22px rgba(64,86,220,.32); }
.daily-workspace-view.daily-studio :is(.primary,.primarybtn):hover:enabled { filter: brightness(1.07); }
.daily-workspace-view.daily-studio :is(.text-button,.textbtn) { color: #a9bfff; }
.daily-workspace-view.daily-studio .toolbar { background: rgba(255,255,255,.05); border-color: var(--glass-border); color: var(--daily-ink); }
.daily-workspace-view.daily-studio .toolbar button { color: var(--daily-ink); }
.daily-workspace-view.daily-studio .toolbar button:hover:enabled { background: rgba(255,255,255,.1); }
.daily-workspace-view.daily-studio dialog { position: fixed; top: 16px; bottom: auto; margin: 0 auto; background: rgba(16,21,35,.94); border: 1px solid var(--glass-border); border-radius: 22px; max-height: min(80dvh,720px); box-shadow: var(--glass-shadow); }
.daily-workspace-view.daily-studio .board-meta { color: var(--daily-muted); }
/* Card geometry, semantic nonogram colors and orbit paths remain game owned. */
.daily-workspace-view.studio-sortivio .deckcopy p,
.daily-workspace-view.studio-sortivio .board-instruction { color: var(--daily-muted); }
.daily-workspace-view.studio-orbivio .gamebar time { color: var(--daily-muted); }
.daily-workspace-view.studio-orbivio .launch { background: rgba(255,255,255,.06); border-color: var(--glass-border); color: var(--daily-ink); box-shadow: var(--glass-highlight); }
.daily-workspace-view.studio-orbivio .launch p { color: var(--daily-muted); }
.daily-workspace-view.studio-orbivio .launch .primarybtn { color: #fff; background: linear-gradient(135deg, #6d8cff, #8b6bff); }
.daily-workspace-view.studio-huevio .game { border: 1px solid var(--glass-border); }
.daily-workspace-view.studio-huevio .game-heading { background: transparent; }
.daily-workspace-view.studio-huevio .canvas { padding-bottom: 24px; }
.daily-workspace-view.studio-huevio .studio { border-color: var(--glass-border); background: rgba(255,255,255,.04); }
.daily-workspace-view.studio-huevio .swatch[aria-pressed=true] { background: rgba(109,140,255,.2); border-color: rgba(154,178,255,.6); }
/* Chipvio: one clean physical board surface and a separate parts/tool shelf. */
.daily-workspace-view[data-demo-game=chipvio] .layout { grid-template-areas: 'board rail' 'tray rail'; }
.daily-workspace-view[data-demo-game=chipvio] #stage { background: rgba(6,9,18,.55); aspect-ratio: 1.7; min-height: 330px; max-height: 490px; }
.daily-workspace-view[data-demo-game=chipvio] .game { background: transparent; }
.daily-workspace-view[data-demo-game=chipvio] .board-meta button { color: var(--daily-ink); }
.daily-workspace-view[data-demo-game=chipvio] .board-meta button:hover:enabled { background: rgba(255,255,255,.1); }
.daily-workspace-view[data-demo-game=chipvio] .board-meta > div { border-radius: 18px; padding: 2px; background: rgba(255,255,255,.07); }
.daily-workspace-view[data-demo-game=chipvio] .board-meta button { border-radius: 18px; min-height: 36px; }
.daily-workspace-view[data-demo-game=chipvio] .canvas-foot { color: var(--daily-muted); }
.daily-workspace-view[data-demo-game=chipvio] .progress-track { background: rgba(255,255,255,.1); height: 7px; }
.daily-workspace-view[data-demo-game=chipvio] .assembly-studio { padding: 20px 22px; }
.daily-workspace-view[data-demo-game=chipvio] .tray-heading { font-size: 12px; }
.daily-workspace-view[data-demo-game=chipvio] .tray-heading > span:first-child { font-size: 17px; font-weight: 650; letter-spacing: -.4px; }
.daily-workspace-view[data-demo-game=chipvio] .part { background: rgba(255,255,255,.05); border-color: var(--glass-border); min-width: 100px; }
.daily-workspace-view[data-demo-game=chipvio] .part[aria-pressed=true] { border-color: rgba(154,178,255,.7); background: rgba(109,140,255,.18); }
.daily-workspace-view[data-demo-game=chipvio] .part.suggested { background: rgba(139,107,255,.16); border-color: rgba(154,140,255,.5); }
.daily-workspace-view[data-demo-game=chipvio] .part small { color: var(--daily-muted); }
.daily-workspace-view[data-demo-game=chipvio] .workbench-tools { border: 0; padding: 12px 0 0; background: transparent; }
.daily-workspace-view[data-demo-game=chipvio] .task-rail { padding: 0; background: transparent; border-radius: 0; box-shadow: none; border: 0; -webkit-backdrop-filter: none; backdrop-filter: none; }
.daily-workspace-view[data-demo-game=chipvio] .task-rail > h2 { font-size: 14px; line-height: 1.25; letter-spacing: -.7px; }
.daily-workspace-view[data-demo-game=chipvio] .task-rail p { color: var(--daily-muted); }
.daily-workspace-view[data-demo-game=chipvio] #taskPart { background: rgba(255,255,255,.05); border: 1px solid var(--glass-border); min-height: 130px; }
.daily-workspace-view[data-demo-game=chipvio] #nextStep { background: linear-gradient(135deg, rgba(109,140,255,.35), rgba(139,107,255,.3)); border: 1px solid rgba(154,178,255,.5); color: #e7ecff; border-radius: 18px; padding: 10px 16px; text-decoration: none; width: 100%; max-width: none; min-height: 44px; justify-content: center; }
.daily-workspace-view[data-demo-game=chipvio] .held-tools button { color: var(--daily-muted); }
@media(max-width:1050px) {
 .daily-workspace-view.daily-studio .layout { grid-template-columns: minmax(0,1fr) 230px; gap: 18px; }
 .daily-workspace-view.daily-studio :is(.layout > aside) { padding: 20px; }
}
@media(max-width:900px) {
 .daily-workspace-view.studio-orbivio .layout > aside { display: block; }
 .daily-workspace-view[data-demo-game=chipvio] .layout > aside { display: block; }
}
@media(max-width:800px) {
 .daily-workspace-view.daily-studio main { padding: 12px 12px 16px; }
 .daily-workspace-view.daily-studio .layout { grid-template-columns: minmax(0,1fr); gap: 16px; }
 .daily-workspace-view[data-demo-game=chipvio] .layout { grid-template-areas: 'board' 'rail' 'tray'; }
 .daily-workspace-view.daily-studio :is(.game,.assembly-studio,.layout > aside) { border-radius: 18px; }
 .daily-workspace-view[data-demo-game=chipvio] .task-rail { display: grid; grid-template-columns: minmax(0,1fr) 90px; gap: 8px 12px; }
 .daily-workspace-view[data-demo-game=chipvio] .task-rail > h2 { grid-column: 1/-1; }
 .daily-workspace-view[data-demo-game=chipvio] #slotDetail { display: block; grid-column: 1; }
 .daily-workspace-view[data-demo-game=chipvio] #taskPart { grid-column: 2; grid-row: 2; min-height: 100px; }
 .daily-workspace-view[data-demo-game=chipvio] #taskPart :is(svg,img) { width: 95px; height: 95px; }
 .daily-workspace-view[data-demo-game=chipvio] #nextStep { margin-top: 12px; }
 .daily-workspace-view.daily-studio .side-content { display: block; }
 .daily-workspace-view.daily-studio .side-content > * + * { margin-top: 24px; }
}
@media(max-width:600px) {
 .daily-workspace-view.daily-studio :is(.gamebar,.game-heading) { padding: 18px 16px 12px; }
 .daily-workspace-view[data-demo-game=chipvio] .game-heading { padding-right: 125px; }
 .daily-workspace-view[data-demo-game=chipvio] .game-heading strong { font-size: 14px; }
 .daily-workspace-view[data-demo-game=chipvio] #stage { aspect-ratio: 1.25; min-height: 230px; }
 .daily-workspace-view[data-demo-game=chipvio] .assembly-studio { padding: 16px; }
 .daily-workspace-view[data-demo-game=chipvio] .task-rail > h2 { font-size: 13px; }
 .daily-workspace-view[data-demo-game=chipvio] .layout { grid-template-areas: 'board' 'rail' 'tray' 'help' 'playground' 'next'; }
 .daily-workspace-view[data-demo-game=chipvio] .part { min-width: 87px; min-height: 96px; }
 .daily-workspace-view[data-demo-game=chipvio] .tray-heading #heldLabel { display: none; }
}

/* Dark chrome needs explicit readable ink colors even when a board is tinted. */
.daily-workspace-view.daily-studio :is(.gamebar .moves,.gamebar .moves strong,.gamebar .moves > span,.move-summary,.move-summary strong,.table-meta,.table-meta #syncStatus) { color: var(--daily-muted); }
.daily-workspace-view.daily-studio :is(.gamebar .moves strong,.gamebar .game-title > span:not(.difficulty)) { color: var(--daily-ink); }
.daily-workspace-view.daily-studio .gamebar .game-title > span:not(.difficulty) { font-size: 15px; }
.daily-workspace-view.studio-sortivio #syncLogin { color: #a9bfff; }
.daily-workspace-view.studio-orbivio .mission-hud { background: transparent; }
.daily-workspace-view.studio-orbivio .mission-hud small { color: var(--daily-muted); }
.daily-workspace-view.studio-orbivio .mission-hud strong { color: #cdd9ff; }
.daily-workspace-view.daily-studio .toolbar :is(svg,button > span:first-child:not([data-i])) { color: var(--daily-muted); }

/* Fluid family refinement. Motion responds to intent; puzzle hit targets stay fixed. */
.daily-workspace-view.daily-studio{
 --fluid-ease:cubic-bezier(.4,0,.2,1);--fluid-press:120ms;--fluid-state:180ms;
 --daily-line:rgba(255,255,255,.14);--daily-muted:#a7b0c6;--daily-focus:#8aa4ff;
 caret-color:#8aa4ff;scrollbar-color:rgba(255,255,255,.22) transparent;
}
.daily-workspace-view.daily-studio :is(.game,.assembly-studio,.layout>aside){border-radius:26px;box-shadow:var(--glass-highlight),0 20px 50px rgba(2,4,12,.32)}
.daily-workspace-view.daily-studio :is(.gamebar,.game-heading){padding-top:22px;padding-bottom:18px}
.daily-workspace-view.daily-studio :is(.gamebar strong,.game-heading strong){font-weight:600;letter-spacing:-.02em}
.daily-workspace-view.daily-studio :is(.difficulty,.level){border:1px solid rgba(109,140,255,.28);border-radius:10px;background:rgba(109,140,255,.16);padding:5px 9px}
.daily-workspace-view.daily-studio :is(.howto,.howcard,.weekcard) :is(h2,h3){font-weight:600;line-height:1.3;letter-spacing:-.025em}
.daily-workspace-view.daily-studio :is(.howto,.howcard,.weekcard,.daily-note) p{color:var(--daily-muted)}
.daily-workspace-view.daily-studio :is(.toolbar button,.held-tools button,.primary,.primarybtn,.secondary,.textbtn,.text-button,.outlinebtn,.swatch,.part,#nextStep,#labels){
 transition:background-color var(--fluid-state) var(--fluid-ease),border-color var(--fluid-state) var(--fluid-ease),box-shadow var(--fluid-state) var(--fluid-ease),color var(--fluid-state) var(--fluid-ease),opacity var(--fluid-state) var(--fluid-ease),scale var(--fluid-press) var(--fluid-ease),translate var(--fluid-state) var(--fluid-ease);
}
.daily-workspace-view.daily-studio :is(.toolbar button,.held-tools button){min-height:44px;border-radius:14px}
.daily-workspace-view.daily-studio :is(.primary,.primarybtn){box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 8px 22px rgba(64,86,220,.3)}
.daily-workspace-view.daily-studio :is(.secondary,.outlinebtn){border-color:var(--glass-border);background:var(--glass-surface);color:var(--daily-ink);border-radius:15px}
.daily-workspace-view.daily-studio :is(.swatch,.part){border-radius:15px}
.daily-workspace-view.daily-studio :is(.swatch,.part)[aria-pressed=true]{box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 3px 10px rgba(64,86,220,.22)}
.daily-workspace-view.daily-studio :is(.toolbar button,.held-tools button,.primary,.primarybtn,.secondary,.textbtn,.text-button,.outlinebtn,.swatch,.part,#nextStep,#labels):active:enabled{scale:.97}
.daily-workspace-view.daily-studio .part:hover:enabled{transform:none}
@media(hover:hover) and (pointer:fine){
 .daily-workspace-view.daily-studio :is(.swatch,.part):hover:enabled{translate:0 -2px;box-shadow:0 8px 20px rgba(2,4,12,.35)}
 .daily-workspace-view.daily-studio :is(.toolbar button,.held-tools button):hover:enabled{background:rgba(255,255,255,.1)}
}
.daily-workspace-view.daily-studio input[type=checkbox]{accent-color:#8aa4ff}
.daily-workspace-view.daily-studio :is(.progress-track>div,.mini-progress i){transition:width 280ms var(--fluid-ease)}
.daily-workspace-view.daily-studio :is(.rail-help,.learn-panel) summary{border-radius:12px;transition:background-color var(--fluid-state) var(--fluid-ease),color var(--fluid-state) var(--fluid-ease);outline-offset:3px}
.daily-workspace-view.daily-studio :is(.rail-help,.learn-panel) summary:hover{color:#cdd9ff}
.daily-workspace-view.daily-studio details[open]>.learn-panel{animation:workspace-detail-in 180ms ease-out}
@keyframes workspace-detail-in{from{opacity:.4}to{opacity:1}}
/* Native modal semantics remain intact. Browsers without discrete transitions close instantly. */
.daily-workspace-view.daily-studio dialog{
 border:1px solid var(--glass-border)!important;border-radius:26px;padding:28px;background:rgba(16,21,35,.94);box-shadow:var(--glass-shadow);
 opacity:0;transform:translateY(8px) scale(.985);
 transition:opacity 160ms ease,transform 220ms var(--fluid-ease),display 220ms allow-discrete,overlay 220ms allow-discrete;
}
.daily-workspace-view.daily-studio dialog[open]{opacity:1;transform:none}
.daily-workspace-view.daily-studio dialog::backdrop{background:rgba(4,6,14,.66);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:opacity 160ms ease,display 220ms allow-discrete,overlay 220ms allow-discrete}
@starting-style{
 .daily-workspace-view.daily-studio dialog[open]{opacity:0;transform:translateY(8px) scale(.985)}
 .daily-workspace-view.daily-studio dialog[open]::backdrop{opacity:0}
}
.daily-workspace-view.daily-studio dialog :is(h2,h3){font-weight:600;letter-spacing:-.025em;line-height:1.25}
.daily-workspace-view.daily-studio dialog h2{font-size:28px}
.daily-workspace-view.daily-studio dialog .close{border-radius:50%;min-width:44px;min-height:44px;background:rgba(255,255,255,.08);color:var(--daily-muted);transition:background-color var(--fluid-state),scale var(--fluid-press)}
.daily-workspace-view.daily-studio dialog .close:active{scale:.92}
@media(max-width:800px){
 .daily-workspace-view.daily-studio :is(.game,.assembly-studio,.layout>aside){border-radius:22px}
 .daily-workspace-view.daily-studio dialog{border-radius:22px;padding:24px}
 .daily-workspace-view.daily-studio dialog h2{font-size:25px}
}
@media(prefers-reduced-transparency:reduce){
 .daily-workspace-view.daily-studio :is(.game,.assembly-studio,.layout>aside){background:#111624;border-color:rgba(255,255,255,.18);-webkit-backdrop-filter:none;backdrop-filter:none}
 .daily-workspace-view.daily-studio dialog::backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:rgba(4,6,14,.86)}
}
@media(prefers-reduced-motion:reduce){
 .daily-workspace-view.daily-studio :is(button,a){scale:1!important;translate:none!important}
 .daily-workspace-view.daily-studio dialog{transform:none!important;transition:none!important}
 .daily-workspace-view.daily-studio dialog::backdrop{transition:none!important}
}
