*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}:root{--primary:#ff6b6b;--secondary:#4ecdc4;--accent:#ffe66d;--dark:#0a0e27;--dark-light:#1a1f3a;--gray:#6c7293;--light:#f7f7ff;--success:#4caf50;--warning:#ff9800;--danger:#f44336;--gradient:linear-gradient(135deg, #667eea 0%, #764ba2 100%);--bg-primary:#0a0e27;--bg-secondary:#1a1f3a;--bg-card:#1a1f3a99;--bg-card-hover:#1a1f3acc;--text-primary:#f7f7ff;--text-secondary:#6c7293;--border:#ffffff1a}body.light-theme{--bg-primary:#f7f7ff;--bg-secondary:#fff;--bg-card:#ffffffe6;--bg-card-hover:#fff;--text-primary:#0a0e27;--text-secondary:#6c7293;--border:#0000001a}:root{--tg-top:0px}.top-pill{z-index:40;background:linear-gradient(135deg, #667eea14 0%, #764ba214 100%), var(--bg-card);-webkit-backdrop-filter:blur(22px)saturate(180%);border:1px solid var(--border);border-radius:999px;align-items:center;gap:4px;padding:4px;display:inline-flex;position:absolute;top:10px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px -10px #667eea59,0 2px 8px -2px #0000001f,inset 0 1px #ffffff14}html.tg-webapp .top-pill{top:calc(var(--tg-top) + 4px)}.top-pill-btn{width:36px;height:36px;color:var(--text-primary);cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;text-decoration:none;transition:transform .18s,background .18s,color .18s,box-shadow .18s;display:inline-flex;position:relative;overflow:hidden}.top-pill-btn:hover{background:#667eea24;transform:scale(1.06)}.top-pill-btn:active{transform:scale(.94)}.top-pill-btn i{width:18px;height:18px}.top-pill-btn.profile-trigger{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);box-shadow:0 4px 12px -4px #667eea8c}.top-pill-btn.profile-trigger:hover{background:linear-gradient(135deg,#7a8fef 0%,#8459b6 100%);transform:scale(1.08)}.top-pill-btn.profile-trigger[aria-expanded=true]{box-shadow:0 0 0 3px #667eea47,0 4px 12px -4px #667eea8c}.top-pill-avatar{-o-object-fit:cover;object-fit:cover;border-radius:50%;width:100%;height:100%}.top-pill-initials{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;font-size:14px;font-weight:700;display:flex}.profile-menu{background:var(--bg-secondary);border:1px solid var(--border);opacity:0;pointer-events:none;z-index:50;border-radius:20px;width:min(320px,100vw - 24px);padding:14px;transition:opacity .2s,transform .25s cubic-bezier(.2,.9,.3,1.1);position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%)translateY(-6px)scale(.96);box-shadow:0 24px 60px -20px #00000059,0 8px 24px -8px #0000002e}.profile-menu.open{opacity:1;pointer-events:auto;transform:translate(-50%)translateY(0)scale(1)}.profile-menu-head{border-bottom:1px solid var(--border);align-items:center;gap:12px;margin-bottom:12px;padding:6px 6px 14px;display:flex}.profile-menu-avatar{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:22px;font-weight:700;display:flex;overflow:hidden;box-shadow:0 8px 20px -8px #667eea8c}.profile-menu-avatar img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.profile-menu-identity{flex:1;min-width:0}.profile-menu-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:700;overflow:hidden}.profile-menu-meta{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:12px;overflow:hidden}.profile-menu-stat{grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:12px;display:grid}.profile-menu-stat>div{background:var(--bg-card);border:1px solid var(--border);text-align:center;border-radius:12px;padding:8px 6px}.profile-menu-stat-label{text-transform:uppercase;letter-spacing:.3px;color:var(--text-secondary);font-size:10px}.profile-menu-stat-value{color:var(--text-primary);margin-top:3px;font-size:13px;font-weight:700}.profile-menu-list{flex-direction:column;gap:2px;display:flex}.profile-menu-logout{margin:0}.profile-menu-item{width:100%;color:var(--text-primary);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:12px;align-items:center;gap:12px;padding:11px 12px;font-family:inherit;font-size:14px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:flex}.profile-menu-item i{width:18px;height:18px;color:var(--text-secondary);flex-shrink:0}.profile-menu-item:hover{background:var(--bg-card)}.profile-menu-item.danger,.profile-menu-item.danger i{color:var(--danger)}.profile-menu-item.danger:hover{background:#f4433614}body{background:var(--bg-primary);color:var(--text-primary);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:all .3s;position:relative;overflow-x:hidden}a{color:inherit;text-decoration:none}.app-container{background:linear-gradient(180deg, var(--bg-primary) 0%, var(--bg-secondary) 100%);flex-direction:column;max-width:430px;min-height:100vh;margin:0 auto;display:flex;position:relative}.status-bar{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);color:var(--text-secondary);background:#0000001a;justify-content:space-between;align-items:center;padding:10px 20px;font-size:12px;display:flex}.status-bar .battery{align-items:center;gap:5px;display:flex}.app-container{padding-top:58px}html.tg-webapp .app-container{padding-top:calc(var(--tg-top) + 58px)}.header{background:var(--bg-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);padding:15px 20px}.header.header--bare{-webkit-backdrop-filter:none;background:0 0;border-bottom:0;padding:10px 20px 0}.header-top{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.header h1{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:26px;font-weight:700}.header-actions{gap:10px;display:flex}.theme-toggle,.sync-button,.icon-btn{background:var(--bg-card);border:1px solid var(--border);cursor:pointer;width:40px;height:40px;color:var(--text-primary);border-radius:50%;justify-content:center;align-items:center;transition:all .3s;display:flex}.theme-toggle:hover,.sync-button:hover,.icon-btn:hover{transform:scale(1.1)}.theme-toggle i,.sync-button i,.icon-btn i{width:20px;height:20px}.header .subtitle{color:var(--text-secondary);font-size:13px}.quick-stats{gap:10px;margin-top:15px;display:flex}.stat-card{background:linear-gradient(135deg,#667eea1a,#764ba21a);border:1px solid #667eea33;border-radius:10px;flex:1;padding:10px}.stat-label{color:var(--text-secondary);text-transform:uppercase;font-size:10px}.stat-value{margin-top:5px;font-size:15px;font-weight:700}.stat-value.positive{color:var(--success)}.stat-value.negative{color:var(--danger)}.main-content{scroll-behavior:smooth;flex:1;padding:20px 20px 100px;overflow-y:auto}.section-title{color:var(--text-primary);justify-content:space-between;align-items:center;margin-top:20px;margin-bottom:15px;font-size:17px;font-weight:600;display:flex}.section-title a{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:500}.action-buttons{grid-template-columns:repeat(2,1fr);gap:15px;margin-bottom:20px;display:grid}.action-button{cursor:pointer;color:#fff;text-align:left;border:none;border-radius:20px;align-items:center;gap:12px;padding:18px;transition:all .3s;display:flex;overflow:hidden}.action-button.income{background:linear-gradient(135deg,#4caf50 0%,#66bb6a 100%)}.action-button.expense{background:linear-gradient(135deg,#f44336 0%,#ef5350 100%)}.action-button:hover{transform:scale(1.04);box-shadow:0 10px 30px #0003}.action-button-icon{background:#fff3;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.action-button-icon i{color:#fff;width:24px;height:24px}.action-button-title{margin-bottom:2px;font-size:14px;font-weight:600}.action-button-amount{font-size:18px;font-weight:700}.quick-actions{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px;display:grid}.action-btn{text-align:center;cursor:pointer;color:var(--text-primary);background:linear-gradient(135deg,#667eea33,#764ba233);border:1px solid #667eea4d;border-radius:14px;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;transition:all .3s;display:flex}.action-btn:hover{transform:scale(1.05);box-shadow:0 5px 20px #667eea66}.action-btn i{width:22px;height:22px}.action-btn .action-label{font-size:11px;line-height:1.2}.departments,.envelope-scroll{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:12px;padding:4px 2px 12px;display:flex;overflow-x:auto}.departments::-webkit-scrollbar{display:none}.envelope-scroll::-webkit-scrollbar{display:none}.envelope-card{background:var(--bg-card);border:1px solid var(--border);cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;min-width:170px;padding:14px;transition:all .3s;position:relative;overflow:hidden}.envelope-card:before{content:"";background:var(--env-color,#667eea);height:4px;position:absolute;top:0;left:0;right:0}.envelope-card:hover{transform:translateY(-3px)}.envelope-head{align-items:center;gap:8px;margin-bottom:10px;font-size:13px;font-weight:600;display:flex}.envelope-head i{width:18px;height:18px;color:var(--env-color,#667eea)}.envelope-amount{margin-bottom:6px;font-size:18px;font-weight:700}.envelope-limit{color:var(--text-secondary);margin-bottom:8px;font-size:11px}.dashboard-card{background:var(--bg-card);border:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:18px;margin-bottom:15px;padding:20px;transition:all .3s}.dashboard-card:hover{transform:translateY(-3px);box-shadow:0 10px 30px #667eea33}.card-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px;margin-bottom:8px;font-size:12px}.card-value{color:var(--text-primary);margin-bottom:8px;font-size:30px;font-weight:700}.card-change{align-items:center;gap:5px;font-size:13px;display:flex}.card-change i{width:16px;height:16px}.positive{color:var(--success)}.negative{color:var(--danger)}.chart-container{height:180px;margin:10px 0 5px}.chart{justify-content:space-around;align-items:flex-end;gap:8px;width:100%;height:100%;display:flex}.chart-col{flex-direction:column;flex:1;align-items:center;gap:4px;display:flex}.chart-col .bars{justify-content:center;align-items:flex-end;gap:3px;width:100%;height:140px;display:flex}.chart-col .bar{border-radius:5px 5px 0 0;width:10px;transition:height .6s ease-out}.chart-col .bar.income{background:linear-gradient(#4caf50,#66bb6a)}.chart-col .bar.expense{background:linear-gradient(#f44336,#ef5350)}.chart-col .chart-label{color:var(--text-secondary);text-transform:uppercase;font-size:10px}.transaction-item,.list-item{background:var(--bg-card);cursor:pointer;border:1px solid var(--border);border-radius:14px;align-items:center;gap:12px;margin-bottom:10px;padding:14px;transition:all .3s;display:flex}.transaction-item:hover,.list-item:hover{background:var(--bg-card-hover);transform:translate(4px)}.transaction-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.transaction-icon.income{background:#4caf5026}.transaction-icon.income i{color:var(--success)}.transaction-icon.expense{background:#f4433626}.transaction-icon.expense i{color:var(--danger)}.transaction-icon i{width:20px;height:20px}.transaction-details{flex:1;min-width:0}.transaction-title{color:var(--text-primary);margin-bottom:3px;font-size:14px;font-weight:600}.transaction-meta{color:var(--text-secondary);gap:8px;font-size:11px;display:flex}.transaction-amount{white-space:nowrap;font-size:15px;font-weight:700}.transaction-amount.income{color:var(--success)}.transaction-amount.expense{color:var(--danger)}.progress-bar{background:var(--border);border-radius:3px;height:6px;margin-bottom:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#667eea 0%,#764ba2 100%);border-radius:3px;height:100%;transition:width .6s ease-out}.progress-fill.success{background:linear-gradient(90deg,#4caf50,#66bb6a)}.progress-fill.warning{background:linear-gradient(90deg,#ff9800,#ffb74d)}.progress-fill.danger{background:linear-gradient(90deg,#f44336,#ef5350)}.ai-suggestion{background:linear-gradient(135deg,#ffe66d1f,#ff6b6b1f);border:1px solid #ffe66d4d;border-radius:14px;margin:15px 0;padding:14px}.ai-label{color:var(--accent);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:8px;margin-bottom:8px;font-size:11px;display:flex}.ai-label i{width:16px;height:16px;color:var(--accent)}.ai-text{color:var(--text-primary);font-size:13px;line-height:1.55}.sparkle{animation:2s infinite sparkle}@keyframes sparkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.2)}}.wellbeing-ring{align-items:center;gap:14px;display:flex}.wellbeing-ring svg{flex-shrink:0;width:90px;height:90px}.wellbeing-ring .track{fill:none;stroke:var(--border);stroke-width:8px}.wellbeing-ring .value{fill:none;stroke:url(#wbGrad);stroke-width:8px;stroke-linecap:round;transform-origin:50%;transform:rotate(-90deg)}.wellbeing-ring .pct{text-anchor:middle;dominant-baseline:middle;fill:var(--text-primary);font-size:22px;font-weight:700}.wellbeing-info h3{margin-bottom:6px;font-size:16px}.wellbeing-info p{color:var(--text-secondary);font-size:12px;line-height:1.5}.bottom-nav{background:var(--bg-secondary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid var(--border);z-index:100;justify-content:space-around;width:100%;max-width:430px;padding:10px 0 14px;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.nav-item{text-align:center;cursor:pointer;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;flex-direction:column;flex:1;align-items:center;gap:4px;padding:6px 4px;font-size:10px;transition:all .3s;display:flex;position:relative}.nav-item.active{color:var(--primary)}.nav-item.active:before{content:"";background:var(--primary);border-radius:2px;height:2px;position:absolute;top:-1px;left:20%;right:20%}.nav-item i{width:22px;height:22px}.modal-backdrop{z-index:200;background:#000000bf;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.modal-backdrop.active{display:flex}.modal-box{background:var(--bg-secondary);width:92%;max-width:400px;max-height:86vh;color:var(--text-primary);border:1px solid var(--border);border-radius:20px;padding:26px 22px;overflow-y:auto}.modal-header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.modal-title{font-size:18px;font-weight:700}.modal-close{background:var(--bg-card);border:1px solid var(--border);cursor:pointer;width:30px;height:30px;color:var(--text-primary);border-radius:50%;justify-content:center;align-items:center;display:flex}.modal-close i{width:16px;height:16px}.type-toggle{background:var(--bg-card);border-radius:13px;gap:8px;margin-bottom:18px;padding:4px;display:flex}.type-toggle-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:10px;flex:1;padding:10px;font-weight:600;transition:all .3s}.type-toggle-btn.active.income{color:#fff;background:linear-gradient(135deg,#4caf50,#66bb6a)}.type-toggle-btn.active.expense{color:#fff;background:linear-gradient(135deg,#f44336,#ef5350)}.input-group{margin-bottom:15px}.input-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.8px;margin-bottom:6px;font-size:11px;display:block}.input-field,textarea.input-field,select.input-field{background:var(--bg-card);border:1px solid var(--border);width:100%;color:var(--text-primary);border-radius:10px;padding:12px;font-family:inherit;font-size:15px;transition:all .3s}textarea.input-field{resize:vertical;min-height:72px}.input-field:focus{border-color:var(--primary);background:var(--bg-card-hover);outline:none}.btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;padding:14px;font-size:15px;font-weight:600;transition:all .3s;display:inline-flex}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 20px #667eea66}.btn.ghost{border:1px solid var(--border);color:var(--text-primary);background:0 0}.btn.ghost:hover{background:var(--bg-card);box-shadow:none}.btn.danger{background:linear-gradient(135deg,#f44336,#ef5350)}.btn.success{background:linear-gradient(135deg,#4caf50,#66bb6a)}.btn.sm{width:auto;padding:9px 14px;font-size:13px}.floating-btn{cursor:pointer;z-index:99;color:#fff;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;justify-content:center;align-items:center;width:58px;height:58px;display:flex;position:fixed;bottom:96px;right:calc(50% - 199px);box-shadow:0 8px 24px #667eea73}.floating-btn i{width:24px;height:24px}.floating-btn:hover{transform:scale(1.08)rotate(90deg)}@media (width<=460px){.floating-btn{right:18px}}.tile-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.tile{background:var(--bg-card);border:1px solid var(--border);color:var(--text-primary);border-radius:16px;padding:16px;transition:all .3s;display:block}.tile:hover{border-color:#667eea66;transform:translateY(-3px);box-shadow:0 10px 24px #667eea40}.tile-icon{background:linear-gradient(135deg,#667eea40,#764ba240);border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;margin-bottom:10px;display:flex}.tile-icon i{width:22px;height:22px;color:var(--text-primary)}.tile-title{margin-bottom:4px;font-size:14px;font-weight:600}.tile-desc{color:var(--text-secondary);font-size:11px;line-height:1.5}.alert{border:1px solid;border-radius:10px;margin-bottom:15px;padding:10px 14px;font-size:13px}.alert.success{color:var(--success);background:#4caf501a;border-color:#4caf5059}.alert.danger{color:var(--danger);background:#f443361a;border-color:#f4433659}.badge{background:var(--bg-card);border:1px solid var(--border);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px;border-radius:10px;padding:3px 8px;font-size:10px;display:inline-block}.badge.primary{color:var(--primary);background:#ff6b6b1f;border-color:#ff6b6b4d}.badge.success{color:var(--success);background:#4caf501f;border-color:#4caf504d}.empty-state{text-align:center;color:var(--text-secondary);padding:40px 20px}.empty-state i{width:44px;height:44px;margin-bottom:12px}.empty-state h3{color:var(--text-primary);margin-bottom:6px;font-size:16px}.empty-state p{font-size:13px;line-height:1.5}.form-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.strategy-card{border:1px solid var(--border);cursor:pointer;background:var(--bg-card);border-radius:14px;margin-bottom:10px;padding:14px;transition:all .3s}.strategy-card.active{border-color:var(--primary);box-shadow:0 0 0 3px #ff6b6b26}.strategy-card h4{margin-bottom:4px;font-size:14px}.strategy-card p{color:var(--text-secondary);font-size:12px;line-height:1.5}.library-card{background:var(--bg-card);border:1px solid var(--border);color:var(--text-primary);border-radius:16px;margin-bottom:10px;padding:16px;transition:all .3s;display:block}.library-card:hover{border-color:#667eea66;transform:translate(4px)}.library-card .cat{color:var(--primary);text-transform:uppercase;letter-spacing:.6px;margin-bottom:6px;font-size:10px}.library-card h4{margin-bottom:6px;font-size:15px;line-height:1.3}.library-card p{color:var(--text-secondary);font-size:12px;line-height:1.5}.library-card .meta{color:var(--text-secondary);gap:10px;margin-top:10px;font-size:11px;display:flex}.prose h2{margin:18px 0 10px;font-size:20px}.prose h3{margin:14px 0 8px;font-size:16px}.prose p{color:var(--text-primary);margin-bottom:12px;font-size:14px;line-height:1.7}.prose ul,.prose ol{margin:12px 0 12px 22px}.prose li{margin-bottom:4px;font-size:14px;line-height:1.7}.prose strong{color:var(--accent)}.table{border-collapse:collapse;background:var(--bg-card);border-radius:14px;width:100%;font-size:13px;overflow:hidden}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);padding:10px 12px}.table th{text-transform:uppercase;color:var(--text-secondary);letter-spacing:.5px;background:#667eea14;font-size:11px}.table tr:last-child td{border-bottom:none}.landing-hero{text-align:center;padding:40px 24px}.landing-hero h1{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:14px;font-size:34px;font-weight:800;line-height:1.1}.landing-hero p{color:var(--text-secondary);margin-bottom:24px;font-size:15px;line-height:1.6}.landing-hero .btns{flex-direction:column;gap:10px;display:flex}.feature-list{margin:24px 0}.feature-list .feature{background:var(--bg-card);border:1px solid var(--border);text-align:left;border-radius:14px;gap:12px;margin-bottom:10px;padding:14px;display:flex}.feature-list .feature i{color:var(--accent);flex-shrink:0;width:22px;height:22px;margin-top:2px}.feature-list .feature h4{margin-bottom:3px;font-size:14px}.feature-list .feature p{color:var(--text-secondary);margin:0;font-size:12px;line-height:1.5}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.main-content>*{animation:.4s ease-out fadeInUp}.flex-between{justify-content:space-between;align-items:center;display:flex}.gap-8{gap:8px}.mb-10{margin-bottom:10px}.mb-15{margin-bottom:15px}.mb-20{margin-bottom:20px}.mt-10{margin-top:10px}.mt-15{margin-top:15px}.mt-20{margin-top:20px}.text-center{text-align:center}.text-sm{font-size:12px}.text-md{font-size:14px}.text-secondary{color:var(--text-secondary)}.w-full{width:100%}.divider{background:var(--border);height:1px;margin:15px 0}.pill{white-space:nowrap;border:1px solid;border-radius:999px;align-items:center;gap:5px;padding:4px 10px;font-size:11px;font-weight:600;line-height:1.4;display:inline-flex}.pill i{width:13px;height:13px}.pill.draft{color:var(--text-secondary);background:#6c72931f;border-color:#6c729359}.pill.sent{color:var(--warning);background:#ff98001f;border-color:#ff980059}.pill.client-paid{color:#e0b93b;background:#ffe66d24;border-color:#ffe66d66}.pill.confirmed{color:var(--success);background:#4caf501f;border-color:#4caf5059}.pill.overdue{color:var(--danger);background:#f443361f;border-color:#f4433659}.pill.canceled{color:var(--text-secondary);background:#6c72931a;border-color:#6c729340;text-decoration:line-through}body.light-theme .pill.client-paid{color:#9a7b10}.group-chip{min-width:24px;height:22px;color:var(--text-primary);background:linear-gradient(135deg,#667eea38,#764ba238);border:1px solid #667eea59;border-radius:7px;justify-content:center;align-items:center;padding:0 7px;font-size:11px;font-weight:700;display:inline-flex}.row-card{background:var(--bg-card);border:1px solid var(--border);-moz-column-gap:11px;border-radius:14px;grid-template-columns:auto 1fr auto;align-items:start;gap:9px 11px;margin-bottom:9px;padding:12px 13px;transition:border-color .2s,background .2s;display:grid;position:relative}.row-card>.row-body{grid-column:2;min-width:0}.row-card>.avatar,.row-card>.row-check{grid-column:1}.row-card>.row-amount,.row-card>.kep-days{grid-column:3}.row-card>.row-actions{grid-column:1/-1}.row-card:hover{background:var(--bg-card-hover);border-color:#667eea4d}.row-card.is-overdue{border-color:#f4433666}.row-card.is-verify{border-color:#ffe66d73}.row-card .avatar{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:15px;font-weight:700;display:flex;overflow:hidden}.row-card .avatar img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.row-body{flex:1;min-width:0}.row-title{color:var(--text-primary);flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:3px;font-size:14px;font-weight:600;display:flex}.row-meta{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:10px;font-size:11.5px;line-height:1.5;display:flex}.row-meta .sep{opacity:.4}.row-amount{white-space:nowrap;text-align:right;font-size:15px;font-weight:700}.row-actions{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:6px;padding-top:9px;display:flex}.row-actions form{display:contents}.row-actions .inline-form{align-items:center;gap:6px;display:flex}.mini-btn{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);cursor:pointer;border-radius:9px;align-items:center;gap:5px;padding:6px 10px;font-family:inherit;font-size:11.5px;font-weight:600;transition:all .18s;display:inline-flex}.mini-btn i{width:13px;height:13px}.mini-btn:hover{border-color:#667eea80;transform:translateY(-1px)}.mini-btn.primary{color:#fff;background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000}.mini-btn.success{color:var(--success);background:#4caf5026;border-color:#4caf5066}.mini-btn.danger{color:var(--danger);background:#f443361f;border-color:#f4433659}.mini-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.row-check{accent-color:#667eea;cursor:pointer;flex-shrink:0;width:20px;height:20px;margin-top:10px}.period-ring{align-items:center;gap:16px;display:flex}.period-ring svg{flex-shrink:0;width:96px;height:96px}.period-ring .track{fill:none;stroke:var(--border);stroke-width:9px}.period-ring .value{fill:none;stroke:url(#pdGrad);stroke-width:9px;stroke-linecap:round;transform-origin:50%;transition:stroke-dasharray .8s cubic-bezier(.2,.9,.3,1);transform:rotate(-90deg)}.period-ring .pct{text-anchor:middle;dominant-baseline:middle;fill:var(--text-primary);font-size:23px;font-weight:700}.period-ring-info h3{margin-bottom:6px;font-size:16px}.period-ring-info p{color:var(--text-secondary);font-size:12.5px;line-height:1.6}.count-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.count-card{background:var(--bg-card);border:1px solid var(--border);color:var(--text-primary);border-radius:14px;padding:13px;transition:all .25s;display:block}.count-card:hover{border-color:#667eea66;transform:translateY(-2px)}.count-card .n{font-size:24px;font-weight:700;line-height:1.1}.count-card .l{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px;margin-top:5px;font-size:11px}.count-card.warn .n{color:var(--warning)}.count-card.danger .n{color:var(--danger)}.count-card.ok .n{color:var(--success)}.count-card.accent .n{color:#e0b93b}.filter-bar{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.filter-bar select,.filter-bar input{background:var(--bg-card);border:1px solid var(--border);min-width:130px;color:var(--text-primary);border-radius:10px;flex:1;padding:9px 11px;font-family:inherit;font-size:13px}.filter-bar select:focus,.filter-bar input:focus{border-color:var(--primary);outline:none}.segmented{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;gap:4px;margin-bottom:14px;padding:4px;display:flex}.segmented a{text-align:center;color:var(--text-secondary);border-radius:9px;flex:1;padding:8px 6px;font-size:12.5px;font-weight:600;transition:all .2s}.segmented a.active{color:#fff;background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 12px -4px #667eea80}.invite-box{text-align:center;background:linear-gradient(135deg,#667eea1f,#764ba21f);border:1px dashed #667eea73;border-radius:14px;margin-bottom:14px;padding:14px}.invite-code{letter-spacing:3px;color:var(--text-primary);margin:6px 0 10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:22px;font-weight:700}.invite-hint{color:var(--text-secondary);font-size:11.5px;line-height:1.6}.timeline{border-left:2px solid var(--border);margin-left:7px;padding-left:16px}.timeline-item{padding-bottom:15px;position:relative}.timeline-item:before{content:"";background:var(--bg-primary);border:2px solid #667eea;border-radius:50%;width:9px;height:9px;position:absolute;top:4px;left:-22px}.timeline-item.failed:before{border-color:var(--danger)}.timeline-title{margin-bottom:3px;font-size:12.5px;font-weight:600}.timeline-meta{color:var(--text-secondary);font-size:11px}.kep-days{white-space:nowrap;border-radius:8px;padding:3px 9px;font-size:12px;font-weight:700}.kep-days.safe{color:var(--success);background:#4caf5021}.kep-days.soon{color:var(--warning);background:#ff980021}.kep-days.urgent{color:var(--danger);background:#f4433621}.bulk-bar{background:var(--bg-secondary);border:1px solid var(--border);z-index:10;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;padding:11px 13px;display:flex;position:sticky;bottom:0;box-shadow:0 -8px 24px -12px #00000059}.section-note{color:var(--text-secondary);margin-bottom:12px;font-size:12px;line-height:1.6}@media (width>=900px){.app-container{max-width:900px}.count-grid{grid-template-columns:repeat(4,1fr)}.bottom-nav{max-width:900px}.floating-btn{right:calc(50% - 434px)}.tile-grid{grid-template-columns:repeat(3,1fr)}}.input-field,.field,textarea.input-field,select.input-field,select.field{appearance:none;color:var(--text-primary);background-color:var(--bg-card);border:1px solid var(--border);border-radius:10px;font-family:inherit;transition:border-color .18s,box-shadow .18s,background-color .18s}.input-field:hover,.field:hover{border-color:#667eea66}.input-field:focus,.field:focus{background-color:var(--bg-card-hover);border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea2e}.input-field::-moz-placeholder{color:var(--text-secondary);opacity:.75}.field::-moz-placeholder{color:var(--text-secondary);opacity:.75}.input-field::placeholder,.field::placeholder{color:var(--text-secondary);opacity:.75}.field{padding:7px 10px;font-size:12.5px;line-height:1.3}.field--amount{text-align:right;font-variant-numeric:tabular-nums;width:112px}.field--date{width:138px}.field--status{width:auto;min-width:132px}select.field,select.input-field,.filter-bar select{cursor:pointer;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236C7293' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 9px center;background-repeat:no-repeat;background-size:15px;padding-right:30px}select.input-field{background-position:right 12px center;background-size:17px;padding-right:36px}input[type=date].field::-webkit-calendar-picker-indicator{filter:invert(48%)sepia(11%)saturate(760%)hue-rotate(197deg)brightness(92%)contrast(87%);cursor:pointer;opacity:.9}input[type=date].input-field::-webkit-calendar-picker-indicator{filter:invert(48%)sepia(11%)saturate(760%)hue-rotate(197deg)brightness(92%)contrast(87%);cursor:pointer;opacity:.9}body.light-theme input[type=date].field::-webkit-calendar-picker-indicator{filter:invert(42%)sepia(9%)saturate(900%)hue-rotate(195deg)brightness(90%)contrast(85%)}body.light-theme input[type=date].input-field::-webkit-calendar-picker-indicator{filter:invert(42%)sepia(9%)saturate(900%)hue-rotate(195deg)brightness(90%)contrast(85%)}.field[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.field[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.field[type=number]{-moz-appearance:textfield}.row-check,.check{appearance:none;border:2px solid var(--border);background:var(--bg-secondary);cursor:pointer;border-radius:6px;flex-shrink:0;width:20px;height:20px;margin:0;transition:all .16s;position:relative}.row-check{margin-top:9px}.row-check:hover,.check:hover{border-color:#667eea99}.row-check:checked,.check:checked{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000}.row-check:checked:after,.check:checked:after{content:"";border:2.5px solid #fff;border-width:0 2.5px 2.5px 0;width:5px;height:10px;position:absolute;top:1px;left:5px;transform:rotate(45deg)}.row-check:focus-visible,.check:focus-visible{outline:none;box-shadow:0 0 0 3px #667eea47}.check-label{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:12.5px;display:inline-flex}.mini-btn.icon{justify-content:center;width:30px;height:30px;padding:7px}.mini-btn.icon i{width:14px;height:14px}.filter-bar select,.filter-bar input{appearance:none;background-color:var(--bg-card);border:1px solid var(--border);color:var(--text-primary);border-radius:10px;padding:9px 11px;font-family:inherit;font-size:13px;transition:border-color .18s,box-shadow .18s}.filter-bar select{padding-right:30px}.filter-bar select:hover,.filter-bar input:hover{border-color:#667eea66}.filter-bar select:focus,.filter-bar input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea2e}.filter-bar input[type=search]::-webkit-search-cancel-button{filter:invert(.5);cursor:pointer}.action-button-title{margin-bottom:2px;font-size:13.5px;font-weight:600;line-height:1.25}.action-button-sub{opacity:.9;font-size:11.5px;line-height:1.3}.action-button{border-radius:16px;gap:10px;padding:14px}.action-button-icon{border-radius:11px;width:38px;height:38px}.action-button-icon i{width:20px;height:20px}.row-title{gap:6px;margin-bottom:2px;font-size:13.5px}.row-meta{gap:7px;font-size:11.5px}.row-amount{font-variant-numeric:tabular-nums;font-size:14.5px}.contents{display:contents}.action-button.generate{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.action-button.dispatch{background:linear-gradient(135deg,#4caf50 0%,#66bb6a 100%)}.filter-bar--header{margin-top:14px;margin-bottom:0}.text-danger{color:var(--danger)}.text-warning{color:var(--warning)}.meta-list{color:var(--text-secondary);flex-direction:column;align-items:flex-start;gap:7px;font-size:12.5px;line-height:1.6;display:flex}.meta-list strong{color:var(--text-primary);font-weight:600}.landing-hero--tight{padding-bottom:20px}.main-content--flush{padding-bottom:30px}.tile--block{display:block}.avatar-center{margin:0 auto 12px}.mt-6{margin-top:6px}.row-side{text-align:right;flex-direction:column;grid-column:3;align-items:flex-end;gap:6px;display:flex}.row-side .pill{white-space:nowrap}.field--amount{width:96px}.mini-btn{gap:4px;padding:6px 9px;font-size:11px}.mini-btn.icon{width:29px;height:29px;padding:6px}.row-actions{gap:5px}.row-meta{line-height:1.6;display:block}.row-meta>span,.row-meta>a,.row-meta>strong{display:inline}.row-meta .sep{opacity:.45;margin:0 5px}.row-card>.row-check,.row-card>.avatar{grid-area:1/1}.row-card>.row-body{grid-area:1/2}.row-card>.row-side,.row-card>.row-amount,.row-card>.kep-days{grid-area:1/3}.row-card>.row-actions{grid-area:2/1/auto/-1}.row-meta>span,.row-meta>a{white-space:nowrap}.row-meta>span.wrap{white-space:normal}.row-meta .sep{display:none}.row-meta>span:not(:first-child):before,.row-meta>a:not(:first-child):before{content:"·";opacity:.45;margin:0 5px 0 0}.mini-btn svg{flex-shrink:0;width:13px;height:13px}.mini-btn.icon svg{width:14px;height:14px}.pill svg{flex-shrink:0;width:13px;height:13px}.btn svg{flex-shrink:0;width:17px;height:17px}.top-pill-btn svg{width:18px;height:18px}.theme-toggle svg,.sync-button svg,.icon-btn svg{width:20px;height:20px}.profile-menu-item svg{width:18px;height:18px;color:var(--text-secondary);flex-shrink:0}.profile-menu-item.danger svg{color:var(--danger)}.nav-item svg{width:22px;height:22px}.floating-btn svg{width:24px;height:24px}.modal-close svg{width:16px;height:16px}.action-button-icon svg{color:#fff;width:20px;height:20px}.action-btn svg{width:22px;height:22px}.tile-icon svg{width:22px;height:22px;color:var(--text-primary)}.card-change svg{width:16px;height:16px}.transaction-icon svg{width:20px;height:20px}.ai-label svg{width:16px;height:16px;color:var(--accent)}.empty-state svg{width:44px;height:44px;margin-bottom:12px}.feature-list .feature svg{width:22px;height:22px;color:var(--accent);flex-shrink:0;margin-top:2px}.envelope-head svg{width:18px;height:18px}.hint{width:16px;height:16px;color:var(--text-secondary);cursor:help;vertical-align:middle;background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:color .15s;display:inline-flex;position:relative}.hint svg{opacity:.6;width:15px;height:15px;transition:opacity .15s}.hint:hover,.hint.is-open{color:#667eea}.hint:hover svg,.hint.is-open svg,.hint:focus-visible svg{opacity:1}.hint:after{content:attr(data-hint);background:var(--bg-secondary);width:max-content;max-width:min(280px,100vw - 40px);color:var(--text-primary);border:1px solid var(--border);letter-spacing:0;text-transform:none;text-align:left;white-space:normal;opacity:0;pointer-events:none;z-index:300;border-radius:11px;padding:9px 12px;font-size:12px;font-weight:400;line-height:1.5;transition:opacity .18s,transform .18s;position:absolute;bottom:calc(100% + 9px);left:50%;transform:translate(-50%)translateY(4px);box-shadow:0 14px 34px -12px #00000080,0 4px 12px -4px #00000040}.hint:before{content:"";border:5px solid #0000;border-top-color:var(--border);opacity:0;pointer-events:none;z-index:301;transition:opacity .18s,transform .18s;position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%)translateY(4px)}.hint:hover:after,.hint:hover:before,.hint:focus-visible:after,.hint:focus-visible:before,.hint.is-open:after,.hint.is-open:before{opacity:1;transform:translate(-50%)translateY(0)}.hint--start:after{left:0;transform:translate(0)translateY(4px)}.hint--start:hover:after,.hint--start:focus-visible:after,.hint--start.is-open:after{transform:translate(0)translateY(0)}.hint--end:after{left:auto;right:0;transform:translate(0)translateY(4px)}.hint--end:hover:after,.hint--end:focus-visible:after,.hint--end.is-open:after{transform:translate(0)translateY(0)}.input-label .hint{margin-left:5px}.section-title .hint,.card-title .hint{margin-left:6px}#pd-tour-btn{color:var(--text-primary)}#pd-tour-btn:hover{background:#667eea29}.driver-popover.pd-pop{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border);border-radius:18px;max-width:340px;padding:16px;font-family:inherit;box-shadow:0 28px 70px -20px #0000008c,0 8px 24px -8px #0000004d}.driver-popover.pd-pop .driver-popover-arrow{display:none}.driver-popover.pd-pop .driver-popover-title{color:var(--text-primary);margin-bottom:6px;font-size:16px;font-weight:700;line-height:1.3}.driver-popover.pd-pop .driver-popover-description{color:var(--text-secondary);margin-bottom:0;font-size:13px;line-height:1.6}.driver-popover.pd-pop .driver-popover-description b{color:var(--text-primary);font-weight:600}.driver-popover.pd-pop .driver-popover-close-btn{color:var(--text-secondary);width:30px;height:30px;font-size:22px;top:10px;right:10px}.driver-popover.pd-pop .driver-popover-close-btn:hover{color:var(--text-primary)}.pd-pop__eyebrow{border-bottom:1px solid var(--border);align-items:center;gap:10px;margin-bottom:12px;padding-bottom:12px;display:flex}.pd-pop__icon{color:#8fa2f5;background:linear-gradient(135deg,#667eea38,#764ba238);border:1px solid #667eea52;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.pd-pop__icon svg{width:17px;height:17px}.pd-pop__eyebrow-text{flex-direction:column;min-width:0;line-height:1.25;display:flex}.pd-pop__group{text-transform:uppercase;letter-spacing:.6px;color:var(--text-secondary);font-size:10px}.pd-pop__section{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.pd-pop__section-no{background:var(--bg-card);border:1px solid var(--border);color:var(--text-secondary);white-space:nowrap;border-radius:8px;flex-shrink:0;margin-left:auto;padding:4px 8px;font-size:10px}.pd-pop__why{background:linear-gradient(90deg,#ffe66d21,#ffe66d0a);border:1px solid #ffe66d42;border-radius:12px;margin-top:12px;padding:11px 12px;display:block}.pd-pop__why-label{text-transform:uppercase;letter-spacing:.5px;color:var(--accent);align-items:center;gap:6px;margin-bottom:5px;font-size:10px;font-weight:700;display:flex}.pd-pop__why-label svg{width:13px;height:13px}body.light-theme .pd-pop__why-label{color:#a67c00}body.light-theme .pd-pop__why{background:linear-gradient(90deg,#d69e001f,#d69e0008)}.pd-pop__why-text{color:var(--text-primary);font-size:12.5px;line-height:1.6;display:block}.driver-popover.pd-pop .driver-popover-footer{gap:10px;margin-top:14px}.driver-popover.pd-pop .driver-popover-progress-text{flex-direction:column;flex:1;gap:7px;min-width:0;font-size:10.5px;display:flex}.pd-pop__bar{background:var(--border);border-radius:2px;height:4px;display:block;overflow:hidden}.pd-pop__bar-fill{background:linear-gradient(90deg,#667eea,#764ba2);border-radius:2px;height:100%;transition:width .35s;display:block}.pd-pop__meta{color:var(--text-secondary);flex-direction:column;gap:1px;display:flex}.pd-pop__meta-page{color:var(--text-primary);font-weight:600}.driver-popover.pd-pop .driver-popover-navigation-btns{flex-shrink:0;gap:7px}.driver-popover.pd-pop .driver-popover-navigation-btns button{border:1px solid var(--border);background:var(--bg-card);color:var(--text-primary);text-shadow:none;border-radius:10px;padding:8px 14px;font-family:inherit;font-size:12.5px;font-weight:600;transition:all .18s}.driver-popover.pd-pop .driver-popover-navigation-btns button:hover{background:var(--bg-card-hover);border-color:#667eea80}.driver-popover.pd-pop .driver-popover-navigation-btns button:last-child{color:#fff;background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000}.driver-popover.pd-pop .driver-popover-navigation-btns button:last-child:hover{box-shadow:0 6px 18px -6px #667eea99}.pd-pop--cover .pd-pop__icon{border-radius:13px;width:40px;height:40px}.pd-pop--cover .pd-pop__icon svg{width:21px;height:21px}@media (width<=420px){.driver-popover.pd-pop{max-width:calc(100vw - 28px);padding:14px}.pd-pop__section-no{display:none}.driver-popover.pd-pop .driver-popover-footer{flex-direction:column;align-items:stretch}.driver-popover.pd-pop .driver-popover-navigation-btns{justify-content:stretch}.driver-popover.pd-pop .driver-popover-navigation-btns button{flex:1}}
