:root{color:#0f172a;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f7fb;font-family:Inter,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0}button,input,select,textarea{font:inherit}.app-shell{background:radial-gradient(circle at 0 0,#7dd3c01a,#0000 20rem),linear-gradient(#f7f4ee 0%,#f2eee7 32%,#ece9e1 100%);min-height:100vh;padding:40px 20px 56px}.dashboard-layout{gap:24px;width:min(1100px,100%);margin:0 auto;display:grid}.app-topbar{border-bottom:1px solid #d2ccc1b8;justify-content:space-between;align-items:center;gap:20px;height:72px;padding:0 4px;display:flex}.app-topbar__brand,.app-topbar__client{align-items:center;gap:12px;display:flex}.app-topbar__brand-mark{color:#fcfaf6;letter-spacing:-.02em;background:#223246;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;font-size:.78rem;font-weight:700;display:inline-flex}.app-topbar__brand-name,.app-topbar__client-name{color:#16202a;letter-spacing:-.02em;margin:0;font-size:.95rem;font-weight:600}.hero-card,.panel-card,.status-card{background:#fdfcf9f0;border:1px solid #d2ccc1b8;border-radius:20px;box-shadow:0 16px 32px #2526290f}.hero-card{gap:10px;padding:30px 22px 24px;display:grid}.hero-card__heading,.panel-card__header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:#5f6b66;margin:0 0 6px;font-size:.72rem;font-weight:700}.hero-card h1,.panel-card h2,.status-card h1{color:#1f2933;margin:0}.hero-card h1{letter-spacing:-.02em;font-size:1rem;font-weight:600;line-height:1.2}.hero-card__date,.panel-card__hint,.panel-card__subtext,.status-card p{color:#66737f;margin:0}.panel-card__subtext{margin-top:6px;font-size:.95rem}.hero-card__position{gap:4px;display:grid}.hero-card__summary{flex-direction:column;gap:8px;display:flex}@media (width>=1040px){.hero-card__summary{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:40px}}.hero-card__label{color:#6a746f;letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:.9rem;font-weight:700}.hero-card__amount{letter-spacing:-.035em;color:#16202a;margin:0;font-size:clamp(2.35rem,5.2vw,3.55rem);font-weight:600;line-height:.98}.hero-card__metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.hero-card__metrics--inline{flex-wrap:wrap;align-items:flex-start;gap:34px;padding-top:18px;display:flex}.metric-card{background:#f7f4ee;border:1px solid #d6d0c5eb;border-radius:16px;padding:18px 20px}.metric-card--inline{background:0 0;border:0;gap:6px;min-width:0;padding:0;display:grid}.metric-card__label{color:#6a746f;letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.84rem;font-weight:700}.metric-card__value-row{align-items:center;gap:8px;display:flex}.metric-card__value{color:#1f2933;margin:0;font-size:clamp(1.05rem,1.45vw,1.2rem);font-weight:600;line-height:1.15}.metric-card__icon{color:#2f7d4f;flex:none;justify-content:center;align-items:center;width:16px;height:16px;display:inline-flex}.metric-card__icon svg{stroke:currentColor;fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.metric-card__icon--negative{color:#b24a43}.metric-card__value--date{color:#16202a;font-size:1.02rem;font-weight:600}.metric-card__value--positive{color:#2f7d4f}.metric-card__value--negative{color:#b24a43}.metric-card__value--neutral{color:#3d4b58}.panel-card{gap:16px;padding:24px 24px 20px;display:grid}.panel-card h2{letter-spacing:-.02em;font-size:clamp(1.15rem,1.7vw,1.4rem);font-weight:600}.chart-area{height:320px}.segment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.segment-section{gap:20px;display:grid}.segment-tabs{background:#e7e3dab8;border:1px solid #d2ccc1b3;border-radius:14px;align-items:center;gap:6px;width:fit-content;padding:4px;display:inline-flex}.segment-tab{color:#495867;cursor:pointer;background:0 0;border:0;border-radius:10px;padding:10px 18px;font-family:inherit;font-size:.93rem;font-weight:600;line-height:1.2}.segment-tab--active{color:#1f2933;background:#fdfcf9f5;box-shadow:0 6px 16px #2526290f}.segment-panel{gap:20px;display:grid}.segment-section__header{border-bottom:1px solid #d2ccc1b8;justify-content:space-between;align-items:center;gap:16px;padding-bottom:10px;display:flex}.segment-section__title{align-items:flex-start;gap:14px;display:flex}.segment-section__title h2,.segment-section__title p{margin:0}.segment-section__title h2{color:#1f2933;letter-spacing:-.02em;font-size:1.7rem}.segment-section__title p{color:#66737f}.segment-section__icon{color:#223246;background:#22324614;border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.segment-section__icon svg{stroke:currentColor;fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.segment-section__icon--savings{color:#3f7d53;background:#3f7d531a}.segment-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.segment-summary-card,.segment-chart-card{background:#fdfcf9f0;border:1px solid #d6d0c5eb;border-radius:18px;padding:22px 20px}.segment-summary-card--soft{background:#f7f4ee}.segment-summary-card__label,.segment-summary-card__hint{margin:0}.segment-summary-card__label{color:#66737f;font-size:.85rem;font-weight:600}.segment-summary-card__value{color:#16202a;letter-spacing:-.03em;margin:8px 0 10px;font-size:clamp(2rem,3vw,2.6rem);font-weight:700}.segment-summary-card__value-row{align-items:center;gap:8px;display:flex}.segment-summary-card__trend{color:#2f7d4f;flex:none;justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex}.segment-summary-card__trend svg{stroke:currentColor;fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.segment-summary-card__trend--negative{color:#b24a43}.segment-summary-card__value--positive{color:#2f7d4f}.segment-summary-card__value--negative{color:#b24a43}.segment-summary-card__hint,.segment-summary-card__extra,.segment-chart-card .segment-card__meta{color:#66737f}.embedded-allocation{gap:18px;display:grid}.segment-card{background:#fdfcf9f0;border:1px solid #d2ccc1b8;border-radius:20px;gap:16px;padding:24px;display:grid;box-shadow:0 16px 32px #2526290f}.segment-card__heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.segment-card h3,.segment-card__value{margin:0}.segment-card h3{color:#1f2933;font-size:1.35rem}.segment-card__subtitle,.segment-card__meta{color:#66737f;margin:0}.segment-card__value{color:#1f2933;white-space:nowrap;font-size:1.3rem;font-weight:700}.segment-card__meta{justify-content:space-between;align-items:center;gap:12px;font-size:.92rem;display:flex}.segment-card__chart{height:120px}.allocation-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.allocation-card{background:#f7f4ee;border:1px solid #d6d0c5eb;border-radius:18px;gap:18px;padding:20px;display:grid}.allocation-card h3,.policy-group__title{color:#1f2933;margin:0;font-size:1.05rem}.allocation-card__empty{color:#66737f;margin:0}.allocation-card__content{grid-template-columns:minmax(220px,.95fr) minmax(0,1fr);align-items:center;gap:18px;display:grid}.allocation-card__content--centered{justify-content:center;display:flex}.allocation-card__content--centered .allocation-card__chart{width:min(320px,100%)}.allocation-card__chart{height:280px}.allocation-card__hint{display:none}.allocation-card__list{gap:10px;display:grid}.allocation-list-row{background:#ffffff85;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;display:flex}.allocation-list-row__label,.allocation-list-row__value{align-items:center;gap:10px;display:flex}.allocation-list-row__label{color:#1f2933;min-width:0;font-weight:600}.allocation-list-row__value{color:#66737f;flex-direction:column;align-items:flex-end;gap:2px;font-size:.88rem}.allocation-list-row__value strong{color:#1f2933}.allocation-list-row__dot{border-radius:999px;flex:none;width:10px;height:10px}.policy-table-cell{gap:4px;display:grid}.policy-table-cell__title{color:#1f2933;font-weight:600}.policy-badge{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:4px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.policy-badge--unit-linked{color:#223246;background:#22324614;border-color:#22324624}.policy-badge--savings{color:#3f7d53;background:#3f7d531a;border-color:#3f7d5329}.policy-badge--status{color:#5c675f;background:#8b99911f;border-color:#8b999129}.table-scroll{overflow-x:auto}.kpi-table{border-collapse:collapse;width:100%;min-width:760px}.kpi-table th,.kpi-table td{text-align:left;border-bottom:1px solid #d6d0c5bf;padding:15px 12px}.kpi-table th{color:#6a746f;text-transform:uppercase;letter-spacing:.08em;font-size:.74rem;font-weight:700}.kpi-table td{color:#1f2933;font-size:.9rem}.kpi-table__align-right{text-align:right!important}.kpi-table--policies{min-width:680px}.kpi-table tbody tr:hover{background:#f6f2eab8}.table-value{font-weight:600}.table-value--muted{font-weight:500;color:#66737f!important}.table-value--strong{font-weight:600}.table-value--soft-positive{color:#5f8f70!important}.table-value--positive{color:#2f7d4f!important}.table-value--negative{color:#b24a43!important}.chart-tooltip{background:#fffcf7fa;border:1px solid #d2ccc1e6;border-radius:12px;padding:10px 12px;box-shadow:0 10px 24px #2526291f}.chart-tooltip__date,.chart-tooltip__value,.chart-tooltip__meta{color:#1f2933;margin:0}.chart-tooltip__date{opacity:.8;font-size:.8rem}.chart-tooltip__meta{color:#66737f;margin-top:2px;font-size:.78rem}.chart-tooltip__value{margin-top:4px;font-size:.95rem;font-weight:700}.status-card{gap:12px;width:min(720px,100%);margin:80px auto 0;padding:28px;display:grid}.status-card--error{border-color:#b24a4347}.dashboard-disclaimer{color:#4f5963;gap:0;padding:4px 6px 0;font-size:.82rem;line-height:1.4;display:grid}.dashboard-disclaimer p{margin:0}.dashboard-disclaimer__lead{color:#3f4851;font-style:italic}@media (width<=720px){.app-shell{padding:20px 14px 32px}.hero-card,.panel-card,.status-card{border-radius:20px}.hero-card{padding:20px}.hero-card__heading,.panel-card__header{flex-direction:column;align-items:flex-start}.hero-card__metrics{grid-template-columns:1fr}.hero-card__metrics--inline{gap:18px;padding-top:10px;display:grid}.app-topbar{flex-direction:column;align-items:flex-start;height:auto;padding:4px 0 8px}.app-topbar__client-text{text-align:left}.chart-area{height:280px}.allocation-grid,.allocation-card__content,.segment-grid,.segment-summary-grid{grid-template-columns:1fr}.segment-card__heading,.segment-card__meta{flex-direction:column;align-items:flex-start}.allocation-card__chart{height:240px}}.session-bar__button,.login-form__submit{color:#fcfaf6;cursor:pointer;background:linear-gradient(135deg,#223246 0%,#1a2737 100%);border:0;border-radius:999px;padding:11px 18px;font-weight:700}.session-bar__button:hover,.login-form__submit:hover{filter:brightness(1.03)}.session-bar__button:disabled,.login-form__submit:disabled{cursor:wait;opacity:.72}.login-card{background:#fdfcf9f2;border:1px solid #d2ccc1b8;border-radius:20px;gap:20px;width:min(520px,100%);margin:80px auto 0;padding:28px;display:grid;box-shadow:0 16px 32px #2526290f}.login-card__intro,.login-form{gap:14px;display:grid}.login-card__intro h1,.login-card__intro p,.login-card__hint,.login-form__error,.login-field span{margin:0}.login-card__intro p,.login-card__hint{color:#66737f}.login-field{color:#1f2933;gap:8px;font-weight:600;display:grid}.login-field input{color:#1f2933;background:#ffffffeb;border:1px solid #b3ada2b3;border-radius:12px;width:100%;padding:13px 14px}.login-field input:focus{border-color:#223246;outline:2px solid #2232461f}.login-form__error{color:#b24a43;font-weight:600}@media (width<=720px){.session-bar__button,.login-form__submit{width:100%}}
