:root{--ink:#30251f;--muted:#6e5a4d;--red:#981e22;--red-dark:#6c1518;--cream:#f7efdf;--paper:#fffcf5;--line:#d9c7ac;--gold:#bf8a42;--soft:#efe1ca;--green:#315a42;--shadow:0 12px 30px #4c2b1614}*{box-sizing:border-box}html{background:var(--cream);color:var(--ink);font:16px/1.55 system-ui,-apple-system,'Segoe UI',sans-serif}body{margin:0;background:linear-gradient(145deg,#f4e9d5,#fbf7ee 60%);min-height:100vh}main{max-width:1000px;margin:auto;padding:28px 22px 70px}h1,h2,h3{font-family:Georgia,serif;line-height:1.15;color:var(--red-dark)}h1{font-size:clamp(2rem,4.6vw,3rem);margin:.3em 0}h2{font-size:1.5rem;margin:1.2em 0 .55em}h3{font-size:1.1rem}p{margin:.6em 0 1em}a{color:#872024;text-underline-offset:.18em}a:hover{color:#4c1012}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #ad7023;outline-offset:3px}.card,section.panel,section:not(.hero){background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:24px;margin:16px 0;box-shadow:var(--shadow)}.brand{display:flex;align-items:center;gap:14px;margin-bottom:18px}.brand img{width:144px;max-height:92px;object-fit:contain;object-position:left}.brand span,.eyebrow{font-size:.75rem;text-transform:uppercase;letter-spacing:.14em;font-weight:800;color:var(--red)}.hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 250px;align-items:end;overflow:hidden;background:#ead6b6;border:1px solid #cfb58c;border-radius:14px;min-height:300px;padding:32px 32px 0;box-shadow:var(--shadow)}.hero-copy{padding-bottom:32px}.hero img.character{width:100%;height:280px;object-fit:cover;object-position:center 22%;border-radius:100px 100px 0 0}.hero h1{font-size:clamp(2.2rem,5vw,3.8rem);max-width:15ch}.hero p{max-width:50ch}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.button,button,input[type=submit]{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 18px;background:var(--red);color:#fff;border:1px solid var(--red);border-radius:7px;font:700 1rem/1.3 system-ui;cursor:pointer;text-decoration:none}.button:hover,button:hover{background:var(--red-dark);color:#fff}.button.secondary,button.secondary{background:var(--paper);color:var(--red-dark);border-color:#a76c62}.button.secondary:hover,button.secondary:hover{background:var(--soft)}.button.close-action,button.close-action{background:var(--green);border-color:var(--green);color:white}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0}.stat{background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:8px;padding:14px;color:var(--muted);font-size:.85rem}.number{display:block;font:700 1.75rem Georgia,serif;color:var(--ink)}.notice,.status,.success,.error{padding:14px 16px;border-left:4px solid var(--gold);background:#f6ead5;margin:14px 0;border-radius:4px;overflow-wrap:anywhere}.error{border-color:var(--red);background:#fbe8e3}.success{border-color:var(--green);background:#e4f0e6}.list-row{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding:15px 0}.list-row a{font-weight:700}.badge{display:inline-block;padding:5px 10px;border-radius:50px;background:#eadfc9;color:#513c2f;font-size:.82rem;font-weight:800}.badge.urgent{background:#f8ded7;color:#8d1b21}.badge.done{background:#e0eee3;color:#244b33}label{display:block;font-weight:700;margin:15px 0 5px}input:not([type=checkbox]):not([type=hidden]),textarea,select{display:block;width:100%;min-height:48px;padding:11px 12px;border:1px solid #ab9985;border-radius:7px;background:#fffefa;color:var(--ink);font:inherit}input[type=checkbox]{width:20px;height:20px;vertical-align:middle;accent-color:var(--red)}textarea{min-height:120px;resize:vertical}form button{margin-top:12px}.hint,.small{color:var(--muted);font-size:.9rem}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}dl{display:grid;grid-template-columns:minmax(130px,32%) 1fr;gap:12px;border-top:1px solid var(--line);padding-top:18px}dt{font-weight:750;color:var(--muted)}dd{margin:0;overflow-wrap:anywhere}.photo{width:min(100%,320px);height:auto;border-radius:8px;margin:4px}.member{border:1px solid var(--line);border-radius:10px;margin:16px 0;padding:20px;background:#fffefa}.member-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.member-zone{min-width:0}.member-zone h3{font:800 .78rem system-ui;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:0 0 10px}.member-zone form{border-top:1px solid var(--line);padding-top:10px;margin-top:12px}.member-zone label{font-size:.9rem}.member-zone button{font-size:.88rem}.member-zone label:has(input[type=checkbox]){display:inline-flex;align-items:center;gap:6px;margin:5px 10px 5px 0;font-weight:500}.auth{max-width:490px;margin:5vh auto}.auth .brand img{width:185px;max-height:130px}.auth .card{padding:34px}.auth button{width:100%}.auth label{margin-top:16px}.auth input{margin-top:6px}.form-section{border:0;border-top:1px solid var(--line);padding:12px 0 0;margin:22px 0 0}.form-section legend{font:700 1.3rem Georgia,serif;color:var(--red-dark);padding:0 10px 0 0}.photo-grid{display:flex;flex-wrap:wrap}.topline{display:flex;justify-content:space-between;gap:15px;align-items:center}.topline p{margin:0}.form-actions{padding:16px;background:#f6ead5;border-radius:8px;margin-top:20px}@media(max-width:720px){main{padding:16px 14px 56px}.hero{grid-template-columns:1fr 115px;min-height:240px;padding:22px 20px 0}.hero img.character{height:180px}.hero-copy{padding-bottom:22px}.hero h1{font-size:2.2rem}.member-grid{grid-template-columns:1fr}.member-zone+.member-zone{border-top:1px solid var(--line);padding-top:16px}.card,section.panel,section:not(.hero){padding:18px}.stats{grid-template-columns:repeat(3,minmax(0,1fr))}.stat{padding:10px;font-size:.75rem}.number{font-size:1.45rem}dl{grid-template-columns:1fr;gap:3px}dd{margin-bottom:10px}.actions>*{width:100%}}@media(max-width:400px){.hero{grid-template-columns:1fr 86px;padding:18px 15px 0}.hero img.character{height:160px}.hero h1{font-size:1.9rem}.hero-actions .button{width:100%}.list-row{align-items:flex-start;flex-direction:column;gap:6px}.auth .card{padding:20px}}@media(max-width:400px){.topline{flex-wrap:wrap}.topline .brand{flex:1 1 100%;margin-bottom:0}.topline .brand img{width:105px}.topline p{margin-bottom:8px}}
