/* Review-only component layer. Add .ab-system deliberately; never global opt-in.
   Existing class names are retained. No existing production stylesheet is changed. */
.ab-system{margin:0;background:var(--ab-bg);color:var(--ab-text);font:400 var(--ab-type-base)/var(--ab-leading-body) var(--ab-font-body);color-scheme:dark;overflow-wrap:break-word}
[data-ab-theme=light] .ab-system{color-scheme:light}
.ab-system *,.ab-system *::before,.ab-system *::after{box-sizing:border-box}
.ab-system h1,.ab-system h2,.ab-system h3{font-family:var(--ab-font-heading);font-weight:600;line-height:var(--ab-leading-heading);letter-spacing:var(--ab-tracking-heading);text-wrap:balance;margin:0 0 var(--ab-space-4)}
.ab-system h1{font-size:var(--ab-type-h1)}.ab-system h2{font-size:var(--ab-type-h2)}.ab-system h3{font-size:var(--ab-type-h3)}
.ab-system p{margin:0 0 var(--ab-space-4);max-width:var(--ab-content-reading)}.ab-system li{margin-bottom:var(--ab-space-2)}
.ab-system a{color:var(--ab-link);text-underline-offset:.22em;text-decoration-thickness:.08em}.ab-system a:hover{color:var(--ab-link-hover)}
.ab-system :where(button,input,select,summary){font:inherit}.ab-system :where(button,summary){cursor:pointer}
.ab-system :where(a,button,input,select,summary,[tabindex]):focus-visible{outline:3px solid var(--ab-focus);outline-offset:3px;box-shadow:0 0 0 7px var(--ab-focus-guard)}
.ab-system .skip{position:fixed;top:-8rem;left:1rem;z-index:100;background:var(--ab-button-bg);color:var(--ab-on-accent);padding:1rem}.ab-system .skip:focus{top:1rem}
.ab-system .container{max-width:var(--ab-content-wide);margin:auto;padding-inline:clamp(1rem,4vw,2.5rem)}
.ab-system .site-header{padding-block:var(--ab-space-6);border-bottom:1px solid var(--ab-line)}
.ab-system .nav-row{display:flex;align-items:center;gap:var(--ab-space-6);flex-wrap:wrap}.ab-system .brand{font-family:var(--ab-font-heading);font-weight:600;font-size:1.125rem;color:var(--ab-text);text-decoration:none}
.ab-system .site-nav{display:flex;align-items:center;gap:var(--ab-space-3);flex-wrap:wrap}.ab-system .site-nav>a,.ab-system .site-nav summary{display:flex;align-items:center;min-height:var(--ab-target);padding:.5rem}.ab-system .site-nav details{position:relative}.ab-system .site-nav summary{color:var(--ab-link);gap:.5rem;list-style:none}.ab-system summary::-webkit-details-marker{display:none}.ab-system .menu-panel{position:absolute;top:100%;left:0;z-index:10;width:min(18rem,80vw);padding:1rem;background:var(--ab-surface);border:1px solid var(--ab-control-line);border-radius:var(--ab-radius-md);box-shadow:var(--ab-shadow)}.ab-system .menu-panel a{display:block;padding:.5rem;min-height:var(--ab-target)}
.ab-system .theme-control{margin-left:auto;display:flex;gap:.5rem;align-items:center;font-size:var(--ab-type-sm)}
.ab-system .section{padding-block:var(--ab-space-12);border-bottom:1px solid var(--ab-line);scroll-margin-top:1rem}.ab-system .eyebrow{font:400 var(--ab-type-sm)/1.5 var(--ab-font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ab-text-muted);margin-bottom:var(--ab-space-4)}
.ab-system .lead{font-size:var(--ab-type-lead);color:var(--ab-text-muted)}.ab-system .muted{color:var(--ab-text-muted)}.ab-system .small{font-size:var(--ab-type-sm)}
.ab-system .review-notice{padding:var(--ab-space-4) var(--ab-space-6);background:var(--ab-surface);border-left:3px solid var(--ab-brand);margin-top:var(--ab-space-6)}
.ab-system .hero{padding:var(--ab-space-8);border:1px solid var(--ab-line);border-radius:var(--ab-radius-md);background:var(--ab-surface)}
.ab-system .actions,.ab-system .tags,.ab-system .meta,.ab-system .spec-line{display:flex;align-items:center;gap:var(--ab-space-3);flex-wrap:wrap}
.ab-system .button{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:var(--ab-target);padding:.7rem 1.1rem;background:var(--ab-button-bg);color:var(--ab-on-accent);border:1px solid var(--ab-on-accent);border-radius:var(--ab-radius-sm);font-weight:600;text-decoration:none;line-height:1.5;transition:background-color var(--ab-duration-fast) var(--ab-ease)}
.ab-system .button:hover{background:var(--ab-button-hover);color:var(--ab-on-accent)}.ab-system .button.secondary{background:var(--ab-surface);color:var(--ab-link);border-color:var(--ab-control-line)}.ab-system .button.secondary:hover{color:var(--ab-link-hover)}
.ab-system .grid{display:grid;grid-template-columns:1fr;gap:var(--ab-space-6)}
.ab-system .project,.ab-system .article-card,.ab-system .panel{background:var(--ab-surface);border:1px solid var(--ab-line);border-radius:var(--ab-radius-md);padding:var(--ab-space-6);min-width:0}
.ab-system .project,.ab-system .article-card{border-top:3px solid var(--ab-category);display:flex;flex-direction:column;gap:var(--ab-space-4)}.ab-system .project p,.ab-system .article-card p{margin:0}.ab-system .card-link{margin-top:auto;min-height:var(--ab-target);display:inline-flex;align-items:center}
.ab-system [data-domain=mechanical]{--ab-category:var(--ab-domain-mechanical);--ab-category-text:var(--ab-domain-mechanical-text)}.ab-system [data-domain=fluid]{--ab-category:var(--ab-domain-fluid);--ab-category-text:var(--ab-domain-fluid-text)}.ab-system [data-domain=electrical]{--ab-category:var(--ab-domain-electrical);--ab-category-text:var(--ab-domain-electrical-text)}.ab-system [data-domain=programming]{--ab-category:var(--ab-domain-programming);--ab-category-text:var(--ab-domain-programming-text)}.ab-system [data-domain=nuclear]{--ab-category:var(--ab-domain-nuclear);--ab-category-text:var(--ab-domain-nuclear-text)}
.ab-system .domain-tag{display:inline-flex;align-items:center;gap:.5rem;color:var(--ab-category-text);font-size:var(--ab-type-sm);font-weight:600;line-height:1.5}.ab-system .domain-tag .domain-icon{background:var(--ab-category);color:var(--ab-on-accent);width:1.75rem;height:1.75rem;border-radius:var(--ab-radius-sm);display:inline-grid;place-content:center;font-family:var(--ab-font-mono)}
.ab-system .difficulty,.ab-system .reading-time{font-size:var(--ab-type-sm);display:inline-flex;align-items:center;gap:.4rem;color:var(--ab-text-muted)}.ab-system .difficulty{border:1px solid var(--ab-control-line);padding:.2rem .6rem;border-radius:var(--ab-radius-sm)}
.ab-system .verification-badge{display:inline-flex;align-items:center;gap:.5rem;border:1px solid currentColor;border-radius:var(--ab-radius-sm);padding:.35rem .65rem;font-size:var(--ab-type-sm);line-height:1.5;font-weight:600;max-width:100%}
.ab-system .verification-badge[data-status=verified]{color:var(--ab-verified-fg);background:var(--ab-verified-bg)}.ab-system .verification-badge[data-status=assumed]{color:var(--ab-assumed-fg);background:var(--ab-assumed-bg)}.ab-system .verification-badge[data-status=untested]{color:var(--ab-untested-fg);background:var(--ab-untested-bg)}
.ab-system .evidence-row{border-top:1px solid var(--ab-line);padding-top:var(--ab-space-4)}
.ab-system .callout{border:1px solid var(--ab-line);border-left:3px solid var(--ab-control-line);border-radius:var(--ab-radius-sm);padding:var(--ab-space-6);background:var(--ab-surface)}.ab-system .callout h3{font-size:1.125rem}.ab-system .callout p:last-child{margin:0}.ab-system .callout-icon{font-family:var(--ab-font-mono);margin-right:.5rem}
.ab-system .case-equation,.ab-system code,.ab-system pre,.ab-system .number{font-family:var(--ab-font-mono);font-variant-numeric:tabular-nums}.ab-system .case-equation{background:var(--ab-surface-raised);padding:var(--ab-space-4);border-left:2px solid var(--ab-control-line);overflow-wrap:anywhere;font-size:var(--ab-type-base)}
.ab-system .calculator-panel{max-width:42rem;background:var(--ab-surface);padding:var(--ab-space-6);border:1px solid var(--ab-line);border-radius:var(--ab-radius-md)}.ab-system .calc-fields{display:grid;gap:1rem}.ab-system label{display:block;font-size:var(--ab-type-sm);font-weight:600;margin-bottom:.5rem}.ab-system input,.ab-system select{min-height:var(--ab-target);padding:.6rem .75rem;border:1px solid var(--ab-control-line);border-radius:var(--ab-radius-sm);background:var(--ab-bg);color:var(--ab-text);max-width:100%}.ab-system input{width:100%;font-family:var(--ab-font-mono)}.ab-system .value-unit{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem}.ab-system .calculator-panel output{display:block;font:400 1.5rem/1.5 var(--ab-font-mono);padding:1rem 0}.ab-system .form-message{min-height:1.7em;font-weight:600}.ab-system .calc-submit{margin-top:1rem}
.ab-system .review-details{border:1px solid var(--ab-control-line);border-radius:var(--ab-radius-sm);padding:var(--ab-space-4);margin-block:var(--ab-space-4);background:var(--ab-surface)}.ab-system .review-details summary{min-height:var(--ab-target);display:flex;align-items:center;gap:1rem;font-weight:600}.ab-system .review-details summary::before{content:'+';font-family:var(--ab-font-mono)}.ab-system .review-details[open] summary::before{content:'−'}
.ab-system .table-wrap{overflow:auto;max-width:100%}.ab-system table{border-collapse:collapse;width:100%;font-size:var(--ab-type-sm);text-align:left}.ab-system caption{text-align:left;margin:1rem 0;color:var(--ab-text-muted)}.ab-system th,.ab-system td{padding:.75rem;border-bottom:1px solid var(--ab-line);vertical-align:top}.ab-system th{font-weight:600}.ab-system pre{background:var(--ab-surface-raised);padding:1rem;overflow:auto;font-size:var(--ab-type-sm);line-height:1.7}
.ab-system .swatches{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:1rem}.ab-system .swatch{padding:1rem;background:var(--ab-surface);border:1px solid var(--ab-line);border-radius:var(--ab-radius-sm)}.ab-system .swatch-sample{height:2.5rem;border:1px solid var(--ab-control-line);margin-bottom:.75rem;background:var(--sample)}.ab-system .swatch strong,.ab-system .swatch code{display:block}
.ab-system .site-footer{padding-block:var(--ab-space-8);color:var(--ab-text-muted);font-size:var(--ab-type-sm)}.ab-system .site-footer .container{display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap}
@media(min-width:48rem){.ab-system .grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.ab-system .grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.ab-system .calc-fields{grid-template-columns:1fr 1fr}}
@media(max-width:36rem){.ab-system .nav-row{gap:1rem}.ab-system .site-nav{order:3;flex-basis:100%;gap:.2rem}.ab-system .theme-control{margin-left:0}.ab-system .hero{padding:1.25rem}.ab-system .menu-panel{position:static;width:auto;min-width:14rem;box-shadow:none}.ab-system .project,.ab-system .article-card{padding:1.25rem}}
@media(prefers-reduced-motion:reduce){.ab-system *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(forced-colors:active){.ab-system .verification-badge,.ab-system .button,.ab-system .domain-icon{border:1px solid CanvasText}.ab-system :focus-visible{outline:3px solid Highlight;box-shadow:none}}
@media print{.ab-system{--ab-bg:#fff;--ab-surface:#fff;--ab-surface-raised:#fff;--ab-text:#000;--ab-text-muted:#000;--ab-link:#000;--ab-control-line:#000;--ab-line:#999;background:#fff;color:#000;font-size:11pt}.ab-system .site-header,.ab-system .theme-control,.ab-system .skip,.ab-system .no-print{display:none}.ab-system .container{max-width:none;padding:0}.ab-system .section{padding:1rem 0}.ab-system .grid{display:block}.ab-system .project,.ab-system .article-card,.ab-system .callout{margin-bottom:1rem;break-inside:avoid;box-shadow:none}.ab-system .verification-badge,.ab-system .domain-tag,.ab-system .domain-icon{color:#000!important;background:#fff!important}.ab-system .button{color:#000;background:#fff;border:1px solid #000}.ab-system .table-wrap,.ab-system pre{overflow:visible;white-space:pre-wrap}.ab-system table{font-size:9pt}.ab-system .hero{padding:1rem}.ab-system a{text-decoration:underline}.ab-system .site-footer{color:#000}}
