.beginner-coach{border:1px solid #c9dfd7;border-inline-start:4px solid #267563;background:var(--surface);border-radius:12px;padding:17px 21px;margin-bottom:25px;font-size:.9375rem;line-height:1.85}.coach-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.coach-heading strong{font-size:1rem;color:var(--text)}.coach-heading button{width:36px;height:36px;border:0;background:transparent;color:var(--muted);font-size:24px;cursor:pointer}.beginner-coach p{margin:4px 0 12px;color:var(--muted)}.beginner-coach ol{list-style:none;counter-reset:guide;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0;margin:0}.beginner-coach li{counter-increment:guide;position:relative;padding-inline-start:34px}.beginner-coach li:before{content:counter(guide);position:absolute;inset-inline-start:0;width:25px;height:25px;margin-top:4px;background:var(--soft);color:var(--purple);border-radius:50%;text-align:center;line-height:25px;font:600 14px/25px ui-monospace,monospace}.coach-foot{display:flex;gap:18px;flex-wrap:wrap;border-top:1px solid var(--border);margin-top:14px;padding-top:10px;font-size:.8125rem}.coach-foot button,.beginner-reopen{font:inherit;border:0;background:transparent;color:var(--purple);cursor:pointer}.beginner-reopen{margin-bottom:14px;font-size:.875rem}.beginner-options{margin:8px 0 20px;padding:14px 18px;background:var(--surface);border:1px solid var(--border);border-radius:8px}.beginner-options>summary{cursor:pointer;font-weight:600;font-size:.9375rem}.beginner-options[open]>summary{margin-bottom:18px}.beginner-options .designer-config{margin:0}.beginner-options p{color:var(--muted)}@media(max-width:760px){.beginner-coach ol{grid-template-columns:1fr;gap:7px}.beginner-coach{padding:14px 16px}.beginner-coach p{font-size:.9375rem}}
.architecture25{display:grid;gap:24px;min-width:0}.architecture25>*{min-width:0}.a25-program{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,1fr);gap:25px;margin:18px 0}.a25-program .field-label{margin-top:14px}.a25-program .code-editor{width:100%;min-height:170px;margin-top:7px}.a25-settings{display:flex;flex-direction:column;gap:15px}.a25-settings .beginner-options{margin:0}.a25-settings .switch-label{font-size:.9375rem;line-height:1.7;align-items:flex-start}.a25-save{margin:18px 0;flex-wrap:wrap}.a25-playback{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin:22px 0}.a25-playback>label{min-width:180px;display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:.875rem}.a25-playback input[type=range]{width:100%;accent-color:#297763}.pipeline25-board{overflow-x:auto;background:#11252b;border-radius:12px;padding:18px 18px 24px;color:#e6f4f1}.forwarding-lanes{height:85px;min-width:730px;text-align:center;color:#a4c0bb;font-size:.875rem;display:flex;align-items:center;justify-content:center}.forwarding-lanes svg{height:100%;width:100%;overflow:visible}.forwarding-lanes text{fill:#94ead6;font:13px ui-monospace,monospace;text-anchor:middle}.forward-path{fill:none;stroke:#69dec0;stroke-width:2.5;stroke-dasharray:7 4;animation:a25-flow 1s linear infinite}.stage25-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;min-width:730px}.stage25-grid.single{grid-template-columns:minmax(0,1fr);min-width:0}.stage25{background:#1a333b;border:1px solid #3b5960;border-radius:8px;min-height:155px;padding:13px 10px;display:flex;flex-direction:column;gap:10px}.stage25-label{display:flex;flex-direction:column;gap:5px}.stage25-label strong{font:700 20px ui-monospace,monospace;color:#97e0cd}.stage25-label span{font-size:.8125rem;color:#b4ccc8}.stage25 .instruction-number{font:12px ui-monospace,monospace;color:#9bb6b1}.stage25 code{font:13px/1.65 ui-monospace,monospace;white-space:normal;overflow-wrap:anywhere}.stage25-state{font-size:.75rem;margin-top:auto;color:#b4ddcf}.stage25.held{border-color:#eec279;background:#3c3729}.stage25.held .stage25-state{color:#f0cf8e}.stage25.flushed{border-color:#e396a2;background:#432d36}.stage25.flushed code{text-decoration:line-through}.stage25.flushed .stage25-state{color:#ffc3d0}.stage25.bubble{background:transparent;border-style:dashed}.bubble-label{margin:auto;color:#93aaa8;font-size:.875rem}.a25-events{min-height:70px;padding:16px 18px;border-inline-start:3px solid #55a68d;background:var(--soft);margin:16px 0;font-size:.9375rem;line-height:1.9;border-radius:4px}.a25-events p{margin:0 0 6px}.a25-registers,.a25-compare{margin:20px 0;line-height:1.9}.a25-registers>summary,.a25-compare>summary{cursor:pointer;font-weight:600}.a25-registers .debug-registers{margin-top:15px}.a25-flush{background:#f8dfe6!important;color:#993f56!important;text-decoration:line-through}.a25-compare p{color:var(--muted);font-size:.9375rem}.hazard25-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.hazard25-card{display:flex;flex-direction:column;gap:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:10px;padding:18px;text-align:start;cursor:pointer;font:inherit}.hazard25-card strong{font-size:1rem}.hazard25-card span{font-size:.875rem;color:var(--muted);line-height:1.8}.hazard25-card.selected{border-color:#4d9984;box-shadow:inset 0 3px #4d9984;background:var(--soft)}.a25-hazard-tip{border-inline-start:3px solid #dba251;padding:4px 20px;font-size:.9375rem;line-height:1.8}.a25-hazard-tip p{margin:8px 0;color:var(--muted)}.cache25-controls{display:grid;grid-template-columns:1fr 1.8fr 1fr;gap:16px}.cache25-controls .button{margin-top:10px;width:100%}.cache25-config{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.memory25-flow{display:flex;align-items:center;background:#11252b;color:#d4ede5;padding:28px 22px;border-radius:12px;margin:12px 0}.memory25-node{flex:0 1 28%;min-width:0;background:#1d353c;border:2px solid #44616a;border-radius:10px;padding:20px 14px;display:flex;flex-direction:column;gap:8px;text-align:center}.memory25-node strong{font:600 21px ui-monospace,monospace}.memory25-node span{font-size:.8125rem;line-height:1.6;overflow-wrap:anywhere}.memory25-wire{height:3px;background:#45636a;flex:1;position:relative}.memory25-wire:after{content:'';position:absolute;width:8px;height:8px;background:#78dec1;border-radius:50%;top:-2.5px;opacity:0}.phase-lookup .cpu,.phase-lookup .cache,.phase-return .cpu,.phase-return .cache,.phase-ram .ram,.phase-fill .cache{border-color:#78dec1}.phase-lookup .first:after,.phase-return .first:after,.phase-ram .second:after,.phase-fill .second:after{opacity:1;animation:a25-packet 1.2s linear infinite}.phase-return .first:after,.phase-fill .second:after{animation-direction:reverse}.cache25-phase{padding:15px 0;line-height:1.9}.cache25-phase p{margin:10px 0;font-size:1rem}.cache25-bits{display:grid;grid-template-columns:minmax(0,3fr) minmax(100px,1fr) minmax(100px,1fr);gap:7px;margin-bottom:22px}.cache25-bits>div{display:flex;flex-direction:column;align-items:center;gap:10px;padding:14px 9px;border:1px solid #cadcd8;border-radius:6px;background:var(--soft)}.cache25-bits strong{font:600 15px ui-monospace,monospace}.cache25-bits small{font-weight:400;color:var(--muted)}.cache25-bits code{font:14px/1.6 ui-monospace,monospace;overflow-wrap:anywhere;word-break:break-all}.cache25-sets{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;max-height:420px;overflow:auto;padding:3px}.cache25-set{border:1px solid var(--border);border-radius:8px;padding:13px;min-width:0}.cache25-set.active{border-color:#438e79;background:var(--soft)}.cache25-set h3{font-size:.875rem;margin:0 0 10px;color:var(--muted)}.cache25-set>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(95px,1fr));gap:8px}.cache25-line{background:var(--surface);padding:10px;border:1px solid var(--border);border-radius:5px;display:flex;flex-direction:column;gap:4px;font-size:.875rem;min-width:0}.cache25-line>span{font-size:.75rem;color:var(--muted)}.cache25-line strong{font-size:.875rem}.cache25-line code{font-size:.8125rem;direction:ltr}.cache25-line.target{border-color:#329575;box-shadow:inset 0 0 0 1px #329575}.cache25-trace{display:flex;gap:7px;flex-wrap:wrap;direction:ltr}.cache25-trace button{border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);padding:9px 14px;display:flex;flex-direction:column;gap:5px;cursor:pointer}.cache25-trace button span{font-size:12px}.cache25-trace button.hit{background:#e0f4e9;color:#256c51}.cache25-trace button.miss{background:#f7e9d6;color:#80591f}.cache25-trace button.selected{outline:2px solid #41937d;outline-offset:2px}.a25-saved .saved-experiment{justify-content:space-between}.architecture25 .table-wrap{max-width:100%;overflow:auto}.architecture25 .panel{min-width:0}.architecture25 .button-row{flex-wrap:wrap}@keyframes a25-flow{to{stroke-dashoffset:-22}}@keyframes a25-packet{from{left:0}to{left:calc(100% - 8px)}}[data-motion=reduced] .forward-path,[data-motion=reduced] .memory25-wire:after{animation:none}@media(prefers-reduced-motion:reduce){.forward-path,.memory25-wire:after{animation:none}}@media(max-width:1000px){.hazard25-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.cache25-controls{grid-template-columns:1fr 1fr}.cache25-controls>label{grid-column:1/-1}.cache25-config{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.a25-program{grid-template-columns:minmax(0,1fr)}.cache25-controls{grid-template-columns:minmax(0,1fr)}.cache25-controls>label{grid-column:auto}.hazard25-cards{grid-template-columns:minmax(0,1fr)}.cache25-config{grid-template-columns:minmax(0,1fr)}.memory25-flow{padding:18px 10px}.memory25-node{padding:13px 6px;flex-basis:30%}.memory25-node strong{font-size:15px}.memory25-node span{font-size:12px}.memory25-wire{min-width:12px}.cache25-bits{grid-template-columns:minmax(0,1fr)}.cache25-bits>div{display:grid;grid-template-columns:110px minmax(0,1fr) 35px;text-align:center;gap:4px}.cache25-bits code{font-size:13px}.a25-playback .button{padding:10px 12px}.architecture25 .panel{padding:18px}.a25-playback>label{width:100%}}

.architecture25-links{display:flex;gap:18px;flex-wrap:wrap;margin:-5px 0 22px;font-size:.875rem;color:var(--purple)}
.practice25{min-width:0}.practice25-filters{display:flex;align-items:end;gap:20px;flex-wrap:wrap;margin-bottom:24px}.practice25-filters label{min-width:200px}.practice25-filters p{font-size:.875rem;color:var(--muted);margin-inline-start:auto}.practice25-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:24px;align-items:start}.practice25-layout>*{min-width:0}.practice25-meta{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:.8125rem;color:var(--muted);margin-bottom:25px}.practice25-question fieldset{border:0;padding:0;margin:0;min-width:0}.practice25-question legend{font-size:1.2rem;line-height:1.9;font-weight:600;margin-bottom:20px}.practice25-question .quiz-option{min-height:52px;align-items:center}.practice25-question .notice{margin-top:25px}.practice25-question .notice p{margin:12px 0 0;line-height:1.9}.practice25-next{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:28px;padding-top:20px;border-top:1px solid var(--border)}.practice25-next span{font-size:.875rem;color:var(--muted)}.practice25-hint{margin-top:20px;padding:15px;background:var(--soft);line-height:1.9}.practice25-hint a{color:var(--purple);display:block;margin-top:8px}.worked-example{padding:25px;border:1px solid var(--border);border-inline-start:4px solid #57957d;border-radius:10px;background:var(--surface);margin:20px 0 30px;line-height:1.95}.worked-example .eyebrow{color:var(--muted);margin-bottom:12px}.worked-example h2{font-size:1.1rem;line-height:1.8}.worked-example p{font-size:1rem;line-height:1.95}.worked-example .try-this{background:var(--soft);padding:14px;border-radius:6px;margin:20px 0}.worked-example .try-this p{margin:8px 0 0;font-size:.9375rem}.practice25-layout .worked-example{margin-top:0}.practice25 .button-row{flex-wrap:wrap}@media(max-width:900px){.practice25-layout{grid-template-columns:minmax(0,1fr)}}@media(max-width:720px){.practice25-filters{gap:12px}.practice25-filters label{width:100%;min-width:0}.practice25-filters p{margin:0}.worked-example{padding:18px}.practice25-question legend{font-size:1.1rem}}

/* A single site name and a quiet, always-visible credit. */
.brand{font-size:1.05rem;letter-spacing:0;gap:10px;line-height:1.6;margin-bottom:28px}.brand>span:last-child{min-width:0}.page-footer .developer-credit{font-size:.75rem;font-weight:400;white-space:normal}.loading-screen strong{letter-spacing:0}
