@import"https://fonts.googleapis.com/css2?family=Vazirmatn:wght@300;400;500;600;700&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--brand: #c4fe82;--brand-dim: #9ed65a;--brand-fg: #1a2010;--brand-glow:#c4fe8230;--bg: #141810;--bg2: #1c2116;--bg3: #242c1c;--border: #2e3a24;--text: #e4edda;--text2: #7a9464;--shadow: 0 4px 20px #00000050;--radius: 12px;--sidebar-w: 240px;--green: #c4fe82;--red: #ff6b6b;--yellow: #ffd166;--purple: #b39ddb;--cyan: #80cbc4;--orange: #ffb347;--accent: var(--brand);--accent-fg: var(--brand-fg)}[data-theme=light]{--bg: #f0f5ea;--bg2: #ffffff;--bg3: #e8f0e0;--border: #c8d8b8;--text: #1c2810;--text2: #5a7448;--shadow: 0 4px 20px #00000018;--green: #3a8a00;--red: #cc2200;--yellow: #cc7700;--purple: #6a3a9a;--cyan: #007a6a;--accent: #3a8a00;--accent-fg: #ffffff}body{font-family:Vazirmatn,sans-serif;background:var(--bg);color:var(--text);min-height:100vh}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--text2)}.app-shell{display:flex;height:100vh;overflow:hidden}.sidebar{width:var(--sidebar-w);background:var(--bg2);border-inline-end:1px solid var(--border);display:flex;flex-direction:column;transition:transform .3s cubic-bezier(.4,0,.2,1);z-index:100;flex-shrink:0}.sidebar-header{padding:16px 14px;border-bottom:1px solid var(--border)}.app-logo{display:flex;align-items:center;gap:8px}.logo-icon{width:32px;height:32px;object-fit:contain;flex-shrink:0}.logo-text{font-size:16px;font-weight:800;color:var(--text);letter-spacing:-.3px}.logo-text span{color:var(--brand)}.sidebar-nav{flex:1;padding:10px 8px;overflow-y:auto}.nav-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:9px;color:var(--text2);text-decoration:none;transition:all .15s;margin-bottom:2px;font-size:13.5px}.nav-item:hover{background:var(--bg3);color:var(--text)}.nav-item.active{background:var(--brand-glow);color:var(--brand);font-weight:600}[data-theme=light] .nav-item.active{background:var(--accent)20}.nav-icon{font-size:17px;width:22px;text-align:center;flex-shrink:0}.sidebar-footer{padding:10px 12px;border-top:1px solid var(--border)}.user-info{display:flex;align-items:center;gap:9px;padding:8px;margin-bottom:6px}.user-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0}.user-details{display:flex;flex-direction:column;min-width:0}.user-name{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role{font-size:11px;color:var(--text2)}.logout-btn{width:100%;padding:7px;background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--text2);cursor:pointer;font-family:inherit;font-size:12px;transition:all .15s}.logout-btn:hover{border-color:var(--red);color:var(--red)}.main-area{flex:1;display:flex;flex-direction:column;overflow:hidden}.topbar{height:54px;background:var(--bg2);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 16px;flex-shrink:0;padding-top:env(safe-area-inset-top,0);min-height:calc(54px + env(safe-area-inset-top,0))}.menu-toggle{background:none;border:none;color:var(--text);font-size:22px;cursor:pointer;padding:6px;border-radius:8px;display:none;-webkit-tap-highlight-color:transparent;line-height:1}.menu-toggle:hover{background:var(--bg3)}.topbar-right{display:flex;align-items:center;gap:8px}.topbar-user{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text2)}.user-dot{width:8px;height:8px;border-radius:50%}.theme-toggle{background:var(--bg3);border:1px solid var(--border);border-radius:20px;padding:5px 10px;cursor:pointer;font-size:14px;color:var(--text);font-family:inherit;display:flex;align-items:center;gap:4px;transition:all .15s}.theme-toggle:hover{border-color:var(--brand)}.lang-select{background:var(--bg3);border:1px solid var(--border);border-radius:8px;padding:5px 8px;color:var(--text);font-family:inherit;font-size:12px;cursor:pointer}.lang-select:focus{outline:none;border-color:var(--brand)}.notif-wrapper{position:relative}.notif-btn{background:none;border:none;font-size:19px;cursor:pointer;position:relative;padding:5px;border-radius:8px;color:var(--text)}.notif-btn:hover{background:var(--bg3)}.notif-badge{position:absolute;top:-2px;inset-inline-end:-2px;background:var(--red);color:#fff;font-size:10px;width:15px;height:15px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:inherit}.notif-dropdown{position:absolute;top:calc(100% + 8px);inset-inline-end:0;width:290px;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);z-index:200;overflow:hidden;box-shadow:var(--shadow)}.notif-header{display:flex;justify-content:space-between;align-items:center;padding:11px 14px;border-bottom:1px solid var(--border);font-size:13px;font-weight:600}.mark-all-btn{font-size:11px;background:none;border:none;color:var(--brand);cursor:pointer;font-family:inherit}.notif-list{max-height:280px;overflow-y:auto}.notif-item{padding:9px 14px;border-bottom:1px solid var(--border)}.notif-item.unread{background:var(--brand-glow)}.notif-title{font-size:12px;font-weight:600;margin-bottom:2px}.notif-body{font-size:11px;color:var(--text2)}.notif-time{font-size:10px;color:var(--text2);margin-top:2px}.notif-empty{padding:20px;text-align:center;color:var(--text2);font-size:12px}.page-content{flex:1;overflow-y:auto;padding:20px;padding-bottom:calc(20px + env(safe-area-inset-bottom,0))}.page{max-width:1200px;margin:0 auto}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;flex-wrap:wrap;gap:10px}.page-header h1{font-size:21px;font-weight:700}.header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin-bottom:22px}.stat-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:14px;display:flex;gap:12px;align-items:flex-start;border-inline-start:3px solid;box-shadow:var(--shadow);transition:transform .15s}.stat-card:hover{transform:translateY(-2px)}.stat-icon{font-size:22px;width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-body{flex:1;min-width:0}.stat-label{font-size:11px;color:var(--text2);margin-bottom:4px}.stat-value{font-size:19px;font-weight:700;line-height:1}.stat-sub{font-size:10px;color:var(--text2);margin-top:4px}.section-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:18px;margin-bottom:18px;box-shadow:var(--shadow)}.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.section-head h3{font-size:14px;font-weight:600}.see-all{font-size:12px;color:var(--brand);text-decoration:none}.tx-list{display:flex;flex-direction:column;gap:6px}.tx-row{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;transition:background .12s}.tx-row:hover{background:var(--bg3)}.tx-icon{font-size:20px;flex-shrink:0}.tx-info{flex:1;min-width:0}.tx-desc{font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tx-meta{font-size:11px;color:var(--text2);display:flex;gap:8px;margin-top:2px;flex-wrap:wrap}.tx-amount{font-size:13px;font-weight:600;white-space:nowrap}.tx-amount.income{color:var(--green)}.tx-amount.expense{color:var(--red)}.tx-table-wrap{overflow-x:auto}.tx-table{width:100%;border-collapse:collapse;font-size:13px}.tx-table th{background:var(--bg3);padding:9px 11px;text-align:inherit;color:var(--text2);font-weight:600;border-bottom:1px solid var(--border);white-space:nowrap}.tx-table td{padding:9px 11px;border-bottom:1px solid var(--border)66}.tx-table tr:hover td{background:var(--bg3)}.dot{width:8px;height:8px;border-radius:50%;display:inline-block;margin-inline-end:5px;vertical-align:middle}.badge{padding:2px 8px;border-radius:20px;font-size:11px;font-weight:600}.badge.income{background:var(--green)22;color:var(--green)}.badge.expense{background:var(--red)22;color:var(--red)}.badge-warn{background:var(--yellow)22;color:var(--yellow)}.badge-info{background:var(--cyan)22;color:var(--cyan)}.badge-success{background:var(--green)22;color:var(--green)}.badge-inactive{background:var(--text2)22;color:var(--text2)}.badge-cycle{background:var(--purple)22;color:var(--purple);font-size:11px;padding:2px 7px;border-radius:20px;margin-inline-end:6px}.green{color:var(--green)}.red{color:var(--red)}.blue{color:var(--brand)}.yellow{color:var(--yellow)}.purple{color:var(--purple)}.amount.income{color:var(--green)}.amount.expense{color:var(--red)}.form-group{margin-bottom:13px}.form-group label{display:block;font-size:12px;color:var(--text2);margin-bottom:5px;font-weight:500}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:11px}input,select,textarea{width:100%;padding:9px 12px;border-radius:8px;background:var(--bg3);border:1px solid var(--border);color:var(--text);font-family:inherit;font-size:13px;transition:border-color .15s}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand)}input[type=checkbox]{width:auto;accent-color:var(--brand)}.checkbox-group{display:flex;gap:14px}.checkbox-group label{font-size:13px;color:var(--text);display:flex;align-items:center;gap:6px;cursor:pointer}.filter-input{flex:1}.month-picker{width:auto}.btn-primary{padding:9px 18px;border-radius:8px;background:var(--brand);color:var(--brand-fg);border:none;cursor:pointer;font-family:inherit;font-size:13px;font-weight:700;transition:background .15s,transform .1s}.btn-primary:hover{background:var(--brand-dim)}.btn-primary:active{transform:scale(.97)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{padding:9px 18px;border-radius:8px;background:transparent;color:var(--text);border:1px solid var(--border);cursor:pointer;font-family:inherit;font-size:13px;transition:border-color .15s}.btn-ghost:hover{border-color:var(--brand);color:var(--brand)}.btn-sm{padding:5px 12px;border-radius:6px;font-size:12px;cursor:pointer;font-family:inherit;border:1px solid var(--border);background:var(--bg3);color:var(--text);transition:all .12s}.btn-sm:hover{border-color:var(--brand);color:var(--brand)}.btn-success{background:var(--green)22;color:var(--green);border-color:var(--green)44}.btn-icon{background:none;border:none;cursor:pointer;font-size:16px;padding:4px 6px;border-radius:6px;color:var(--text2);transition:background .12s}.btn-icon:hover{background:var(--bg3);color:var(--text)}.add-btn{padding:6px 12px;background:var(--brand-glow);color:var(--brand);border:1px solid var(--brand)44;border-radius:6px;cursor:pointer;font-family:inherit;font-size:12px;font-weight:600}.add-btn:hover{background:var(--brand);color:var(--brand-fg)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000075;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px}.modal{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:560px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow)}.modal-header{padding:15px 18px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.modal-header h2{font-size:16px;font-weight:700}.modal-header button{background:none;border:none;color:var(--text2);font-size:18px;cursor:pointer;padding:2px;border-radius:4px}.modal-header button:hover{color:var(--text)}.modal-body{padding:18px}.modal-footer{padding:14px 18px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:8px}.type-toggle{display:flex;gap:8px;margin-bottom:14px}.type-toggle button{flex:1;padding:8px;border-radius:8px;border:1px solid var(--border);background:var(--bg3);color:var(--text2);cursor:pointer;font-family:inherit;font-size:13px;transition:all .15s}.type-toggle button.active.expense{background:var(--red)20;color:var(--red);border-color:var(--red)44}.type-toggle button.active.income{background:var(--green)20;color:var(--green);border-color:var(--green)44}.filters-bar{display:flex;gap:9px;margin-bottom:18px;flex-wrap:wrap}.filters-bar select,.filters-bar input{width:auto;flex:1;min-width:110px}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:16px}.login-card{background:var(--bg2);border:1px solid var(--border);border-radius:20px;padding:36px;width:100%;max-width:400px;box-shadow:var(--shadow)}.login-logo{text-align:center;margin-bottom:24px}.login-logo-img{width:64px;height:64px;margin:0 auto 10px;display:block}.login-logo h1{font-size:22px;font-weight:800;margin-top:6px}.login-logo p{color:var(--text2);font-size:13px;margin-top:4px}.login-tabs{display:flex;background:var(--bg3);border-radius:10px;padding:3px;margin-bottom:20px}.login-tabs button{flex:1;padding:8px;border:none;background:none;border-radius:8px;color:var(--text2);cursor:pointer;font-family:inherit;font-size:13px;transition:all .15s}.login-tabs button.active{background:var(--brand);color:var(--brand-fg);font-weight:700}.login-form{display:flex;flex-direction:column;gap:2px}.error-msg{background:var(--red)20;border:1px solid var(--red)44;color:var(--red);padding:8px 12px;border-radius:8px;font-size:13px;margin-bottom:4px}.submit-btn{width:100%;padding:12px;background:var(--brand);color:var(--brand-fg);border:none;border-radius:10px;font-size:15px;font-weight:700;cursor:pointer;font-family:inherit;margin-top:8px;transition:background .15s}.submit-btn:hover{background:var(--brand-dim)}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.login-hint{text-align:center;font-size:13px;color:var(--text2);margin-top:14px}.login-hint button{background:none;border:none;color:var(--brand);cursor:pointer;font-family:inherit;font-weight:600}.avatar-picker,.color-picker{display:flex;gap:7px;flex-wrap:wrap}.avatar-opt{width:36px;height:36px;border:2px solid var(--border);border-radius:8px;background:var(--bg3);cursor:pointer;font-size:18px;transition:border-color .15s}.avatar-opt.selected{border-color:var(--brand)}.color-opt{width:26px;height:26px;border:2px solid transparent;border-radius:50%;cursor:pointer;color:#fff;font-size:11px;display:flex;align-items:center;justify-content:center;transition:all .15s}.color-opt.selected{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-fg)}.dashboard-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.user-breakdown{display:flex;flex-direction:column;gap:8px}.user-row{display:flex;align-items:center;gap:10px;padding:6px 0;font-size:13px}.user-dot-lg{width:10px;height:10px;border-radius:50%;flex-shrink:0}.income-badge{background:var(--green)22;color:var(--green);padding:2px 8px;border-radius:20px;font-size:12px;margin-inline-start:auto}.expense-badge{background:var(--red)22;color:var(--red);padding:2px 8px;border-radius:20px;font-size:12px}.category-bars{display:flex;flex-direction:column;gap:11px}.cat-bar-row{display:flex;align-items:center;gap:10px}.cat-bar-label{display:flex;justify-content:space-between;width:190px;font-size:12px;min-width:120px}.cat-bar-track{flex:1;height:7px;background:var(--bg3);border-radius:4px;overflow:hidden}.cat-bar-fill{height:100%;border-radius:4px;transition:width .6s ease}.cat-bar-pct{font-size:11px;color:var(--text2);width:32px;text-align:end}.trend-bars{display:flex;gap:10px;align-items:flex-end;padding:10px 0}.trend-col{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1}.trend-bar-group{display:flex;gap:3px;align-items:flex-end}.trend-bar{width:14px;border-radius:3px 3px 0 0;min-height:4px;transition:height .4s}.trend-bar.income{background:var(--brand)}.trend-bar.expense{background:var(--red)}.trend-month{font-size:11px;color:var(--text2)}.trend-legend{display:flex;gap:14px;margin-top:8px;font-size:12px}.legend-income{color:var(--brand)}.legend-expense{color:var(--red)}.items-section{margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.items-section h4{font-size:13px;margin-bottom:10px;color:var(--text2)}.item-row{display:flex;gap:8px;align-items:center;padding:6px 0;font-size:12px;border-bottom:1px solid var(--border)44}.add-item-row{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap}.add-item-row input{flex:1;min-width:80px}.items-total{margin-top:8px;font-size:13px;font-weight:600;color:var(--brand)}.loan-row{display:flex;align-items:center;gap:12px;padding:13px;border-radius:10px;border:1px solid var(--border);margin-bottom:9px;background:var(--bg3);transition:border-color .15s}.loan-row:hover{border-color:var(--brand)44}.loan-icon{font-size:22px;flex-shrink:0}.loan-info{flex:1;min-width:0}.loan-person{display:flex;align-items:center;gap:8px;font-size:13px;margin-bottom:4px;flex-wrap:wrap}.loan-meta{font-size:11px;color:var(--text2);display:flex;gap:10px;flex-wrap:wrap}.loan-desc{font-size:12px;color:var(--text2);margin-top:4px}.loan-amount{font-size:15px;font-weight:700;white-space:nowrap}.loan-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.returned{font-size:11px;color:var(--green)}.sub-row{display:flex;align-items:center;gap:12px;padding:13px;border-radius:10px;border:1px solid var(--border);margin-bottom:9px;background:var(--bg3);transition:all .2s}.sub-row:hover{border-color:var(--brand)44}.sub-row.inactive{opacity:.5}.sub-row.urgent{border-color:var(--yellow)88;background:var(--yellow)08}.sub-icon{font-size:22px;flex-shrink:0}.sub-info{flex:1;min-width:0}.sub-name{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:13px;margin-bottom:4px}.sub-meta{font-size:11px;color:var(--text2);display:flex;gap:10px;flex-wrap:wrap}.sub-amount{font-size:15px;font-weight:700;white-space:nowrap}.sub-actions{display:flex;gap:6px;flex-wrap:wrap}.urgent-text{color:var(--yellow);font-weight:600}.overdue-text{color:var(--red);font-weight:600}.notif-flags{display:flex;gap:4px;margin-top:4px}.voice-section{margin-bottom:18px}.voice-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}.voice-card h3{margin-bottom:6px;font-size:14px}.voice-hint{font-size:12px;color:var(--text2);margin-bottom:12px}.record-btn{padding:9px 22px;border-radius:30px;border:none;cursor:pointer;background:var(--brand);color:var(--brand-fg);font-family:inherit;font-size:13px;font-weight:700;transition:all .2s}.record-btn:hover{background:var(--brand-dim)}.record-btn.recording{background:var(--red);color:#fff;animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.65}}.transcript-box{margin-top:14px;padding:12px;background:var(--bg3);border-radius:8px;font-size:13px;border:1px solid var(--border)}.parsed-event{margin-top:12px}.cal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.cal-nav{background:none;border:1px solid var(--border);border-radius:6px;color:var(--text);padding:6px 12px;cursor:pointer;font-size:16px;transition:border-color .15s}.cal-nav:hover{border-color:var(--brand);color:var(--brand)}.cal-page{max-width:900px}.cal-grid-en{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;margin-top:8px}.cal-day-name-en{text-align:center;font-size:11px;font-weight:700;color:var(--text2);padding:6px 2px;text-transform:uppercase;letter-spacing:.5px}.cal-cell-en{min-height:62px;padding:5px 4px;border-radius:8px;border:1px solid var(--border)44;background:var(--bg3);cursor:pointer;transition:all .12s;position:relative;display:flex;flex-direction:column}.cal-cell-en:hover{background:var(--bg2);border-color:var(--brand)44}.cal-cell-en.empty{background:transparent;border-color:transparent;cursor:default}.cal-cell-en.today{background:var(--brand-glow);border-color:var(--brand)88}.cal-cell-en.selected{background:var(--brand)25;border-color:var(--brand)}.cal-num{font-size:13px;font-weight:700;line-height:1;display:block}.cal-cell-en.today .cal-num{color:var(--brand)}.cal-jal{font-size:9px;color:var(--text2);display:block;margin-top:1px;line-height:1}.cal-dots{display:flex;gap:2px;flex-wrap:wrap;margin-top:4px}.cal-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.event-row{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:8px;background:var(--bg3);border:1px solid var(--border);margin-bottom:7px;transition:border-color .15s}.event-row:hover{border-color:var(--brand)44}.event-icon{font-size:18px;flex-shrink:0}.event-info{flex:1}.event-title{font-size:13px;font-weight:600;margin-bottom:3px}.event-meta{font-size:11px;color:var(--text2);display:flex;gap:8px;flex-wrap:wrap}.chart-area{display:flex;gap:10px;align-items:flex-end;padding:14px 0;overflow-x:auto}.chart-col{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:48px}.chart-bars{display:flex;gap:3px;align-items:flex-end;height:140px}.chart-bar{width:16px;border-radius:4px 4px 0 0;transition:height .5s;min-height:3px}.chart-bar.income{background:var(--brand)}.chart-bar.expense{background:var(--red)}.chart-label{font-size:10px;color:var(--text2)}.chart-balance{font-size:10px;font-weight:600}.chart-balance.pos{color:var(--brand)}.chart-balance.neg{color:var(--red)}.summary-bars{display:flex;flex-direction:column;gap:13px}.summary-row{display:flex;align-items:center;gap:11px}.summary-label{width:80px;font-size:12px;flex-shrink:0}.summary-bar-track{flex:1;height:9px;background:var(--bg3);border-radius:5px;overflow:hidden}.summary-bar{height:100%;border-radius:5px;transition:width .6s}.summary-bar.income{background:var(--brand)}.summary-bar.expense{background:var(--red)}.summary-bar.balance{background:var(--cyan)}.summary-amount{font-size:13px;font-weight:700;width:85px;text-align:end}.change-text{margin-top:10px;font-size:12px}.net-worth-card .nw-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px}.nw-item{padding:11px;border-radius:8px;background:var(--bg3);border:1px solid var(--border)}.nw-item span{font-size:11px;color:var(--text2);display:block;margin-bottom:4px}.nw-item strong{font-size:15px;font-weight:700}.nw-item.green strong{color:var(--brand)}.nw-item.red strong{color:var(--red)}.nw-item.blue strong{color:var(--cyan)}.nw-item.yellow strong{color:var(--yellow)}.nw-item.purple strong{color:var(--purple)}.nw-item.large{grid-column:span 2}.category-detail{display:flex;flex-direction:column;gap:12px}.cat-detail-head{display:flex;align-items:center;gap:8px;margin-bottom:5px;font-size:13px;flex-wrap:wrap}.cat-detail-name{flex:1}.cat-detail-count{font-size:11px;color:var(--text2)}.cat-detail-amt{font-size:13px;font-weight:600}.alert-section{margin-bottom:18px}.budget-alert{background:var(--yellow)10;border:1px solid var(--yellow)40;border-radius:8px;padding:9px 13px;font-size:13px;margin-bottom:7px}.user-report-row{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--border)44}.user-rname{width:95px;font-size:13px}.user-r-bars{flex:1;display:flex;flex-direction:column;gap:3px}.user-r-bar{height:6px;border-radius:3px}.user-r-bar.income{background:var(--brand)}.user-r-bar.expense{background:var(--red)}.user-r-amounts{display:flex;flex-direction:column;gap:2px;font-size:12px;font-weight:600;width:85px;text-align:end}.scanner-upload{display:flex;flex-direction:column;gap:18px;max-width:600px;margin:0 auto}.upload-zone{border:2px dashed var(--border);border-radius:var(--radius);padding:50px 20px;text-align:center;cursor:pointer;transition:all .2s}.upload-zone:hover{border-color:var(--brand);background:var(--brand-glow)}.upload-icon{font-size:44px;margin-bottom:10px}.upload-hint{font-size:12px;color:var(--text2);margin-top:6px}.lists-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px}.list-card{background:var(--bg2);border:1px solid;border-radius:var(--radius);padding:14px;cursor:pointer;transition:transform .15s,box-shadow .15s;border-inline-start-width:4px;box-shadow:var(--shadow)}.list-card:hover{transform:translateY(-2px);box-shadow:0 8px 28px #00000040}.list-card-header{display:flex;align-items:flex-start;gap:10px;margin-bottom:12px}.list-icon-wrap{width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.list-icon{font-size:20px}.list-card-info{flex:1;min-width:0}.list-name{font-size:14px;font-weight:700;margin-bottom:2px}.list-store{font-size:11px;color:var(--text2);margin-bottom:2px}.list-owner{font-size:11px}.list-card-actions{display:flex;gap:2px}.list-progress{display:flex;align-items:center;gap:9px}.progress-track{flex:1;height:7px;background:var(--bg3);border-radius:4px;overflow:hidden}.progress-fill{height:100%;border-radius:4px;transition:width .5s ease}.progress-text{font-size:11px;color:var(--text2);white-space:nowrap}.list-estimate{margin-top:7px;font-size:11px;color:var(--text2)}.shop-item{display:flex;align-items:center;gap:10px;padding:10px 13px;border-bottom:1px solid var(--border)44;transition:background .1s}.shop-item:hover{background:var(--bg3)}.shop-item.checked{opacity:.55}.check-btn{width:21px;height:21px;border-radius:50%;border:2px solid var(--border);background:transparent;cursor:pointer;color:var(--brand-fg);font-size:11px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s}.check-btn:hover{border-color:var(--brand)}.item-content{flex:1;min-width:0}.item-name{font-size:13px;cursor:default}.shop-item.checked .item-name{text-decoration:line-through;color:var(--text2)}.item-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:3px}.item-meta span{font-size:11px;color:var(--text2)}.item-price{color:var(--brand)!important;font-weight:600}.item-del-btn{background:none;border:none;color:var(--text2);cursor:pointer;font-size:12px;padding:4px;border-radius:4px;opacity:0;transition:opacity .15s}.shop-item:hover .item-del-btn{opacity:1}.checked-section{margin-top:10px}.checked-header{font-size:12px;color:var(--text2);font-weight:600;padding:8px 0;border-top:1px solid var(--border);margin-bottom:4px}.high-pri-banner{background:var(--red)12;border:1px solid var(--red)38;border-radius:8px;padding:9px 13px;margin-bottom:12px;font-size:13px;color:var(--red)}.cat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.cat-btn{padding:7px 4px;border-radius:8px;border:1px solid var(--border);background:var(--bg3);color:var(--text2);cursor:pointer;font-family:inherit;font-size:12px;text-align:center;transition:all .15s}.cat-btn.selected{background:var(--brand-glow);border-color:var(--brand);color:var(--brand);font-weight:600}.icon-grid{display:flex;flex-wrap:wrap;gap:6px}.icon-btn{width:33px;height:33px;border:2px solid var(--border);border-radius:8px;background:var(--bg3);cursor:pointer;font-size:17px;display:flex;align-items:center;justify-content:center;transition:border-color .15s}.icon-btn.selected{border-color:var(--brand);background:var(--brand-glow)}.empty-state-full{text-align:center;padding:70px 20px;display:flex;flex-direction:column;align-items:center;gap:14px;grid-column:1/-1}.active-filter{border-color:var(--brand)!important;color:var(--brand)!important}.items-groups{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.items-group{background:var(--bg2);border:1px solid var(--border);border-radius:10px;overflow:hidden;margin-bottom:7px}.group-label{padding:7px 13px;font-size:11px;font-weight:700;color:var(--text2);background:var(--bg3);text-transform:uppercase;letter-spacing:.5px}.add-item-area{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:13px;margin-bottom:14px;box-shadow:var(--shadow)}.add-item-form{display:flex;gap:8px;align-items:center}.add-item-input{flex:1;padding:9px 13px;border-radius:8px;background:var(--bg3);border:1px solid var(--border);color:var(--text);font-family:inherit;font-size:14px}.add-item-input:focus{outline:none;border-color:var(--brand)}.expand-btn{background:var(--bg3);border:1px solid var(--border);border-radius:8px;color:var(--text2);padding:8px 10px;cursor:pointer;font-size:14px;transition:border-color .15s}.expand-btn:hover{border-color:var(--brand)}.item-extra-fields{margin-top:11px;padding-top:11px;border-top:1px solid var(--border)}.priority-btns{display:flex;gap:6px}.pri-btn{padding:5px 11px;border-radius:20px;border:1px solid var(--border);background:var(--bg3);color:var(--text2);cursor:pointer;font-size:12px;font-family:inherit;transition:all .15s}.pri-btn:hover{border-color:var(--brand)}.detail-header{display:flex;align-items:center;gap:12px;margin-bottom:18px;flex-wrap:wrap}.back-btn{background:none;border:1px solid var(--border);border-radius:8px;color:var(--text);padding:7px 13px;cursor:pointer;font-family:inherit;white-space:nowrap;transition:all .15s;font-size:13px}.back-btn:hover{border-color:var(--brand);color:var(--brand)}.detail-title{display:flex;align-items:center;gap:11px;flex:1}.detail-icon{font-size:26px;width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center}.detail-store{font-size:11px;color:var(--text2);margin-top:2px}.detail-actions{display:flex;gap:7px;flex-wrap:wrap}.detail-progress-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:14px;margin-bottom:14px;box-shadow:var(--shadow)}.dp-stats{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px;font-size:13px}.dp-pct{font-size:19px;font-weight:700}.dp-track{height:9px;background:var(--bg3);border-radius:5px;overflow:hidden;margin-bottom:9px}.dp-fill{height:100%;border-radius:5px;transition:width .6s}.dp-estimate{display:flex;gap:14px;font-size:12px;color:var(--text2);flex-wrap:wrap}.dp-estimate span{background:var(--bg3);padding:3px 9px;border-radius:20px}.loading{text-align:center;padding:50px;color:var(--text2)}.empty-state{text-align:center;padding:36px;color:var(--text2);font-size:14px}.items-table{width:100%;border-collapse:collapse;font-size:12px}@media (max-width: 768px){.sidebar{position:fixed;top:0;bottom:0;z-index:200;width:var(--sidebar-w)}[dir=rtl] .sidebar{right:0;left:auto;transform:translate(100%)}[dir=rtl] .sidebar.open{transform:translate(0);box-shadow:-4px 0 40px #00000060}[dir=ltr] .sidebar{left:0;right:auto;transform:translate(-100%)}[dir=ltr] .sidebar.open{transform:translate(0);box-shadow:4px 0 40px #00000060}.sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000070;z-index:99;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.sidebar-close-btn{display:flex!important}.sidebar-header{display:flex;align-items:center}.menu-toggle{display:flex!important}.dashboard-grid-2{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr 1fr}.form-row,.lists-grid{grid-template-columns:1fr}.cat-grid{grid-template-columns:repeat(3,1fr)}.topbar-user span:last-child{display:none}.nw-item.large{grid-column:span 1}.cal-cell-en{min-height:42px;padding:4px 3px}.cal-num{font-size:12px}.cal-jal{display:none}.cal-day-name-en{font-size:9px;padding:4px 1px}.scanner-review-grid{grid-template-columns:1fr}.scanner-img-wrap{max-height:220px}}@media (max-width: 480px){.stats-grid{grid-template-columns:1fr}.page-content{padding:12px}.modal{margin:4px;border-radius:16px}.login-card{padding:24px}}.scanner-review-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.scanner-img-wrap{max-height:360px;border-radius:12px;border:1px solid var(--border);overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--bg3)}.scanner-img-wrap img{width:100%;height:100%;object-fit:contain;max-height:360px}.sidebar-close-btn{display:none;background:none;border:none;color:var(--text2);font-size:20px;cursor:pointer;padding:4px 8px;border-radius:6px;margin-inline-start:auto;line-height:1}.sidebar-close-btn:hover{color:var(--text);background:var(--bg3)}
