*{box-sizing:border-box}body{margin:0;background:#f3f5f9;color:#18243b;font:14px -apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo',sans-serif}aside{position:fixed;width:224px;height:100vh;background:#101c34;color:#ddd;padding:38px 24px;display:flex;flex-direction:column}.logo{font:32px Georgia;letter-spacing:5px;color:#f1f4fa}.logo span{display:block;font:8px sans-serif;letter-spacing:2.5px;margin:12px 0 48px;color:#b4c1d9}nav button{display:block;width:100%;text-align:left;background:transparent;color:#b5c2d8;border:0;padding:15px 18px;margin:4px 0;font-size:14px;border-radius:5px}nav button.active{background:#263b61;color:#e2eaf8}nav b{margin-right:14px;font-weight:400}.aside-bottom{margin-top:auto;line-height:2;color:#c1cfe5;font-size:10px;letter-spacing:1px}.aside-bottom small{color:#9badca;letter-spacing:0}.aside-bottom select{width:100%;margin:18px 0;background:#1b2b49;color:#ddd;border:1px solid #3b5073}main{margin-left:224px;padding:0 44px}header{height:86px;border-bottom:1px solid #dce3ed;display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:1.8px;color:#74839c}.pagehead{display:flex;justify-content:space-between;align-items:center;margin:38px 0 30px}.eyebrow{color:#617ca8;letter-spacing:2px;font-size:10px}h1{font-size:29px;font-weight:500;margin:10px 0}h2{font-weight:500;font-size:18px}p{color:#77849b;line-height:1.6}button{cursor:pointer;border:0;background:#162b50;color:#fff;padding:12px 18px;border-radius:4px;font:inherit}button:hover{filter:brightness(1.15)}.ghost{background:transparent;border:1px solid #cdd7e7;color:#425674}.actions{display:flex;gap:10px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.stat,.panel{background:#fff;border:1px solid #dfe6ef;border-radius:7px;padding:24px}.stat label{font-size:12px;color:#6c7d96}.stat strong{display:block;font-size:27px;font-weight:500;letter-spacing:-1px;margin:18px 0 9px}.stat small{color:#8291a7;font-size:11px}.stat:first-child{background:#162b50;color:#f0f5ff}.stat:first-child label,.stat:first-child small{color:#acbfdc}.grid{display:grid;grid-template-columns:1.7fr 1fr;gap:22px;margin:24px 0}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.panel-head h2{margin:0}.muted{color:#7a8ca6;font-size:11px}.barrow{display:grid;grid-template-columns:68px 1fr 92px;align-items:center;gap:14px;margin:20px 0;font-size:12px}.track{height:7px;background:#e9eef6;border-radius:8px}.bar{height:7px;background:#6e8bb9;border-radius:8px}.bars{height:175px;display:flex;align-items:end;gap:24px;padding:15px 10px}.bars div{flex:1;text-align:center;font-size:10px;color:#788ca9}.bars i{display:block;background:#b6c8e4;border-radius:4px 4px 0 0;min-height:3px;margin-bottom:12px}.bars div:last-child i{background:#203e6a}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{font-size:10px;letter-spacing:.4px;color:#7486a1;font-weight:400;background:#f4f7fb;padding:14px}td{border-bottom:1px solid #e8edf5;padding:17px 14px;font-size:12px}td strong{font-weight:500}td small{display:block;color:#8797b0;font-size:10px;margin-top:7px}.badge{display:inline-block;background:#e8effb;color:#426495;padding:5px 9px;border-radius:4px;font-size:10px}.badge.gold{background:#edf1f8;color:#657fa8}.badge.gray{background:#edf0f5;color:#748097}.filters{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:22px}input,select{background:white;border:1px solid #d5deed;padding:11px;border-radius:4px;font:inherit;color:#30476b}.filters input{flex:1;min-width:160px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.partner h2{font:26px Georgia}.partner strong{font-size:23px;display:block;margin:13px 0}.partner .line{display:flex;justify-content:space-between;border-bottom:1px solid #eee;padding:12px 0;color:#777;font-size:12px}.notice{padding:15px 20px;background:#e9eff9;border-left:3px solid #6f8dbb;color:#546c90;font-size:12px;margin:22px 0}.thumb{width:45px;height:45px;object-fit:cover;border-radius:4px;float:left;margin-right:14px}.empty{text-align:center;padding:40px;color:#888}footer{padding:34px 0;color:#8898af;font-size:10px}dialog{border:0;border-radius:10px;width:740px;max-width:94vw;max-height:90vh;padding:30px;box-shadow:0 30px 100px #0004}dialog::backdrop{background:#101c3466}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}#fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}#fields label{font-size:12px;color:#647b9d}#fields input,#fields select{display:block;width:100%;margin-top:7px}.form-actions{display:flex;justify-content:end;gap:10px;margin-top:28px}#toast{position:fixed;bottom:25px;right:25px;background:#162b50;color:white;padding:16px 24px;border-radius:6px;display:none}@media(max-width:1100px){.stats{grid-template-columns:repeat(2,1fr)}.cards{grid-template-columns:1fr}.grid{grid-template-columns:1fr}main{padding:0 24px}}@media(max-width:700px){aside{position:static;width:100%;height:auto;padding:20px}.logo span{margin-bottom:16px}nav{display:flex;overflow:auto}nav button{white-space:nowrap;width:auto;padding:12px}.aside-bottom{display:none}main{margin:0;padding:0 16px}header{height:50px}.pagehead{align-items:start;gap:15px}.actions{flex-wrap:wrap}h1{font-size:23px}.stat{padding:18px}.stat strong{font-size:21px}#fields{grid-template-columns:1fr}.panel{padding:16px}}

.logo{margin:-12px -8px 0;letter-spacing:0}.logo img{display:block;width:192px;height:128px;object-fit:cover;border-radius:6px;border:1px solid #2b3d5a}.logo span{font-size:8px;letter-spacing:1.2px;text-align:center;margin:14px 0 30px}.partner .line{color:#687d9d;border-color:#e3eaf4}.partner h2{color:#203b66}.bars i{background:linear-gradient(#c4d2e9,#a4badc)}.bars div:last-child i{background:linear-gradient(#385b90,#172e53)}button{transition:background .15s}.stat:first-child{background:linear-gradient(135deg,#142440,#263f69)}@media(max-width:700px){.logo{display:flex;align-items:center;gap:20px;margin:0}.logo img{width:120px;height:80px}.logo span{margin:0;text-align:left}}

.logo img{object-fit:contain;height:104px;border:0;border-radius:0;background:transparent}.logo{margin:0 -8px}.logo span{margin:10px 0 34px}@media(max-width:700px){.logo img{height:66px;width:132px}.logo span{margin:0}}

.inventory-panel{margin-top:26px}.inventory-tabs{display:flex;gap:10px;flex-wrap:wrap;padding-bottom:22px;border-bottom:1px solid #e3eaf4;margin-bottom:20px}.inventory-tabs .selected,.group-chip.selected{background:#203b66;color:#fff;border-color:#203b66}.inventory-groups{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}.group-chip{background:#f4f7fb;border:1px solid #d9e3f2;color:#577092;font-size:12px;padding:10px 14px}.group-chip b{font-weight:500;margin-left:12px;opacity:.75}.inventory-panel .table-wrap{margin-top:8px}

.stats-controls{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-bottom:24px}.stats-controls label{display:flex;align-items:center;gap:12px;font-size:12px;color:#697f9f}.company-trend{margin-top:24px}.company-trend svg{display:block;width:100%;max-height:340px}.company-grid{grid-template-columns:1fr 1fr}.legend{display:flex;gap:18px;font-size:11px;color:#243f6b}.legend span:last-child{color:#839bc2}.ranking{margin:20px 0}.ranking>div:first-child{display:flex;justify-content:space-between;gap:14px;font-size:12px}.ranking strong{font-weight:500;color:#294670}.rank-track{height:10px;background:#ecf1f8;border-radius:4px;margin:9px 0 5px;overflow:hidden}.rank-track i{display:block;height:100%;border-radius:4px;background:linear-gradient(90deg,#203b66,#8ca6ce)}.ranking small{font-size:10px;color:#8b9ab0}@media(max-width:900px){.company-grid{grid-template-columns:1fr}.legend{gap:8px}.stats-controls{gap:14px}}

.finance-overview{display:grid;grid-template-columns:minmax(350px,0.9fr) minmax(0,1.35fr);gap:22px;margin-top:24px;align-items:stretch}.finance-overview .company-trend{margin:0;display:flex;flex-direction:column;justify-content:center}.money-donut{padding:0;overflow:hidden}.donut-head{padding:24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e8edf5}.donut-head h2{margin:9px 0 0;font-size:17px}.period-pill{padding:9px 12px;background:#eaf2ff;color:#1967e8;font-size:11px;border-radius:20px;white-space:nowrap}.donut-body{padding:22px 30px 10px;display:flex;justify-content:center}.donut-body svg{width:100%;max-width:290px;filter:drop-shadow(0 8px 25px #cbd9ef30)}.donut-legend{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:10px 22px 0}.donut-tile{border:1px solid #e3ebf8;background:#f8faff;border-radius:12px;padding:15px 12px}.donut-tile label{font-size:11px;color:#657b9c;display:flex;align-items:center;gap:7px}.donut-tile i{width:9px;height:9px;border-radius:3px}.donut-tile strong{display:block;font-size:23px;margin:12px 0 8px;letter-spacing:-.6px;color:#17263f}.donut-tile span{display:block;font-size:10px;color:#6c80a0;overflow-wrap:anywhere}.donut-note{margin:16px 24px 22px;font-size:10px;color:#8797b0;line-height:1.7}@media(max-width:1100px){.finance-overview{grid-template-columns:1fr}.finance-overview .company-trend{display:block}.donut-body svg{max-width:300px}}@media(max-width:450px){.donut-legend{gap:7px;padding:10px 12px 0}.donut-tile{padding:12px 8px}.donut-tile strong{font-size:20px}.donut-head{padding:20px}.donut-note{margin:16px 18px}}

.finance-overview{display:block;max-width:480px;margin:24px auto}.annual-panel{padding:0;margin:24px 0}.annual-head{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e7edf7;gap:20px}.annual-head h2{margin:10px 0 0;font-size:18px}.year-picker select{font-weight:600;color:#243f6b;border-color:#dfe7f4}.annual-legend{display:flex;justify-content:center;gap:28px;padding:25px 0 8px;color:#63799a;font-weight:600;font-size:12px}.annual-legend span{display:flex;align-items:center;gap:8px}.annual-legend i{width:13px;height:9px;border-radius:2px}.annual-chart{padding:8px 24px 15px;overflow-x:auto}.annual-chart svg{width:100%;min-width:680px;display:block}.annual-table{margin:0 24px 22px;border:1px solid #e1e9f7;border-radius:12px;overflow:hidden}.annual-table-title{padding:16px;background:#f7faff;color:#647b9d;font-size:12px;font-weight:600;border-bottom:1px solid #e7edf7}.annual-table td{font-size:11px;padding:17px 12px;text-align:right}.annual-table th{text-align:right;font-size:10px;padding:14px 12px}.annual-table td:first-child,.annual-table th:first-child{text-align:left;background:#f7faff}.annual-table td:last-child{background:#eaf2ff;color:#254e8a}.annual-note{padding:0 24px 10px;line-height:1.7}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:700px){.annual-head{padding:20px}.annual-head h2{font-size:16px}.annual-chart{padding:0 12px 15px}.annual-table{margin:0 12px 18px}.annual-note{padding:0 16px 10px}.finance-overview{max-width:100%}}

.finance-overview{display:grid;grid-template-columns:minmax(330px,0.9fr) minmax(0,1.2fr);max-width:none;margin:24px 0;gap:22px;align-items:stretch}.trade-summary{display:flex;flex-direction:column;padding:26px}.trade-summary h2{margin:10px 0 0}.summary-metrics{display:grid;gap:0}.summary-metric{padding:18px 0;border-bottom:1px solid #e6edf6;display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center}.summary-label{font-size:13px;color:#566d90;display:flex;align-items:center;gap:9px}.summary-label i{width:9px;height:9px;border-radius:3px}.summary-metric small{display:block;font-size:10px;color:#879ab5;margin-top:8px}.summary-metric>strong{font-size:24px;font-weight:600;letter-spacing:-.6px;color:#203c67}.month-change{grid-column:1/-1;font-size:10px;color:#7b8da8}.month-change.increase{color:#3c6b9f}.month-change.decrease{color:#9d697e}.summary-costs{background:#f5f8fd;border:1px solid #e5edf8;border-radius:10px;padding:16px 18px;margin:20px 0 8px}.summary-costs h3{font-size:12px;font-weight:600;color:#506b93;margin:0 0 14px}.summary-costs>div{display:flex;justify-content:space-between;gap:12px;margin:11px 0;font-size:11px;color:#6f84a2}.summary-costs strong{color:#324f7a;font-weight:500}.trade-summary>p{margin-top:auto;padding-top:12px;line-height:1.7}@media(max-width:1000px){.finance-overview{grid-template-columns:1fr}.trade-summary{padding:22px}}@media(max-width:450px){.summary-metric>strong{font-size:21px}}

details summary{cursor:pointer;color:#657b9d;font-size:13px}details[open] summary{margin-bottom:20px}

.profile-bottom{letter-spacing:0;line-height:normal;margin-left:-14px;margin-right:-14px}.security-card{background:#17263d;border:1px solid #2b3a50;border-radius:13px;padding:16px;margin-bottom:14px}.security-card svg{display:block;color:#4b9cff;margin-bottom:10px}.security-card>strong{font-size:12px;color:#e8effb;display:block;font-weight:700}.security-card p{font-size:10px;line-height:1.65;color:#839bbb;margin:8px 0 0}.sidebar-profile{display:flex;align-items:center;gap:10px;border-top:1px solid #24334a;padding:16px 5px 0}.profile-avatar{width:34px;height:34px;flex-shrink:0;background:#205ea6;color:#fff;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px}.profile-copy{flex:1}.profile-copy>strong{display:block;font-size:12px;color:#f2f6ff;font-weight:700;margin-bottom:7px}.profile-copy>small{display:block;color:#7f96b6;font-size:10px}.profile-exit{padding:4px;background:transparent;color:#7d99ba;line-height:0}.profile-exit:hover{color:#c6d7ef}@media(max-width:700px){.profile-bottom{display:none}}

.calendar-controls{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:24px}.calendar-month,.calendar-filter{display:flex;align-items:center;gap:10px}.calendar-month h2{margin:0 10px;font-size:20px}.calendar-month button{padding:10px 14px}.calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:22px}.calendar-panel{padding:0;overflow:hidden}.calendar-week{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;background:#f5f8fc;color:#7d8fa9;font-size:11px;padding:16px 0}.calendar-week span:first-child{color:#b07189}.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-day{display:block;min-height:112px;border-radius:0;background:white;color:#3e5477;border-top:1px solid #e6edf6;border-right:1px solid #e6edf6;text-align:left;padding:10px 6px;overflow:hidden}.calendar-day:hover{background:#f2f6fc;filter:none}.calendar-day.blank{background:#f8fafd}.calendar-day.chosen{background:#edf3ff;box-shadow:inset 0 0 0 2px #7293c6}.day-number{display:inline-flex;align-items:center;justify-content:center;width:23px;height:23px;font-size:12px;margin-bottom:6px}.today .day-number{border-radius:50%;background:#244a80;color:white}.calendar-event{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:3px;padding:4px;margin:3px 0;font-size:9px}.calendar-event.buy{background:#e5eefb;color:#376ba7}.calendar-event.sell{background:#fce9f3;color:#ac5180}.calendar-event.pay{background:#eeeafa;color:#7962a5}.calendar-event.task{background:#e7f1ef;color:#4d8072}.calendar-day small{font-size:9px;color:#7a8ba4}.calendar-foot{padding:5px 18px}.calendar-agenda h2{margin:14px 0}.agenda-item{padding:18px 0;border-top:1px solid #e5ebf3}.agenda-item h3{font-size:13px;line-height:1.6;font-weight:500}.agenda-item p{font-size:11px;white-space:pre-wrap}.agenda-item button{font-size:11px;padding:9px 12px}.calendar-agenda>button{width:100%;margin-top:15px;font-size:12px}@media(max-width:1100px){.calendar-layout{grid-template-columns:1fr}.calendar-day{min-height:110px}}@media(max-width:700px){.calendar-day{min-height:88px;padding:6px 3px}.calendar-event{font-size:8px;padding:3px 2px}.calendar-month h2{font-size:17px}.calendar-filter select{font-size:12px}}
[hidden]{display:none!important}#workspace{display:contents}.auth-pending{visibility:hidden}.login-page{display:grid;grid-template-columns:1.1fr 1fr;min-height:100vh;background:#f6f8fc}.login-brand{background:radial-gradient(ellipse at 40% 30%,#233856,#09172c 75%);color:#fff;display:flex;flex-direction:column;justify-content:center;padding:clamp(30px,7vw,110px);min-height:100vh}.login-brand img{width:100%;max-width:380px;object-fit:contain;margin-bottom:36px}.login-brand span{font-size:11px;letter-spacing:3px;color:#96aac8}.login-brand h1{font-size:clamp(27px,3vw,43px);font-weight:500;margin:24px 0 10px}.login-brand p{color:#9cacc4;font-size:14px;line-height:1.8}.login-panel{padding:40px;display:flex;align-items:center;justify-content:center}.login-panel form{width:100%;max-width:360px}.login-panel h2{font-size:30px;margin:14px 0}.login-panel p{color:#7b8ba1;font-size:14px;line-height:1.7}.login-panel label,#account-dialog label{display:block;font-size:13px;font-weight:600;margin:23px 0 0;color:#34455e}.login-panel input,#account-dialog input,#account-dialog select{display:block;width:100%;margin-top:9px;padding:13px 14px;border:1px solid #dce4ef;border-radius:9px;background:white}.login-panel button{width:100%;padding:14px;margin:12px 0 24px;background:#142b4e}.login-panel small{display:block;text-align:center;color:#8b98aa;font-size:11px}.login-panel .login-error{color:#b94747;min-height:24px;margin:15px 0 0}.account-tools{display:flex;gap:16px;align-items:center}#account-dialog{width:min(520px,calc(100vw - 32px));padding:28px;max-height:90vh;overflow:auto}#account-dialog form button{margin-top:20px}#account-dialog hr{border:0;border-top:1px solid #e4eaf1;margin:28px 0}@media(max-width:760px){.login-page{grid-template-columns:1fr}.login-brand{min-height:auto;padding:30px}.login-brand img{width:160px;margin-bottom:12px}.login-brand h1,.login-brand p{display:none}.login-panel{padding:40px 24px}.account-tools{gap:8px}#today{display:none}}
.login-page{display:block}.login-page #login-screen{display:grid;grid-template-columns:1.1fr 1fr;min-height:100vh}@media(max-width:760px){.login-page #login-screen{grid-template-columns:1fr}}

.password-field{position:relative}.login-panel .password-field input,#account-dialog .password-field input{padding-right:76px}.login-panel .password-toggle,#account-dialog .password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:auto;margin:0;padding:7px 10px;background:#edf2f9;color:#294263;border:0;border-radius:6px;font-size:12px;line-height:1.2}.password-toggle:focus-visible{outline:2px solid #4076bb;outline-offset:2px}

.login-panel .login-options{display:flex;gap:24px;margin-top:20px}.login-panel .login-options label{display:flex;gap:8px;align-items:center;margin:0;font-size:13px;font-weight:400;cursor:pointer}.login-panel .login-options input{width:16px;height:16px;margin:0;padding:0;accent-color:#193657}.login-panel .auto-login-note{font-size:11px;margin:12px 0 0;color:#8b98aa}

.stats-person-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:4px 0 20px}.stats-person-tabs button{background:#fff;color:#677b97;border:1px solid #dce4ef;border-radius:9px;min-width:90px;padding:11px 19px}.stats-person-tabs button.active{background:#193453;border-color:#193453;color:white}.stats-filter-note{font-size:12px;color:#8392a8;margin:0 0 22px}

.stats-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;background:#fff;border:1px solid #dfe6ef;padding:16px 20px;border-radius:10px;margin-bottom:14px}.stats-toolbar .stats-person-tabs{margin:0;display:flex;gap:8px}.stats-toolbar .stats-person-tabs button{height:42px;min-width:82px;padding:0 16px;border-radius:7px;white-space:nowrap}.stats-toolbar .stats-controls{margin:0;gap:18px}.stats-toolbar .stats-controls label{margin:0;white-space:nowrap;gap:10px}.stats-toolbar #statsMonth{height:42px;width:158px;margin:0}.stats-toolbar .muted{white-space:nowrap}@media(max-width:850px){.stats-toolbar{align-items:flex-start;gap:14px}.stats-toolbar .stats-controls{width:100%;justify-content:space-between}}

.form-actions .delete-product{margin-right:auto;background:#fff3f2;color:#b43d38;border:1px solid #efd0cd}#product-trash{width:760px;max-width:94vw}

.mobile-menu{display:none}.panel,.stat,.grid>*{min-width:0}.table-wrap{max-width:100%;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.annual-chart{overscroll-behavior-x:contain}.form-actions{flex-wrap:wrap}
@media(max-width:760px){
 body{font-size:14px}main{margin-left:0;padding:0 16px;width:100%;min-width:0}aside{position:sticky;top:0;z-index:30;width:100%;height:auto;padding:10px 16px;box-shadow:0 3px 12px #0b183221}.sidebar-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.sidebar-heading .logo{margin:0;display:block}.sidebar-heading .logo img{width:108px;height:42px}.sidebar-heading .logo span{display:none}.mobile-menu{display:block;background:#263b59;border:1px solid #425574;border-radius:8px;padding:11px 14px;font-size:13px;min-height:44px}#nav{display:none}.mobile-menu-open #nav{display:grid;grid-template-columns:1fr 1fr;gap:6px;overflow:visible;margin-top:12px}.mobile-menu-open #nav button{width:100%;min-height:46px;margin:0;padding:12px 10px;font-size:13px}.mobile-menu-open .profile-bottom{display:block;margin:12px 0 0}.mobile-menu-open .profile-bottom .security-card{display:none}.sidebar-profile{padding:12px 0 0}.profile-exit{min-width:44px;min-height:44px}header{height:58px;letter-spacing:.8px}.account-tools button{min-height:42px;font-size:12px}.pagehead{display:block;margin:24px 0 20px}.pagehead h1{font-size:24px;line-height:1.35}.pagehead p{font-size:13px}.actions{display:flex;gap:8px;margin-top:16px;flex-wrap:wrap}.actions button{min-height:44px;padding:11px 14px;font-size:13px}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat{padding:17px 14px}.stat strong{font-size:clamp(19px,5.3vw,25px);overflow-wrap:anywhere;letter-spacing:-.6px;margin:13px 0 8px}.stat small{line-height:1.6;display:block}.panel{padding:16px;border-radius:10px}.panel-head{align-items:flex-start;gap:12px;flex-wrap:wrap}.panel-head h2{font-size:17px}.grid,.finance-overview,.company-grid,.calendar-layout{grid-template-columns:minmax(0,1fr);gap:16px;margin-top:18px}.filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.filters input{grid-column:1/-1;width:100%;min-width:0}.filters select{width:100%;min-width:0}input,select{font-size:16px;min-height:44px;max-width:100%}.inventory-tabs{gap:7px;padding-bottom:14px}.inventory-tabs button{font-size:12px;padding:10px 12px;min-height:44px}.inventory-groups{gap:7px}.group-chip{min-height:42px}.table-wrap th,.table-wrap td{padding:13px 10px}.stats-toolbar{padding:14px;gap:16px}.stats-toolbar .stats-person-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(64px,1fr));width:100%;gap:6px}.stats-toolbar .stats-person-tabs button{min-width:0;width:100%;font-size:12px;padding:0 7px;height:44px}.stats-toolbar .stats-controls{display:flex;align-items:center;width:100%;gap:10px;flex-wrap:wrap}.stats-toolbar .stats-controls label{font-size:12px;gap:8px}.stats-toolbar .stats-controls .muted{font-size:10px;white-space:normal}.stats-toolbar #statsMonth{width:158px;font-size:16px;height:44px}.stats-filter-note{font-size:11px;line-height:1.7}.money-donut,.annual-panel,.calendar-panel{padding:0}.donut-head{padding:18px 16px;gap:8px}.donut-head h2{font-size:16px}.donut-body{padding:18px 24px 10px}.donut-legend{padding:8px 12px 0;gap:7px}.donut-tile{padding:12px 8px}.donut-tile strong{font-size:21px}.trade-summary{padding:18px}.summary-metric{grid-template-columns:minmax(0,1fr) auto;gap:8px}.summary-metric>strong{font-size:22px}.annual-head{padding:18px 16px;gap:10px;align-items:center}.annual-head h2{font-size:16px;line-height:1.5}.annual-chart{padding:8px 12px 14px}.annual-chart svg{min-width:620px}.annual-table{margin:0 12px 16px}.year-picker select{font-size:14px;padding:10px}.barrow{grid-template-columns:62px minmax(0,1fr) 86px;gap:8px;font-size:11px}.calendar-controls{margin-bottom:16px}.calendar-month{gap:6px;flex-wrap:wrap}.calendar-month h2{font-size:18px;margin:0 6px}.calendar-month button{min-height:44px;min-width:44px}.calendar-day{min-height:78px;padding:6px 2px}.calendar-event{font-size:9px}.calendar-day small{font-size:8px}.calendar-agenda{padding:18px}.calendar-foot{font-size:10px;line-height:1.6}dialog,#account-dialog,#product-trash{width:calc(100vw - 20px);max-width:calc(100vw - 20px);max-height:calc(100dvh - 32px);padding:20px 16px;border-radius:14px}#fields{grid-template-columns:1fr;gap:15px}.dialog-head{position:sticky;top:-20px;z-index:2;background:white;padding:10px 0;margin-top:-10px}.dialog-head h2{font-size:20px}.dialog-head button{min-width:44px;min-height:44px}.form-actions{position:sticky;bottom:-20px;background:white;padding:14px 0;margin-top:20px;gap:8px}.form-actions button{min-height:44px}.form-actions .delete-product{padding:11px;font-size:12px}.empty{padding:28px 12px}#toast{left:12px;right:12px;bottom:18px;padding:14px 16px;font-size:13px;line-height:1.5}.login-brand{padding:20px 24px}.login-brand img{width:145px;margin:0}.login-brand span{font-size:9px;letter-spacing:2px;margin-top:8px}.login-panel{padding:30px 24px 38px}.login-panel h2{font-size:27px}.login-panel .login-options{gap:20px}.login-panel .login-options label{min-height:32px}.login-panel .password-toggle,#account-dialog .password-toggle{min-height:34px}.login-panel .login-options input{min-height:16px}.ranking strong{overflow-wrap:anywhere}footer{padding:24px 0}
}
@media(max-width:380px){.stats-toolbar .stats-person-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-metric>strong{font-size:19px}.donut-tile strong{font-size:19px}.form-actions button{flex:1}.form-actions .delete-product{flex-basis:100%;margin:0}.stats-toolbar .stats-controls label{width:100%}.stats-toolbar #statsMonth{flex:1;width:0}}

.product-row-actions{display:flex;gap:8px;align-items:center;white-space:nowrap}.product-row-delete{color:#b13b43;border-color:#eccbd0}.product-row-delete:hover{background:#fff2f3;border-color:#d9a2aa}

.mobile-topbar,.menu-backdrop,.drawer-close{display:none}
@media(max-width:760px){
.mobile-topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;background:#08182d;padding:10px 16px;min-height:64px;box-shadow:0 3px 12px #0b183221}.mobile-topbar>img{width:108px;height:42px;object-fit:contain}.mobile-topbar .mobile-menu{display:block}
aside#mobile-sidebar{position:fixed;inset:0 auto 0 0;width:min(78vw,330px);height:100dvh;padding:24px 16px 20px;background:linear-gradient(155deg,#061425,#0c1e37);z-index:60;display:flex;flex-direction:column;transform:translateX(-101%);visibility:hidden;transition:transform .22s ease,visibility .22s;box-shadow:none;overflow:hidden}
.mobile-menu-open{overflow:hidden}.mobile-menu-open aside#mobile-sidebar{transform:translateX(0);visibility:visible;box-shadow:10px 0 40px #03112544}
.menu-backdrop:not([hidden]){display:block;position:fixed;inset:0;z-index:50;padding:0;border:0;border-radius:0;background:#071225a3;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.drawer-close{display:block;position:absolute;top:14px;right:10px;min-width:36px;min-height:36px;padding:7px;background:transparent;color:#9db3d1;font-size:18px}
#mobile-sidebar .sidebar-heading{flex:none;padding:4px 20px 22px 4px;border-bottom:1px solid #203047;display:block}#mobile-sidebar .logo img{width:138px;height:58px;object-fit:contain}#mobile-sidebar .logo span{display:block;margin:8px 0 0;font-size:8px;letter-spacing:1.4px;color:#8aa2c1}
.mobile-menu-open #nav{display:flex;flex-direction:column;gap:5px;margin:18px 0;overflow-y:auto;min-height:0;flex:1;overscroll-behavior:contain}
.mobile-menu-open #nav button{display:flex;align-items:center;flex:none;min-height:48px;width:100%;margin:0;padding:12px 15px;font-size:14px;border-radius:10px;color:#93abc9}
.mobile-menu-open #nav button b{font-size:20px;display:inline-flex;align-items:center;justify-content:center;width:23px;margin-right:13px;color:#93abc9}
.mobile-menu-open #nav button.active{background:linear-gradient(90deg,#102f58,#0c213d);color:white;border-left:3px solid #398fff;padding-left:12px}.mobile-menu-open #nav button.active b{color:white}
.mobile-menu-open .profile-bottom{display:block;flex:none;margin:0;line-height:normal}.mobile-menu-open .profile-bottom .security-card{display:block;background:#102039;border-color:#23334b;border-radius:12px;padding:14px;margin-bottom:12px}.security-card p{font-size:10px}.security-card>strong{font-size:12px}.sidebar-profile{padding:14px 4px 0}.profile-avatar{width:38px;height:38px}.profile-copy>strong{font-size:12px}.profile-copy>small{font-size:10px}.profile-exit{min-height:40px;min-width:34px}
}
@media(max-width:760px) and (max-height:650px){#mobile-sidebar .sidebar-heading{padding-bottom:12px}#mobile-sidebar .logo img{height:42px}.mobile-menu-open .profile-bottom .security-card{display:none}.mobile-menu-open #nav{margin:10px 0}.mobile-menu-open #nav button{min-height:44px}}
@media(prefers-reduced-motion:reduce){aside#mobile-sidebar{transition:none}}
