:root{
  --gold:#b68b36;--gold-dark:#8d6823;--gold-soft:#f7f0df;--ink:#1f2933;--muted:#6b7280;
  --bg:#f5f6f8;--card:#fff;--line:#e6e8ec;--danger:#b42318;--danger-bg:#feeceb;
  --success:#18794e;--success-bg:#e9f7ef;--warning:#986801;--warning-bg:#fff5d8;--sidebar:#20252b;
  --shadow:0 8px 30px rgba(31,41,51,.07);--radius:16px;
}
*{box-sizing:border-box}html{font-family:Tahoma,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--ink)}body{margin:0;background:var(--bg)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.app-shell{min-height:100vh;display:grid;grid-template-columns:270px 1fr}.sidebar{background:linear-gradient(180deg,var(--sidebar),#171b20);color:#fff;position:fixed;right:0;top:0;bottom:0;width:270px;overflow-y:auto;z-index:30}.brand{display:flex;align-items:center;gap:12px;padding:24px 20px;border-bottom:1px solid rgba(255,255,255,.08)}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:linear-gradient(145deg,#d5b76f,var(--gold));color:#fff;font-size:24px;font-weight:800;box-shadow:0 8px 22px rgba(182,139,54,.24)}.brand-mark.large{width:64px;height:64px;border-radius:20px;font-size:34px;margin:auto}.brand strong,.brand span{display:block}.brand strong{font-size:16px}.brand span{font-size:11px;color:#b7bdc5;margin-top:4px}.nav{padding:16px 12px 28px}.nav-link{display:flex;gap:11px;align-items:center;padding:11px 13px;border-radius:10px;color:#dce0e4;font-size:14px;margin:2px 0;transition:.2s}.nav-link:hover{background:rgba(255,255,255,.08);color:#fff}.nav-link span{width:22px;text-align:center;color:#d8b866}.nav-label{font-size:10px;color:#7f8892;padding:20px 12px 7px;text-transform:uppercase;letter-spacing:.8px}.main{grid-column:2;min-width:0}.topbar{height:82px;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:20}.page-heading h1{font-size:21px;margin:0}.page-heading p{font-size:12px;color:var(--muted);margin:5px 0 0}.user-menu{display:flex;align-items:center;gap:10px}.avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--gold-soft);color:var(--gold-dark);font-weight:800}.avatar.small{width:34px;height:34px}.user-text strong,.user-text span{display:block}.user-text strong{font-size:13px}.user-text span{font-size:11px;color:var(--muted);margin-top:3px}.menu-button{display:none;border:0;background:transparent;font-size:24px}.content{padding:28px;max-width:1600px;margin:auto}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px;margin-bottom:22px}.card-header,.toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.card-header h2,.toolbar h2{font-size:18px;margin:0}.card-header p,.toolbar p{color:var(--muted);font-size:13px;margin:6px 0 0}.toolbar{margin-bottom:18px}.btn{border:1px solid transparent;border-radius:10px;padding:10px 16px;display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;font-weight:700;font-size:13px;white-space:nowrap}.btn-primary{background:linear-gradient(145deg,#c49a47,var(--gold-dark));color:#fff}.btn-primary:hover{filter:brightness(.96)}.btn-ghost{background:#fff;border-color:var(--line);color:#39424c}.btn-danger{background:var(--danger-bg);color:var(--danger);border-color:#f8c8c4}.btn-sm{padding:7px 10px;font-size:12px}.btn-block{width:100%}.actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.actions form{margin:0}.alert{padding:13px 16px;border-radius:10px;margin-bottom:16px;font-size:13px;border:1px solid}.alert-success{background:var(--success-bg);color:var(--success);border-color:#c8ead8}.alert-danger{background:var(--danger-bg);color:var(--danger);border-color:#f8c8c4}.alert-warning{background:var(--warning-bg);color:var(--warning);border-color:#f0dda4}.welcome-banner{background:linear-gradient(120deg,#1f252b,#333b43);color:#fff;border-radius:20px;padding:28px 30px;display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;box-shadow:var(--shadow)}.welcome-banner h2{font-size:24px;margin:7px 0}.welcome-banner p{color:#cbd1d6;margin:0;max-width:750px;line-height:1.8}.eyebrow{font-size:11px;color:#d7bd7c;font-weight:800}.banner-badge{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.08);padding:10px 14px;border-radius:12px;color:#e5cf9b}.stats-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-bottom:22px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:17px;box-shadow:0 5px 18px rgba(31,41,51,.04)}.stat-card span,.stat-card small{display:block;color:var(--muted);font-size:11px}.stat-card strong{display:block;font-size:27px;margin:9px 0 4px;color:var(--gold-dark)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:22px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.align-start{align-items:start}.workflow-list{display:grid;gap:10px}.workflow-item{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:12px;border:1px solid var(--line);padding:12px;border-radius:12px}.workflow-item b{width:32px;height:32px;border-radius:10px;background:#eef0f2;display:grid;place-items:center}.workflow-item strong,.workflow-item span{display:block}.workflow-item span{font-size:12px;color:var(--muted);margin-top:4px}.workflow-item em{font-style:normal;font-size:11px;color:var(--muted)}.workflow-item.active{border-color:#e1c98d;background:var(--gold-soft)}.workflow-item.active b{background:var(--gold);color:#fff}.activity-list{display:grid;gap:13px}.activity{display:flex;gap:11px;align-items:flex-start}.activity .dot{width:8px;height:8px;border-radius:50%;background:var(--gold);margin-top:6px}.activity strong,.activity small{display:block}.activity strong{font-size:12px}.activity small{color:var(--muted);font-size:10px;margin-top:4px}.table-card{padding:0;overflow:hidden}.table-card .card-header{padding:20px 22px 0}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:right;padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:middle}th{font-size:11px;color:var(--muted);background:#fafbfc;font-weight:800}td small{display:block;color:var(--muted);font-size:10px;margin-top:4px}tbody tr:hover{background:#fcfcfd}tbody tr:last-child td{border-bottom:0}.person-cell{display:flex;align-items:center;gap:10px}.tag{display:inline-flex;padding:5px 9px;border-radius:999px;background:#f0f2f4;color:#4c5661;font-size:10px;margin:2px}.tag-gold{background:var(--gold-soft);color:var(--gold-dark)}.status{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:800}.status-success{background:var(--success-bg);color:var(--success)}.status-muted{background:#eef0f2;color:#68717b}.status-warning{background:var(--warning-bg);color:var(--warning)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.form-grid.one-col{grid-template-columns:1fr}.form-grid label,.stack label,.setting-card label{display:grid;gap:7px;font-size:12px;font-weight:700;color:#414b55}.form-grid input,.form-grid select,.form-grid textarea,.stack input,.setting-card input{width:100%;border:1px solid #d9dde2;border-radius:10px;background:#fff;padding:11px 12px;color:var(--ink);outline:none}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.stack input:focus,.setting-card input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(182,139,54,.12)}.form-grid textarea{resize:vertical}.span-2{grid-column:span 2}.check{display:flex!important;align-items:center;gap:9px!important;font-weight:600!important}.check input{width:auto!important}.check-stack{display:grid;gap:12px;align-content:center}.danger-check{color:var(--danger)!important}.form-action{display:flex;align-items:end}.stack{display:grid;gap:15px}.stack-lg{display:grid;gap:0}.sticky-actions{position:sticky;bottom:12px;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border:1px solid var(--line);box-shadow:var(--shadow);padding:12px 16px;border-radius:14px;display:flex;justify-content:flex-end;gap:10px;z-index:10;margin-bottom:18px}.permission-toolbar{display:flex;gap:8px;margin-bottom:15px}.permission-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.permission-group{border:1px solid var(--line);border-radius:13px;overflow:hidden;background:#fff}.permission-group h3{font-size:13px;margin:0;padding:12px 14px;background:#faf9f6;border-bottom:1px solid var(--line);color:var(--gold-dark)}.permission-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid #f0f1f3}.permission-row:last-child{border-bottom:0}.permission-row strong,.permission-row small{display:block}.permission-row strong{font-size:11px}.permission-row small{font-size:9px;color:var(--muted);margin-top:3px}.permission-row select{font-size:10px;padding:6px;border:1px solid var(--line);border-radius:8px}.permission-check{display:flex;gap:9px;align-items:flex-start;padding:10px 12px;border-bottom:1px solid #f0f1f3;cursor:pointer}.permission-check:last-child{border-bottom:0}.permission-check strong,.permission-check small{display:block}.permission-check strong{font-size:11px}.permission-check small{font-size:9px;color:var(--muted);margin-top:3px}.cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.role-card{margin:0}.role-top{display:flex;justify-content:space-between;gap:12px}.role-top h3{margin:0;font-size:16px}.role-top p{font-size:12px;color:var(--muted);line-height:1.7;min-height:42px}.role-meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;margin:14px 0;font-size:11px;color:var(--muted)}.settings-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.setting-card{display:grid;gap:12px;margin:0}.setting-card small{color:var(--muted);font-size:10px}.module-hero{display:grid;grid-template-columns:70px 1fr auto;align-items:center;gap:20px;padding:30px}.module-icon{width:64px;height:64px;border-radius:18px;background:var(--gold-soft);color:var(--gold-dark);display:grid;place-items:center;font-size:28px}.module-hero h2{font-size:24px;margin:6px 0}.module-hero p{color:var(--muted);line-height:1.8;margin:0}.feature-card strong{font-size:15px}.feature-card p{color:var(--muted);font-size:12px;line-height:1.8}.roadmap ol{line-height:2;color:#4e5863}.empty{padding:30px;text-align:center;color:var(--muted)}.empty-state{text-align:center;padding:60px}.error-code{font-size:70px;color:var(--gold);font-weight:900}.narrow-card{max-width:600px;margin:30px auto}.login-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top right,#fbf6e9,transparent 45%),linear-gradient(145deg,#f4f5f7,#e8ebef);padding:20px}.login-card{background:#fff;width:min(420px,100%);padding:34px;border-radius:22px;border:1px solid var(--line);box-shadow:0 24px 70px rgba(31,41,51,.14)}.login-brand{text-align:center;margin-bottom:26px}.login-brand h1{margin:15px 0 5px}.login-brand p,.login-note{color:var(--muted);font-size:12px}.login-note{text-align:center;margin:20px 0 0;line-height:1.7}code{font-family:Consolas,monospace;background:#f2f3f5;padding:3px 6px;border-radius:6px;font-size:10px}
@media(max-width:1200px){.stats-grid{grid-template-columns:repeat(3,1fr)}.permission-groups,.cards-grid,.settings-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.app-shell{display:block}.sidebar{transform:translateX(100%);transition:.25s}.sidebar-open .sidebar{transform:translateX(0)}.main{margin:0}.menu-button{display:block}.topbar{padding:0 16px}.user-text{display:none}.content{padding:18px}.grid-2,.grid-3{grid-template-columns:1fr}.permission-groups,.cards-grid,.settings-grid{grid-template-columns:1fr}.welcome-banner{align-items:flex-start;gap:15px}.banner-badge{display:none}.module-hero{grid-template-columns:55px 1fr}.module-hero .status{grid-column:2}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}}
@media(max-width:600px){.stats-grid{grid-template-columns:repeat(2,1fr)}.page-heading p{display:none}.topbar{height:68px}.content{padding:12px}.card{padding:16px}.toolbar,.card-header{align-items:flex-start;flex-direction:column}.permission-row{align-items:flex-start;flex-direction:column}.welcome-banner{padding:22px}.welcome-banner h2{font-size:20px}}
