:root{--bg-deep:#071133;--bg-mid:#101a46;--surface:#18265c;--surface-strong:#203172;--surface-soft:#0c183f;--border:#5f8dff;--border-soft:#3f65c7;--text:#eef5ff;--text-soft:#b8d6ff;--accent:#13dbea;--accent-blue:#315dff;--accent-sky:#7fb8ff;--accent-violet:#7b63ff;--grid:#2b3d78;--rest:#394467;color:var(--text);background:var(--bg-deep);font-synthesis:none;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 50% -20%, #1a3472 0, var(--bg-mid) 44%, var(--bg-deep) 100%);min-width:1120px;margin:0}button,input{font:inherit}.stage{min-height:100vh;padding:18px 22px 28px}.navShell{justify-content:space-between;align-items:center;gap:18px;width:min(1600px,100vw - 44px);margin:0 auto 14px;display:flex}.navTitle{color:var(--text);text-transform:uppercase;align-items:center;gap:10px;font-weight:800;display:flex}.navShell nav,.regionTabs{background:var(--surface-soft);border:1px solid var(--border);border-radius:8px;align-items:center;gap:8px;padding:6px;display:flex;box-shadow:0 8px 14px #0000008c}.navShell button,.regionTabs button,.iconButton,.uploadButton,.sheetRail button{border:1px solid var(--border-soft);background:linear-gradient(145deg, var(--surface), var(--surface-soft));color:var(--text);cursor:pointer;text-transform:uppercase;border-radius:8px;min-height:38px;padding:0 16px;font-size:12px;font-weight:700}.navShell button.active,.regionTabs button.active{border-color:var(--accent-sky);background:linear-gradient(145deg, var(--accent-violet), var(--accent-blue))}.iconButton{place-items:center;width:40px;padding:0;display:inline-grid}.toast{border:1px solid var(--accent);width:min(1600px,100vw - 44px);color:var(--text-soft);background:#0c183ff2;border-radius:8px;margin:0 auto 12px;padding:10px 14px}.dashFrame{border:1px solid var(--border);background:linear-gradient(145deg,#18265cf5,#0c183ff7);border-radius:44px;width:min(1720px,100vw - 44px);margin:0 auto;padding:28px clamp(22px,2vw,34px) 34px;box-shadow:inset 0 0 22px #5f8dff2e,0 18px 28px #00000073}.dashFrame.compact{max-width:1120px}.dashFrame>h1{text-align:center;text-transform:uppercase;letter-spacing:0;margin:0 0 20px;font-size:22px;line-height:1.25}.summaryRow{grid-template-columns:repeat(3,minmax(0,1fr));justify-content:center;gap:clamp(16px,1.5vw,24px);margin-bottom:22px;display:grid}.summaryRow.smallDonuts{max-width:760px;margin-left:auto;margin-right:auto}.numberCard,.dashPanel,.uploadBox,.dataPanel,.sheetRail,.emptyState{border:1px solid var(--border);background:linear-gradient(145deg, var(--surface-strong), var(--surface));border-radius:24px;box-shadow:14px 16px 18px #00000080}.numberCard{justify-content:space-between;align-items:center;gap:18px;min-width:0;min-height:126px;padding:18px clamp(16px,1.4vw,24px);display:flex}.numberCard>div{flex:auto;min-width:0}.numberCard h2,.dashPanel h2{color:var(--text);text-align:center;text-transform:uppercase;overflow-wrap:anywhere;margin:0;font-size:16px;line-height:1.25}.numberCard strong{color:var(--accent-sky);letter-spacing:0;white-space:normal;margin-top:14px;font-size:clamp(26px,2vw,34px);display:block}.numberCard span{color:var(--text-soft);overflow-wrap:anywhere;margin-top:12px;font-size:15px;line-height:1.25;display:block}.grid{gap:clamp(16px,1.35vw,22px);margin-bottom:22px;display:grid}.grid.three{grid-template-columns:minmax(430px,1.22fr) minmax(340px,.95fr) minmax(360px,1fr)}.grid.subsidyDonuts{grid-template-columns:repeat(3,minmax(0,1fr));max-width:100%}.grid.subsidyDonuts .dashPanel{min-height:260px}.grid.two{grid-template-columns:repeat(2,minmax(430px,1fr));max-width:1280px;margin-left:auto;margin-right:auto}.grid.lower{grid-template-columns:minmax(330px,.8fr) minmax(380px,.95fr) minmax(620px,2fr);align-items:stretch}.grid.lower .span2{grid-area:1/3}.grid.local{grid-template-columns:minmax(380px,1.05fr) minmax(330px,.9fr) minmax(300px,.82fr);max-width:1120px;margin-left:auto;margin-right:auto}.dashPanel{flex-direction:column;min-width:0;min-height:310px;padding:16px clamp(14px,1.1vw,20px) 14px;display:flex;overflow:hidden}.dashPanel h2{place-items:center;min-height:40px;margin-bottom:6px;display:grid}.dashPanel>.recharts-responsive-container,.dashPanel>.mksBlock,.dashPanel>.donutStrip{flex:auto;min-height:0}.dashPanel.full,.dashPanel.centerWide{margin-bottom:22px}.dashPanel.centerWide{max-width:1040px;margin-left:auto;margin-right:auto}.dashPanel.span2{grid-column:span 2}.miniDonut{flex:0 0 86px;width:86px;height:86px;position:relative}.dashPanel .miniDonut{width:170px;height:170px;margin:8px auto 0}.miniDonut .donutValue{fill:var(--accent-sky);font-size:15px;font-weight:800;line-height:1}.dashPanel .miniDonut .donutValue{font-size:26px}.darkTooltip{border:1px solid var(--border);background:var(--surface-soft);color:var(--text);border-radius:8px;gap:5px;padding:9px 10px;font-size:12px;display:grid}.regionTabs{flex-wrap:wrap;justify-content:center;max-width:1440px;margin:0 auto 18px}.regionTabs button{white-space:normal;min-width:138px;max-width:172px;font-size:10px;line-height:1.2}.uploadPage,.authPage{place-items:center;min-height:calc(100vh - 110px);display:grid}.uploadBox{text-align:center;width:min(620px,100vw - 48px);padding:34px}.authBox{border:1px solid var(--border);background:linear-gradient(145deg, var(--surface-strong), var(--surface));border-radius:24px;width:min(420px,100vw - 48px);padding:28px;box-shadow:14px 16px 18px #00000080}.authBox h1{text-align:center;text-transform:uppercase;margin:0 0 18px;font-size:20px}.authBox label{color:var(--text-soft);text-transform:uppercase;gap:7px;margin-bottom:12px;font-size:13px;font-weight:700;display:grid}.authBox input,.userTools input{border:1px solid var(--border-soft);background:var(--surface-soft);width:100%;min-height:38px;color:var(--text);border-radius:8px;padding:0 12px}.authBox input:focus,.userTools input:focus{border-color:var(--accent);outline:none}.uploadBox h1{text-transform:uppercase;margin:14px 0 10px}.uploadBox p{color:var(--text-soft);line-height:1.55}.uploadButton{justify-content:center;align-items:center;gap:8px;min-width:210px;margin-top:14px;display:inline-flex}.uploadButton input{display:none}.loadedFile{color:var(--accent-sky);margin-top:16px;display:block}.mksBlock{grid-template-columns:minmax(0,1fr) minmax(126px,150px);align-items:center;gap:10px;width:100%;display:grid}.legend{color:var(--text);gap:9px;min-width:0;font-size:11px;font-weight:700;line-height:1.25;display:grid}.legend span{overflow-wrap:anywhere;align-items:center;gap:8px;min-width:0;display:flex}.legend i{border:1px solid var(--accent-sky);border-radius:50%;width:12px;height:12px}.donutStrip{grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;gap:14px;display:grid}.donutItem{text-align:center}.donutItem>span{min-height:42px;color:var(--text);overflow-wrap:anywhere;font-size:11px;font-weight:800;line-height:1.25;display:block}.donutItem .miniDonut{flex-basis:112px;width:112px;height:112px;margin:0 auto}.donutItem .miniDonut .donutValue{font-size:18px}.dataPage{grid-template-columns:260px minmax(0,1fr);gap:18px;width:min(1600px,100vw - 44px);margin:0 auto;display:grid}.sheetRail{height:calc(100vh - 120px);padding:16px;overflow:auto}.sheetRail h2,.dataHeader h1{align-items:center;gap:8px;margin:0 0 12px;display:flex}.sheetRail button{text-align:left;width:100%;height:auto;margin-bottom:8px;padding:10px}.sheetRail button.active{border-color:var(--accent-sky);background:linear-gradient(145deg, var(--accent-violet), var(--accent-blue))}.sheetRail small{color:var(--text-soft);margin-top:4px;display:block}.dataPanel{min-width:0;padding:18px}.dataHeader{color:var(--text-soft);justify-content:space-between;align-items:center;gap:16px;display:flex}.dataHeader span{align-items:center;gap:8px;display:flex}.logoutButton{border:1px solid var(--border-soft);background:var(--surface-soft);min-height:34px;color:var(--text);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:0 12px;display:inline-flex}.userTools{color:var(--text-soft);grid-template-columns:minmax(150px,1fr) minmax(140px,1fr) minmax(140px,1fr) auto minmax(120px,auto);align-items:center;gap:10px;margin:8px 0 14px;display:grid}.userTools strong{color:var(--text);text-transform:uppercase;align-items:center;gap:8px;font-size:13px;display:flex}.userTools .uploadButton{min-width:116px;margin-top:0}.userTools span,.formError{color:var(--accent-sky);font-size:13px}.gridScroll{max-height:calc(100vh - 190px);overflow:auto}.excelGrid{border-collapse:collapse;width:100%;min-width:1200px}.excelGrid th,.excelGrid td{border:1px solid var(--grid);padding:6px}.excelGrid th{background:var(--surface-soft);color:var(--text)}.excelGrid input{width:100%;min-width:108px;color:var(--text);background:0 0;border:1px solid #0000;padding:5px}.excelGrid input:focus{border-color:var(--accent);background:var(--surface);border-radius:4px;outline:none}.emptyState{flex-direction:column;justify-content:center;align-items:center;gap:12px;width:min(620px,100vw - 48px);min-height:260px;margin:80px auto;display:flex}@media (width<=1320px){.grid.three,.grid.lower,.grid.local{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.lower .span2,.dashPanel.span2{grid-area:auto/1/auto/-1}.mksBlock{grid-template-columns:minmax(0,1fr)}.legend{grid-template-columns:repeat(2,minmax(0,1fr))}}
