:root{
  --ink:#101312; --ink-soft:#4b5450; --paper:#f6f4ee; --paper-raise:#ffffff;
  --line:#e3ded2; --accent:#0f6b53; --accent-ink:#ffffff; --coral:#ff6b4a; --gold:#c98a2c;
}
*{box-sizing:border-box;}
body{margin:0;background:var(--paper);color:var(--ink);
  font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  -webkit-font-smoothing:antialiased;}
h1,h2,h3{font-family:"Fraunces",Georgia,"Times New Roman",serif;font-weight:600;letter-spacing:-0.01em;margin:0;}
p{margin:0;}
a{text-decoration:none;color:inherit;}
.wrap{max-width:1160px;margin:0 auto;padding-inline:32px;}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 22px;border-radius:10px;font-weight:600;font-size:14px;cursor:pointer;border:1px solid transparent;background:none;font-family:inherit;}
.btn-primary{background:var(--ink);color:var(--paper-raise);}
.btn-primary:hover{background:#000;}
.btn-outline{background:transparent;border:1px solid var(--line);color:var(--ink);}
.btn-accent{background:var(--accent);color:#fff;}
.btn-danger{background:transparent;border:1px solid #f3c9c9;color:#b3392e;}
.btn:disabled{opacity:0.55;cursor:not-allowed;}
.card{background:var(--paper-raise);border:1px solid var(--line);border-radius:16px;}
.pill{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;background:var(--paper-raise);border:1px solid var(--line);font-size:13px;font-weight:600;color:var(--ink-soft);}
.tag{font-size:11px;font-weight:700;padding:4px 9px;border-radius:999px;}
.eyebrow{font-size:13px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--accent);}
.field-label{font-size:13px;font-weight:600;color:var(--ink-soft);margin-bottom:6px;display:block;}
.field{width:100%;padding:12px 14px;border-radius:10px;border:1px solid var(--line);background:var(--paper);font-size:14px;color:var(--ink);margin-bottom:16px;font-family:inherit;}
.error-text{color:#b3392e;font-size:13px;margin-bottom:12px;min-height:0;}
.nav{border-bottom:1px solid var(--line);background:var(--paper);}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:76px;}
.logo{display:flex;align-items:center;gap:10px;}
.logo-mark{width:32px;height:32px;border-radius:9px;background:var(--ink);display:flex;align-items:center;justify-content:center;}
.logo-mark span{color:var(--paper);font-family:"Fraunces",serif;font-weight:700;font-size:16px;}
.sidebar{width:236px;flex-shrink:0;background:var(--ink);color:var(--paper);padding:28px 20px;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;}
.sidebar a{color:#9aa39d;padding:10px 12px;border-radius:9px;display:block;font-size:14px;}
.sidebar a.active{background:#1c221f;color:var(--paper);font-weight:600;}
.avatar{width:34px;height:34px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;}
.shell{display:flex;min-height:100vh;}
.main{flex:1;padding:36px 40px;}
.skeleton{background:linear-gradient(90deg,var(--line) 25%,#eee9dc 37%,var(--line) 63%);background-size:400% 100%;animation:sk 1.4s ease infinite;border-radius:8px;}
@keyframes sk{0%{background-position:100% 50%}100%{background-position:0 50%}}
.toast{position:fixed;bottom:24px;right:24px;background:var(--ink);color:var(--paper);padding:14px 20px;border-radius:12px;font-size:14px;font-weight:600;box-shadow:0 10px 30px rgba(0,0,0,0.2);z-index:50;}
.toast.error{background:#b3392e;}
