:root{--green:#0d6734;--deep:#063b20;--ink:#1b2b20;--muted:#68766d;--line:#d9e4da;--bg:#f2f6f1;--danger:#ad241f;--success:#087443}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.45 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.shell{width:min(890px,calc(100% - 28px));margin:0 auto 48px}.form-hero{padding:45px 4px 26px}.brand{display:flex;align-items:center;gap:10px;color:var(--green);margin-bottom:31px}.brand-mark{display:grid;place-items:center;width:39px;height:43px;border:2px solid var(--green);border-radius:15px 15px 18px 18px;font-size:1.25rem}.brand strong{display:block;font-family:Georgia,serif;font-size:1.3rem}.brand small{display:block;font-size:.61rem;letter-spacing:.25em;font-weight:700}.overline{margin:0 0 9px;color:var(--green);font-size:.72rem;font-weight:700;letter-spacing:.12em}.form-hero h1{margin:0 0 8px;font-family:Georgia,serif;font-size:clamp(2rem,5vw,3rem);line-height:1.1;color:var(--deep)}.form-hero>p:last-child{max-width:650px;color:#4d5e52;margin:0}.card,.admin-card{background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 10px 28px rgba(17,65,35,.08);padding:clamp(18px,4vw,32px)}.heading-row{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding-bottom:17px;margin-bottom:21px}.heading-row h2,.admin-content h2{margin:0;font-size:1.35rem}.heading-row p,.admin-content>p{margin:3px 0 0;color:var(--muted);font-size:.86rem}.badge{align-self:start;background:#e8f7ed;color:var(--success);border-radius:99px;padding:5px 9px;font-size:.75rem;font-weight:700;white-space:nowrap}.badge.offline{background:#fff0e8;color:#9e5517}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}label{display:grid;gap:7px;color:#35493b;font-size:.89rem;font-weight:650}label span{font-weight:400;color:var(--muted)}input,textarea,select{width:100%;padding:10px 11px;border:1px solid #b7c8b9;border-radius:7px;background:#fff;color:var(--ink);font:inherit}input:focus,textarea:focus,select:focus{outline:3px solid #d8eddf;border-color:var(--green)}.full-width{grid-column:1/-1}.photo-row{display:flex;align-items:center;gap:13px}.photo-preview{width:62px;height:62px;border:1px solid var(--line);border-radius:7px;object-fit:cover}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}button{border:1px solid transparent;border-radius:7px;min-height:42px;padding:9px 15px;cursor:pointer;font:700 .9rem system-ui}.primary{background:var(--green);color:#fff}.primary:hover{background:#094e29}.primary:disabled{cursor:not-allowed;opacity:.55}.secondary{background:#fff;border-color:#aebfaf;color:var(--deep)}.secondary:hover{background:#f0f7f1}.message{min-height:1.4em;margin:13px 0 0;font-size:.86rem;color:var(--muted)}.message.error{color:var(--danger)}.message.success{color:var(--success)}.admin-card{margin-top:20px;padding:0}details summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:17px 20px}details summary::-webkit-details-marker{display:none}summary b,summary small{display:block}summary b{font-family:Georgia,serif;color:var(--deep);font-size:1.08rem}summary small{color:var(--muted);font-size:.76rem;margin-top:2px}details[open] summary{border-bottom:1px solid var(--line)}.admin-content{padding:24px}.admin-bar{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin-top:18px}.admin-bar label{flex:1 1 260px}.table-wrap{overflow:auto;margin-top:17px;border:1px solid var(--line);border-radius:7px}table{border-collapse:collapse;width:100%;min-width:1000px;font-size:.82rem}th,td{padding:10px 11px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}th{background:#e9f3ea;color:var(--deep);white-space:nowrap}.avatar{width:38px;height:38px;object-fit:cover;border-radius:50%;display:block}.empty{text-align:center;color:var(--muted);padding:28px}@media(max-width:600px){.shell{width:min(100% - 20px,890px)}.form-hero{padding-top:27px}.brand{margin-bottom:23px}.form-grid{grid-template-columns:1fr}.full-width{grid-column:auto}.heading-row{display:block}.badge{display:inline-block;margin-top:10px}.actions button,.admin-bar button{flex:1}.admin-content{padding:18px}}
