:root{color-scheme:light;--ink:#171728;--muted:#666577;--paper:#f3f1ed;--surface:#fff;--lime:#dfff74;--violet:#6657d9;--line:#d9d5ce;--rose:#f6d9d5;--green:#dcefd7;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);line-height:1.55}button,textarea,input{font:inherit}a{color:inherit}:focus-visible{outline:3px solid #1769e0;outline-offset:3px}.skip-link{position:fixed;top:.5rem;left:.5rem;z-index:10;padding:.7rem 1rem;color:white;background:var(--ink);transform:translateY(-180%)}.skip-link:focus{transform:none}header,main,footer{width:min(1200px,calc(100% - 2rem));margin-inline:auto}header{display:flex;align-items:center;justify-content:space-between;min-height:76px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:.65rem;font-weight:800;text-decoration:none}.brand>span{display:grid;place-items:center;width:34px;height:34px;color:var(--ink);background:var(--lime);border-radius:8px;font-family:Georgia,serif;font-size:1.25rem}nav{display:flex;gap:1.25rem}nav a{display:flex;align-items:center;min-height:44px;color:var(--muted);font-size:.9rem;text-decoration:none}.hero{padding:5.5rem 0 4rem}.kicker{margin:0 0 .9rem;color:var(--violet);font-size:.74rem;font-weight:850;letter-spacing:.15em;text-transform:uppercase}.hero h1{max-width:920px;margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(3rem,7vw,6.25rem);font-weight:500;line-height:.92;letter-spacing:-.055em}.intro{max-width:760px;margin:1.6rem 0;color:#545365;font-size:1.16rem}.trust-row{display:flex;flex-wrap:wrap;gap:.6rem}.trust-row span{padding:.35rem .65rem;background:#e7e3dc;border-radius:999px;font-size:.76rem;font-weight:750}.checker{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,1fr);background:var(--surface);border:1px solid var(--line);box-shadow:0 25px 70px rgba(23,23,40,.1)}.input-panel,.output-panel{min-width:0;padding:2rem}.input-panel{border-right:1px solid var(--line)}.output-panel{background:#f9f8f5}.section-title{display:flex;align-items:flex-start;gap:.85rem;margin-bottom:1.4rem}.section-title>span{padding-top:.35rem;color:var(--violet);font-size:.72rem;font-weight:850}.section-title p{margin:0;color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.section-title h2,.framework h2{margin:.1rem 0 0;font-family:Georgia,serif;font-size:2rem;font-weight:500;line-height:1.05}.output-title button{margin-left:auto;min-width:52px;min-height:40px;color:var(--violet);background:transparent;border:1px solid #aaa5bf;border-radius:5px;font-size:.78rem;font-weight:800}.output-title button:disabled{opacity:.4}label,legend{display:block;margin-bottom:.45rem;font-size:.88rem;font-weight:780}textarea{width:100%;min-height:400px;padding:1rem;resize:vertical;color:var(--ink);background:#fbfaf7;border:1px solid #bcb8b0;border-radius:5px;line-height:1.6}textarea:focus{background:white;border-color:var(--violet)}.help{margin:.45rem 0 1rem;color:var(--muted);font-size:.78rem}details{border-block:1px solid var(--line)}summary{display:flex;align-items:center;min-height:48px;cursor:pointer;font-size:.85rem;font-weight:780}fieldset{margin:0 0 1rem;padding:0;border:0}.rule-options{display:grid;grid-template-columns:1fr 1fr;gap:.4rem 1rem}.rule-option{display:flex;gap:.45rem;align-items:flex-start;margin:0;font-size:.76rem;font-weight:620}.rule-option input{flex:0 0 18px;width:18px;height:18px;margin:.1rem 0 0;accent-color:var(--violet)}.actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.3rem}.actions button{min-height:44px;padding:.65rem 1rem;border:1px solid transparent;border-radius:4px;font-weight:800;cursor:pointer}.primary{color:white;background:var(--ink)}.secondary{color:var(--ink);background:var(--lime)}.ghost{color:var(--muted);background:transparent!important;border-color:var(--line)!important}.summary{display:flex;gap:1rem;align-items:center;min-height:90px;padding:1rem;border:1px solid var(--line);border-left:5px solid #aaa}.summary.gaps{background:#fff4e0;border-left-color:#eba94c}.summary.complete{background:#edf8e8;border-left-color:#54904a}.summary.error{background:#fff0ed;border-left-color:#b44b3e}.score{display:grid;place-items:center;flex:0 0 58px;width:58px;height:58px;color:white;background:var(--ink);border-radius:50%;font-weight:850}.summary strong,.summary p{display:block;margin:0}.summary p{color:var(--muted);font-size:.82rem}.result-list{display:grid;gap:.7rem;margin:1rem 0 0;padding:0;list-style:none}.result-card{padding:1rem;background:white;border:1px solid var(--line);border-left:4px solid #ba5145}.result-card.documented{border-left-color:#5c9254}.result-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}.rule-id{padding:.18rem .42rem;color:#483da3;background:#e8e4ff;border-radius:999px;font-size:.68rem;font-weight:850}.state{color:var(--muted);font-size:.72rem;font-weight:750}.result-card h3{margin:.65rem 0 .2rem;font-size:1rem}.result-card p{margin:.25rem 0;color:#565568;font-size:.83rem}.missing{color:#8b382f!important;font-weight:750}.suggestion strong{color:var(--violet)}.evidence-list{display:grid;gap:.35rem;margin:.65rem 0 0;padding:0;list-style:none}.evidence-list li{padding:.5rem .6rem;background:#f2f5ee;font-size:.76rem;overflow-wrap:anywhere}.framework{padding:5.5rem 0}.framework h2{max-width:650px;font-size:2.8rem}.framework-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:2.5rem;background:var(--line);border:1px solid var(--line)}.framework-grid article{padding:1.5rem;background:var(--paper)}.framework-grid article>span{color:var(--violet);font-size:.7rem;font-weight:850}.framework-grid h3{margin:.7rem 0 .3rem;font-family:Georgia,serif;font-size:1.35rem;font-weight:500}.framework-grid p{margin:0;color:var(--muted);font-size:.88rem}footer{display:flex;justify-content:space-between;gap:1rem;padding:1.5rem 0 2.5rem;color:var(--muted);border-top:1px solid var(--line);font-size:.78rem}@media(max-width:860px){.checker{grid-template-columns:1fr}.input-panel{border-right:0;border-bottom:1px solid var(--line)}.framework-grid{grid-template-columns:1fr}}@media(max-width:520px){header{min-height:64px}nav a:first-child{display:none}.hero{padding:3.5rem 0 3rem}.hero h1{font-size:3.25rem}.input-panel,.output-panel{padding:1.2rem}.rule-options{grid-template-columns:1fr}.actions button{flex:1 1 100%}.framework h2{font-size:2.2rem}footer{display:grid}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
