/* Etkileşimli 3B modeller — article.css üzerine. */
.model-page .article-wrap{max-width:46rem;}
.model-stage{position:relative;width:min(calc(100vw - 2rem),60rem);left:50%;transform:translateX(-50%);aspect-ratio:16/10;margin:1.6rem 0 0;background:var(--paper2);border:1px solid var(--rule);overflow:hidden;}
.model-stage canvas{display:block;width:100%;height:100%;outline:none;}
.model-stage canvas:focus-visible{box-shadow:inset 0 0 0 2px var(--accent);}
.model-hint{position:absolute;left:.8rem;bottom:.6rem;margin:0;font-size:.88rem;color:var(--ink3);pointer-events:none;font-style:italic;}
.model-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:2rem;text-align:center;color:var(--ink2);font-size:1.05rem;}
.model-panel{width:min(calc(100vw - 2rem),60rem);position:relative;left:50%;transform:translateX(-50%);margin:.9rem 0 2rem;}
.model-controls{display:flex;flex-wrap:wrap;gap:.5rem .6rem;align-items:center;}
.model-group{display:flex;flex-wrap:wrap;gap:.5rem;width:100%;}
.model-btn{font:inherit;font-size:1rem;line-height:1.2;padding:.5rem .85rem;border:1px solid var(--rule);background:var(--paper);color:var(--ink);cursor:pointer;border-radius:2px;}
.model-btn:hover{border-color:var(--accent);color:var(--accent);}
.model-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}
.model-btn[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink);}
.model-btn.r{border-left:4px solid #9e3a32;}.model-btn.s{border-left:4px solid #2f5d84;}.model-btn.i{border-left:4px solid #b8892a;}
.model-slider{display:flex;align-items:center;gap:.55rem;font-size:1rem;color:var(--ink2);padding:.25rem 0;}
.model-slider input{width:9rem;accent-color:var(--accent);}
.model-slider output{min-width:2.2rem;font-variant-numeric:tabular-nums lining-nums;color:var(--ink);}
.model-status{margin:.8rem 0 0;min-height:3em;font-size:1.08rem;line-height:1.5;color:var(--ink2);border-left:2px solid var(--accent);padding-left:.8rem;}
.model-legend{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;margin:.6rem 0 0;padding:0;list-style:none;font-size:.95rem;color:var(--ink2);}
.model-legend li::before{content:"";display:inline-block;width:.8rem;height:.8rem;margin-right:.4rem;vertical-align:-.05rem;background:var(--c);border-radius:50%;}
.model-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:1rem;list-style:none;margin:1.6rem 0;padding:0;}
.article-body .model-grid li{margin:0;}
.model-grid a{display:block;height:100%;padding:1.1rem 1.1rem 1rem;border:1px solid var(--rule);text-decoration:none;color:var(--ink);}
.model-grid a:hover{border-color:var(--accent);}
.model-grid strong{display:block;font-size:1.25rem;font-weight:500;}
.model-grid small{display:block;margin-top:.35rem;font-size:1rem;line-height:1.45;color:var(--ink3);}
@media (max-width:600px){.model-stage{aspect-ratio:4/5;}.model-slider input{width:7rem;}}
@media (prefers-color-scheme: dark){.model-btn.r{border-left-color:#d77a6e;}.model-btn.s{border-left-color:#7fa6c9;}.model-btn.i{border-left-color:#d9b45f;}}
