:root{--cream:#fffaf0;--ink:#3f2f1f;--purple:#4c3a63;--mauve:#ddd2f0;--sage:#7e8f5a;--block-size:150px;--peek:36px;--track-start:calc(var(--peek) - var(--block-size))}
*{box-sizing:border-box}
html{background:var(--cream)}
body{margin:0;overflow:hidden;background:radial-gradient(circle at 16% 8%,rgba(221,210,240,.55),transparent 30rem),var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif}
button{font:inherit}
.app-shell{height:100svh;display:grid;grid-template-rows:auto minmax(0,1fr);padding:clamp(.75rem,2.5vw,1.6rem);gap:.5rem}
.site-header{width:min(100%,76rem);margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.identity{display:flex;align-items:baseline;gap:clamp(.65rem,2vw,1.4rem)}
.eyebrow{margin:0;color:var(--purple);font-family:Georgia,"Times New Roman",serif;font-size:clamp(1rem,2.1vw,1.45rem);font-weight:700}
.possibilities{margin:0;display:flex;align-items:baseline;gap:.38rem;color:var(--purple);white-space:nowrap}
.possibilities strong{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,5.2vw,4.4rem);line-height:.85;letter-spacing:-.06em}
.possibilities span{max-width:6rem;font-size:.68rem;font-weight:800;line-height:1;text-transform:uppercase;letter-spacing:.09em}
.actions{display:flex;align-items:center;gap:.5rem}
.button,.icon-button,.close-button{border:1px solid rgba(63,47,31,.24);background:rgba(255,250,240,.9);color:var(--ink);cursor:pointer}
.button{border-radius:999px;padding:.68rem .9rem;font-weight:700}
.button-primary{border-color:var(--purple);background:var(--purple);color:#fff;box-shadow:0 .22rem 0 rgba(63,47,31,.25)}
.button-primary:active{transform:translateY(.14rem);box-shadow:0 .08rem 0 rgba(63,47,31,.25)}
.icon-button,.close-button{width:2.5rem;height:2.5rem;border-radius:50%;display:grid;place-items:center;font-weight:800}
.stage{min-height:0;overflow:auto;display:grid;grid-template-rows:minmax(min-content,1fr) auto;place-items:center;align-content:center;padding:.35rem calc(var(--peek) + .4rem) .2rem;container-type:size}
.alice{width:var(--block-size);align-self:center;filter:drop-shadow(0 .8rem 1.1rem rgba(63,47,31,.17))}
.carousel-row{position:relative;width:var(--block-size);height:var(--block-size);outline:none}
.carousel-row+.carousel-row{margin-top:.32rem}
.carousel-viewport{position:absolute;top:0;left:calc(-1 * var(--peek));width:calc(var(--block-size) + 2 * var(--peek));height:var(--block-size);overflow:hidden;touch-action:pan-y;cursor:grab}
.is-dragging .carousel-viewport{cursor:grabbing}
.carousel-track{height:100%;display:flex;transform:translateX(var(--track-start));will-change:transform}
.slide{flex:0 0 var(--block-size);height:var(--block-size);transition:filter .2s ease,opacity .2s ease,transform .2s ease}
.slide img{display:block;width:100%;height:100%;object-fit:cover;user-select:none;pointer-events:none}
.slide-previous,.slide-next{filter:blur(5px) saturate(.72);opacity:.34;transform:scale(.9)}
.slide-current{position:relative;z-index:1}
.turn{position:absolute;z-index:4;top:50%;width:2rem;height:3.4rem;border:0;display:grid;place-items:center;transform:translateY(-50%);background:rgba(255,250,240,.82);color:var(--ink);cursor:pointer;opacity:.72;backdrop-filter:blur(3px)}
.turn span{font-size:2rem;line-height:1;transform:translateY(-.07em)}
.turn-left{left:calc(-1 * var(--peek));border-radius:0 999px 999px 0}
.turn-right{right:calc(-1 * var(--peek));border-radius:999px 0 0 999px}
.lock{position:absolute;z-index:5;right:.28rem;top:.28rem;border:0;border-radius:999px;padding:.25rem .42rem;background:rgba(255,250,240,.82);color:var(--ink);cursor:pointer;display:flex;align-items:center;gap:.25rem;font-size:.62rem;font-weight:800;opacity:.58}
.lock-label{max-width:0;overflow:hidden;transition:max-width .15s ease}
.lock:hover .lock-label,.lock:focus-visible .lock-label,.lock.is-locked .lock-label{max-width:3rem}
.lock.is-locked{background:var(--purple);color:#fff;opacity:1}
.carousel-row:focus-visible{outline:.24rem solid var(--sage);outline-offset:.2rem}
.instruction{margin:.45rem 0 0;text-align:center;color:rgba(63,47,31,.63);font-size:.7rem}
.viewer,.about{border:0;border-radius:1.2rem;padding:0;background:var(--cream);color:var(--ink);box-shadow:0 2rem 5rem rgba(40,25,18,.35)}
.viewer{width:min(94vw,44rem);height:min(94svh,58rem);overflow:hidden}
.about{width:min(92vw,34rem)}
dialog::backdrop{background:rgba(46,34,27,.64);backdrop-filter:blur(6px)}
.dialog-bar{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem 1rem .75rem;border-bottom:1px solid rgba(63,47,31,.17);background:rgba(255,250,240,.96)}
.dialog-bar h2{margin:.12rem 0 0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.15rem,3vw,1.65rem);line-height:1.1}
.dialog-kicker{margin:0;color:var(--purple);font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em}
.close-button{font-size:1.5rem;flex:0 0 auto}
.viewer-scroll{height:calc(100% - 9rem);overflow:auto;padding:1rem}
.assembled{width:min(86vw,30rem);margin:0 auto;filter:drop-shadow(0 1rem 1.2rem rgba(63,47,31,.18))}
.assembled img{display:block;width:100%;aspect-ratio:1;object-fit:cover}
.assembled img+img{margin-top:.48rem}
.component-list{width:min(86vw,30rem);margin:1rem auto 0;padding:0;list-style:none}
.component-list li{display:grid;grid-template-columns:4.5rem 1fr;gap:.75rem;padding:.5rem 0;border-bottom:1px solid rgba(63,47,31,.14)}
.component-list span{color:var(--purple);font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.component-list strong{font-size:.82rem}
.dialog-actions{min-height:4.5rem;display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-top:1px solid rgba(63,47,31,.17);background:rgba(255,250,240,.98)}
.status{margin-left:auto;color:var(--sage);font-size:.78rem;font-weight:800}
.about-copy{padding:1rem 1.2rem 1.3rem;line-height:1.65}
.about-copy p{margin:.3rem 0 1rem}
.about-copy .small{margin-bottom:0;color:var(--purple);font-size:.78rem;font-weight:800}
.error{padding:1rem;background:#fff;border:2px solid #a74f3a}
.button:focus-visible,.icon-button:focus-visible,.close-button:focus-visible,.turn:focus-visible,.lock:focus-visible{outline:.22rem solid var(--sage);outline-offset:.16rem}
@media(max-width:720px){.site-header{align-items:flex-start}
.identity{display:block}
.possibilities{margin-top:.18rem}
.possibilities strong{font-size:2.6rem}
.actions{flex-wrap:wrap;justify-content:flex-end}
.button{padding:.58rem .72rem;font-size:.75rem}
.icon-button{width:2.15rem;height:2.15rem}
.instruction{font-size:.62rem}
.lock-label{display:none}
}

/* Random Alice Generator: a brightly painted, Meccano-like machine. */
:root{--yellow:#f2c94c;--aqua:#52c7d9;--russet:#a74f3a;--pale-sage:#dbe6c7;--metal:#6d6674}
.project-mark,.counter-label,.machine-plate,.ready-light,.warning-plate,.control-label{font-weight:900;text-transform:uppercase;letter-spacing:.1em}
.project-mark{margin:0;color:var(--purple);font-size:.56rem}
.counter-bank{position:relative}
.counter-label{display:none}
.machine-plate,.ready-light,.warning-plate{margin:0}
.machine-plate{display:none}
.ready-light{display:flex;align-items:center;gap:.42rem;font-size:.58rem;color:var(--ink)}
.ready-light>span{width:.7rem;height:.7rem;border:2px solid var(--ink);border-radius:50%;background:#c8ef6b;box-shadow:0 0 0 .18rem rgba(255,250,240,.45),0 0 .7rem #c8ef6b}
.warning-plate{display:none}
.control-label{display:none}
.gear,.perforated-brace{display:none;pointer-events:none}

@media(max-width:900px){
.identity{display:grid;grid-template-columns:1fr auto;align-items:end;column-gap:.8rem}
.project-mark{grid-column:1/-1;margin-bottom:.18rem}
.eyebrow{grid-column:1;line-height:1}
.counter-bank{grid-column:2;grid-row:2}
.possibilities{margin:0}
.actions .button{border-radius:.32rem}
.inspect-control>span:first-child{display:none}
.ready-light{display:none}
}

@media(min-width:901px){
.app-shell{border-width:.28rem;border-radius:.28rem;box-shadow:0 1.35rem 3rem rgba(63,47,31,.24),0 0 0 .55rem var(--cream),0 0 0 .75rem var(--purple)}
.identity,.actions{isolation:isolate}
.identity{justify-content:flex-start;padding:clamp(1.2rem,3vw,2.7rem);background-color:#d8c8f0;background-image:radial-gradient(circle at 1rem 1rem,var(--purple) 0 .18rem,transparent .2rem),radial-gradient(circle at calc(100% - 1rem) calc(100% - 1rem),var(--purple) 0 .18rem,transparent .2rem);border-right:.72rem solid var(--cream)}
.identity::before{width:1.05rem;height:calc(100% - 2rem);left:.78rem;top:1rem;border:0;border-radius:.15rem;background-color:var(--purple);background-image:radial-gradient(circle,var(--cream) 0 .17rem,transparent .19rem);background-size:100% 1.42rem;opacity:.86;transform:rotate(-5deg)}
.identity::after{content:"";position:absolute;z-index:-1;width:1.05rem;height:78%;right:1.05rem;bottom:-7%;background-color:var(--russet);background-image:radial-gradient(circle,var(--cream) 0 .17rem,transparent .19rem);background-size:100% 1.42rem;transform:rotate(28deg);border-radius:.15rem;opacity:.75}
.project-mark{position:relative;z-index:2;align-self:flex-end;margin:.3rem 0 1.2rem;padding:.38rem .5rem;border:1px solid var(--purple);background:rgba(255,250,240,.72);box-shadow:.18rem .18rem 0 var(--purple);font-size:.52rem;text-align:right}
.eyebrow{align-self:flex-end;max-width:10ch;font-family:Arial,Helvetica,sans-serif;font-size:clamp(1.55rem,2.4vw,2.7rem);font-weight:950;line-height:.82;letter-spacing:-.065em;text-transform:uppercase;text-shadow:.12rem .12rem 0 rgba(255,250,240,.7)}
.counter-bank{z-index:2;align-self:stretch;margin-top:auto;padding:.72rem .7rem .65rem;border:.22rem solid var(--purple);border-radius:.25rem;background:var(--cream);box-shadow:.35rem .35rem 0 var(--purple);text-align:right}
.counter-label{display:block;margin-bottom:.42rem;color:var(--russet);font-size:.52rem}
.possibilities{margin:0;color:var(--purple)}
.possibilities strong{display:inline-block;padding:.06em .08em .09em;font-family:"Courier New",monospace;font-size:clamp(3.5rem,6vw,6.5rem);font-weight:900;line-height:.68;letter-spacing:-.12em;background:linear-gradient(180deg,#fff 0 48%,#e7dfd0 49% 52%,#fff 53%);border:.1rem solid rgba(63,47,31,.2);box-shadow:inset 0 .08rem .18rem rgba(63,47,31,.15)}
.possibilities span{max-width:none;margin:.65rem 0 0;font-size:.63rem}
.machine-plate{position:relative;z-index:2;display:grid;align-self:stretch;gap:.22rem;margin-top:1.1rem;padding:.6rem;border:1px solid rgba(63,47,31,.6);background:rgba(255,250,240,.76);font-family:"Courier New",monospace;font-size:.46rem;text-align:left;box-shadow:inset 0 0 0 .18rem rgba(76,58,99,.12)}
.gear{display:block;position:absolute;z-index:0;border:.58rem dotted currentColor;border-radius:50%;background:radial-gradient(circle,var(--cream) 0 15%,currentColor 16% 28%,transparent 29% 43%,currentColor 44% 55%,transparent 56%);opacity:.38}
.gear-left-large{width:8.5rem;height:8.5rem;left:-3.4rem;top:18%;color:var(--purple);transform:rotate(12deg)}
.gear-left-small{width:5rem;height:5rem;right:-1.2rem;top:36%;color:var(--russet);transform:rotate(30deg)}

.actions{justify-content:flex-start;padding:clamp(1.2rem,3vw,2.7rem);background-color:#83a061;background-image:radial-gradient(circle at 1rem 1rem,var(--ink) 0 .18rem,transparent .2rem),radial-gradient(circle at calc(100% - 1rem) calc(100% - 1rem),var(--ink) 0 .18rem,transparent .2rem);border-left:.72rem solid var(--cream)}
.actions::before{width:11rem;height:11rem;right:-5rem;top:-4rem;border:.7rem dotted rgba(255,250,240,.46);background:radial-gradient(circle,transparent 0 22%,rgba(255,250,240,.14) 23% 45%,transparent 46%);}
.actions::after{width:6rem;height:6rem;right:auto;left:-2.5rem;bottom:-1.5rem;border:.55rem dotted rgba(255,250,240,.38);background:transparent}
.ready-light{position:relative;z-index:3;align-self:flex-start;margin:.25rem 0 1rem;padding:.42rem .5rem;border:1px solid var(--ink);background:var(--pale-sage);box-shadow:.18rem .18rem 0 var(--ink)}
.actions .button{min-height:4.3rem;border:.18rem solid var(--ink);border-radius:.22rem;background:var(--pale-sage);box-shadow:.32rem .32rem 0 var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:clamp(.88rem,1.35vw,1.14rem);font-weight:950;text-transform:uppercase;letter-spacing:.03em}
.actions .button:active{transform:translate(.22rem,.22rem);box-shadow:.1rem .1rem 0 var(--ink)}
.lever-control{display:grid;grid-template-columns:2.5rem 1fr;align-items:center;gap:.65rem;background:var(--yellow)!important}
.lever-knob{position:relative;width:1.25rem;height:2.6rem;margin-left:.45rem;border:.16rem solid var(--ink);border-radius:999px;background:var(--russet);box-shadow:.12rem .12rem 0 rgba(63,47,31,.35);transform:rotate(-12deg);transform-origin:50% 85%;transition:transform .16s ease}
.lever-knob::after{content:"";position:absolute;width:1.35rem;height:1.35rem;left:50%;top:-.6rem;transform:translateX(-50%);border:.16rem solid var(--ink);border-radius:50%;background:var(--purple)}
.lever-control:active .lever-knob{transform:rotate(20deg)}
.inspect-control{display:grid;grid-template-columns:2rem 1fr;align-items:center;gap:.35rem}
.inspect-control>span:first-child{font-size:1.8rem;line-height:1}
.actions .icon-button{align-self:stretch;width:auto;height:3.2rem;display:flex;justify-content:flex-start;gap:.6rem;padding:0 .8rem;border:.16rem solid var(--ink);border-radius:.2rem;background:var(--aqua);box-shadow:.25rem .25rem 0 var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:1.1rem}
.control-label{display:inline;font-size:.62rem}
.warning-plate{display:block;position:relative;z-index:2;margin-top:auto;padding:.62rem;border:.14rem solid var(--ink);background:repeating-linear-gradient(135deg,var(--yellow) 0 .45rem,var(--cream) .46rem .9rem);color:var(--ink);font-size:.5rem;line-height:1.45;text-align:center;box-shadow:inset 0 0 0 .22rem rgba(255,250,240,.72)}
.perforated-brace{display:block;position:absolute;z-index:0;width:1.1rem;height:72%;right:1.2rem;top:14%;border-radius:.14rem;background-color:var(--purple);background-image:radial-gradient(circle,var(--cream) 0 .18rem,transparent .2rem);background-size:100% 1.45rem;transform:rotate(13deg);opacity:.5}
.gear-right-large{display:block;width:7rem;height:7rem;right:-2.6rem;bottom:15%;color:var(--yellow);opacity:.35}
.stage{position:relative;border-top:.35rem solid var(--purple);border-bottom:.35rem solid var(--purple);background:linear-gradient(90deg,rgba(76,58,99,.08) 0 .12rem,transparent .12rem calc(100% - .12rem),rgba(76,58,99,.08) calc(100% - .12rem)),radial-gradient(circle at 50% 8%,rgba(221,210,240,.65),transparent 28rem),var(--cream)}
.stage::before{content:"OUTPUT CHAMBER";position:absolute;z-index:6;left:.45rem;top:50%;padding:.35rem .25rem;border:1px solid var(--purple);background:var(--cream);color:var(--purple);font-size:.48rem;font-weight:950;letter-spacing:.12em;writing-mode:vertical-rl;transform:translateY(-50%) rotate(180deg)}
.carousel-row{border-left:.16rem solid rgba(63,47,31,.2);border-right:.16rem solid rgba(63,47,31,.2)}
.turn{border-top:.12rem solid rgba(63,47,31,.35);border-bottom:.12rem solid rgba(63,47,31,.35);background:rgba(255,250,240,.88)}
.instruction{padding:.3rem .55rem;border:1px solid rgba(63,47,31,.25);background:rgba(255,250,240,.82);font-family:"Courier New",monospace;font-weight:700}
}

@media(max-width:480px){
.project-mark{font-size:.46rem}
.eyebrow{max-width:12rem;font-size:.95rem;text-transform:uppercase}
.possibilities strong{font-size:2.35rem}
.actions{max-width:11.5rem}
}
@media(max-width:480px){.app-shell{padding:.65rem}
.eyebrow{font-size:.86rem}
.possibilities span{font-size:.55rem;max-width:4.7rem}
.actions{max-width:10.5rem}
.dialog-actions{flex-wrap:wrap}
.status{width:100%;margin-left:0}
.viewer-scroll{height:calc(100% - 11rem)}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}
.carousel-track{transition:none!important}
}

/* Wide-screen composition: information and controls become graphic side panels. */
.slide-previous,.slide-next{filter:blur(7px) saturate(.72);opacity:.42;transform:scale(.94)}
@media(min-width:901px){
body{min-height:100svh;display:grid;place-items:center;padding:clamp(1.25rem,3.5vw,3rem);background:radial-gradient(circle at 15% 10%,rgba(221,210,240,.58),transparent 32rem),var(--cream)}
.app-shell{width:min(74rem,100%);height:min(56rem,calc(100svh - clamp(2.5rem,7vw,6rem)));display:grid;grid-template-columns:minmax(12rem,1fr) minmax(23rem,2fr) minmax(12rem,1fr);grid-template-rows:minmax(0,1fr);padding:0;gap:0;overflow:hidden;border:.18rem solid var(--ink);border-radius:.7rem;box-shadow:0 1.35rem 3rem rgba(63,47,31,.24),0 0 0 .55rem rgba(255,250,240,.9)}
.site-header{display:contents}
.identity,.actions{position:relative;overflow:hidden;min-width:0}
.identity{grid-column:1;grid-row:1;display:flex;flex-direction:column;justify-content:center;align-items:flex-end;padding:clamp(1.2rem,4vw,4rem);background:var(--mauve);color:var(--purple);border-right:.55rem solid var(--cream);text-align:right}
.identity::before{content:"";position:absolute;width:15rem;height:15rem;border:3.8rem solid rgba(255,250,240,.42);border-radius:50%;left:-9rem;top:-7rem}
.identity::after{content:"ALICE";position:absolute;left:clamp(1.2rem,4vw,4rem);bottom:clamp(1rem,3vw,2.5rem);font-size:clamp(2rem,6vw,6rem);font-weight:900;line-height:.8;letter-spacing:-.08em;color:rgba(76,58,99,.1);writing-mode:vertical-rl;transform:rotate(180deg)}
.eyebrow{position:relative;z-index:1;margin:0;max-width:100%;color:var(--purple);font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.25rem,1.62vw,2.4rem);font-weight:700;line-height:.96;letter-spacing:-.045em}
.possibilities{position:relative;z-index:1;margin:clamp(1.5rem,5vh,4rem) 0 0;display:block;color:var(--purple)}
.possibilities strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:clamp(4.5rem,10vw,9rem);line-height:.72;letter-spacing:-.09em}
.possibilities span{display:block;max-width:8rem;margin:.8rem 0 0 auto;font-size:.78rem;font-weight:900;line-height:1.05;text-transform:uppercase;letter-spacing:.12em}
.actions{grid-column:3;grid-row:1;display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:1rem;padding:clamp(1.2rem,4vw,4rem);background:var(--sage);border-left:.55rem solid var(--cream)}
.actions::before,.actions::after{content:"";position:absolute;right:-3rem;border-radius:50%;background:rgba(255,250,240,.16)}
.actions::before{width:13rem;height:13rem;top:-4rem}
.actions::after{width:8rem;height:8rem;bottom:3rem}
.actions>*{position:relative;z-index:1}
.actions .button{width:100%;min-height:4.6rem;border-radius:.35rem;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1rem,1.8vw,1.4rem);text-align:left}
.actions .button,.actions .button-primary{border-color:rgba(63,47,31,.3);background:#dbe6c7;color:var(--ink);box-shadow:0 .22rem 0 rgba(63,47,31,.18)}
.actions .icon-button{align-self:flex-end;width:3.2rem;height:3.2rem;background:var(--cream);font-family:Georgia,"Times New Roman",serif;font-size:1.25rem}
.stage{grid-column:2;grid-row:1;min-width:0;min-height:0;padding:.8rem calc(var(--peek) + .5rem) .45rem;background:radial-gradient(circle at 50% 8%,rgba(221,210,240,.65),transparent 28rem),var(--cream)}
}


.biographical-summary{width:min(86vw,30rem);margin:0 auto 1.15rem;padding:1rem 1.1rem;border:.12rem solid var(--purple);background:var(--mauve);color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:clamp(.95rem,2.2vw,1.12rem);line-height:1.62;box-shadow:.28rem .28rem 0 rgba(76,58,99,.22)}
.biographical-summary[hidden]{display:none}


/* Generator casing v2: neutral Meccano with organs-colour working parts. */
.gear-cluster{display:none;pointer-events:none}
@media(min-width:901px){
body{background:radial-gradient(circle at 15% 10%,rgba(183,190,194,.44),transparent 32rem),#eceeed}
.app-shell{border-color:#3f4649;box-shadow:0 1.35rem 3rem rgba(44,49,52,.24),0 0 0 .55rem #fff,0 0 0 .75rem #687074}
.identity{background-color:#d9dde0;background-image:radial-gradient(circle at 1rem 1rem,#555d61 0 .18rem,transparent .2rem),radial-gradient(circle at calc(100% - 1rem) calc(100% - 1rem),#555d61 0 .18rem,transparent .2rem);color:#303639;border-right-color:#fff}
.identity::before{background-color:#70787c;background-image:radial-gradient(circle,#fff 0 .17rem,transparent .19rem)}
.identity::after{background-color:#899094;background-image:radial-gradient(circle,#fff 0 .17rem,transparent .19rem);opacity:.72}
.gear-cluster{display:block;position:absolute;z-index:0;height:auto}
.gear-cluster-left{width:112%;left:-39%;top:25%;transform:rotate(-8deg);opacity:.92}
.gear-cluster-right{width:92%;right:-38%;bottom:8%;transform:rotate(13deg);opacity:.42}
.project-mark{color:#303639;border-color:#434a4e;background:#fff;box-shadow:.18rem .18rem 0 #555d61}
.eyebrow{color:#303639;text-shadow:.12rem .12rem 0 #fff}
.counter-bank{border-color:#4e565a;background:#fff;box-shadow:.35rem .35rem 0 #555d61}
.counter-label{color:#c0007f}
.possibilities{color:#303639}
.possibilities strong{border-color:#747c80;background:linear-gradient(180deg,#fff 0 48%,#cfd4d6 49% 52%,#fff 53%);box-shadow:inset 0 .08rem .18rem rgba(48,54,57,.2)}
.machine-plate{border-color:#596166;background:rgba(255,255,255,.9);box-shadow:inset 0 0 0 .18rem rgba(89,97,102,.12)}
.actions{padding-top:clamp(1rem,2.5vw,2.2rem);padding-bottom:clamp(1rem,2.5vw,2.2rem);background-color:#c8cdd0;background-image:radial-gradient(circle at 1rem 1rem,#555d61 0 .18rem,transparent .2rem),radial-gradient(circle at calc(100% - 1rem) calc(100% - 1rem),#555d61 0 .18rem,transparent .2rem);border-left-color:#fff}
.actions::before,.actions::after{border-color:rgba(75,83,87,.26);background:transparent}
.perforated-brace{background-color:#70787c;background-image:radial-gradient(circle,#fff 0 .18rem,transparent .2rem);opacity:.48}
.ready-light{margin-bottom:.35rem;border-color:#3f4649;background:#fff;box-shadow:.18rem .18rem 0 #555d61}
.actions .button{border-color:#3f4649;background:#f7f8f6;color:#303639;box-shadow:.32rem .32rem 0 #555d61}
.actions .button:active{box-shadow:.1rem .1rem 0 #555d61}
.lever-control{display:flex!important;flex-direction:column;justify-content:space-between;align-items:center;gap:.35rem;min-height:clamp(12rem,34vh,18rem)!important;padding:.9rem!important;background:#f7f8f6!important;overflow:hidden}
.lever-knob{width:1.65rem!important;height:clamp(8.2rem,24vh,12.5rem)!important;margin:1rem 0 .2rem!important;border:.18rem solid #303639!important;border-radius:.35rem!important;background:#757d81!important;box-shadow:.18rem .18rem 0 rgba(48,54,57,.32)!important;transform:rotate(-12deg)!important;transform-origin:50% 94%!important}
.lever-knob::before{content:"";position:absolute;z-index:-1;width:3.4rem;height:100%;left:50%;top:.15rem;transform:translateX(-50%);border:.18rem solid #555d61;border-radius:999px;background:#b8bec1}
.lever-knob::after{width:3.8rem!important;height:3.8rem!important;top:-1.5rem!important;border:.2rem solid #303639!important;background:#c0007f!important;box-shadow:.2rem .2rem 0 #303639}
.lever-control>span:last-child{align-self:stretch;padding:.46rem .3rem;border:.13rem solid #3f4649;background:#ffd51e;font-size:.76rem;text-align:center;box-shadow:inset 0 0 0 .18rem rgba(255,255,255,.58)}
.lever-control:active .lever-knob{transform:rotate(20deg)!important}
.inspect-control{background:#12b9c2!important}
.actions .icon-button{background:#fff;border-color:#3f4649;box-shadow:.25rem .25rem 0 #555d61}
.warning-plate{border-color:#3f4649;background:repeating-linear-gradient(135deg,#ffd51e 0 .45rem,#fff .46rem .9rem);box-shadow:inset 0 0 0 .22rem rgba(255,255,255,.74)}
.stage{border-color:#555d61;background:linear-gradient(90deg,rgba(85,93,97,.1) 0 .12rem,transparent .12rem calc(100% - .12rem),rgba(85,93,97,.1) calc(100% - .12rem)),#fff}
.stage::before{border-color:#555d61;background:#fff;color:#3f4649}
}

/* Casing refinement: keep isolated circles and gears; remove rivet strips and technical notes. */
@media(min-width:901px){
.identity::before{background:transparent}
.identity::after{background:none;opacity:.12}
}

/* Casing refinement: clearer title, open counter and dark lever housing. */
@media(min-width:901px){
.eyebrow{font-family:Arial,Helvetica,sans-serif}
.counter-bank{padding:0;border:0;background:transparent;box-shadow:none}
.possibilities strong{padding:0;border:0;background:none;box-shadow:none;font-size:clamp(2.8rem,4.5vw,4rem);font-variant-numeric:tabular-nums;letter-spacing:-.08em}
.lever-control{background:#555d61!important}
}

/* Casing refinement: credits at the base and a lighter instruction mark. */
@media(min-width:901px){
.identity .eyebrow{order:1}
.identity .counter-bank{order:2}
.identity .project-mark{order:3;align-self:flex-start;margin:1.25rem 0 0;padding:.42rem .55rem;border:1px solid #aeb4b7;background:#e7eaeb;box-shadow:none;color:#303639;text-align:left}
.inspect-control{grid-template-columns:1.45rem minmax(0,1fr)!important;gap:.3rem!important;padding:.65rem .55rem!important;font-size:clamp(.78rem,1.05vw,.98rem)!important;line-height:1.02!important}
.inspect-control>span:last-child{min-width:0;white-space:normal}
.actions .icon-button{align-self:flex-end;width:auto;height:auto;margin-top:auto;padding:.25rem 0;border:0;background:transparent;box-shadow:none;color:#303639}
.actions .icon-button>span:first-child{font-family:Georgia,"Times New Roman",serif;font-size:2.7rem;font-weight:700;line-height:.75}
.actions .icon-button .control-label{font-family:Arial,Helvetica,sans-serif;font-size:.58rem;line-height:1.05;text-align:left}
}

/* The lever responds to a deliberate pointer pull as well as click and keyboard activation. */
.lever-control{touch-action:none;user-select:none}
.lever-control.is-pulling .lever-knob{transform:rotate(var(--lever-angle,-12deg))!important;transition:none}
.lever-control.is-pulled .lever-knob{transform:rotate(24deg)!important;transition:transform .12s ease-out}

/* Keep interface controls clear of the autobiographical evidence. */
.lock{
  right:calc(-1 * var(--peek) + .35rem);
  top:.3rem;
  width:1.7rem;
  height:1.7rem;
  justify-content:center;
  padding:0;
}
.lock-label{display:none}
