*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,sans-serif;background:#f5f5f5;color:#4a4a4a}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-thumb{background:#b0b0b0;border-radius:3px}.app-layout{display:flex;flex-direction:column;min-height:100vh}.app-body{display:flex;flex:1;padding-top:52px}.top-bar{background:#0a2f4d;padding:12px 32px;display:flex;align-items:center;justify-content:space-between;width:100%;position:fixed;top:0;z-index:100;height:52px}.top-bar .brand{display:flex;align-items:center;gap:12px}.top-bar .brand-name{font-size:20px;font-weight:700;color:#fff;letter-spacing:3px;text-transform:uppercase}.top-bar .brand-sub{font-size:11px;font-weight:500;color:#ffffffb3;letter-spacing:2px;text-transform:uppercase}.title-row{background:#fff;padding:12px 32px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #E0E0E0;width:100%}.title-row h1{font-size:22px;font-weight:700;color:#0a2f4d}.title-row .controls{display:flex;align-items:center;gap:14px}.tab-bar{display:flex;gap:0;background:#fff;padding:0 32px;border-bottom:1px solid #E0E0E0;width:100%}.tab-btn{padding:10px 20px;font-size:13px;font-weight:600;border:none;background:none;cursor:pointer;color:gray;border-bottom:3px solid transparent;transition:all .15s;font-family:inherit}.tab-btn:hover{color:#0a2f4d}.tab-btn.active{color:#0a2f4d;border-bottom-color:#0a2f4d}.selector-bar{display:flex;align-items:center;gap:14px;padding:12px 32px;background:#fff;border-bottom:1px solid #E0E0E0;flex-wrap:wrap}.content-area{width:100%;padding:20px 28px 40px}.card{background:#fff;border-radius:8px;padding:20px 24px;box-shadow:0 2px 8px #00000014;border:1px solid #E0E0E0;margin-bottom:16px}.card h3{font-size:15px;font-weight:700;color:#0a2f4d;margin-bottom:4px}.card .desc{font-size:12px;color:gray;margin-bottom:12px}table.dt{width:100%;border-collapse:collapse;font-size:12px}table.dt thead{background:#0a2f4d}table.dt th{text-align:center;padding:8px 6px;font-weight:600;color:#fff;white-space:nowrap;font-size:11px}table.dt th:first-child{text-align:left;min-width:180px;border-radius:4px 0 0}table.dt th:last-child{border-radius:0 4px 0 0}table.dt td{padding:6px;text-align:right;white-space:nowrap;position:relative;font-size:12px}table.dt td:first-child{text-align:left;font-weight:500;color:#4a4a4a;font-size:12px}table.dt tr.total td{border-top:2px solid #0A2F4D;font-weight:700;color:#0a2f4d}table.dt tbody tr:hover{background:#edf2f7}table.dt tbody tr:nth-child(2n){background:#f5f5f5}table.dt tbody tr:nth-child(2n):hover{background:#edf2f7}.pill-group{display:flex;gap:2px;background:#e0e0e0;border-radius:8px;padding:2px;width:fit-content}.pill{padding:5px 12px;font-size:12px;font-weight:600;border:none;border-radius:6px;cursor:pointer;background:transparent;color:gray;font-family:inherit;transition:all .15s}.pill.on{background:#0a2f4d;color:#fff}.section-hdr{display:flex;align-items:center;gap:10px;padding:16px 0;cursor:pointer;-webkit-user-select:none;user-select:none;border-bottom:1px solid #E0E0E0}.section-hdr h3{font-size:15px;font-weight:700;color:#0a2f4d}.section-hdr .chev{font-size:13px;color:#1e5273;transition:transform .2s}.section-hdr .chev.open{transform:rotate(90deg)}.cmnt{font-size:12px;font-weight:600;padding:3px 8px;border-radius:4px;white-space:nowrap;display:inline-block}.cmnt-g{color:#2d5f1b;background:#e8f5d9}.cmnt-a{color:#92400e;background:#fef9c3}.cmnt-r{color:#991b1b;background:#fee2e2}.cmnt-n{color:gray;background:#e0e0e0}.footnote{font-size:13px;color:gray;margin-top:14px;padding-top:12px;border-top:1px solid #E0E0E0}.skeleton-block{background:linear-gradient(90deg,#e0e0e0 25%,#d0d0d0,#e0e0e0 75%);background-size:200% 100%;animation:shimmer 1.4s infinite;border-radius:8px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.range-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:36px;margin:0}.range-thumb::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:#0a2f4d;cursor:pointer;pointer-events:auto;border:2px solid #FFF;box-shadow:0 1px 4px #0000004d}.range-thumb::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#0a2f4d;cursor:pointer;pointer-events:auto;border:2px solid #FFF;box-shadow:0 1px 4px #0000004d}.sidebar{width:220px;min-width:220px;background:#fafafa;border-right:1px solid #E0E0E0;display:flex;flex-direction:column;justify-content:space-between;position:fixed;top:52px;bottom:0;left:0;z-index:90;transition:width .2s ease,min-width .2s ease;overflow:hidden}.sidebar.collapsed{width:64px;min-width:64px}.sidebar-nav{display:flex;flex-direction:column;padding:12px 0;gap:2px}.sidebar-item{display:flex;align-items:center;gap:14px;padding:12px 20px;color:gray;text-decoration:none;font-size:14px;font-weight:500;border-left:3px solid transparent;transition:all .15s;white-space:nowrap}.sidebar-item:hover{background:#f0f0f0;color:#4a4a4a}.sidebar-item.active{background:#eaeaea;color:#0a2f4d;border-left-color:#0a2f4d;font-weight:600}.sidebar.collapsed .sidebar-item{padding:12px 0;justify-content:center;gap:0;border-left-color:transparent}.sidebar.collapsed .sidebar-item.active{border-left-color:transparent;background:#eaeaea}.sidebar-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0}.sidebar-label{opacity:1;transition:opacity .15s}.sidebar-toggle{display:flex;align-items:center;justify-content:center;padding:14px;background:none;border:none;border-top:1px solid #E0E0E0;color:#b0b0b0;cursor:pointer;transition:color .15s}.sidebar-toggle:hover{color:#4a4a4a}.main-content{flex:1;margin-left:220px;min-height:calc(100vh - 52px);transition:margin-left .2s ease;overflow-x:hidden}.main-content.sidebar-collapsed{margin-left:64px}@media(max-width:900px){.sidebar{width:64px;min-width:64px}.sidebar .sidebar-label{display:none}.sidebar .sidebar-item{padding:12px 0;justify-content:center;gap:0}.main-content{margin-left:64px}.top-bar{padding:10px 16px;flex-wrap:wrap;gap:10px}.top-bar .search-wrap{width:100%;justify-content:flex-end}.top-bar .search-input{flex:1;min-width:120px}.title-row{padding:14px 16px;flex-wrap:wrap;gap:10px}.title-row h1{font-size:22px}.tab-bar{padding:0 16px;overflow-x:auto}.content-area{padding:16px 16px 32px}.card{padding:16px 18px}.prez-grid{grid-template-columns:1fr!important}}@media(min-width:901px)and (max-width:1200px){.top-bar{padding:12px 24px}.title-row{padding:14px 24px}.tab-bar{padding:0 24px}.content-area{padding:20px 24px 40px}}
