/*! 中文生物 / BIO2077 | project=b1-s004 | release=20260928-v38-amino | 学生作品网站适配
来源 https://bio2077.cn/ | 第三方库许可及原作者署名保留。 */
:root{--ink:#173e43;--teal:#187f7a;--mint:#d8eee6;--paper:#f8f7f0;--line:#d5e2dc;--muted:#577579;--coral:#d96845;--blue:#5287b1;--gold:#e9aa37}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:"Microsoft YaHei","PingFang SC",sans-serif;color:var(--ink);background:var(--paper)}body{height:100dvh;display:flex;flex-direction:column}button,select,input{font:inherit}button,a,select,input{touch-action:manipulation}button{min-height:46px;padding:9px 14px;border:1px solid var(--line);border-radius:12px;color:var(--ink);background:#fff;cursor:pointer;font-size:18px;font-weight:700}button:hover:not(:disabled){border-color:var(--teal);background:#eaf5ed}button:disabled{opacity:.42;cursor:not-allowed}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,[role=button]:focus-visible{outline:3px solid #e5a325;outline-offset:3px}.primary{background:var(--teal);color:#fff;border-color:var(--teal)}.primary:hover:not(:disabled){background:#106460;color:#fff}.quiet{background:transparent}.muted{color:var(--muted);font-size:16px;line-height:1.6}p{line-height:1.55;margin:10px 0}h1,h2{margin:0}h1{font-size:32px;letter-spacing:1px;line-height:1.15}h1 small{font-size:18px;font-weight:500;background:var(--mint);border-radius:7px;padding:2px 8px;vertical-align:middle}h2{font-size:23px;line-height:1.3}h2 small{font-size:16px;font-weight:500;color:var(--muted)}.eyebrow,.kicker{font-size:13px;letter-spacing:1.5px;color:var(--muted);font-weight:700}.eyebrow{margin-bottom:5px}.kicker{display:block;margin-bottom:8px}
header{flex:none;display:flex;align-items:center;gap:14px;height:83px;padding:12px 24px;background:#fffef8;border-bottom:1px solid var(--line)}.brand-mark{background:var(--ink);color:#fff;height:49px;width:58px;display:flex;align-items:center;justify-content:center;font-size:20px;border-radius:16px;transform:rotate(-5deg);font-weight:700}.brand-mark span{color:#e9ba5a}.legacy{margin-left:auto;color:var(--muted);font-size:16px;text-decoration:none}nav{flex:none;display:flex;justify-content:center;gap:12px;padding:8px 16px;background:#fffef8}nav button{font-size:20px;min-width:230px;background:transparent;border-color:transparent}nav button span{font-size:14px;margin-right:10px;font-weight:400}nav button.active{background:var(--ink);color:#fff}.guide{min-height:55px;flex:none;background:var(--mint);display:flex;gap:12px;align-items:center;padding:7px 24px}.guide strong{font-size:20px;line-height:1.4}.guide-dot{background:var(--teal);width:10px;height:10px;border-radius:50%;flex:none;box-shadow:0 0 0 5px #c2e1d5}.guide button{margin-left:auto;flex:none;min-height:38px;font-size:16px;background:#fff9db;border-color:#d8b768;padding:6px 12px}
main{flex:1;min-height:0;padding:12px 16px}section[hidden],[hidden]{display:none!important}.workspace{height:100%;display:grid;grid-template-columns:226px minmax(0,1fr) 262px;gap:12px}.card{border:1px solid var(--line);border-radius:20px;background:#fffef9;overflow:auto;scrollbar-width:thin}.selector,.info-card{padding:18px}.info-card p{font-size:18px}.selector h2{font-size:21px;margin-bottom:15px}.amino-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.amino-grid button{font-size:17px;padding:9px 4px;min-height:56px;font-weight:700;position:relative}.amino-grid button small{display:block;font-size:12px;font-weight:500;color:var(--muted);margin-top:2px}.amino-grid button.active{background:var(--mint);border-color:var(--teal);box-shadow:inset 0 0 0 1px var(--teal)}.amino-grid button.built:after{content:'✓';position:absolute;right:4px;top:1px;font-size:12px;color:var(--teal)}.collection{border-top:1px solid var(--line);padding-top:12px;font-size:17px;font-weight:700}.stage-card{display:flex;flex-direction:column;overflow:hidden;background:radial-gradient(ellipse at 50% 42%,#fffefb,#f0f4ea)}.stage-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;flex:none;padding:17px 20px 5px}.stage-heading button{font-size:16px;min-height:38px;padding:6px 9px}.stage-heading .kicker{margin-bottom:5px}.stage-card svg{width:100%;flex:1;min-height:150px;display:block}.component-tray{display:flex;gap:7px;padding:8px 15px;justify-content:center;flex-wrap:wrap}.component-tray button{font-size:18px;min-width:72px;min-height:48px;cursor:grab;padding:8px}.component-tray button.selected{background:#fff0c2;border:2px solid var(--gold);box-shadow:0 0 0 2px #f7e1b0}.component-tray button small{display:block;font-size:12px;font-weight:500;color:var(--muted)}.stage-note{font-size:13px;color:var(--muted);text-align:center;padding:8px 12px 13px;flex:none}.formula{font-size:24px;font-weight:700;padding:18px 9px;border:1px solid #e4be80;border-radius:14px;background:#fff4de;text-align:center;margin:16px 0;overflow-wrap:anywhere}.fact{border-left:3px solid var(--teal);background:#edf4ec;padding:10px 12px;margin:12px 0;border-radius:0 12px 12px 0}.fact b{font-size:17px}.fact p{margin:5px 0 0;font-size:16px;line-height:1.5}.result{border-radius:12px;background:#e8f0f4;padding:12px!important;font-size:16px!important;line-height:1.6}.result.success{background:#dceee0;color:#226443}.result.error{background:#fff0e5;color:#9d421e}.info-card>.primary{width:100%;font-size:17px}.target-slot{cursor:pointer;outline:none}.target-slot:hover rect,.target-slot:focus-visible rect{stroke:var(--gold);stroke-width:4}.target-slot text{pointer-events:none}
label{display:block;font-size:16px;color:var(--muted);margin:10px 0 7px}select{width:100%;min-height:46px;border:1px solid #b4cdc6;border-radius:10px;color:var(--ink);padding:7px;background:#fff;font-size:18px}.selector>.primary{width:100%;font-size:17px;margin-top:10px}.chain-caption{font-size:14px;color:var(--muted);margin:18px 0 10px}.chain-list{list-style:none;margin:0 0 10px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:5px;min-height:56px}.chain-list li{padding:6px 8px;background:#e5eee9;border-radius:8px;font-size:15px}.chain-list li.pending{border:1px dashed var(--coral);background:#fff1e1}.stats{display:flex;justify-content:space-between;gap:8px;border-top:1px solid var(--line);padding-top:12px;margin-top:14px;font-size:13px}.stats b{display:block;font-size:30px;color:var(--teal)}.pill{font-size:13px;padding:6px 10px;border-radius:8px;background:#e4ece3;white-space:nowrap}.timeline{flex:none;padding:5px 18px 12px;border-top:1px solid var(--line);background:#fffefa}.timeline label{display:flex;justify-content:space-between;margin:6px 0;font-size:14px}input[type=range]{width:100%;height:22px;accent-color:var(--teal);cursor:pointer}.transport{display:flex;align-items:center;gap:8px;margin-top:7px}.transport button{font-size:17px;padding:8px 12px}.explain-steps{list-style:none;margin:14px 0;padding:0;display:grid;gap:7px}.explain-steps li{border:1px solid var(--line);border-radius:12px;padding:9px 12px;font-size:15px;background:#f8faf4}.explain-steps b{display:block;margin-bottom:4px;font-size:17px}.explain-steps span{line-height:1.5}.explain-steps li.active{border-color:var(--gold);background:#fff0cb;box-shadow:inset 3px 0 0 var(--gold)}.reaction-stage .stage-note{font-size:12px}
.level-choices{display:grid;gap:8px}.level-choices button{display:flex;align-items:center;gap:12px;text-align:left;background:#f8faf4;padding:12px;font-size:18px}.level-choices button>b{font-size:26px;color:var(--teal);width:30px}.level-choices small{display:block;font-size:13px;font-weight:400;color:var(--muted);margin-top:5px}.level-choices button.active{background:var(--mint);border-color:var(--teal)}.check{display:flex;align-items:center;gap:7px;font-size:15px;margin-top:18px}.check input{width:18px;height:18px;accent-color:var(--teal)}.fold-stage{display:flex;flex-direction:column;overflow:hidden;background:radial-gradient(ellipse at center,#eff8ee,#e4efe9)}#foldCanvas{flex:1;min-height:180px;position:relative;overflow:hidden;touch-action:none}#foldCanvas canvas{display:block;width:100%;height:100%;cursor:grab}#foldCanvas canvas:active{cursor:grabbing}#foldLabels{position:absolute;inset:0;pointer-events:none}.model-label{position:absolute;font-size:13px;font-weight:700;background:#fffdf1ed;color:var(--ink);border:1px solid #cfddd5;border-radius:7px;padding:3px 7px;transform:translate(-50%,-50%);white-space:nowrap}.view-legend{position:absolute;bottom:6px;left:10px;right:10px;display:flex;justify-content:center;gap:12px;font-size:12px;color:#426367;pointer-events:none;background:#eff5e9cc;border-radius:8px;padding:5px}.view-legend i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:4px}.teal{background:#20a49b}.coral{background:#e58058}.blue{background:#718dbc}.speed{display:flex!important;align-items:center;gap:6px;margin:0!important;white-space:nowrap}.speed select{font-size:15px;min-height:40px;width:72px}.fold-workspace .info-card p{font-size:17px}.fold-workspace .info-card .muted{font-size:14px}#foldError{position:absolute;inset:30px;padding:25px;background:#fff6df;border-radius:15px;z-index:2}footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:10px 22px;border-top:1px solid var(--line);background:#fffef9;flex:none;min-height:49px;font-size:16px}.offline{white-space:nowrap;font-size:12px;color:var(--muted)}dialog{border:1px solid var(--line);border-radius:22px;padding:30px;max-width:750px;width:calc(100% - 30px);color:var(--ink);box-shadow:0 30px 100px #092d3550}dialog::backdrop{background:#0d2b32a8}dialog p{font-size:18px}.dialog-close{float:right;margin:0 0 10px 15px}#modelCanvas{height:380px}.jump-highlight{outline:3px solid var(--gold)!important;outline-offset:3px}
@media(min-width:1500px){.workspace{grid-template-columns:265px minmax(0,1fr) 300px}main{padding:16px 24px}.amino-grid button{font-size:19px;min-height:64px}.selector,.info-card{padding:24px}.stage-heading h2{font-size:27px}.info-card p{font-size:20px}.explain-steps li{padding:14px}}
@media(max-width:1100px){.workspace{grid-template-columns:190px minmax(0,1fr) 220px}.selector,.info-card{padding:12px}.stage-heading{padding:14px 12px 5px}h2{font-size:21px}.transport{flex-wrap:wrap}.transport button{font-size:15px}.guide strong{font-size:18px}.formula{font-size:20px}.component-tray{gap:5px;padding:6px}.component-tray button{font-size:16px;min-width:58px}nav button{min-width:0;font-size:18px}}
@media(max-width:780px){body{height:auto;min-height:100dvh}header{height:auto;padding:14px;flex-wrap:wrap;gap:10px}h1{font-size:25px}.eyebrow{font-size:10px}.brand-mark{width:45px;height:44px;font-size:16px}.legacy{font-size:12px;margin-left:0}header>button{margin-left:auto;font-size:14px;min-height:36px}nav{gap:3px;padding:6px}nav button{font-size:14px;padding:8px 5px;flex:1;border-radius:8px}nav button span{display:block;margin:0;font-size:10px}.guide{position:sticky;top:0;z-index:4;padding:9px 12px;gap:9px}.guide strong{font-size:15px}.guide button{font-size:12px;padding:5px;min-height:40px}.guide-dot{display:none}main{padding:10px}.workspace{display:flex;flex-direction:column;height:auto}.selector{order:1}.stage-card,.fold-stage{order:2;min-height:470px}.info-card{order:3}.amino-grid{grid-template-columns:repeat(4,1fr)}.amino-grid button{font-size:15px;min-height:51px}.selector h2{font-size:20px;margin-bottom:10px}.selector .muted{margin:7px 0;font-size:14px}.collection{font-size:14px;padding-top:8px}.stage-card svg{flex:none;height:auto;min-height:220px;aspect-ratio:760/390}.reaction-stage svg{aspect-ratio:880/390}.stage-heading h2{font-size:21px}.component-tray button{min-width:55px;flex:1}.stage-note{font-size:11px}.transport button{font-size:15px}.timeline{padding:6px 12px 12px}.info-card{padding:18px}.info-card p{font-size:17px}.info-card>.primary{max-width:320px}.level-choices{grid-template-columns:repeat(2,1fr)}.level-choices button{font-size:16px;padding:8px;gap:7px}.level-choices small{font-size:11px}.level-choices button>b{font-size:23px;width:25px}.fold-stage{min-height:490px}#foldCanvas{height:315px;flex:none}.view-legend{font-size:10px;gap:8px}.chain-list{grid-template-columns:repeat(4,1fr)}.stats{justify-content:flex-start;gap:40px}.stats b{font-size:25px}footer{position:static;font-size:14px;padding:12px}.offline{display:none}.card{scroll-margin-top:90px}.target-slot,.component-tray,select,button{scroll-margin-top:100px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
@media(min-width:1200px){#buildSvg{height:clamp(300px,calc(100dvh - 420px),470px);min-height:300px;flex:none;aspect-ratio:auto}.workspace{min-height:520px}}
@media(max-width:780px){.component-tray{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.component-tray button{white-space:nowrap;min-width:0}}
.level-choices button.transitioning{background:#fff0cb;border-color:var(--gold)}
.primary-key{position:absolute;top:12px;left:50%;transform:translateX(-50%);z-index:1;max-width:calc(100% - 24px);padding:8px 12px;border:1px solid #d7ac5e;border-radius:10px;background:#fff4d9ed;color:#68491b;font-size:14px;font-weight:700;text-align:center;pointer-events:none}
.view-legend .gold{background:#e5ac45}
.view-legend .lilac{background:#b08bbf}
.assembly-scene{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;justify-content:center;gap:12px;padding:16px 18px 22px;background:radial-gradient(ellipse at center,#eff8ee,#e4efe9)}
.assembly-top{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:15px}.assembly-top span{font-size:13px;color:var(--muted);white-space:nowrap}
.assembly-chain{display:flex;align-items:center;min-height:88px;gap:2px;overflow-x:auto;padding:4px 3px 10px;scrollbar-width:thin;touch-action:auto}
.assembly-item{display:flex;flex:none;flex-direction:column;align-items:center;gap:5px;width:54px}.assembly-item b{display:grid;place-items:center;width:45px;height:45px;border-radius:50%;border:2px solid #348f8c;background:#d1f2e9;color:#145d5d;font-size:15px;box-shadow:0 4px 10px #1a67662b}.assembly-item:nth-of-type(4n+1) b{background:#fff0bf;border-color:#d5a743;color:#795613}.assembly-item small{font-size:10px;white-space:nowrap;color:var(--ink)}.assembly-item.just-added b{outline:3px solid #f5c866;outline-offset:3px}
.assembly-bond{flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;width:27px;color:#d16b38}.assembly-bond b{font-size:24px;line-height:1}.assembly-bond small{font-size:9px;white-space:nowrap}
.assembly-next{font-size:14px;font-weight:700;color:#285d58}.assembly-equation{border-radius:9px;padding:8px 10px;background:#fff8e3;color:#68491b;font-size:12px;line-height:1.45}
@media(max-width:780px){.assembly-scene{gap:8px;padding:12px 10px}.assembly-top{font-size:12px;flex-wrap:wrap}.assembly-top span{font-size:11px}.assembly-next{font-size:12px}.assembly-equation{font-size:10px}.assembly-chain{min-height:86px}}
.fold-workspace .level-choices{gap:5px}.fold-workspace .level-choices button{min-height:55px;padding:6px 8px;gap:8px;font-size:16px}.fold-workspace .level-choices button>b{font-size:22px;width:25px}.fold-workspace .level-choices small{font-size:11px;margin-top:2px}
.assembly-scene{justify-content:space-between;background:transparent;pointer-events:none}.assembly-top{position:relative;z-index:2;padding:5px 8px;border-radius:9px;background:#f1f8efe8}.assembly-bottom{display:grid;gap:5px;position:relative;z-index:2}.assembly-next{padding:3px 6px;background:#eff8eecc;border-radius:6px}.assembly-equation{background:#fff8e3e8}
#foldLabels{z-index:2}
nav button.active:hover:not(:disabled){background:var(--ink);color:#fff}
.model-label.assembly-label{font-size:12px;padding:2px 5px;letter-spacing:-.3px}
/* 中文生物 2.0.1: intrinsic content sizing prevents clipping on short displays. */
:root{--ink:#102d24;--teal:#265a3f;--mint:#e3ebd9;--paper:#f4f0e4;--line:#cbd2bd;--muted:#52675b;--gold:#bc922e}
html{height:auto}body{height:auto;min-height:100dvh}button,select{border-radius:8px}button{line-height:1.4}
header{height:auto;min-height:84px;flex-wrap:wrap;background:#12372a;color:#f4f0e4;padding:14px 22px}.brand-mark{background:#b7f34a;color:#12372a;border-radius:9px;transform:none}.brand-mark span{color:#12372a}header .eyebrow{color:#d5dfc9}header h1 small{background:#345842;color:#ebf5df}
.header-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-left:auto}.header-actions a,.header-actions button{font:600 15px/1.4 'Microsoft YaHei',sans-serif;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 10px;color:#f4f0e4;border:1px solid #58745f;border-radius:7px;background:transparent;text-decoration:none;margin:0}.header-actions button:hover{background:#345842;color:#fff}.header-actions #fullscreenBtn{background:#b7f34a;color:#12372a;border-color:#b7f34a}
nav{background:var(--paper);border-bottom:1px solid var(--line);justify-content:flex-start;padding:10px 22px}nav button.active{background:#12372a}.guide{background:#e3ebd9}.guide button{background:#f4f0e4;border-color:#b6c7a6}
main{flex:1 0 auto;min-height:0;padding:16px 20px}.workspace{height:auto;min-height:540px;grid-template-columns:220px minmax(0,1fr) 260px;align-items:stretch;gap:14px}.workspace>*{min-width:0}.card{border-radius:10px;overflow:visible;background:#fffdf7}.stage-card,.fold-stage{overflow:hidden;background:linear-gradient(150deg,#fffdf7,#eef1e4)}.stage-heading{flex-wrap:wrap;padding:18px 18px 8px}.stage-heading>div{min-width:0}.stage-heading h2{overflow-wrap:anywhere}.stage-card svg{flex:none;min-height:0;width:100%;height:auto;aspect-ratio:auto}#buildSvg{max-height:470px;margin:auto;flex:1 0 auto;min-height:310px;aspect-ratio:600/460}
.component-tray{flex:none;padding:12px 14px 4px;gap:8px}.component-tray button{min-width:64px;flex:1 0 64px;min-height:54px;background:#fffdf7}.component-tray button.selected{background:#e3f7ba;border-color:#527c2f;box-shadow:0 0 0 2px #d1e4b1}.action-feedback{flex:none;min-height:42px;padding:8px 14px;margin:0;background:#e3ebd9;font-size:15px;line-height:1.5;color:#234932}.action-feedback.error{background:#fff0e5;color:#9d421e}
.diagram-scroll{width:100%;overflow:auto;flex:1 0 auto;display:flex;align-items:center;scrollbar-width:thin;min-height:350px}.diagram-scroll #reactionSvg{min-width:680px;width:100%;height:auto;flex:none}.scroll-hint{display:none;font-size:14px;color:var(--muted);padding:6px 14px;margin:0;background:#e3ebd9}.transport{flex-wrap:wrap}.transport button{min-height:44px}.timeline{background:#fffdf7}.stage-note{font-size:13px;line-height:1.6}.formula{background:#f1f4df;border-color:#bcc998}.fact{background:#edf1e5}.result{background:#e7eddf}.pill{white-space:normal}.info-card p,.selector p{overflow-wrap:anywhere}
#foldCanvas{flex:1 0 370px;min-height:370px}.assembly-scene{justify-content:space-between;padding:10px;gap:8px}.assembly-top{flex-wrap:wrap;align-items:start}.assembly-top span{white-space:normal}.assembly-bottom{gap:3px}.view-legend{flex-wrap:wrap}.primary-key{font-size:13px;max-width:calc(100% - 20px);width:max-content}.model-label{font-size:13px}.model-label.assembly-label{font-size:12px}
footer{background:#12372a;color:#f4f0e4;align-items:flex-start}footer .offline{color:#d6dfca}.guide{position:static}dialog{max-height:90dvh;overflow:auto}.card,button,select{scroll-margin-top:12px}
@media(max-width:1199px){.workspace{grid-template-columns:190px minmax(0,1fr)}.info-card{grid-column:1/-1;display:block}.info-card>.primary{width:auto;min-width:230px}.info-card .fact{display:inline-block;vertical-align:top;width:calc(50% - 8px)}.info-card .fact+.fact{margin-left:10px}.explain-steps{grid-template-columns:repeat(4,minmax(0,1fr))}.stage-heading{padding:14px 12px 8px}.scroll-hint{display:block}}
@media(max-width:780px){header{padding:14px;gap:10px}h1{font-size:26px}.eyebrow{font-size:11px}.header-actions{width:100%;margin-left:0;gap:6px}.header-actions a,.header-actions button{font-size:13px;min-height:44px;padding:7px 8px}.brand-mark{height:44px;width:46px;flex:none}nav{padding:8px;gap:4px}nav button{font-size:15px;line-height:1.4;padding:8px 4px;flex:1}.guide{padding:10px 12px;align-items:flex-start}.guide strong{font-size:16px}.guide button{font-size:13px;min-height:44px}main{padding:10px}.workspace{display:flex;min-height:0;gap:12px}.selector{order:1;padding:14px}.stage-card,.fold-stage{order:2;min-height:0}.info-card{order:3;padding:16px}.info-card .fact{display:block;width:auto}.info-card .fact+.fact{margin-left:0}.amino-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.amino-grid button{font-size:15px;padding:8px 2px;min-height:58px}.amino-grid button small{font-size:11px}.selector h2{margin-bottom:10px}.collection{font-size:14px}.selector .muted{font-size:14px}.stage-heading{padding:14px 12px 10px}.stage-heading h2{font-size:22px}.stage-heading .kicker{font-size:12px}#buildSvg{width:100%;min-height:0;flex:none;aspect-ratio:600/460;max-height:none}.component-tray{padding:10px;gap:6px}.component-tray button{min-width:45px;flex:1 1 45px;font-size:16px;padding:8px 3px}.action-feedback{font-size:14px}.stage-note{font-size:12px}.diagram-scroll{min-height:0;flex:none}.diagram-scroll #reactionSvg{min-width:680px;aspect-ratio:880/390}.scroll-hint{display:block}.transport button{font-size:15px}.explain-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.chain-list{grid-template-columns:repeat(4,minmax(0,1fr))}#foldCanvas{height:400px;min-height:400px;flex:none}.assembly-top{font-size:13px}.assembly-top span{font-size:12px}.assembly-next,.assembly-equation{font-size:12px}.view-legend{font-size:11px}.level-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.level-choices button:last-child{grid-column:1/-1}.fold-workspace .level-choices button{font-size:16px;min-height:58px}.fold-workspace .level-choices small{font-size:12px}.stats{gap:36px}.info-card>.primary{width:100%;min-width:0}.offline{display:none}footer{font-size:14px}}
@media(max-width:360px){.amino-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.level-choices{grid-template-columns:1fr}.header-actions{gap:5px}.header-actions a,.header-actions button{font-size:12px}.guide strong{font-size:15px}}
@media(min-width:1200px){#buildSvg{height:clamp(300px,calc(100dvh - 420px),470px);min-height:300px;flex:none;aspect-ratio:auto}.workspace{min-height:520px}}
@media(max-width:780px){.component-tray{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.component-tray button{white-space:nowrap;min-width:0}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
