:root{--bg:#f3f5fa;--ink:#171b2e;--muted:#747c91;--primary:#6754e8;--primary-dark:#5140ca;--line:#e5e8f0;--side:#111528;--card-shadow:0 8px 30px rgba(28,34,62,.055)}
body{font-feature-settings:"tnum" 1,"cv02" 1;background:linear-gradient(135deg,#f7f8fc 0,#f1f3f9 50%,#f5f6fb 100%)}
.sidebar{width:264px;padding:22px 14px;background:linear-gradient(180deg,#12162b 0%,#171b33 100%);border-right:1px solid rgba(255,255,255,.06);box-shadow:12px 0 45px rgba(16,20,40,.11)}
.brand{padding:2px 10px 22px;font-size:21px;letter-spacing:-.4px}.brand span{width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,#836ff5,#5c49da);box-shadow:0 8px 24px rgba(108,92,231,.4)}
.sidebar nav{overflow-y:auto;padding-right:3px;scrollbar-width:thin;scrollbar-color:#343a57 transparent}.sidebar nav small{color:#707995;margin:20px 12px 7px}.sidebar nav a{position:relative;min-height:44px;margin:3px 0;padding:11px 13px;border:1px solid transparent;border-radius:11px;color:#aeb6cc;font-size:13.5px;font-weight:560;transition:.18s ease}.sidebar nav a:hover{color:#fff;background:rgba(255,255,255,.055);transform:translateX(2px)}.sidebar nav a.active{background:linear-gradient(135deg,#725fed,#5d4ad8);border-color:rgba(255,255,255,.13);box-shadow:0 8px 22px rgba(68,51,174,.32);color:#fff}.sidebar nav a.active:after{content:"";position:absolute;right:10px;width:5px;height:5px;border-radius:50%;background:#bdb4ff;box-shadow:0 0 0 4px rgba(255,255,255,.08)}
.side-user{margin-top:14px;padding:17px 8px 2px;border-color:#2b314b}.avatar{border-radius:50%;background:linear-gradient(145deg,#6354d8,#8a79f4);box-shadow:0 6px 18px #0b0e1e80}.side-user b{font-size:13.5px}.side-user small{color:#858fa9}
.main{margin-left:264px}.topbar{position:sticky;top:0;z-index:8;height:68px;padding:0 32px;background:rgba(255,255,255,.84);backdrop-filter:blur(16px);border-color:rgba(222,226,237,.9)}.logout{padding:9px 13px;border-radius:9px;background:#f0f1f6;color:#525b70;font-weight:700;transition:.18s}.logout:hover{background:#ffecef;color:#c13b4c}.content{max-width:1720px;margin:0 auto;padding:30px 34px 50px}
.page-title{margin-bottom:24px}.page-title span{display:inline-flex;padding:5px 8px;border-radius:6px;background:#eeeaff;color:#604ce0}.page-title h1{margin:8px 0 5px;font-size:29px;letter-spacing:-.8px}.page-title p{font-size:13.5px}
.welcome{border:1px solid rgba(255,255,255,.08);background:radial-gradient(circle at 85% 20%,rgba(126,108,243,.3),transparent 30%),linear-gradient(125deg,#171b32,#28224f);box-shadow:0 18px 50px rgba(28,25,65,.18)}
.stats,.report-grid{gap:15px}.stats article,.report-grid article,.table-card,.empty{border-color:rgba(225,228,237,.95);box-shadow:var(--card-shadow);transition:transform .18s ease,box-shadow .18s ease}.stats article:hover,.report-grid article:hover{transform:translateY(-2px);box-shadow:0 12px 34px rgba(28,34,62,.09)}.stats article,.report-grid article{border-radius:16px}.report-grid strong{font-size:22px;letter-spacing:-.4px}.report-grid .remaining{background:radial-gradient(circle at 90% 10%,rgba(118,100,235,.25),transparent 35%),linear-gradient(135deg,#171b31,#242a48)}
.table-card{border-radius:17px}.table-head{padding:20px 22px;background:linear-gradient(180deg,#fff,#fdfdfe)}.table-head h2{font-size:17px;letter-spacing:-.25px}.table-scroll{scrollbar-width:thin;scrollbar-color:#cbd0de transparent}table{background:#fff}th{height:43px;background:#f8f9fc;color:#7a8399;font-weight:800}td{height:52px;color:#30364a}tbody tr{transition:background .14s}tbody tr:hover{background:#fafaff}tbody tr:last-child td{border-bottom:0}
input,select,textarea{transition:border-color .16s,box-shadow .16s;background-color:#fff!important}input:focus,select:focus,textarea:focus{outline:0;border-color:#7563e9!important;box-shadow:0 0 0 3px rgba(108,92,231,.12)!important}.report-button,.date-form button,.owner-add button,.mini-button,.expense-form button,.penalty-form button{background:linear-gradient(135deg,#725fed,#5b48d4)!important;box-shadow:0 6px 16px rgba(93,72,212,.2);transition:transform .15s,box-shadow .15s}.report-button:hover,.date-form button:hover,.owner-add button:hover,.expense-form button:hover,.penalty-form button:hover{transform:translateY(-1px);box-shadow:0 9px 20px rgba(93,72,212,.28)}
.flash{border:1px solid transparent;border-radius:11px;box-shadow:0 7px 20px rgba(30,36,62,.05)}.flash.success{border-color:#c9f0df}.flash.error{border-color:#ffd6dc}.usd-inline{white-space:nowrap}.fine,.penalty-value{font-variant-numeric:tabular-nums}
@media(max-width:1100px){.content{padding:26px 24px 44px}.sidebar{width:244px}.main{margin-left:244px}}
@media(max-width:820px){.sidebar{width:270px;box-shadow:20px 0 60px rgba(5,8,20,.35)}.main{margin-left:0}.topbar{height:62px;padding:0 18px}.menu{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#f0eefc;color:#604ce0}.content{padding:20px 15px 38px}.page-title h1{font-size:25px}.page-title{gap:14px}.date-form{width:100%;flex-wrap:wrap}.date-form input,.date-form select{min-width:140px}.date-form button{flex:0 0 auto}.table-card{border-radius:14px}.welcome{padding:25px 22px}}
@media(max-width:520px){.content{padding:16px 11px 32px}.page-title{margin-bottom:18px}.page-title h1{font-size:23px}.stats,.report-grid{gap:11px}.stats article,.report-grid article{padding:17px}.table-head{padding:17px}.auth-card{border-radius:18px}}
