*{box-sizing:border-box}
:root{--bg:#fff;--ink:#0b0b0b;--muted:#626262;--line:#dedede;--soft:#f7f7f7;--soft2:#eeeeee;--shadow:0 18px 45px rgba(0,0,0,.08);--radius:22px}
html,body{margin:0;min-height:100%}
body{font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:var(--ink);line-height:1.55}
a{color:var(--ink);text-decoration-thickness:1px;text-underline-offset:3px}
h1,h2,h3{letter-spacing:-.03em;line-height:1.1;color:var(--ink)}
.admin-shell{display:grid;grid-template-columns:270px 1fr;min-height:100vh;background:#fff}
aside{background:#fff;border-right:1px solid var(--line);padding:30px 24px;position:sticky;top:0;height:100vh}
aside h2{font-size:21px;margin:0 0 26px;font-weight:900}
aside a{display:block;text-decoration:none;padding:12px 15px;border-radius:999px;margin:8px 0;background:#fff;color:#111;border:1px solid var(--line);font-weight:700;transition:.18s ease}
aside a:hover{background:#111;color:#fff;border-color:#111;transform:translateX(2px)}
main{padding:36px;max-width:1260px;width:100%}
.card,.login-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;box-shadow:var(--shadow)}
.card+ .card{margin-top:22px}
.form{display:grid;gap:14px;max-width:980px}
label{font-weight:800;color:#111}
input,textarea,select{width:100%;padding:13px 15px;border-radius:16px;border:1px solid #cfcfcf;background:#fff;color:#111;outline:none;font-size:15px}
input:focus,textarea:focus,select:focus{border-color:#111;box-shadow:0 0 0 3px rgba(0,0,0,.07)}
textarea{font-family:Arial,Helvetica,sans-serif;min-height:140px}
.btn,button{display:inline-block;background:#000;color:#fff!important;border:1px solid #000;border-radius:999px;padding:13px 20px;text-decoration:none;font-weight:800;cursor:pointer;transition:.18s ease;line-height:1.1}
.btn:hover,button:hover{background:#333;border-color:#333;transform:translateY(-1px)}
.secondary{background:#fff!important;color:#000!important;border:1px solid #bbb!important}
.secondary:hover{background:#f2f2f2!important;color:#000!important}
.alert{background:#fff2f2;border:1px solid #e4b4b4;color:#7a1111;padding:13px 15px;border-radius:16px;margin:14px 0}
.success{background:#f0fff4;border:1px solid #b7dfc1;color:#0f5d25;padding:13px 15px;border-radius:16px;margin:14px 0}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin:24px 0}.stats div{background:var(--soft);border:1px solid var(--line);border-radius:20px;padding:22px}.stats strong{display:block;font-size:38px;line-height:1;color:#000}
table{width:100%;border-collapse:separate;border-spacing:0;margin-top:22px;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}th,td{border-bottom:1px solid var(--line);text-align:left;padding:14px 15px;vertical-align:top}th{background:#f5f5f5;font-weight:900}tr:last-child td{border-bottom:0}
.login-body{display:grid;place-items:center;min-height:100vh;background:linear-gradient(180deg,#fff,#f7f7f7);padding:24px}.login-card{width:min(440px,92vw)}.login-card h1{margin-top:0}.login-card p,.muted{color:var(--muted);line-height:1.6}.public-list{padding:40px;background:#fff}.public-list .card{max-width:980px;margin:0 auto}.public-list p{border-bottom:1px solid var(--line);padding:14px 0;margin:0}.public-list p:last-child{border-bottom:0}.public-list a{font-weight:800;text-decoration:none}.public-list a:hover{text-decoration:underline}.actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:10px}
@media(max-width:760px){.admin-shell{grid-template-columns:1fr}aside{height:auto;position:relative;border-right:0;border-bottom:1px solid var(--line)}main{padding:22px}.card,.login-card{padding:22px}.public-list{padding:18px}}
