:root{--btn-text:#1b2521;--bg:#fafaf7;--text:#28332f;--muted:#7c8582;--border:#eaece8;--office:#45a878;--office-bg:#e5f4ea;--image:#548fdc;--image-bg:#e7f0fc;--text-c:#e47791;--text-bg:#fceaf0;--web:#e9aa4d;--web-bg:#fff3df;--radius:14px;--max:1100px}*{box-sizing:border-box}body,html{margin:0}body{background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}.container{max-width:var(--max);margin:0 auto;padding:0 20px}.header{border-bottom:1px solid var(--border);background:#fff}.header .container{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.logo{font-weight:800;font-size:1.2rem}.nav{display:flex;gap:8px;flex-wrap:wrap}.nav a{padding:6px 14px;border-radius:999px;font-weight:600;background:var(--chip-bg);color:var(--text);border:1.5px solid var(--chip)}.footer,.nav a{font-size:.9rem}.footer{border-top:1px solid var(--border);margin-top:64px;padding:24px 0;color:var(--muted)}.hero{padding:56px 0 24px;text-align:center}.hero h1{font-size:clamp(1.8rem,5vw,2.8rem);margin:0 0 8px}.hero p{color:var(--muted);margin:0}.grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:20px;display:block}.card h2,.card h3{margin:0 0 6px;font-size:1.1rem}.card p{margin:0;color:var(--muted);font-size:.95rem}.cat-card{border-top:4px solid var(--c)}.crumbs{font-size:.85rem;color:var(--muted);padding:20px 0 0}.crumbs a:hover{text-decoration:underline}h1.title{margin:8px 0 4px}.lead{color:var(--muted);margin:0 0 20px}.dropzone{border:2px dashed var(--c);background:var(--cbg);border-radius:var(--radius);padding:48px 24px;min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;position:relative}.dropzone p{margin:4px 0 8px;font-weight:600}.dropzone.active{background:#fff}.dropzone svg{pointer-events:none;width:104px;height:104px}.btn{display:inline-block;background:var(--c);color:var(--btn-text);border:0;border-radius:10px;padding:10px 20px;font-weight:700;cursor:pointer;font-size:1rem}.btn:focus-visible,textarea:focus-visible{outline:3px solid var(--text);outline-offset:2px}textarea{width:100%;min-height:220px;border:1px solid var(--border);border-radius:var(--radius);padding:14px;font:inherit;resize:vertical;background:#fff;color:var(--text)}.stats{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));margin:16px 0}.stat{background:var(--cbg);border-radius:var(--radius);padding:14px;text-align:center}.stat b{display:block;font-size:1.6rem;color:var(--text)}.stat span{color:var(--muted);font-size:.85rem}.section{margin-top:36px}.section h2{font-size:1.25rem}.ad-slot{min-height:90px;margin:24px 0}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:12px 0}input[type=number],select{padding:9px 12px;border:1px solid var(--border);border-radius:10px;font:inherit;background:#fff;color:var(--text)}.check{display:flex;gap:8px;align-items:center;margin:6px 0}.diff{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:8px;font-family:ui-monospace,Menlo,monospace;font-size:.9rem;overflow-x:auto}.diff div{white-space:pre-wrap;padding:2px 8px;border-radius:4px}.diff .add{background:#ddf3e4}.diff .del{background:#fbe1e1}.msg{color:var(--muted);font-size:.9rem}.sr-only{width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.skip,.sr-only{position:absolute}.skip{left:-999px;top:0;background:#fff;padding:8px 12px;z-index:100}.skip:focus{left:8px}.search{position:relative;flex:1 1;min-width:160px;max-width:340px}.search input{width:100%;padding:9px 14px;border:1px solid var(--border);border-radius:999px;font:inherit;background:var(--bg);color:var(--text)}.search input:focus-visible{outline:3px solid var(--text);outline-offset:2px}.search-results{position:absolute;z-index:20;left:0;right:0;top:calc(100% + 6px);list-style:none;margin:0;padding:6px;background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 24px rgba(40,51,47,.08)}.search-results a{display:flex;justify-content:space-between;gap:8px;padding:8px 10px;border-radius:8px}.search-results a:focus-visible,.search-results a:hover{background:var(--bg)}.search-results span{color:var(--muted);font-size:.8rem}.search-empty{padding:8px 10px;color:var(--muted)}.cat-row{gap:14px}.cat-hero,.cat-row{display:flex;align-items:center}.cat-hero{gap:18px;border-radius:var(--radius);padding:18px 22px;margin:12px 0 24px}.cat-hero .title{margin:0}.footer-links{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:8px}.footer-links a:hover{text-decoration:underline}.errors{color:#9b2c2c;background:#fbe9e9;border-radius:10px;padding:10px 14px;margin:10px 0}ul.errors{padding-left:30px}.prose{max-width:760px}.prose h2{margin-top:28px}.valid{color:#1f7a4d}.invalid{color:#b42318}.badge{display:inline-block;padding:4px 12px;border-radius:999px;font-weight:700;background:#fff;border:1px solid var(--border)}@media (max-width:640px){.header .container{gap:10px}.search{order:3;max-width:none;flex-basis:100%}.cat-hero{flex-direction:column;text-align:center}}.field-label{display:block;font-weight:600;margin:14px 0 6px}.btn:disabled{opacity:.45;cursor:not-allowed}