*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--primary:#521314;--primary-light:#5e1516;--accent:#d4b896;--accent-light:#e2cba9;--accent-rgb:212, 184, 150;--sidebar-bg:#521314;--white:#fff;--bg:#faf7f2;--surface:#fff;--border:#e5ddd2;--text:#2c1a1a;--text-muted:#7a6a62;--gray:#6b5c54;--radius:8px;--shadow:0 1px 3px #00000014, 0 4px 12px #0000000a}body{background:var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif;font-size:14px;line-height:1.5}.app-shell{min-height:100vh;display:flex}.sidebar{background:var(--sidebar-bg);z-index:100;flex-direction:column;flex-shrink:0;width:240px;min-height:100vh;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar-logo{border-bottom:1px solid #ffffff1a;flex-direction:column;align-items:center;gap:6px;padding:20px 20px 16px;display:flex}.sidebar-logo-img{width:80px;height:auto}.brand-sub{color:#ffffff80;letter-spacing:.06em;text-transform:uppercase;font-size:11px}.sidebar-nav{flex:1;padding:12px 0;overflow-y:auto}.nav-link{color:#ffffff8c;border-left:3px solid #0000;border-radius:4px;align-items:center;gap:10px;margin:0 8px;padding:10px 16px;font-size:13px;font-weight:500;text-decoration:none;transition:all .15s;display:flex}.nav-link svg{flex-shrink:0;width:16px;height:16px}.nav-link:hover{color:#fff;background:#ffffff12}.nav-link.active{color:#fff;border-left-color:var(--accent);background:#d4b89626;margin-left:0;padding-left:13px}.sidebar-footer{border-top:1px solid #ffffff0f;padding:16px}.user-name{color:#fff;margin-bottom:12px;font-size:13px;font-weight:600}.main-content{flex:1;min-height:100vh;margin-left:240px}.page-header{background:var(--surface);border-bottom:1px solid var(--border);padding:28px 32px}.page-header h1{font-size:20px;font-weight:700}.page-header p{color:var(--text-muted);margin-top:2px;font-size:13px}.page-body{padding:28px 32px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.card-body{padding:24px}.btn{border-radius:var(--radius);cursor:pointer;border:none;justify-content:center;align-items:center;padding:9px 20px;font-family:inherit;font-size:13px;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.btn-primary{background:var(--accent);color:var(--primary)}.btn-primary:hover{background:var(--accent-light)}.btn-primary:disabled{opacity:.55;cursor:not-allowed}.btn-outline{color:var(--accent);border:1.5px solid var(--accent);background:0 0}.btn-outline:hover{background:var(--accent);color:#fff}.btn-ghost{color:#ffffff80;background:0 0}.btn-ghost:hover{color:#fff}.btn-sm{padding:6px 14px;font-size:12px}.btn-danger{color:#fff;background:#dc2626}.btn-danger:hover{background:#b91c1c}.text-muted{color:var(--text-muted)}.text-sm{font-size:12px}.mb-6{margin-bottom:24px}.flex{display:flex}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:8px}.section-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px;font-size:11px;font-weight:700}.badge{border-radius:99px;padding:3px 8px;font-size:11px;font-weight:600}.badge-green{color:#166534;background:#dcfce7}.badge-blue{color:#1e40af;background:#dbeafe}.badge-amber{color:#92400e;background:#fef3c7}.badge-gray{color:#6b7280;background:#f3f4f6}.top-bar{background:var(--sidebar-bg);z-index:110;border-bottom:1px solid #ffffff0f;align-items:center;gap:12px;height:52px;padding:0 16px;display:none;position:sticky;top:0}.hamburger{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:4px;padding:6px;display:flex}.hamburger span{background:#fffc;border-radius:2px;width:20px;height:2px;transition:all .2s;display:block}.hamburger.open span:first-child{transform:rotate(45deg)translate(4px,4px)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(-45deg)translate(4px,-4px)}.top-brand-logo{width:auto;height:36px}.backdrop{z-index:99;background:#00000080;position:fixed;inset:0}@media (width<=900px){.top-bar{display:flex}.sidebar{min-height:calc(100vh - 52px);transition:transform .22s;top:52px;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.main-content{margin-left:0}.page-header,.page-body{padding:20px}}
