:root{color:#172a3a;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f3f7fa;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button{cursor:pointer}.login-shell{align-items:center;background:#12384c;display:flex;min-height:100vh;padding:28px}.login-panel{background:#fff;border:1px solid rgba(17,67,82,.12);border-radius:8px;box-shadow:0 30px 80px #061c2842;display:grid;gap:24px;margin:0 auto;max-width:430px;padding:34px;width:100%}.brand-mark{align-items:center;background:#0d6583;border-radius:8px;color:#fff;display:flex;height:62px;justify-content:center;width:62px}.eyebrow{color:#607584;font-size:12px;font-weight:800;letter-spacing:0;margin:0 0 7px;text-transform:uppercase}h1,h2,p{margin-top:0}h1{color:#102d3f;font-size:36px;line-height:1.05;margin-bottom:10px}h2{color:#15394d;font-size:20px;line-height:1.2;margin-bottom:0}.login-copy{color:#506778;line-height:1.55;margin-bottom:0}.login-form{display:grid;gap:16px}.login-form label,.filter-select{color:#294253;display:grid;font-size:13px;font-weight:800;gap:7px}.login-form input,.search-field input,.filter-select select{background:#f7fafc;border:1px solid #cbdbe5;border-radius:8px;color:#132938;min-height:44px;outline:none;padding:0 13px}.login-form input:focus,.search-field:focus-within,.filter-select select:focus{border-color:#0f7c99;box-shadow:0 0 0 3px #0f7c991f}.login-error{color:#b42318;font-size:13px;font-weight:800;margin:0}.primary-button,.secondary-button,.ghost-button,.icon-button{align-items:center;border-radius:8px;display:inline-flex;font-weight:900;gap:8px;justify-content:center;min-height:44px;padding:0 16px}.primary-button{background:#0d6583;border:0;box-shadow:0 10px 24px #0d65832e;color:#fff}.primary-button:hover{background:#0a5874}.primary-button:disabled{cursor:not-allowed;opacity:.45}.secondary-button{background:#fff;border:1px solid #cbdbe5;color:#24485d}.secondary-button:hover{background:#f5fafc;border-color:#a9c5d4}.compact{min-height:38px;padding-inline:13px}.ghost-button,.icon-button{background:#e7f0f4;border:0;color:#174052}.ghost-button:hover,.icon-button:hover{background:#d8e8ee}.dashboard-shell{display:grid;gap:16px;margin:0 auto;max-width:1440px;min-height:100vh;padding:24px 28px 32px}.topbar,.filters-band,.summary-row,.workspace{width:100%}.topbar{align-items:center;display:flex;gap:18px;justify-content:space-between;padding:4px 0 8px}.topbar h1{margin-bottom:6px}.title-block{min-width:0}.brand-chip{align-items:center;background:#e8f2f6;border:1px solid #cfe1ea;border-radius:999px;color:#174e66;display:inline-flex;font-size:12px;font-weight:900;gap:7px;margin-bottom:12px;padding:7px 11px;text-transform:uppercase}.topbar-copy{color:#5e7280;line-height:1.45;margin-bottom:0;max-width:720px}.topbar-actions{align-items:center;display:flex;flex-shrink:0;gap:10px}.filters-band{align-items:end;background:#fff;border:1px solid #d7e4eb;border-radius:8px;box-shadow:0 10px 28px #1f43550f;display:grid;gap:12px 14px;grid-template-columns:minmax(260px,1.45fr) repeat(5,minmax(132px,1fr));padding:16px}.filter-head{align-items:center;display:flex;grid-column:1 / -1;justify-content:space-between;padding-bottom:2px}.search-field{align-items:center;background:#f7fafc;border:1px solid #cbdbe5;border-radius:8px;color:#688092;display:flex;min-height:44px;padding-left:12px}.search-field input{border:0;box-shadow:none;min-width:0;width:100%}.filter-select select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#0f6f8c 50%),linear-gradient(135deg,#0f6f8c 50%,transparent 50%);background-position:calc(100% - 17px) 19px,calc(100% - 11px) 19px;background-repeat:no-repeat;background-size:6px 6px;padding-right:30px}.filter-select select:disabled{color:#8fa0aa;cursor:not-allowed}.active-filters{align-items:center;display:flex;flex-wrap:wrap;gap:8px;grid-column:1 / -1;min-height:28px}.active-filters span{background:#f3f8fb;border:1px solid #d9e7ee;border-radius:999px;color:#426073;font-size:12px;font-weight:800;padding:6px 10px}.summary-row{display:grid;gap:14px;grid-template-columns:repeat(4,1fr)}.metric{background:#fff;border:1px solid #d9e6ed;border-radius:8px;display:grid;gap:6px;padding:16px;position:relative}.metric:before{background:#0d6583;border-radius:8px 0 0 8px;bottom:-1px;content:"";left:-1px;position:absolute;top:-1px;width:4px}.metric span{color:#60788a;font-size:13px;font-weight:800}.metric strong{color:#102d3f;font-size:30px;line-height:1}.workspace{display:grid;gap:18px;grid-template-columns:minmax(0,1.14fr) minmax(460px,.86fr)}.table-panel,.matrix-panel{background:#fff;border:1px solid #d9e6ed;border-radius:8px;box-shadow:0 12px 32px #1f43550f;min-width:0;padding:18px}.panel-head{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.table-wrap{border:1px solid #d9e6ed;border-radius:8px;max-height:560px;overflow:auto;position:relative}table{border-collapse:collapse;min-width:820px;width:100%}thead{background:#143d57;color:#fff;position:sticky;top:0;z-index:1}th,td{border-bottom:1px solid #e4edf2;font-size:13px;line-height:1.35;padding:11px 12px;text-align:left;vertical-align:middle}th{font-size:12px;font-weight:900;text-transform:uppercase}tbody tr:nth-child(2n){background:#fbfdfe}tbody tr:hover{background:#eef7fb}.tag{background:#eef5f8;border-radius:999px;color:#426073;display:inline-flex;font-size:12px;font-weight:800;max-width:240px;padding:5px 9px}.tag.positive{background:#e8f5ef;color:#146447}.tag.steady{background:#e8f2fb;color:#275a8b}.tag.risk{background:#fff2e8;color:#9a4a16}.empty-state{align-items:center;color:#5e7586;display:flex;flex-direction:column;gap:10px;justify-content:center;min-height:220px}.matrix-frame{display:grid;gap:10px;grid-template-columns:34px 64px 1fr;grid-template-rows:1fr auto auto;min-height:520px}.axis-label{align-self:center;color:#5b8cc2;font-weight:900;text-align:center}.vertical{writing-mode:vertical-rl;transform:rotate(180deg)}.potential-labels{color:#5b8cc2;display:grid;font-size:13px;font-weight:900;grid-column:2;grid-row:1;grid-template-rows:repeat(3,1fr);text-align:right}.potential-labels span{align-content:center}.matrix-grid{display:grid;gap:5px;grid-column:3;grid-row:1;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,minmax(130px,1fr))}.box-cell{background:#d8e9f7;border:1px solid rgba(70,115,150,.12);border-radius:6px;color:#365d91;display:grid;gap:8px;grid-template-rows:auto 1fr auto;min-height:130px;padding:12px;text-align:left;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.box-cell:hover,.box-cell.active{border-color:#d9813f;box-shadow:inset 0 0 0 1px #d9813f2e,0 10px 24px #1c405214;transform:translateY(-1px)}.box-1,.box-3,.box-4{background:#b9dcf4}.box-2,.box-6,.box-7{background:#cde2f2}.box-5,.box-8,.box-9{background:#e6f0f7}.box-id{color:#5f7fa9;font-size:13px;font-weight:900}.box-cell strong{align-self:center;font-size:14px;line-height:1.25;text-align:center}.box-count{color:#102d3f;font-size:22px;font-weight:900;text-align:center}.axis-bottom{color:#5b8cc2;display:grid;font-weight:900;grid-column:3;grid-template-columns:repeat(3,1fr);text-align:center}.axis-title{color:#5b8cc2;font-weight:900;grid-column:3;text-align:center}@media (max-width: 1100px){.filters-band,.workspace,.summary-row{grid-template-columns:1fr 1fr}.filter-head,.search-field,.active-filters{grid-column:1 / -1}.icon-button{width:44px}.matrix-panel,.table-panel{grid-column:1 / -1}}@media (max-width: 680px){.dashboard-shell,.login-shell{padding:18px}.filters-band,.summary-row{grid-template-columns:1fr}.topbar,.panel-head{align-items:flex-start;flex-direction:column}.topbar-actions{width:100%}.topbar-actions .primary-button,.topbar-actions .ghost-button{flex:1}h1{font-size:28px}.workspace{grid-template-columns:1fr}.matrix-frame{grid-template-columns:1fr;min-height:auto}.axis-label,.potential-labels{display:none}.matrix-grid,.axis-bottom,.axis-title{grid-column:1}.matrix-grid{grid-template-rows:repeat(3,116px)}.box-cell{min-height:116px;padding:9px}}
