@font-face{font-family:Manrope;src:url('/assets/manrope.woff2')}@font-face{font-family:Plex;src:url('/assets/plex.woff2')}*{box-sizing:border-box}body{margin:0;background:#131518;color:#F4F6F8;font-family:Manrope,Arial,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,#stage:focus-visible{outline:2px solid #C78B84;outline-offset:4px}header{height:94px;margin:0 5.8%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #34373C}.wordmark{font-size:14px;letter-spacing:2px;text-decoration:none;color:inherit;display:flex;gap:13px;align-items:center;font-weight:800}.brandmark{background:#34373C;color:#f2efe7;width:27px;height:27px;text-align:center;line-height:27px;font-style:italic}.edition{margin-left:24px;font-size:12px;letter-spacing:1px;color:#77786f;font-weight:500}.sound{border:0;background:none;font-size:12px}main{max-width:1360px;margin:auto;padding:45px 5.8% 0}.intro{display:flex;align-items:end;justify-content:space-between;margin-bottom:39px}.eyebrow{font:9px Plex,monospace;letter-spacing:1.7px;font-weight:500}h1{font-size:clamp(46px,6.2vw,86px);font-weight:500;line-height:.99;letter-spacing:-5px;margin:22px 0 0}h1 em{font-family:Georgia,serif;font-weight:400}.description{font-size:12px;line-height:1.9;color:#72736c;margin-bottom:5px}.modes{display:flex;gap:30px;border-bottom:1px solid #34373C;margin-bottom:22px}.modes button{border:0;background:none;padding:0 0 15px;color:#7d7e75;font-size:12px;position:relative}.modes button.active{color:#F4F6F8}.modes button.active:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:#B66A62}.modes span{font:9px Plex,monospace;margin-left:10px;color:#999a90}.game{position:relative;border:1px solid #34373C;border-radius:3px;background:#191C20;overflow:hidden}.game-top{display:flex;justify-content:space-between;padding:25px 30px 0;position:relative;z-index:2;pointer-events:none}h2{font-size:17px;font-weight:500;margin:10px 0}.readouts{display:flex;gap:28px}.readouts div{min-width:70px}.readouts span{display:block;font:8px Plex,monospace;letter-spacing:1px;color:#7c7d74}.readouts strong{font:26px Plex,monospace;display:block;margin-top:9px;font-weight:400}#stage{height:350px;position:relative;touch-action:none;cursor:crosshair}#stage canvas{position:absolute;width:100%;height:100%;inset:0;display:block}#stage canvas[hidden]{display:none}.stage-note{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:8px;white-space:nowrap;font:9px Plex,monospace;color:#797a71;pointer-events:none}.stage-note i{width:5px;height:5px;border-radius:50%;background:#B66A62}.axis-label{position:absolute;bottom:30px;font:7px Plex,monospace;letter-spacing:1px;color:#8c8d82;pointer-events:none}.axis-label.left{left:30px}.axis-label.right{right:30px}.interaction{border-top:1px solid #34373C;padding:23px 30px;display:flex;justify-content:space-between;gap:20px;background:#131518}.interaction .eyebrow{color:#7c7c72;font-size:12px;letter-spacing:1px}#weights,#positions{display:flex;gap:6px;margin-top:12px;flex-wrap:wrap}#weights button{border:1px solid #454950;background:transparent;min-width:54px;height:43px;border-radius:3px;font:13px Plex,monospace;position:relative}#weights button.selected{background:#B66A62;color:#fff;border-color:#B66A62;box-shadow:0 3px 8px #78251215}#weights button.placed:after{content:'•';position:absolute;right:4px;top:0}#positions button{width:31px;height:43px;border:1px solid #454950;border-radius:3px;background:transparent;font:10px Plex,monospace}#positions button:hover{background:#25272C;border-color:#B66A62}.game-bottom{display:flex;justify-content:space-between;align-items:center;padding:14px 30px;border-top:1px solid #34373C;background:#131518}.game-bottom p{font-size:12px;color:#818276}.game-bottom button{background:none;border:0;font-size:12px;margin-left:18px;padding:5px 0}.game-bottom #next{color:#CE8B83;font-weight:700}.win{position:absolute;top:85px;left:50%;transform:translateX(-50%);background:#25272CF2;padding:13px 23px;display:flex;align-items:center;gap:15px;border:1px solid #454950;border-radius:5px;z-index:4;pointer-events:none;box-shadow:0 6px 20px #33333309}.win[hidden]{display:none}.win>span{color:#647551}.win strong{font-size:13px}.win p{font-size:12px;margin:4px 0;color:#7c7d73}.below{display:flex;gap:80px;justify-content:space-between;margin:26px 0 54px}.below p{font-size:12px;line-height:1.8;color:#808177;margin:0}.below p span{display:block;font:8px Plex,monospace;letter-spacing:1px;color:#C0C5CB;margin-bottom:8px}.signature{font:italic 21px Georgia,serif;color:#929489;line-height:1.2}footer{margin:0 5.8%;padding:22px 0;display:flex;justify-content:space-between;border-top:1px solid #34373C;font:8px Plex,monospace;letter-spacing:1px;color:#85867a}footer a{color:inherit;text-decoration:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(min-width:1500px){#stage{height:430px}}@media(max-width:650px){header{height:72px}.edition{display:none}main{padding-top:30px}.intro{margin-bottom:28px}h1{letter-spacing:-3px}.description{font-size:12px;max-width:145px}.eyebrow{font-size:12px;letter-spacing:1px}.modes{gap:23px}.modes button{font-size:12px}.game-top{padding:20px 16px 0}h2{font-size:15px}.readouts{gap:10px}.readouts div{min-width:48px}.readouts span{font-size:6px}.readouts strong{font-size:22px}#stage{height:280px}.axis-label{display:none}.interaction{padding:18px 16px;flex-direction:column;gap:18px}#positions{gap:4px;justify-content:space-between}#positions button{width:calc((100% - 40px)/11);max-width:38px;height:36px}.game-bottom{padding:12px 16px;gap:7px;flex-wrap:wrap}.game-bottom button{margin:0 16px 0 0}.game-bottom p{font-size:12px}.below{gap:16px;margin-bottom:32px}.below p{font-size:12px}.signature{display:none}.win{top:76px;width:230px;padding:10px 16px}footer span{font-size:6px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}

/* Keep tray drags under pointer control on touch screens. */
#weights button{touch-action:none}

/* Adel instrument family: shared scale, graphite surfaces, matte red controls. */
body.suite-app{background:#0B0C0E;color:#F4F6F8;line-height:1.55;color-scheme:dark}
.suite-app main,.suite-app>.shell{max-width:1240px;margin-inline:auto;padding-inline:clamp(16px,3vw,36px)}
.suite-app>.shell main{padding-inline:0}
.suite-app .intro{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:end;padding:32px 0 28px;margin:0}
.suite-app .intro h1{font-family:Manrope,Arial,sans-serif;font-size:clamp(30px,3.7vw,46px);font-weight:600;line-height:1.13;letter-spacing:-.045em;margin:12px 0 0}
.suite-app .intro h1 em{font-family:inherit;font-style:normal;font-weight:inherit;color:#A7AEB6}
.suite-app .eyebrow{font:11px/1.6 Plex,monospace;letter-spacing:.09em;color:#C78B84}
.suite-app .intro-copy,.suite-app .intro-side{padding:0;margin:0}
.suite-app .intro-copy p,.suite-app .intro-side>p,.suite-app .description{color:#A7AEB6;font-size:14px;line-height:1.7;margin:0}
.suite-app .intro-copy>span,.suite-app .micro{display:block;font:10px/1.6 Plex,monospace;color:#A7AEB6;letter-spacing:.04em;margin-top:12px}
.suite-app .intro-actions{margin:16px 0 0;gap:16px}
.suite-app .primary,.suite-app .outline,.suite-app .share-button,.suite-app .preset,.suite-app input:not([type=range]):not([type=color]),.suite-app select,.suite-app textarea{border-radius:6px}
.suite-app .primary{background:#B66A62;border-color:#B66A62;color:#0B0C0E;font-weight:700;min-height:42px;padding:10px 15px}
.suite-app .primary:hover{background:#CE8B83}
.suite-app .bench,.suite-app .studio,.suite-app .game{border:1px solid #ffffff17;background:#191C20;border-radius:10px;box-shadow:0 18px 60px #0002;margin-inline:0}
.suite-app button:focus-visible,.suite-app a:focus-visible,.suite-app input:focus-visible,.suite-app select:focus-visible,.suite-app textarea:focus-visible{outline:2px solid #D5A09A;outline-offset:3px}
.suite-app footer{max-width:1168px;margin:36px auto 0;padding:22px 0;border-color:#ffffff17;color:#A7AEB6;font-size:12px}
.suite-app .how{padding:48px 0;gap:40px}
.suite-app .how h2{font-size:28px;line-height:1.25}
.suite-app .how h3{font-size:17px}
.suite-app .closing{padding:42px 0 22px}
.suite-app .closing p{font-size:28px;margin:12px 0}
.suite-app .closing em{font-family:inherit;font-style:normal;color:#A7AEB6}
.suite-app .closing>span,.suite-app .closing>div{color:#A7AEB6}
@media(max-width:760px){.suite-app .intro{grid-template-columns:1fr;gap:18px;padding:26px 0}.suite-app .intro h1{font-size:34px}.suite-app .intro-copy{display:block}.suite-app .intro-copy>span{max-width:none;font-size:10px}.suite-app .description{max-width:none}.suite-app footer{margin-inline:18px;flex-wrap:wrap}.suite-app .how{grid-template-columns:1fr;gap:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.suite-app *{transition:none!important;animation:none!important}}
.app-equilibrium main{padding-top:0}.app-equilibrium .modes{margin:0 0 18px;gap:24px;overflow-x:auto}.app-equilibrium .modes button{padding:12px 0;white-space:nowrap;font-size:13px;min-height:44px}.app-equilibrium .modes span{font-size:10px}.app-equilibrium .modes button,.app-equilibrium .description,.app-equilibrium .readouts span,.app-equilibrium .stage-note,.app-equilibrium .axis-label,.app-equilibrium .game-bottom p,.app-equilibrium .below p,.app-equilibrium .win p,.app-equilibrium .interaction .eyebrow{color:#A7AEB6}.app-equilibrium .modes button.active{color:#F4F6F8}.app-equilibrium .game-top{gap:18px;align-items:center;padding:20px 24px 0}.app-equilibrium .sound{pointer-events:auto;margin-left:auto;border:1px solid #ffffff25;padding:10px 12px;min-height:40px;border-radius:6px;font-size:12px;white-space:nowrap;background:#131518}.app-equilibrium .readouts span{font-size:9px}.app-equilibrium .readouts strong{font-size:23px}.app-equilibrium .game-top h2{font-size:18px}.app-equilibrium #stage{height:310px;background:radial-gradient(ellipse at 50% 80%,#30323800,#13151866)}.app-equilibrium #weights button,.app-equilibrium #positions button{border-radius:6px;min-height:44px}.app-equilibrium #positions button{font-size:11px;width:34px}.app-equilibrium .interaction{padding:20px 24px;flex-wrap:wrap}.app-equilibrium .game-bottom{padding:12px 24px;gap:12px;flex-wrap:wrap}.app-equilibrium .game-bottom button{min-height:40px;padding:8px 0}.app-equilibrium .stage-note{font-size:11px;max-width:calc(100% - 24px);white-space:normal;text-align:center}.app-equilibrium .axis-label{bottom:64px;font-size:9px}.app-equilibrium .below{margin:24px 0 32px;gap:24px;flex-wrap:wrap}.app-equilibrium .below p span{font-size:10px}.app-equilibrium .signature{font:12px/1.6 Plex,monospace;color:#A7AEB6}.app-equilibrium .win{border-color:#ffffff26}.app-equilibrium .win>span{color:#C78B84}
@media(max-width:650px){.app-equilibrium .game-top{padding:16px 14px 0;flex-wrap:wrap}.app-equilibrium .readouts{width:100%;gap:30px}.app-equilibrium .readouts div{display:flex;align-items:center;gap:12px}.app-equilibrium .readouts strong{margin:0}.app-equilibrium #stage{height:270px}.app-equilibrium .interaction{padding:18px 14px}.app-equilibrium #positions{justify-content:start;gap:5px}.app-equilibrium #positions button{width:calc((100% - 25px)/6);max-width:none;min-width:36px}.app-equilibrium .win{top:115px}}

/* Embedded precision bench */
.app-equilibrium main{padding:0 18px;max-width:1240px}.app-equilibrium .intro{padding:20px 0;gap:24px}.app-equilibrium .intro h1{font-size:28px;margin:6px 0 0;letter-spacing:-.04em}.app-equilibrium .eyebrow,.app-equilibrium .readouts span,.app-equilibrium .axis-label,.app-equilibrium .below p span{font-size:12px;letter-spacing:.035em}.app-equilibrium .description,.app-equilibrium .modes button,.app-equilibrium .game-bottom p,.app-equilibrium .below p{font-size:14px}.app-equilibrium #stage{height:380px}.app-equilibrium .stage-note{bottom:14px;font-size:12px;z-index:3;background:#131518e0;padding:8px 12px;border:1px solid #ffffff14;border-radius:30px}.app-equilibrium .axis-label{bottom:56px;font-size:12px}.app-equilibrium .modes span{font-size:12px}.app-equilibrium .sound{font-size:13px}.app-equilibrium #positions button{font-size:13px}.app-equilibrium .below{margin:18px 0;gap:18px}.app-equilibrium .signature{font:12px/1.8 Plex,monospace}.datum{position:absolute;left:24px;top:12px;font:12px Plex,monospace;color:#a7aeb6;pointer-events:none}.datum span{display:block;color:#7d858e;margin-top:7px}#schematic-labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}.distance-label,.mass-label{position:absolute;transform:translate(-50%,-50%);font:12px Plex,monospace;white-space:nowrap}.distance-label{color:#c9ced6;text-shadow:0 2px 4px #000}.mass-label{background:#101215d9;border:1px solid #ffffff28;border-radius:4px;padding:3px 5px;color:#e2e7ee}.mass-label.movable{color:#e6b0a8;border-color:#b66a6260}.app-equilibrium .game-top{pointer-events:auto}.app-equilibrium .game-top .eyebrow{font-size:12px}.app-equilibrium .win strong{font-size:15px}.app-equilibrium .win p{font-size:13px}
@media(max-width:650px){.app-equilibrium main{padding:0 10px}.app-equilibrium .intro{gap:12px;padding:16px 0}.app-equilibrium .intro h1{font-size:25px}.app-equilibrium .intro .eyebrow{font-size:11px}.app-equilibrium #stage{height:330px}.app-equilibrium .datum{top:14px;left:14px;font-size:11px}.app-equilibrium .datum span{display:none}.app-equilibrium .readouts{gap:20px}.app-equilibrium .readouts span{font-size:11px}.app-equilibrium .game-top .eyebrow{font-size:11px}.app-equilibrium .mass-label{padding:2px 3px;font-size:11px}.app-equilibrium .distance-label{font-size:12px}.app-equilibrium .below{display:grid;gap:15px}.app-equilibrium .signature{display:block}.app-equilibrium .win{top:115px}.app-equilibrium .description{font-size:14px}}
