:root{--bg:#f7f1ef;--surface:#fff;--accent:#b5a293;--accent-dark:#8f7a6a;--accent-soft:#ece3dd;--text:#1a1a1a;--muted:#7a7a7a;--line:#e6dcd6;--ok:#4a8c5c;--ok-soft:#e4f0e7;--bad:#b23b3b;--bad-soft:#f5e1e1;--warn:#b7852c;--warn-soft:#f6ecd9;--font:"Jost", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--maxw:1100px;--radius:14px;--shadow:0 1px 2px #1a1a1a0a, 0 8px 24px #8f7a6a14;--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2.5rem;--space-5:4rem;--space-6:6rem}*,:before,:after{box-sizing:border-box}html{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-text-size-adjust:100%;font-size:17px;font-weight:400;line-height:1.6}body{flex-direction:column;min-height:100dvh;margin:0;display:flex}h1,h2,h3,h4{letter-spacing:-.01em;margin:0 0 var(--space-2);font-weight:500;line-height:1.15}h1{font-size:clamp(2.2rem,5vw,3.4rem);font-weight:400}h2{font-size:clamp(1.6rem,3.2vw,2.2rem)}h3{font-size:1.25rem}p{margin:0 0 var(--space-2)}a{color:var(--accent-dark);text-underline-offset:.2em;text-decoration:none}a:hover{text-decoration:underline}code{background:var(--accent-soft);border-radius:4px;padding:.05em .35em;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:.9em}:focus-visible{outline:2px solid var(--accent-dark);outline-offset:3px}.container{width:100%;max-width:var(--maxw);padding-inline:var(--space-3);margin-inline:auto}.narrow{max-width:760px}main{padding-block:var(--space-4) var(--space-6);flex:1}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--accent-dark);margin-bottom:var(--space-2);font-size:.75rem;font-weight:500}.lead{color:var(--muted);max-width:48ch;font-size:1.2rem;font-weight:300}.muted{color:var(--muted)}.section{margin-top:var(--space-5)}.site-header{padding-block:var(--space-3)}.site-header .container,.site-footer .container{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.brand{letter-spacing:.02em;color:var(--text);font-size:1.3rem;font-weight:500}.brand span{color:var(--accent-dark);font-weight:300}.nav{gap:var(--space-2) var(--space-3);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.nav a{text-transform:uppercase;letter-spacing:.14em;color:var(--text);border-bottom:1px solid #0000;padding-block:.25rem;font-size:.78rem;font-weight:500}.nav a:hover,.nav a[aria-current=page]{border-bottom-color:var(--accent);color:var(--accent-dark);text-decoration:none}.site-footer{border-top:1px solid var(--line);padding-block:var(--space-4);color:var(--muted);font-size:.9rem}.btn{border:1px solid var(--accent-dark);background:var(--accent-dark);color:#fff;min-height:2.9rem;font:inherit;text-transform:uppercase;letter-spacing:.14em;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:.6rem 1.4rem;font-size:.78rem;font-weight:500;transition:background .15s,color .15s,border-color .15s,transform .1s;display:inline-flex}.btn:hover{background:var(--text);border-color:var(--text);text-decoration:none}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-secondary{color:var(--accent-dark);background:0 0}.btn-secondary:hover{background:var(--accent-dark);border-color:var(--accent-dark);color:#fff}.btn-ghost{color:var(--accent-dark);background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--accent-soft);color:var(--text);border-color:#0000}.btn-row{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--space-3)}.card-link{color:inherit;transition:transform .15s,box-shadow .15s;display:block}.card-link:hover{text-decoration:none;transform:translateY(-2px);box-shadow:0 2px 4px #1a1a1a0d,0 14px 32px #8f7a6a24}.grid{gap:var(--space-2);grid-template-columns:1fr;display:grid}@media (width>=640px){.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}}@media (width>=900px){.grid-3{grid-template-columns:repeat(3,1fr)}}.level-badge{letter-spacing:.1em;background:var(--accent-soft);color:var(--accent-dark);border-radius:999px;padding:.15rem .6rem;font-size:.8rem;font-weight:500;display:inline-block}.level-big{color:var(--accent-dark);margin-bottom:var(--space-1);font-size:2.6rem;font-weight:300;line-height:1}.set-card{flex-direction:column;gap:.35rem;min-height:100%;display:flex}.set-card h3{margin:0}.set-meta{color:var(--muted);font-size:.85rem}.set-card .progress{padding-top:var(--space-1);margin-top:auto}.pbadge{letter-spacing:.04em;background:var(--accent-soft);color:var(--accent-dark);border-radius:999px;align-items:center;gap:.4rem;padding:.2rem .65rem;font-size:.78rem;display:inline-flex}.pbadge[data-state=good]{background:var(--ok-soft);color:var(--ok)}.pbadge[data-state=partial]{background:var(--warn-soft);color:var(--warn)}.pbadge[data-state=new]{border:1px dashed var(--line);color:var(--muted);background:0 0}.explanation{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:var(--space-3);padding:0}.explanation summary{cursor:pointer;padding:var(--space-2) var(--space-3);text-transform:uppercase;letter-spacing:.12em;color:var(--accent-dark);font-size:.78rem;font-weight:500;list-style:none}.explanation summary::-webkit-details-marker{display:none}.explanation summary:before{content:"+";width:1.4em;font-size:1rem;display:inline-block}.explanation[open] summary:before{content:"–"}.explanation .body{padding:0 var(--space-3) var(--space-3)}.explanation .body p:last-child{margin-bottom:0}.prose p,.prose li{max-width:68ch}.prose ul,.prose ol{margin:0 0 var(--space-2);padding-left:1.2rem}.prose li+li{margin-top:.2rem}.prose h1,.prose h2,.prose h3,.prose h4{margin:var(--space-2) 0 var(--space-1);font-size:1.1rem}.prose blockquote{margin:0 0 var(--space-2);padding-left:var(--space-2);border-left:3px solid var(--accent);color:var(--muted)}.prose pre{padding:var(--space-2);background:var(--accent-soft);border-radius:10px;overflow-x:auto}.prose pre code{background:0 0;padding:0}.prose table{border-collapse:collapse;width:100%;max-width:100%;margin:0 0 var(--space-2);font-size:.95rem;display:block;overflow-x:auto}.prose thead th{text-align:left;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-dark);border-bottom:1px solid var(--accent);font-size:.75rem;font-weight:500}.prose th,.prose td{vertical-align:top;border-bottom:1px solid var(--line);padding:.45rem .75rem}.prose th:first-child,.prose td:first-child{padding-left:0}.prose tbody tr:last-child td{border-bottom:none}.prose tbody tr:nth-child(2n) td{background:#b5a29312}
