@import "https://fonts.googleapis.com/css2?family=Fraunces:wght@400;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap";:root{--bg:#f7f1e6;--surface:#fffaf4;--surface-2:#f2e8da;--ink:#1f1b1a;--muted:#6a5f57;--line:#e3d6c6;--accent:#0f766e;--accent-2:#f59e0b;--accent-2-soft:#f59e0b2e;--danger:#c2410c;--shadow-soft:#1e0a0014 0 20px 40px -24px;color:var(--ink);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Space Grotesk,sans-serif;font-size:16px;line-height:1.55}*{box-sizing:border-box}body{background:var(--bg);min-height:100vh;color:var(--ink);margin:0}body:before,body:after{content:"";z-index:-1;filter:blur(40px);opacity:.35;border-radius:50%;width:420px;height:420px;position:fixed;inset:auto}body:before{background:#f3c99f;top:-120px;right:-120px}body:after{background:#9ad6c7;bottom:-140px;left:-120px}#root{min-height:100vh}h1,h2,h3,h4{color:var(--ink);margin:0;font-family:Fraunces,serif}p{margin:0}button,input,select,textarea{font-family:inherit}a{color:inherit}.btn{cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-weight:600;transition:transform .2s,box-shadow .2s;display:inline-flex}.btn-primary{background:var(--ink);color:var(--surface);box-shadow:var(--shadow-soft)}.btn-primary:hover{transform:translateY(-1px)}.btn-secondary{background:var(--surface-2);color:var(--ink);border:1px solid var(--line)}.btn-outline{border:1px solid var(--line);color:var(--ink);background:0 0}.input,.select,.textarea{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);border-radius:12px;padding:10px 12px}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);outline:2px solid #0f766e59}.label{text-transform:uppercase;letter-spacing:.8px;color:var(--muted);margin-bottom:6px;font-size:13px}.helper{color:var(--muted);font-size:12px}.error-text{color:#ef4444;font-weight:700}.divider{background:var(--line);height:1px;margin:16px 0}.fade-in{animation:.6s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.app-shell{grid-template-columns:260px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--line);flex-direction:column;gap:24px;height:100vh;padding:28px 20px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;display:flex}.brand-badge{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#fff;letter-spacing:.4px;border-radius:14px;place-items:center;width:42px;height:42px;font-weight:700;display:grid}.brand h1{margin:0;font-size:20px}.nav-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.nav-link{color:var(--muted);border-radius:12px;align-items:center;gap:12px;padding:10px 12px;font-weight:500;text-decoration:none;transition:background .2s,color .2s,transform .2s;display:flex}.nav-link:hover{background:var(--surface-2);color:var(--ink);transform:translate(2px)}.nav-link.active{background:var(--ink);color:var(--surface)}.sidebar-footer{background:var(--surface-2);color:var(--muted);border-radius:16px;margin-top:auto;padding:16px;font-size:13px}.app-main{flex-direction:column;min-height:100vh;display:flex}.topbar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);z-index:10;background:#ffffffb3;justify-content:space-between;align-items:center;padding:18px 32px;display:flex;position:sticky;top:0}.topbar-actions{align-items:center;gap:12px;display:flex}.content{padding:28px 32px 48px}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:24px;display:flex}.page-title{margin:0 0 6px;font-size:32px}.page-subtitle{color:var(--muted);margin:0}.card-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-soft);border-radius:18px;padding:18px}.card h3{margin:0 0 8px;font-size:18px}.chip{background:var(--surface-2);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.table{border-collapse:collapse;width:100%}.table th,.table td{text-align:left;border-bottom:1px solid var(--line);padding:12px 10px;font-size:14px}.table th{color:var(--muted);font-weight:600}.table-row:hover{background:var(--surface-2)}.field-row{grid-template-columns:1.3fr 1fr 1fr auto;align-items:center;gap:12px;display:grid}.stack{flex-direction:column;gap:10px;display:flex}.inline{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.tag{background:var(--accent-2-soft);color:var(--ink);border-radius:999px;padding:4px 8px;font-size:12px;font-weight:600}.status{border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.status.active{color:#0f766e;background:#0f766e26}.status.inactive{color:#9a5b1d;background:#d68a292e}.status.submitted{color:#0f766e;background:#0f766e26}.status.draft{color:#6a5f57;background:#948b8133}.status.reviewed{color:#0f766e;background:#0f766e33}.auth-layout{grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.auth-hero{background:linear-gradient(140deg,#efe6d8,#fff8ec);flex-direction:column;justify-content:center;gap:18px;padding:48px;display:flex}.auth-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-soft);border-radius:20px;padding:32px}.form-grid{gap:16px;display:grid}.public-shell{max-width:920px;margin:40px auto 80px;padding:0 20px}.progress-bar{background:var(--surface-2);border-radius:999px;height:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--accent), var(--accent-2));width:0;height:100%;transition:width .3s}@media (width<=1024px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:none;border-bottom:1px solid var(--line);height:auto;position:relative}.content{padding:24px 20px 40px}.auth-layout,.field-row{grid-template-columns:1fr}}
