.account-page{width:min(1120px,100%);margin:0 auto;padding:30px 18px calc(48px + env(safe-area-inset-bottom));color:#1f2933}.account-page--wide{width:min(1360px,100%)}.account-header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:20px}.account-header h1{margin:6px 0 8px;font-size:clamp(2rem,5vw,3.4rem);line-height:1}.account-header p{max-width:680px;margin-bottom:0;color:#667085;line-height:1.6}.account-eyebrow{margin:0;color:#2f8f5b;font-weight:760}.horizontal-scroll-page{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,1fr);gap:14px;margin-bottom:14px;padding:2px 2px 12px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-color:#adcbb7 transparent}.account-metric,.account-panel{min-width:0;border:1px solid #dde7df;border-radius:8px;background:#fff;box-shadow:0 16px 40px #1f29330f}.account-metric{min-height:164px;display:grid;align-content:space-between;gap:12px;padding:18px}.account-metric span,.account-panel__title{display:flex;align-items:center;gap:8px}.account-metric span{color:#44505f;font-weight:750}.account-metric svg,.account-panel__title svg{color:#2f8f5b;flex:0 0 auto}.account-metric strong{font-size:clamp(1.6rem,4vw,2.35rem);line-height:1}.account-metric p{margin:0;color:#667085;line-height:1.45}.account-metric--income{background:#f2fbf5}.account-metric--expense{background:#fff7f7}.account-content-grid,.account-entry-layout,.account-asset-layout,.account-category-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:14px;align-items:start}.account-panel{padding:18px}.account-panel__title{margin-bottom:16px}.account-panel__title h2{margin:0;font-size:1.05rem}.account-bars,.account-form,.account-list{display:grid;gap:12px}.account-form-actions,.account-list-actions{display:flex;flex-wrap:wrap;gap:8px}.account-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.account-check{display:inline-flex;min-height:40px;align-items:center;gap:8px;color:#344054;font-weight:720}.account-check input{width:18px;height:18px;accent-color:#2f8f5b}.account-bar-row{display:grid;grid-template-columns:minmax(100px,.5fr) minmax(120px,1fr) auto;align-items:center;gap:12px}.account-bar-row strong,.account-bar-row span,.account-list-row strong,.account-list-row small{display:block}.account-bar-row span,.account-list-row small{color:#667085}.account-bar-row__track{height:10px;border-radius:999px;background:#eef4f0;overflow:hidden}.account-bar-row__fill{display:block;height:100%;border-radius:inherit}.account-bar-row__fill--income{background:#6bbf8a}.account-bar-row__fill--expense{background:#d96c6c}.account-bar-row em,.account-list-row em{color:#1f2933;font-style:normal;font-weight:760;text-align:right;white-space:nowrap}.account-list{margin:0;padding:0;list-style:none}.account-list-row{min-height:54px;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;border:1px solid #edf2ee;border-radius:8px;padding:10px 12px;background:#fbfdfb}.account-kind{min-width:48px;border-radius:999px;padding:5px 8px;font-size:.85rem;font-weight:760;text-align:center}.account-kind--income{color:#2f6447;background:#e7f6ec}.account-kind--expense{color:#9a3f3f;background:#fbeaea}.account-field{display:grid;gap:7px;color:#344054;font-weight:700}.account-field--compact{min-width:190px}.account-field input,.account-field select,.account-field textarea{width:100%;min-height:44px;border:1px solid #dde7df;border-radius:8px;padding:10px 12px;color:#1f2933;background:#fff}.account-field textarea{resize:vertical}.account-field input:focus,.account-field select:focus,.account-field textarea:focus,.account-button:focus-visible,.account-segment button:focus-visible,.horizontal-scroll-page:focus-visible{outline:3px solid rgba(59,130,246,.28);outline-offset:2px}.account-segment{display:grid;grid-template-columns:1fr 1fr;gap:6px;border:1px solid #dde7df;border-radius:8px;padding:4px;background:#f7faf8}.account-segment button,.account-button{min-height:44px;border:1px solid transparent;border-radius:8px;color:#1f2933;background:transparent;font-weight:760}.account-icon-button{width:40px;min-height:40px;display:inline-grid;place-items:center;border:1px solid #dde7df;border-radius:8px;color:#2f6447;background:#fff}.account-icon-button--danger{color:#9a3f3f;background:#fff7f7}.account-icon-button--success{color:#2f6447;background:#e7f6ec}.account-icon-button:disabled{color:#8a94a3;background:#f1f6f2}.account-segment button.is-active{border-color:#cfe3d4;background:#fff;box-shadow:0 8px 18px #1f29330f}.account-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-color:#dde7df;padding:10px 14px;background:#fff}.account-button--primary{border-color:#2f8f5b;color:#fff;background:#2f8f5b}.account-button:disabled{color:#8a94a3;background:#f1f6f2}.account-alert,.account-success,.account-notice,.account-muted{display:flex;align-items:center;gap:10px;border-radius:8px;padding:10px 12px;line-height:1.45}.account-alert{color:#9a3f3f;background:#fbeaea}.account-success,.account-notice{color:#2f6447;background:#e7f6ec}.account-notice{margin-bottom:14px}.account-muted{color:#667085;background:#f7faf8}.account-subcategory-groups{display:grid;gap:14px;margin-top:18px}.account-subcategory-groups h3{margin:0 0 8px;font-size:.95rem}.account-day-total{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}.account-total-strip,.account-filter-panel,.account-table-actions{display:flex;flex-wrap:wrap;gap:8px}.account-total-strip{justify-content:flex-end}.account-total-strip--left{justify-content:flex-start;margin-bottom:14px}.account-total-strip span{min-height:40px;display:inline-flex;align-items:center;border:1px solid #dde7df;border-radius:8px;padding:8px 11px;background:#fff;color:#344054;font-weight:800;white-space:nowrap}.account-filter-panel{align-items:end;margin-bottom:14px}.account-filter-panel .account-field{min-width:150px;flex:1 1 150px}.account-filter-panel .account-button{flex:0 0 auto}.account-sheet-panel{display:grid;gap:10px}.account-sheet-scroll{min-width:0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-color:#adcbb7 transparent}.account-sheet{width:100%;min-width:980px;border-collapse:collapse;table-layout:fixed}.account-sheet th,.account-sheet td{border:1px solid #dde7df;padding:8px;background:#fff;text-align:left;vertical-align:middle}.account-sheet th{position:sticky;top:0;z-index:1;color:#44505f;background:#f7faf8;font-size:.9rem;font-weight:800}.account-sheet th:nth-child(1),.account-sheet td:nth-child(1){width:134px}.account-sheet th:nth-child(2),.account-sheet td:nth-child(2){width:126px}.account-sheet th:nth-child(3),.account-sheet td:nth-child(3),.account-sheet th:nth-child(4),.account-sheet td:nth-child(4){width:150px}.account-sheet th:nth-child(5),.account-sheet td:nth-child(5){width:140px}.account-sheet th:nth-child(7),.account-sheet td:nth-child(7){width:96px}.account-sheet input,.account-sheet select{width:100%;min-height:38px;border:1px solid #cfdcd4;border-radius:6px;padding:7px 8px;color:#1f2933;background:#fff}.account-sheet__draft-row td{background:#fbfdfb}.account-sheet__amount{text-align:right!important;font-weight:800;white-space:nowrap}.account-sheet__empty{color:#667085;font-weight:700}.account-sheet__empty-row{height:56px;color:#667085;text-align:center!important;font-weight:700;background:#fbfdfb!important}.account-delta{font-weight:800}.account-delta--up{color:#2f6447}.account-delta--down{color:#9a3f3f}.account-table-actions{justify-content:flex-end}.account-asset-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.35fr);gap:14px;align-items:start}.account-report-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1fr);gap:14px;margin-bottom:14px}.account-spending-share{margin-bottom:14px}.account-share-list{display:grid;gap:10px}.account-share-row{display:grid;grid-template-columns:minmax(120px,.34fr) minmax(120px,1fr) auto;align-items:center;gap:12px;padding:10px 12px;border:1px solid #edf2ee;border-radius:8px;background:#fbfdfb}.account-share-row strong,.account-share-row span{display:block}.account-share-row span{margin-top:2px;color:#667085;font-size:.9rem;font-weight:700}.account-share-row__track{height:10px;border-radius:999px;background:#eef4f0;overflow:hidden}.account-share-row__track span{display:block;height:100%;border-radius:inherit;background:#6bbf8a}.account-share-row em{min-width:44px;text-align:right;font-style:normal;font-weight:800}.account-sheet--asset{min-width:760px}.account-sheet--asset th:nth-child(1),.account-sheet--asset td:nth-child(1){width:120px}.account-sheet--asset th:nth-child(2),.account-sheet--asset td:nth-child(2){width:320px}.account-sheet--asset th:nth-child(5),.account-sheet--asset td:nth-child(5){width:120px}.account-sheet--asset th:nth-child(6),.account-sheet--asset td:nth-child(6){width:160px}.account-sheet--asset th:nth-child(7),.account-sheet--asset td:nth-child(7){width:64px}.account-sheet--compact{min-width:420px}.account-sheet--compact th,.account-sheet--compact td,.account-sheet--report th,.account-sheet--report td{padding:9px 10px}.account-sheet--report{min-width:900px}.account-day-total span,.account-asset-summary dl div{border-radius:8px;padding:10px 12px;background:#f7faf8;font-weight:750}.account-asset-summary{display:grid;gap:18px}.account-asset-summary>span{color:#667085;font-weight:750}.account-asset-summary>strong{font-size:clamp(2rem,5vw,3rem);line-height:1}.account-asset-summary dl{display:grid;gap:10px;margin:0}.account-asset-summary dl div{display:flex;justify-content:space-between;gap:12px}.account-asset-summary dt{color:#667085}.account-asset-summary dd{margin:0;font-weight:760}@media(max-width:860px){.account-header,.account-content-grid,.account-entry-layout,.account-asset-layout,.account-category-layout,.account-asset-grid,.account-report-grid{grid-template-columns:1fr}.account-header{align-items:stretch;flex-direction:column}.account-field--compact{min-width:0}}@media(max-width:640px){.account-page{padding:22px 14px calc(40px + env(safe-area-inset-bottom))}.horizontal-scroll-page{grid-auto-columns:minmax(235px,86vw)}.account-bar-row,.account-list-row{grid-template-columns:1fr;align-items:start}.account-bar-row em,.account-list-row em{text-align:left}.account-day-total{grid-template-columns:1fr}.account-share-row{grid-template-columns:1fr;align-items:start}.account-share-row em{text-align:left}.account-total-strip{justify-content:stretch}.account-total-strip span{flex:1 1 160px}}.account-comparison-grid,.account-inline-form,.account-category-list{display:grid;gap:12px}.account-comparison-row{display:grid;grid-template-columns:minmax(120px,.35fr) 1fr;gap:14px;padding:12px;background:#f7faf8;border:1px solid #dde7df;border-radius:8px}.account-comparison-row>div{display:grid;align-content:center;gap:4px}.account-comparison-row span,.account-comparison-row dt,.account-comparison-row small{color:#667085}.account-comparison-row dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0}.account-comparison-row dl div{display:grid;gap:4px}.account-comparison-row dd{display:grid;gap:2px;margin:0;color:#1f2933;font-weight:800}.account-inline-form{grid-template-columns:1fr auto}.account-inline-form input,.account-category-list input{min-height:42px;padding:0 11px;border:1px solid #dde7df;border-radius:8px}.account-category-list{padding:0;margin:0;list-style:none}.account-category-list li{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid #dde7df}.account-category-list--clickable>li{cursor:pointer}.account-category-list--clickable>li.is-selected{border-color:#9fcfb0;border-radius:8px;padding-inline:10px;background:#eef8f1}.account-category-list--large span{display:grid;gap:3px}.account-category-list--large strong{color:#1f2933}.account-category-list--large small{color:#667085}@media(max-width:720px){.account-comparison-row,.account-comparison-row dl,.account-inline-form,.account-category-list li{grid-template-columns:1fr}}.login-page{display:grid;place-items:center;min-height:calc(100vh - 112px);padding:32px 16px}.login-card{width:min(100%,440px);display:grid;gap:18px;padding:24px;background:#fff;border:1px solid #dde7df;border-radius:8px;box-shadow:0 18px 45px #1f293314}.login-card__header{display:flex;gap:14px;align-items:flex-start}.login-card h1{margin:2px 0 6px;color:#1f2933;font-size:28px}.login-card p{margin:0;color:#667085}.login-kicker{font-weight:700;color:#2f8f5b!important}.login-icon{display:grid;place-items:center;width:44px;height:44px;color:#2f8f5b;background:#e7f6ec;border-radius:8px}.login-field{display:grid;gap:6px;color:#1f2933;font-weight:700}.login-field input{min-height:44px;padding:0 12px;color:#1f2933;background:#fff;border:1px solid #dde7df;border-radius:8px}.login-options{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center}.login-check{min-height:40px;display:inline-flex;gap:8px;align-items:center;color:#1f2933;font-weight:700}.login-check input{width:18px;height:18px;accent-color:#2f8f5b}.login-button,.login-link{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;font-weight:800}.login-button{color:#fff;background:#2f8f5b;border:1px solid #2f8f5b}.login-button:disabled{opacity:.65}.login-link{color:#2f8f5b;text-decoration:none}.login-alert{display:flex;gap:8px;align-items:center;padding:12px;color:#b94a48!important;background:#fbeaea;border-radius:8px}.trading-page{width:min(1360px,100%);margin:0 auto;padding:30px 18px calc(48px + env(safe-area-inset-bottom));color:#1f2933}.trading-header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:20px}.trading-header h1{margin:6px 0 8px;font-size:clamp(2rem,5vw,3.4rem);line-height:1}.trading-header p,.trading-muted{color:#667085;line-height:1.55}.trading-eyebrow{margin:0;color:#2f8f5b;font-weight:760}.trading-grid{display:grid;grid-template-columns:minmax(320px,.75fr) minmax(0,1.25fr);gap:14px;align-items:start}.trading-panel,.trading-metric{min-width:0;border:1px solid #dde7df;border-radius:8px;background:#fff;box-shadow:0 16px 40px #1f29330f}.trading-panel{padding:18px}.trading-panel__title,.trading-form,.trading-symbols,.trading-actions,.trading-period-tabs,.trading-metrics{display:flex;flex-wrap:wrap;gap:8px}.trading-panel__title{align-items:center;margin-bottom:14px}.trading-panel__header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.trading-panel__header .trading-panel__title{margin-bottom:0}.trading-panel__title--spaced{margin-top:18px}.trading-panel__title svg,.trading-metric svg{color:#2f8f5b;flex:0 0 auto}.trading-panel__title h2{margin:0;font-size:1.05rem}.trading-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:14px}.trading-field{display:grid;gap:6px}.trading-field span{color:#44505f;font-size:.86rem;font-weight:750}.trading-field input,.trading-field select{width:100%;min-height:40px;border:1px solid #cfdcd4;border-radius:6px;padding:0 10px;background:#fff;color:#1f2933;font:inherit}.trading-button,.trading-icon-button,.trading-tab{min-height:40px;border:1px solid #cfdcd4;border-radius:6px;background:#fff;color:#1f2933;font:inherit;font-weight:760;cursor:pointer}.trading-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 14px}.trading-button--primary{border-color:#2f8f5b;background:#2f8f5b;color:#fff}.trading-button:disabled,.trading-icon-button:disabled,.trading-symbol button:disabled{cursor:not-allowed;opacity:.55}.trading-icon-button{width:40px;display:inline-flex;align-items:center;justify-content:center}.trading-symbols{margin:10px 0 14px}.trading-symbol{min-height:36px;display:inline-flex;align-items:center;gap:6px;border:1px solid #dde7df;border-radius:999px;padding:0 8px 0 12px;background:#f7faf8;font-weight:760}.trading-symbol button{width:26px;height:26px;border:0;border-radius:50%;background:transparent;color:#667085;cursor:pointer}.trading-symbol button:hover{background:#fbeaea;color:#a23a3a}.trading-symbol--cash{border-color:#b8d8c5;background:#ecf8f0;color:#246f47}.trading-note,.trading-message,.trading-empty{border:1px solid #dde7df;border-radius:8px;background:#fbfdfb}.trading-note{display:flex;gap:8px;align-items:flex-start;margin:0 0 16px;padding:10px;color:#44505f;font-size:.9rem;line-height:1.5}.trading-note svg{flex:0 0 auto;color:#2f8f5b;margin-top:1px}.trading-note--warning{background:#fff8eb;border-color:#ecd4a8}.trading-note--warning svg{color:#946200}.trading-message{margin:12px 0 0;padding:10px;color:#44505f;line-height:1.5}.trading-switch{display:inline-flex;align-items:center;gap:8px;margin:4px 0 14px;color:#44505f;font-weight:760}.trading-status-list{display:grid;gap:8px;margin-bottom:16px}.trading-status-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px;border-bottom:1px solid #dde7df}.trading-status-row span{color:#667085}.trading-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px}.trading-metric{min-height:118px;display:grid;align-content:space-between;gap:8px;padding:16px}.trading-metric span{color:#44505f;font-weight:760}.trading-metric strong{font-size:clamp(1.3rem,3vw,1.9rem);line-height:1}.trading-chart{width:100%;height:310px;display:block;border:1px solid #dde7df;border-radius:8px;background:#fbfdfb}.trading-chart--empty,.trading-empty{display:grid;place-items:center;text-align:center;color:#667085}.trading-empty{min-height:320px;gap:10px;padding:24px}.trading-empty svg{color:#2f8f5b}.trading-tab{padding:0 12px}.trading-tab.is-active{border-color:#2f8f5b;background:#e7f6ec;color:#246f47}.trading-table-scroll{min-width:0;overflow-x:auto}.trading-table{width:100%;min-width:720px;border-collapse:collapse}.trading-table th,.trading-table td{border-bottom:1px solid #dde7df;padding:10px;text-align:left}.trading-table th{color:#44505f;font-size:.82rem}.trading-positive{color:#246f47;font-weight:800}.trading-negative{color:#a23a3a;font-weight:800}@media(max-width:900px){.trading-header,.trading-grid{display:grid;grid-template-columns:1fr}.trading-form,.trading-metrics{grid-template-columns:1fr}}.user-page{display:grid;gap:22px;padding:24px}.user-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.user-header h1{margin:4px 0 6px;color:#1f2933;font-size:28px}.user-header p{margin:0;color:#667085}.user-eyebrow{color:#2f8f5b!important;font-weight:800}.user-grid,.user-layout{display:grid;gap:18px}.user-layout{grid-template-columns:minmax(280px,360px) 1fr;align-items:start}.user-card{display:grid;gap:16px;padding:18px;background:#fff;border:1px solid #dde7df;border-radius:8px}.user-card--wide{overflow-x:auto}.user-card__header,.user-member{display:flex;align-items:center;justify-content:space-between;gap:16px}.user-card h2{margin:0 0 4px;color:#1f2933;font-size:18px}.user-card p,.user-muted{margin:0;color:#667085}.user-form,.user-field{display:grid;gap:8px}.user-form--narrow{max-width:460px}.user-field--inline{grid-template-columns:auto minmax(220px,320px);align-items:center}.user-field span{color:#1f2933;font-weight:800}.user-field input,.user-field select{min-height:42px;padding:0 11px;color:#1f2933;background:#fff;border:1px solid #dde7df;border-radius:8px}.user-button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 14px;color:#1f2933;background:#fff;border:1px solid #dde7df;border-radius:8px;font-weight:800}.user-button--primary{color:#fff;background:#2f8f5b;border-color:#2f8f5b}.user-button:disabled{cursor:not-allowed;opacity:.55}.user-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.user-alert,.user-success{display:flex;gap:8px;align-items:center;padding:12px;border-radius:8px}.user-alert{color:#b94a48;background:#fbeaea}.user-success{color:#2f8f5b;background:#e7f6ec}.user-list,.user-simple-list,.user-log-list{display:grid;gap:12px}.user-simple-list{padding:0;margin:0;list-style:none}.user-simple-list li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #dde7df}.user-toggle{display:inline-flex;align-items:center;gap:8px;min-height:40px;font-weight:800}.user-permission-table{display:grid;min-width:640px}.user-permission-row{display:grid;grid-template-columns:1fr repeat(3,88px);gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid #dde7df}.user-permission-row--head{color:#667085;font-weight:800}.user-permission-row small{display:block;color:#667085}.user-check input{position:absolute;opacity:0}.user-check span{display:grid;place-items:center;width:34px;height:34px;color:transparent;border:1px solid #dde7df;border-radius:8px}.user-check input:checked+span{color:#fff;background:#2f8f5b;border-color:#2f8f5b}.user-log-row{display:grid;gap:4px;padding:12px;background:#f7faf8;border-radius:8px}.user-log-row span,.user-log-row small{color:#667085}@media(max-width:760px){.user-page{padding:18px 14px}.user-layout,.user-member,.user-card__header,.user-field--inline{grid-template-columns:1fr;display:grid}.user-actions{justify-content:stretch}}:root{color:#1f2933;background:#f7faf8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{min-width:320px;background:#f7faf8}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit}#app{min-height:100vh}.app-main{min-width:0}.app-shell{min-height:100vh;display:grid;grid-template-rows:auto 1fr;background:linear-gradient(180deg,#e7f6ec8f,#f7faf800 260px),#f7faf8}.top-bar{position:sticky;top:0;z-index:10;border-bottom:1px solid #dde7df;background:#fffffff0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.top-bar__inner{width:min(1120px,100%);margin:0 auto;padding:12px max(16px,env(safe-area-inset-left));display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;align-items:center;gap:10px;min-width:0;color:#1f2933;font-weight:750;letter-spacing:0;text-decoration:none}.brand__mark{width:34px;height:34px;display:grid;place-items:center;border:1px solid #cfe3d4;border-radius:8px;color:#2f8f5b;background:#e7f6ec;flex:0 0 auto}.brand__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px;min-width:0}.top-bar__logout{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;color:#b94a48;background:#fbeaea;border:1px solid #f1caca;border-radius:8px;font-weight:800;white-space:nowrap}.mobile-menu-button{min-width:44px;min-height:44px;display:none;place-items:center;padding:0;color:#2f6447;background:#e7f6ec;border:1px solid #cfe3d4;border-radius:8px}.nav-group{position:relative}.nav-group:after{content:"";position:absolute;top:100%;right:0;left:0;height:10px;display:none}.nav a,.nav-group__trigger{min-height:40px;display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:8px;color:#667085;text-decoration:none;font-weight:650;overflow-wrap:anywhere}.nav a:hover,.nav a[aria-current=page],.nav-group:focus-within .nav-group__trigger,.nav-group--open .nav-group__trigger{color:#1f2933;background:#e7f6ec}.nav-group__menu{position:absolute;top:calc(100% + 6px);right:0;z-index:20;min-width:190px;display:grid;gap:2px;opacity:0;pointer-events:none;transform:translateY(-4px);transform-origin:top right;border:1px solid #dde7df;border-radius:8px;padding:6px;background:#fff;box-shadow:0 18px 42px #1f29331f;transition:opacity .14s ease,transform .14s ease}.nav-group--open:after{display:block}.nav-group--open .nav-group__menu{opacity:1;pointer-events:auto;transform:translateY(0)}.nav-group__menu a{width:100%;justify-content:flex-start;color:#344054;white-space:nowrap}.mobile-nav{display:none}.mobile-nav-lock{overflow:hidden}.mobile-nav__overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;padding:0;background:#1f293357;border:0}.mobile-nav__drawer{position:fixed;inset:0 auto 0 0;z-index:40;width:min(320px,calc(100vw - 44px));display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:14px;padding:max(14px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));background:#fff;border-right:1px solid #dde7df;box-shadow:18px 0 42px #1f29332e}.mobile-nav__header{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:10px}.mobile-nav__close{min-width:44px;min-height:44px;display:grid;place-items:center;padding:0;color:#344054;background:#fff;border:1px solid #dde7df;border-radius:8px}.mobile-nav__links{min-height:0;display:grid;align-content:start;gap:10px;overflow-y:auto;padding:4px 2px}.mobile-nav__group{display:grid;gap:4px}.mobile-nav__group-link,.mobile-nav__sub-links a,.mobile-nav__logout{min-height:44px;display:flex;align-items:center;gap:8px;border-radius:8px;text-decoration:none;font-weight:750}.mobile-nav__group-link{padding:10px 12px;color:#1f2933;background:#f7faf8;border:1px solid #dde7df}.mobile-nav__sub-links{display:grid;gap:2px;padding-left:10px}.mobile-nav__sub-links a{padding:9px 12px;color:#667085}.mobile-nav__group-link[aria-current=page],.mobile-nav__sub-links a[aria-current=page],.mobile-nav__group-link:hover,.mobile-nav__sub-links a:hover{color:#1f2933;background:#e7f6ec}.mobile-nav__logout{justify-content:center;padding:10px 12px;color:#b94a48;background:#fbeaea;border:1px solid #f1caca}.page{width:min(1120px,100%);margin:0 auto;padding:30px 18px calc(48px + env(safe-area-inset-bottom))}.dashboard-page{display:grid;gap:20px}.dashboard-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.dashboard-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.eyebrow{margin:0 0 8px;color:#2f8f5b;font-size:.86rem;font-weight:750;letter-spacing:0}h1,h2,h3,p{margin-top:0}h1{margin-bottom:8px;color:#1f2933;font-size:clamp(2.2rem,4vw,3.4rem);line-height:1;letter-spacing:0}h2{margin-bottom:0;font-size:1rem;line-height:1.3}.lead{max-width:620px;margin-bottom:0;color:#667085;font-size:1rem;line-height:1.6}.button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #cfdcd4;border-radius:8px;padding:10px 14px;color:#1f2933;background:#fff;text-decoration:none;font-weight:750;white-space:nowrap}.button:hover{border-color:#adcbb7;background:#f7fbf8}.button:focus-visible,.nav a:focus-visible,.nav-group__trigger:focus-visible,.mobile-menu-button:focus-visible,.mobile-nav__close:focus-visible,.mobile-nav__overlay:focus-visible,.mobile-nav__group-link:focus-visible,.mobile-nav__sub-links a:focus-visible,.mobile-nav__logout:focus-visible,.brand:focus-visible{outline:3px solid rgba(59,130,246,.35);outline-offset:2px}.button:disabled{color:#8a94a3;background:#f1f6f2}.button--secondary{color:#2f6447;background:#e7f6ec}.dashboard-grid{display:grid;grid-template-columns:minmax(280px,.95fr) minmax(0,1.35fr);gap:14px;align-items:stretch}.health-card,.metric-card,.panel{border:1px solid #dde7df;border-radius:8px;background:#fff;box-shadow:0 16px 40px #1f29330f}.health-card{min-width:0;padding:18px;display:grid;align-content:space-between;gap:18px}.health-card__header{display:flex;align-items:center;gap:10px;min-width:0}.health-card__icon{width:42px;height:42px;display:grid;place-items:center;border-radius:8px;flex:0 0 auto}.health-card--loading .health-card__icon{color:#5b6678;background:#f1f6f2}.health-card--loading .health-card__icon svg{animation:spin 1s linear infinite}.health-card--success .health-card__icon{color:#2f8f5b;background:#e7f6ec}.health-card--error .health-card__icon{color:#b94a48;background:#fbeaea}.status-label{min-width:0;color:#1f2933;font-size:1.1rem;font-weight:760;overflow-wrap:anywhere}.health-card p{margin:0;color:#667085;line-height:1.55}.health-meta{display:grid;gap:10px;margin:0}.health-meta div{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:8px;background:#f7faf8}.health-meta dt{color:#667085;font-size:.88rem}.health-meta dd{min-width:0;margin:0;color:#1f2933;font-weight:750;text-align:right;overflow-wrap:anywhere}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.metric-card{min-width:0;min-height:168px;padding:18px;display:grid;align-content:space-between;gap:12px}.metric-card span{color:#667085;font-size:.9rem;font-weight:650}.metric-card strong{color:#1f2933;font-size:2.35rem;line-height:1}.metric-card p{margin:0;color:#667085;line-height:1.45;overflow-wrap:anywhere}.dashboard-sections{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.85fr);gap:14px}.panel{min-width:0;padding:18px}.panel__title{display:flex;align-items:center;gap:8px;margin-bottom:16px;color:#1f2933}.panel__title svg{color:#2f8f5b;flex:0 0 auto}.task-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}.task-row{min-width:0;min-height:44px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid #edf2ee;border-radius:8px;background:#fbfdfb}.task-row__dot{width:10px;height:10px;border-radius:999px}.task-row__dot--success{background:#6bbf8a}.task-row__dot--neutral{background:#9aa6b2}.task-row__dot--warning{background:#d8a642}.task-row__label,.task-row__state{min-width:0;overflow-wrap:anywhere}.task-row__label{color:#1f2933;font-weight:700}.task-row__state{color:#667085;text-align:right}.note-grid{display:grid;gap:10px}.note-item{min-width:0;min-height:44px;display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;color:#44505f;background:#f7faf8}.note-item svg{color:#2f8f5b;flex:0 0 auto}.note-item span{min-width:0;overflow-wrap:anywhere}.empty-route{min-height:50vh;display:grid;place-items:center;text-align:center}.empty-route__content{max-width:460px}.app-denied{width:min(680px,calc(100% - 32px));margin:72px auto;padding:24px;text-align:center;background:#fff;border:1px solid #dde7df;border-radius:8px}.app-denied h1{font-size:28px}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:860px){.dashboard-heading{align-items:stretch;flex-direction:column}.dashboard-heading .button,.dashboard-actions{width:fit-content}.dashboard-grid,.dashboard-sections{grid-template-columns:1fr}}@media(max-width:640px){.top-bar__inner{padding:10px max(14px,env(safe-area-inset-right)) 10px max(14px,env(safe-area-inset-left))}.mobile-menu-button{display:grid}.mobile-nav{display:block}.brand{max-width:calc(100vw - 88px)}.top-bar__logout,.nav{display:none}.page{padding:22px 14px calc(40px + env(safe-area-inset-bottom))}}@media(max-width:640px)and (prefers-reduced-motion:no-preference){.mobile-nav__overlay{animation:mobile-overlay-in .14s ease both}.mobile-nav__drawer{animation:mobile-drawer-in .18s ease both}}@keyframes mobile-overlay-in{0%{opacity:0}}@keyframes mobile-drawer-in{0%{transform:translate(-12px);opacity:.82}}@media(max-width:640px){h1{font-size:2.2rem}.metric-grid{grid-template-columns:1fr}.health-meta div,.task-row{align-items:flex-start;grid-template-columns:1fr}.health-meta div{display:grid}.health-meta dd,.task-row__state{text-align:left}.dashboard-heading .button,.dashboard-actions{width:100%}.dashboard-actions .button{flex:1 1 160px}}
