:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#0d1b34;background:#f6f9fd;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:#f6f9fd}button,input,select{font:inherit}button{cursor:pointer}.app{min-height:100vh;padding-bottom:88px}.shell{max-width:1180px;margin:auto;padding:20px 18px 32px}.header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.header h1{font-size:25px;line-height:1.08;margin:0}.muted{color:#748198}.header .muted{margin:6px 0 0}.head-actions{display:flex;gap:9px}.icon-btn,.round-btn{border:1px solid #e6edf6;background:white;border-radius:15px;width:44px;height:44px;color:#42516a;font-size:18px}.avatar{width:44px;height:44px;border-radius:16px;background:#e3f0ff;color:#0877f9;display:grid;place-items:center;font-weight:800}.periods{display:flex;gap:5px;background:white;border:1px solid #e6edf6;border-radius:16px;padding:5px;margin-bottom:18px;overflow:auto}.period{border:0;background:transparent;border-radius:12px;padding:12px 18px;color:#718096;font-weight:700;white-space:nowrap}.period.active{background:#e8f2ff;color:#0877f9}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.card{background:#fff;border:1px solid #e6edf6;border-radius:18px;box-shadow:0 5px 20px #37688d0b}.metric{padding:15px;min-height:138px;position:relative;overflow:hidden}.metric-label{font-size:13px;font-weight:700;color:#344057}.metric strong{display:block;font-size:23px;margin:22px 0 7px}.delta{font-size:12px;color:#10ad4b;font-weight:700}.metric svg{position:absolute;bottom:-3px;left:0;width:100%;height:48px}.section{padding:18px;margin-top:14px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.section-title h2{font-size:18px;margin:0}.section-title a,.link{border:0;background:none;color:#0877f9;text-decoration:none;font-weight:700}.chart-wrap{height:220px}.chart{width:100%;height:100%}.chart text{font-size:10px;fill:#91a0b5}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.list{display:grid;gap:4px}.list-item{display:flex;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #edf1f6}.list-item:last-child{border-bottom:0}.badge-icon{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:12px;background:#e9f2ff;color:#0877f9}.badge-icon.red{background:#ffe9ed;color:#f43f5e}.badge-icon.amber{background:#fff5dc;color:#e99d00}.badge-icon.green{background:#e4f9eb;color:#10ad4b}.item-main{min-width:0;flex:1}.item-main b{display:block;font-size:14px}.item-main small{display:block;margin-top:3px;color:#7e8a9d}.pill{font-size:11px;font-weight:800;padding:5px 8px;border-radius:99px;color:#0877f9;background:#e9f2ff}.pill.high{color:#db3150;background:#ffe9ed}.pill.medium{color:#c47d00;background:#fff5dc}.assistant{display:flex;gap:12px;align-items:center}.assistant-icon{display:grid;place-items:center;width:51px;height:51px;background:#e4f1ff;color:#0877f9;border-radius:16px;font-size:25px}.assistant b{display:block}.assistant .muted{font-size:13px;margin-top:3px}.assistant button{margin-left:auto;border:0;border-radius:13px;background:#0877f9;color:#fff;padding:13px 15px;font-weight:800}.bottom-nav{position:fixed;z-index:5;bottom:0;left:0;right:0;background:#fffffff5;border-top:1px solid #e7edf5;padding:8px max(12px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom));display:flex;justify-content:center;gap:4px}.nav-item{border:0;background:transparent;color:#69778d;min-width:76px;padding:5px 7px;border-radius:13px;font-size:11px;font-weight:700}.nav-item span{display:block;font-size:20px;margin-bottom:2px}.nav-item.active{color:#0877f9;background:#eaf3ff}.page-title{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:8px 0 17px}.page-title h1{margin:0;font-size:27px}.primary,.secondary{border:0;border-radius:12px;padding:11px 14px;font-weight:800}.primary{color:#fff;background:#0877f9}.secondary{color:#0877f9;background:#e9f2ff}.toolbar{display:flex;gap:8px;margin-bottom:13px}.search{min-width:0;flex:1;border:1px solid #e0e7f0;background:#fff;border-radius:13px;padding:12px}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{text-align:left;color:#8390a3;font-size:11px;padding:11px 9px;border-bottom:1px solid #edf1f6}.table td{padding:13px 9px;border-bottom:1px solid #edf1f6}.table tr:last-child td{border-bottom:0}.table-wrap{overflow:auto}.stock{font-weight:800}.stock.low{color:#e73b55}.money{white-space:nowrap}.recommendation{padding:15px;border-left:4px solid #0877f9;margin-bottom:10px}.recommendation.high{border-left-color:#f43f5e}.recommendation.medium{border-left-color:#e99d00}.recommendation h3{font-size:15px;margin:0 0 6px}.recommendation p{font-size:13px;color:#65738a;line-height:1.45;margin:6px 0}.steps{font-size:12px;color:#536178;margin:8px 0 0;padding-left:18px}.steps li{margin:4px 0}.modal-backdrop{position:fixed;z-index:10;inset:0;background:#10234070;display:grid;place-items:end center}.modal{width:min(100%,560px);max-height:90vh;overflow:auto;background:#fff;border-radius:22px 22px 0 0;padding:20px}.modal h2{margin:0 0 16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field label{display:block;color:#68758a;font-size:12px;font-weight:700;margin-bottom:5px}.field input,.field select{width:100%;padding:11px;border:1px solid #dfe7f0;border-radius:11px;background:white}.form-actions{display:flex;justify-content:end;gap:8px;margin-top:17px}.empty{text-align:center;color:#7c899a;padding:22px}.upload{display:block;text-align:center;border:2px dashed #cddbeb;border-radius:16px;padding:24px;color:#0877f9;font-weight:800;background:#f8fbff}.upload input{display:none}.preview{margin-top:15px}.notice{padding:12px;border-radius:12px;background:#e9f8ee;color:#168743;font-size:13px;margin:12px 0}.report-hero{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.report-number{padding:17px}.report-number small{display:block;color:#78869a;margin-bottom:8px}.report-number strong{font-size:21px}.settings{display:grid;gap:12px}.setting{display:flex;justify-content:space-between;align-items:center;padding:16px}.setting select,.setting input{border:1px solid #e0e7ef;padding:8px;border-radius:9px;max-width:145px}.login{min-height:100vh;display:grid;place-items:center;padding:20px}.login-card{width:min(100%,390px);padding:24px}.brand{display:flex;gap:10px;align-items:center;margin-bottom:18px}.brand img{width:56px;height:56px;border-radius:14px}.brand h1{font-size:22px;line-height:1.05;margin:0}.brand small{color:#637087}.login-card .field{margin:11px 0}.login-card .primary{width:100%;margin-top:10px}.demo-note{font-size:12px;color:#7d8999;line-height:1.4;margin-top:14px}.desktop-nav{display:none}
@media(max-width:760px){.shell{padding:17px 13px 26px}.header h1{font-size:20px}.header .muted{font-size:13px}.head-actions .round-btn:first-child{display:none}.metrics{grid-template-columns:1fr 1fr;gap:9px}.metric{min-height:125px;padding:13px}.metric strong{font-size:20px;margin-top:17px}.dashboard-grid{grid-template-columns:1fr}.chart-wrap{height:190px}.section{padding:15px}.bottom-nav{justify-content:space-around}.nav-item{min-width:auto;flex:1;padding-left:2px;padding-right:2px}.nav-item span{font-size:18px}.table{min-width:620px}.report-hero{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.page-title h1{font-size:24px}}
@media(min-width:1050px){.app{padding-left:210px;padding-bottom:0}.desktop-nav{display:block;position:fixed;left:0;top:0;bottom:0;width:210px;background:#fff;border-right:1px solid #e6edf6;padding:18px 12px}.desktop-nav .brand h1{font-size:17px}.desktop-nav .brand img{width:43px;height:43px}.side-item{display:block;width:100%;text-align:left;border:0;background:transparent;border-radius:11px;padding:11px;color:#69778d;font-weight:700}.side-item.active{background:#eaf3ff;color:#0877f9}.bottom-nav{display:none}}
.metric-button{text-align:left}.metric-button:hover{border-color:#b8d7ff}.empty-state{text-align:center;padding:30px 18px}.empty-state h2{margin:0 0 8px}.empty-state .primary{margin-top:8px}.auth-switch{width:100%;margin-top:9px}.chat{padding:0;overflow:hidden}.chat-messages{min-height:270px;max-height:460px;overflow:auto;padding:16px;display:grid;gap:9px;align-content:start}.chat-message{max-width:84%;padding:11px 13px;border-radius:15px;background:#eef4fb;color:#40506a;font-size:14px;line-height:1.45}.chat-message.user{justify-self:end;background:#0877f9;color:#fff}.chat-actions{display:flex;gap:8px;padding:12px;border-top:1px solid #e7edf5}.chat-actions .mic{padding:10px 12px}.chat-actions .primary{padding:10px 12px}
