:root{color:#17202a;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f6f7f9;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input{font:inherit}.app-shell{color:#17202a;background:linear-gradient(#0e26400f,#0e264000),#f6f7f9;min-height:100vh}.workspace{width:min(1180px,100% - 32px);margin:0 auto;padding:36px 0 48px}.masthead{grid-template-columns:minmax(0,1fr) 260px;align-items:end;gap:24px;display:grid}.eyebrow{color:#52667a;letter-spacing:0;text-transform:uppercase;margin:0 0 8px;font-size:13px;font-weight:700}h1{color:#0d1720;letter-spacing:0;margin:0;font-size:clamp(34px,5vw,56px);line-height:1}.intro{color:#52667a;max-width:560px;margin:14px 0 0}.signal-panel{background:#fff;border:1px solid #d7dde3;border-radius:8px;flex-direction:column;justify-content:center;min-height:132px;padding:22px;display:flex;box-shadow:0 16px 40px #17202a14}.signal-value{color:#116d5c;font-size:56px;font-weight:800;line-height:1}.signal-label{color:#52667a;margin-top:8px;font-size:15px}.control-strip{background:#fff;border:1px solid #d7dde3;border-radius:8px;justify-content:space-between;align-items:center;gap:18px;margin-top:28px;padding:18px;display:flex}.refresh-button{color:#fff;cursor:pointer;white-space:nowrap;background:#11735f;border:0;border-radius:6px;padding:12px 18px;font-weight:800}.refresh-button:hover:not(:disabled){background:#0d5f4f}.refresh-button:disabled{cursor:progress;opacity:.65}.day-control{color:#273545;align-items:center;gap:14px;font-weight:700;display:flex}.day-control input{color:#0d1720;width:112px;font:inherit;background:#f9fafb;border:1px solid #b9c4ce;border-radius:6px;padding:10px 12px;font-size:22px;font-weight:800}.day-control input:focus{border-color:#11735f;outline:none;box-shadow:0 0 0 3px #11735f29}.hint{color:#66788a;font-size:14px}.data-status{color:#25584d;background:#edf7f4;border:1px solid #cdd5dd;border-radius:8px;justify-content:space-between;gap:16px;margin-top:14px;padding:12px 14px;font-size:14px;font-weight:700;display:flex}.data-status.error{color:#8a2f2f;background:#fff1f1;border-color:#e3b8b8}.error-message{color:#8a2f2f;background:#fff7f7;border:1px solid #e3b8b8;border-radius:8px;margin-top:10px;padding:12px 14px}.metrics-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.metrics-grid article{background:#fff;border:1px solid #d7dde3;border-radius:8px;padding:18px}.metrics-grid span,.table-header p{color:#66788a;font-size:14px}.metrics-grid strong{color:#17202a;margin-top:8px;font-size:22px;line-height:1.2;display:block}.table-panel{background:#fff;border:1px solid #d7dde3;border-radius:8px;margin-top:18px;overflow:hidden;box-shadow:0 18px 42px #17202a14}.table-header{border-bottom:1px solid #e3e7eb;justify-content:space-between;align-items:center;gap:16px;padding:20px;display:flex}h2{color:#17202a;margin:0 0 4px;font-size:22px;line-height:1.2}.table-header span{color:#273545;white-space:nowrap;border:1px solid #cdd5dd;border-radius:999px;padding:7px 12px;font-size:14px;font-weight:700}.stock-table{overflow-x:auto}.table-row{border-bottom:1px solid #edf0f2;grid-template-columns:.65fr .75fr 1.05fr .85fr .85fr .8fr .8fr .8fr .95fr;align-items:center;gap:12px;min-width:1040px;padding:15px 20px;display:grid}.table-row:last-child{border-bottom:0}.table-head{color:#52667a;background:#f0f3f5;font-size:13px;font-weight:800}.sort-header{color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;align-items:center;gap:4px;padding:0;font-weight:900;display:inline-flex}.sort-header span{color:#11735f;font-size:14px;line-height:1}.sort-header:hover{color:#0d5f4f}.sort-header:focus-visible{outline-offset:3px;border-radius:4px;outline:3px solid #11735f2e}.mono{color:#273545;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-weight:800}.positive{color:#0d8068;font-weight:800}.negative{color:#bd3b3b;font-weight:800}.roe-badge{color:#0d8068;background:#e4f3ee;border-radius:999px;width:fit-content;padding:5px 9px;font-size:13px;font-weight:900}.empty-state{color:#66788a;text-align:center;padding:40px 20px}@media (width<=760px){.workspace{width:min(100% - 20px,1180px);padding-top:24px}.masthead,.metrics-grid{grid-template-columns:1fr}.control-strip,.day-control,.data-status,.table-header{flex-direction:column;align-items:stretch}.day-control input{box-sizing:border-box;width:100%}}
