:root{color-scheme:light;--ink:#17231f;--muted:#51605a;--line:#d9e3dc;--page:#f3f7f2;--paper:#fff;--forest:#0b513e;--wash:#e8f2e9;--focus:#1762d0}
*{box-sizing:border-box}body{margin:0;background:var(--page);color:var(--ink);font:16px/1.55 'Inter','Segoe UI',system-ui,sans-serif}a{color:var(--forest)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.top,footer,main{max-width:1200px;margin:auto;padding-inline:clamp(18px,5vw,60px)}.top{display:flex;justify-content:space-between;gap:16px;align-items:center;min-height:76px;border-bottom:1px solid var(--line)}.identity{display:flex;align-items:center;gap:11px;color:var(--ink);font-weight:750;text-decoration:none}.mark{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:8px;background:var(--forest);overflow:hidden}.mark:empty::after{content:'';width:12px;height:12px;border:2px solid white;transform:rotate(45deg)}.mark img{width:100%;height:100%}.top nav,footer,.actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.top nav a,footer a{font-size:.88rem;text-decoration:none;color:var(--muted)}.top nav a:hover,footer a:hover{text-decoration:underline}.hero{padding-block:clamp(38px,8vw,94px) 42px}.hero h1,.prose h1{font-family:'Geist','Segoe UI',system-ui,sans-serif;font-size:clamp(2.75rem,7vw,6rem);font-weight:750;line-height:.98;letter-spacing:-.068em;margin:12px 0 20px}.hero p{font-size:clamp(1rem,2vw,1.2rem);max-width:60ch;color:var(--muted)}.kicker{font-size:.78rem;font-weight:750;letter-spacing:.09em;text-transform:uppercase;color:var(--forest)}.app-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(235px,280px);gap:30px;align-items:center}.app-hero h1{font-size:clamp(2.65rem,6.3vw,5.5rem)}.compact{padding-block:44px 24px}.compact h1,.prose h1{font-size:clamp(2.45rem,6vw,4.2rem)}.group{padding-block:12px 27px}.group h2,.management h2,.prose h2{margin:0 0 14px;font-size:1.3rem;line-height:1.25;letter-spacing:-.025em}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card,.plan,.report-form,.management{padding:20px;border:1px solid var(--line);border-radius:14px;background:var(--paper)}.card{display:block;color:inherit;text-decoration:none}.card:hover:is(a){border-color:#739b8a}.card img{width:39px;height:39px;border-radius:8px;display:block;margin-bottom:12px}.card strong{font-size:1.04rem}.card p,.plan p,.group>p{font-size:.94rem;color:var(--muted);margin:8px 0}.card small,.plan span{font-weight:700;color:var(--forest)}.plan{background:var(--wash)}.plan strong{display:block;font-size:2rem;letter-spacing:-.06em}.plan strong small{font-size:.86rem;letter-spacing:0}.primary,.secondary{font:inherit;font-weight:700;display:inline-flex;align-items:center;min-height:43px;padding:9px 14px;border-radius:7px;text-decoration:none;cursor:pointer}.primary{color:white;background:var(--forest);border:1px solid var(--forest)}.secondary{color:var(--forest);background:var(--paper);border:1px solid #a6bdb1}.primary:hover{background:#063a2d}.secondary:hover{background:#edf6ef}.report-form{margin-bottom:22px}.report-form label,.management label{display:block;font-size:.9rem;font-weight:700;margin-bottom:5px}.report-form input:not([type=hidden]),textarea,.management input:not([type=hidden]){width:100%;max-width:660px;padding:10px;font:inherit;border:1px solid #a6bdb1;border-radius:7px;background:white;margin-bottom:12px;color:var(--ink)}textarea{display:block;resize:vertical}.notice{border-left:4px solid var(--forest);padding:10px 14px;background:var(--wash);border-radius:4px}.notice.error{border-color:#9f3123;background:#fff0ea}.report-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.report-head span{font-size:.84rem;color:var(--muted)}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:10px;background:var(--paper);margin-top:12px}.table-wrap table{width:100%;border-collapse:collapse;text-align:left;font-size:.88rem}.table-wrap th,.table-wrap td{padding:11px 13px;border-bottom:1px solid var(--line);min-width:104px;max-width:420px;overflow-wrap:anywhere;vertical-align:top}.table-wrap th{background:#e6eee7;text-transform:capitalize;white-space:nowrap}.table-wrap tr:last-child td{border-bottom:0}.empty{padding:16px;border:1px dashed var(--line);border-radius:9px}.management{margin:14px 0 28px}.management form:last-child:has(label){margin-top:20px}.prose{padding-block:50px;max-width:74ch}.prose h2{margin-top:26px}.prose li{margin:9px 0}.prose p{overflow-wrap:anywhere}footer{color:var(--muted);border-top:1px solid var(--line);min-height:76px;font-size:.88rem}
@media(max-width:780px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-hero{grid-template-columns:1fr}.app-hero aside{max-width:420px}}
@media(max-width:485px){.top{align-items:flex-start;flex-direction:column;padding-block:13px}.grid,.grid.two{grid-template-columns:1fr}.actions{gap:8px}.top nav{gap:10px}.hero h1{letter-spacing:-.055em}}
.export-preview{margin-top:20px;border:1px solid var(--line);border-radius:10px;background:var(--paper);overflow:hidden}.export-preview summary{padding:14px 18px;color:var(--forest);font-weight:700;cursor:pointer}.export-preview summary:focus-visible{outline:3px solid var(--focus);outline-offset:-3px}.export-preview-body{padding:0 18px 18px}.export-preview-body p{font-size:.88rem;color:var(--muted)}.export-preview pre{max-height:400px;overflow:auto;padding:18px;background:#142820;color:#effaf3;border-radius:8px;font:13px/1.6 Consolas,monospace;white-space:pre;tab-size:2}
