.ideas-shell{display:grid;gap:16px;min-width:0}.ideas-loading{align-items:center;color:#596b67;display:flex;gap:10px;justify-content:center;min-height:280px}.ideas-login-notice,.ideas-error{align-items:center;border-radius:8px;display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr) auto;padding:11px 13px}.ideas-login-notice{background:#fff8e8;border:1px solid #ecd69a;color:#72561c}.ideas-login-notice strong,.ideas-login-notice small{display:block}.ideas-login-notice small{color:#806d45;font-size:11px;margin-top:2px}.ideas-login-notice button{background:#705721;border:0;border-radius:7px;color:#fff;font-weight:700;min-height:34px;padding:0 12px}.ideas-error{background:#fff0ed;border:1px solid #e9beb6;color:#9c4138;grid-template-columns:minmax(0,1fr) auto}.ideas-error button{background:transparent;border:0;color:currentColor;height:30px;padding:0;width:30px}.idea-capture,.ideas-list-panel,.idea-detail-panel{background:#fff;border:1px solid #dfe8e3;border-radius:8px;box-shadow:0 10px 34px #1028260e}.idea-capture{display:grid;gap:11px;padding:16px}.idea-capture-heading,.idea-capture-heading>div,.idea-detail-heading,.idea-detail-heading>div,.idea-convert>div:first-child{align-items:center;display:flex}.idea-capture-heading,.idea-detail-heading{gap:12px;justify-content:space-between}.idea-capture-heading>div,.idea-detail-heading>div,.idea-convert>div:first-child{gap:9px;min-width:0}.idea-capture-heading svg,.idea-detail-heading>div>svg,.idea-convert>div:first-child>svg{color:#d29327;flex:0 0 auto}.idea-capture-heading strong,.idea-capture-heading small,.idea-detail-heading strong,.idea-detail-heading small,.idea-convert strong,.idea-convert small{display:block}.idea-capture-heading strong,.idea-detail-heading strong,.idea-convert strong{color:#2c403c;font-size:14px}.idea-capture-heading small,.idea-detail-heading small,.idea-convert small{color:#81908c;font-size:10px;margin-top:2px}.ideas-sync{align-items:center;background:#f2f6f4;border:1px solid #dbe5e1;border-radius:7px;color:#60736e;display:inline-flex;flex:0 0 auto;gap:5px;min-height:34px;padding:0 9px}.ideas-sync .spinning{animation:ideas-spin .8s linear infinite}@keyframes ideas-spin{to{transform:rotate(360deg)}}.idea-capture>textarea{background:#fbfcfb;border:1px solid #d7e2de;border-radius:7px;color:#2c3f3b;font-size:15px;line-height:1.6;min-height:92px;padding:11px 12px;resize:vertical;width:100%}.idea-capture>textarea:focus,.ideas-search input:focus,.idea-field input:focus,.idea-field select:focus,.idea-field textarea:focus,.idea-convert-actions select:focus{border-color:#55a49a;box-shadow:0 0 0 3px #20b6a61c;outline:none}.idea-capture-actions{align-items:center;display:flex;justify-content:space-between}.idea-capture-actions small{color:#95a19e;font-size:10px}.idea-capture-actions button,.idea-convert-actions button{align-items:center;background:#187f74;border:0;border-radius:7px;color:#fff;display:inline-flex;font-weight:700;gap:6px;justify-content:center;min-height:38px;padding:0 13px}.idea-summary{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}.idea-summary span{background:#fff;border:1px solid #dfe8e3;border-radius:8px;color:#71817d;display:grid;font-size:11px;gap:2px;padding:10px 12px}.idea-summary strong{color:#183b36;font-size:20px}.ideas-layout{align-items:start;display:grid;gap:16px;grid-template-columns:minmax(390px,1fr) minmax(320px,420px);min-width:0}.ideas-list-panel,.idea-detail-panel{min-width:0;padding:14px}.ideas-filters{display:grid;gap:10px}.idea-status-tabs{background:#edf2ef;border-radius:7px;display:grid;gap:3px;grid-template-columns:repeat(5,minmax(0,1fr));padding:3px}.idea-status-tabs button{background:transparent;border:0;border-radius:5px;color:#647671;font-size:11px;min-height:32px;padding:0 5px}.idea-status-tabs button.active{background:#fff;box-shadow:0 1px 4px #1028261a;color:#176f66;font-weight:700}.ideas-search{align-items:center;display:flex;position:relative}.ideas-search svg{color:#81908c;left:10px;position:absolute}.ideas-search input,.idea-field input,.idea-field select,.idea-convert-actions select{background:#fbfcfb;border:1px solid #d7e2de;border-radius:7px;color:#314440;min-height:38px;min-width:0;padding:0 10px;width:100%}.ideas-search input{padding-left:34px}.ideas-list{display:grid;gap:8px;margin-top:12px}.idea-item{align-items:start;background:#fff;border:1px solid #e0e8e5;border-left:3px solid transparent;border-radius:7px;color:inherit;display:grid;gap:9px;grid-template-columns:32px minmax(0,1fr) 18px;min-height:88px;padding:11px;text-align:left;width:100%}.idea-item:hover{background:#f8faf9;border-color:#c9dbd6}.idea-item.selected{background:#f1f8f6;border-color:#65a9a0;border-left-color:#167f74}.idea-item.pinned:not(.selected){border-left-color:#e4a033}.idea-item-icon{align-items:center;background:#fff3da;border-radius:7px;color:#c0801b;display:flex;height:30px;justify-content:center;width:30px}.idea-item-content{min-width:0}.idea-item-content>strong,.idea-item-content>small{display:block;overflow:hidden;text-overflow:ellipsis}.idea-item-content>strong{color:#2d403c;font-size:13px;line-height:1.45;white-space:nowrap}.idea-item-content>small{color:#7a8b87;font-size:11px;line-height:1.45;margin-top:3px;white-space:nowrap}.idea-item-meta{align-items:center;display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}.idea-item-meta i{align-items:center;border-radius:5px;display:inline-flex;font-size:9px;font-style:normal;gap:3px;padding:3px 5px}.idea-status.inbox{background:#eef2f0;color:#64736f}.idea-status.planned{background:#e1f3ee;color:#15766c}.idea-status.someday{background:#fff2dd;color:#98631b}.idea-status.archived{background:#f0edf4;color:#756a82}.idea-linked{background:#e7eef8;color:#4e6793}.idea-item-meta time{color:#96a29f;font-size:9px}.idea-pin-indicator{color:#d28d22;margin-top:3px}.ideas-empty,.idea-detail-empty{align-items:center;color:#85948f;display:flex;flex-direction:column;gap:6px;justify-content:center;min-height:220px;text-align:center}.ideas-empty strong,.idea-detail-empty strong{color:#5c6e69;font-size:13px}.ideas-empty span,.idea-detail-empty span{font-size:11px}.idea-detail-panel{display:grid;gap:14px;position:sticky;top:16px}.idea-icon-button{align-items:center;background:transparent;border:0;border-radius:7px;color:#788984;display:flex;height:34px;justify-content:center;padding:0;width:34px}.idea-icon-button:hover{background:#edf3f0}.idea-icon-button svg.active{color:#d08a1f;fill:#f5d99f}.idea-field{display:grid;gap:6px}.idea-field>span{color:#60736e;font-size:11px;font-weight:700}.idea-field>small{color:#929e9a;font-size:9px}.idea-field textarea{background:#fbfcfb;border:1px solid #d7e2de;border-radius:7px;color:#314440;line-height:1.6;min-height:180px;padding:10px;resize:vertical;width:100%}.idea-tags{display:flex;flex-wrap:wrap;gap:5px}.idea-tags span{background:#eef5f2;border-radius:5px;color:#407269;font-size:10px;padding:4px 6px}.idea-convert{background:#f4f8f6;border:1px solid #dce8e4;border-radius:7px;display:grid;gap:10px;padding:11px}.idea-convert-actions{display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto}.idea-detail-footer{align-items:center;border-top:1px solid #e7eeeb;display:flex;gap:8px;justify-content:space-between;padding-top:12px}.idea-secondary-button,.idea-delete-button{align-items:center;background:transparent;border:1px solid #d8e3df;border-radius:7px;color:#62736f;display:inline-flex;gap:6px;min-height:36px;padding:0 10px}.idea-delete-button{border-color:#ecd0ca;color:#aa5148}@media (max-width: 980px){.ideas-layout{grid-template-columns:1fr}.idea-detail-panel{position:static}}@media (max-width: 620px){.ideas-shell{gap:12px}.ideas-login-notice{align-items:start;grid-template-columns:auto minmax(0,1fr)}.ideas-login-notice button{grid-column:1 / -1;width:100%}.idea-capture,.ideas-list-panel,.idea-detail-panel{padding:12px}.ideas-sync span{display:none}.ideas-sync{padding:0;width:34px}.idea-summary{gap:6px;grid-template-columns:repeat(2,minmax(0,1fr))}.idea-status-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.idea-item{grid-template-columns:30px minmax(0,1fr) 16px;padding:9px}.idea-convert-actions{grid-template-columns:1fr}.idea-convert-actions button{width:100%}}@media (prefers-reduced-motion: reduce){.ideas-sync .spinning{animation-duration:1ms}}.ledger-shell{display:grid;gap:16px;min-width:0}.ledger-loading{align-items:center;color:#526762;display:flex;gap:10px;justify-content:center;min-height:260px}.ledger-toolbar{align-items:center;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto auto}.ledger-tabs{background:#e9efec;border-radius:8px;display:inline-grid;gap:3px;grid-template-columns:repeat(4,auto);justify-self:start;padding:4px}.ledger-tabs button,.ledger-today-button,.ledger-sync-button,.ledger-text-button,.ledger-icon-button{align-items:center;border:0;display:inline-flex;justify-content:center}.ledger-tabs button{background:transparent;border-radius:6px;color:#61746f;gap:6px;min-height:36px;padding:0 12px}.ledger-tabs button.active{background:#fff;box-shadow:0 1px 5px #1334301f;color:#126e65;font-weight:700}.ledger-month-switcher{align-items:center;display:flex;gap:7px}.ledger-month-switcher>strong{min-width:106px;text-align:center}.ledger-icon-button{background:transparent;border-radius:7px;color:#647773;height:34px;padding:0;width:34px}.ledger-icon-button:hover{background:#e7eeeb;color:#145e57}.ledger-icon-button.danger:hover{background:#fff0ed;color:#bf4f45}.ledger-today-button{background:#e4efeb;border-radius:6px;color:#35615b;font-size:11px;min-height:30px;padding:0 8px}.ledger-sync-button{background:#fff;border:1px solid #d8e3df;border-radius:8px;color:#677873;gap:6px;min-height:38px;padding:0 11px}.ledger-sync-button.synced{color:#17766c}.ledger-sync-button .spinning{animation:ledger-spin .8s linear infinite}@keyframes ledger-spin{to{transform:rotate(360deg)}}.ledger-login-notice,.ledger-error{align-items:center;border-radius:8px;display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr) auto;padding:11px 13px}.ledger-login-notice{background:#fff8e9;border:1px solid #efd99f;color:#785a1d}.ledger-login-notice strong,.ledger-login-notice small{display:block}.ledger-login-notice small{color:#826f48;font-size:11px;margin-top:2px}.ledger-login-notice button{background:#705721;border:0;border-radius:7px;color:#fff;font-weight:700;min-height:34px;padding:0 12px}.ledger-error{background:#fff1ee;border:1px solid #edc2b9;color:#9d433a}.ledger-error>button{background:transparent;border:0;color:currentColor;height:30px;padding:0;width:30px}.expense-form,.ledger-section{background:#fff;border:1px solid #dfe8e3;border-radius:8px;box-shadow:0 10px 34px #1028260e}.expense-form{display:grid;gap:13px;padding:16px}.expense-form-heading,.expense-form-heading>div,.ledger-section-heading,.ledger-section-heading>div{align-items:center;display:flex}.expense-form-heading,.ledger-section-heading{gap:12px;justify-content:space-between}.expense-form-heading>div,.ledger-section-heading>div{gap:9px;min-width:0}.expense-form-heading svg,.ledger-section-heading svg{color:#178176;flex:0 0 auto}.expense-form-heading strong,.expense-form-heading small,.ledger-section-heading strong,.ledger-section-heading small{display:block}.expense-form-heading strong,.ledger-section-heading strong{color:#253c38;font-size:15px}.expense-form-heading small,.ledger-section-heading small{color:#80908c;font-size:11px;margin-top:2px}.ledger-text-button{background:transparent;color:#6d7f7b;gap:5px;padding:5px}.expense-form-fields{align-items:end;display:grid;gap:10px;grid-template-columns:minmax(150px,.8fr) minmax(140px,.8fr) minmax(140px,.9fr) minmax(120px,.7fr) minmax(170px,1fr) minmax(170px,1fr) auto}.expense-form-fields label{display:grid;gap:5px;min-width:0}.expense-form-fields label>span{color:#6d7d79;font-size:11px;font-weight:700}.expense-form-fields input,.expense-form-fields select,.record-filters input,.record-filters select,.budget-row input,.add-category-form input:not([type=color]){background:#fbfcfb;border:1px solid #d7e1dd;border-radius:7px;color:#273b38;min-height:40px;min-width:0;padding:0 10px;width:100%}.expense-form-fields input:focus,.expense-form-fields select:focus,.record-filters input:focus,.record-filters select:focus,.budget-row input:focus,.add-category-form input:focus{border-color:#49a398;box-shadow:0 0 0 3px #20b6a61c;outline:none}.amount-field>div{position:relative}.amount-field>div b{color:#1b736a;font-size:18px;left:11px;position:absolute;top:9px}.amount-field input{font-size:18px;font-weight:800;padding-left:31px}.expense-submit,.budgets-section .budget-row>button,.add-category-form>button,.export-section>button{align-items:center;background:#177f74;border:0;border-radius:7px;color:#fff;display:inline-flex;font-weight:700;gap:6px;justify-content:center;min-height:40px;padding:0 13px}.quick-categories{align-items:center;display:flex;flex-wrap:wrap;gap:7px}.quick-categories>span{color:#85938f;font-size:11px;margin-right:2px}.quick-categories button{align-items:center;background:#f3f6f4;border:1px solid transparent;border-radius:6px;color:#596c67;display:inline-flex;font-size:11px;gap:5px;min-height:28px;padding:0 8px}.quick-categories button.active{background:#e5f3ef;border-color:#abd7cf;color:#126d63;font-weight:700}.quick-categories i,.category-ranking i,.budget-category>i{border-radius:99px;display:inline-block;flex:0 0 auto;height:8px;width:8px}.ledger-overview{display:grid;gap:16px}.ledger-summary-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.ledger-summary-item{background:#fff;border:1px solid #dfe8e3;border-radius:8px;display:grid;min-width:0;padding:14px}.ledger-summary-item>div{align-items:center;color:#667a75;display:flex;font-size:12px;gap:7px}.ledger-summary-item>div svg{color:#378a80}.ledger-summary-item>strong{color:#173a35;font-size:25px;margin-top:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ledger-summary-item>small{color:#899793;font-size:10px;margin-top:3px}.ledger-analysis-grid{display:grid;gap:16px;grid-template-columns:minmax(320px,.85fr) minmax(360px,1.15fr)}.ledger-section{min-width:0;padding:16px}.health-section{display:grid;gap:13px}.health-score{align-items:baseline;display:flex;gap:8px}.health-score strong{color:#52635f;font-size:42px;line-height:1}.health-score span{color:#647773;font-weight:700}.health-score.good strong{color:#178176}.health-score.okay strong{color:#4a8262}.health-score.warning strong{color:#c37b22}.health-score.danger strong{color:#bf5047}.budget-progress>div{align-items:center;color:#64736f;display:flex;font-size:11px;justify-content:space-between}.budget-progress>i{background:#e9efec;border-radius:99px;display:block;height:7px;margin-top:6px;overflow:hidden}.budget-progress>i b{background:#278b7f;border-radius:inherit;display:block;height:100%}.budget-progress>small{color:#899793;display:block;font-size:10px;margin-top:4px}.health-section ul{color:#566964;display:grid;font-size:12px;gap:7px;line-height:1.55;margin:0;padding-left:18px}.category-ranking{display:grid;gap:11px}.category-rank-row{align-items:center;display:grid;font-size:12px;gap:8px 12px;grid-template-columns:minmax(100px,1fr) auto}.category-rank-row>div{align-items:center;display:flex;gap:7px}.category-rank-row>strong{color:#354945;font-size:12px;text-align:right}.category-rank-row>b{background:#edf1ef;border-radius:99px;display:block;grid-column:1 / -1;height:6px;overflow:hidden}.category-rank-row>b i{border-radius:inherit;display:block;height:100%}.heatmap-peak{background:#edf6f3;border-radius:6px;color:#28756d;font-size:11px;padding:5px 8px}.heatmap-weekdays,.expense-heatmap-grid{display:grid;gap:6px;grid-template-columns:repeat(7,minmax(0,1fr))}.heatmap-weekdays{color:#8a9794;font-size:10px;margin-top:14px;text-align:center}.expense-heatmap-grid{margin-top:6px}.expense-day{background:#f1f4f2;border:1px solid transparent;border-radius:6px;display:grid;min-height:58px;padding:7px}.expense-day strong{color:#536661;font-size:11px}.expense-day small{align-self:end;color:inherit;font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.expense-day.heat-1{background:#e1f1ec;color:#36776f}.expense-day.heat-2{background:#b9ddd5;color:#265f58}.expense-day.heat-3{background:#7fbeb3;color:#143f3a}.expense-day.heat-4{background:#3f998d;color:#fff}.expense-day.heat-5{background:#176d64;color:#fff}.expense-day.heat-4 strong,.expense-day.heat-5 strong{color:#fff}.expense-day.peak{border-color:#f2a63e;box-shadow:inset 0 0 0 1px #f2a63e}.year-bars{align-items:end;display:grid;gap:7px;grid-template-columns:repeat(12,minmax(32px,1fr));margin-top:16px;min-height:190px}.year-bar{display:grid;gap:4px;min-width:0;text-align:center}.year-bar>span{align-items:end;background:#edf2ef;border-radius:5px 5px 2px 2px;display:flex;height:130px;overflow:hidden}.year-bar>span i{background:#398f84;border-radius:4px 4px 0 0;display:block;min-height:0;width:100%}.year-bar>strong{color:#667873;font-size:10px}.year-bar>small{color:#899793;font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recent-expenses,.records-section{display:grid;gap:10px}.expense-row{align-items:center;border-top:1px solid #edf1ef;display:grid;gap:10px;grid-template-columns:36px minmax(0,1fr) 112px auto;min-height:62px;padding-top:9px}.expense-category-mark{border:0;border-radius:8px;font-size:13px;font-weight:800;height:34px;padding:0;width:34px}.expense-row-main{background:transparent;border:0;min-width:0;padding:0;text-align:left}.expense-row-main strong,.expense-row-main span,.expense-row-main small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.expense-row-main strong{color:#314541;font-size:13px}.expense-row-main span,.expense-row-main small{color:#85938f;font-size:10px;margin-top:2px}.expense-row-main small{color:#647873}.expense-row-amount{color:#313f3c;font-size:14px;text-align:right;white-space:nowrap}.expense-row-actions{display:flex;gap:2px}.expense-row-actions button{align-items:center;background:transparent;border:0;border-radius:6px;color:#798985;display:flex;height:30px;justify-content:center;padding:0;width:30px}.expense-row-actions button:hover{background:#eaf1ee;color:#176f66}.expense-row-actions button.danger:hover{background:#fff0ed;color:#bf4f45}.ledger-empty{align-items:center;color:#8a9894;display:flex;flex-direction:column;font-size:12px;gap:8px;justify-content:center;min-height:120px}.record-filters{display:grid;gap:10px;grid-template-columns:minmax(220px,1fr) 170px;margin-top:4px}.record-filters label{align-items:center;display:flex;position:relative}.record-filters label svg{color:#7d8c88;left:10px;position:absolute}.record-filters label input{padding-left:34px}.expense-record-list{display:grid}.budget-explanation{align-items:center;background:#eef6f3;border-radius:7px;color:#4e6963;display:flex;font-size:11px;gap:9px;line-height:1.5;margin-top:14px;padding:10px}.budget-explanation svg{color:#2a8278;flex:0 0 auto}.budgets-section h3{color:#526561;font-size:12px;margin:20px 0 8px}.budget-list{display:grid}.total-budget-row{background:#fbfcfb;border:1px solid #e3eae7;border-radius:7px;margin-top:14px;padding:0 11px}.budget-row{align-items:center;border-bottom:1px solid #edf1ef;display:grid;gap:8px 12px;grid-template-columns:minmax(160px,1fr) 160px 62px;min-height:66px;padding:9px 0}.budget-category{align-items:center;display:flex;gap:9px;min-width:0}.budget-category>div,.budget-category>span{min-width:0}.budget-category strong,.budget-category small{display:block}.budget-category strong{color:#344844;font-size:12px}.budget-category small{color:#87948f;font-size:10px;margin-top:2px}.budget-row>label{position:relative}.budget-row>label span{color:#66807a;left:10px;position:absolute;top:10px}.budget-row>label input{padding-left:27px}.budgets-section .budget-row>button{min-height:36px;padding:0 10px}.budget-row-progress{background:#e9efec;border-radius:99px;grid-column:1 / -1;height:4px;overflow:hidden}.budget-row-progress i{background:#318b80;display:block;height:100%}.budget-row-progress.over i{background:#cb5c50}.category-settings-grid{display:grid;gap:16px;grid-template-columns:minmax(430px,1fr) minmax(260px,340px)}.add-category-form{align-items:center;background:#f5f8f6;border-radius:7px;display:grid;gap:9px;grid-template-columns:38px minmax(130px,1fr) auto auto;margin-top:14px;padding:10px}.add-category-form input[type=color],.category-manage-row input[type=color]{background:transparent;border:0;border-radius:6px;height:36px;padding:2px;width:38px}.add-category-form label,.category-manage-row label{align-items:center;color:#667873;display:flex;font-size:11px;gap:5px;white-space:nowrap}.category-manage-list{display:grid;margin-top:10px}.category-manage-row{align-items:center;border-top:1px solid #edf1ef;display:grid;gap:10px;grid-template-columns:38px minmax(0,1fr) auto 42px;min-height:58px}.category-manage-row strong,.category-manage-row small{display:block}.category-manage-row strong{color:#344844;font-size:12px}.category-manage-row small{color:#8a9894;font-size:10px;margin-top:2px}.default-category-label{background:#edf2ef;border-radius:5px;color:#7a8985;font-size:10px;padding:4px 6px;text-align:center}.export-section{align-self:start;display:grid;gap:10px}.export-section p{color:#657772;font-size:12px;line-height:1.6;margin:7px 0 2px}.export-section>button.secondary{background:#e7efec;color:#315f59}@media (max-width: 1350px){.expense-form-fields{grid-template-columns:repeat(4,minmax(130px,1fr))}.expense-note-field{grid-column:span 2}.expense-submit{min-height:40px}}@media (max-width: 980px){.ledger-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ledger-analysis-grid,.category-settings-grid{grid-template-columns:1fr}.export-section{align-self:stretch}}@media (max-width: 760px){.ledger-toolbar{align-items:stretch;grid-template-columns:minmax(0,1fr) auto}.ledger-tabs{grid-column:1 / -1;grid-template-columns:repeat(4,1fr);width:100%}.ledger-tabs button{padding:0 7px}.ledger-month-switcher{justify-content:flex-start}.expense-form-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.expense-note-field{grid-column:auto}.expense-submit{grid-column:1 / -1}.year-bars{gap:3px;overflow-x:auto}.year-bar{min-width:38px}}@media (max-width: 620px){.app-shell.ledger-active .sidebar{gap:11px;padding-block:12px}.app-shell.ledger-active .brand img,.app-shell.ledger-active .brand-logo-button{border-radius:10px;height:42px;width:42px}.app-shell.ledger-active .brand-logo-button{flex-basis:42px}.app-shell.ledger-active .brand strong{font-size:18px}.app-shell.ledger-active .brand span{font-size:10px}.app-shell.ledger-active .nav{gap:4px;grid-template-columns:repeat(3,minmax(0,1fr))}.app-shell.ledger-active .nav button{font-size:11px;gap:5px;justify-content:center;min-height:36px;padding:0 4px}.app-shell.ledger-active .sidebar-login-prompt{min-height:44px;padding-block:5px}.ledger-shell{gap:12px}.ledger-tabs button{font-size:11px;gap:4px}.ledger-month-switcher>strong{font-size:13px;min-width:90px}.ledger-sync-button span{display:none}.ledger-sync-button{padding:0;width:38px}.ledger-login-notice{align-items:start;grid-template-columns:auto minmax(0,1fr)}.ledger-login-notice button{grid-column:1 / -1;width:100%}.expense-form{padding:13px}.expense-form-fields{grid-template-columns:1fr}.expense-note-field,.expense-submit{grid-column:auto}.ledger-summary-grid{grid-template-columns:1fr 1fr;gap:8px}.ledger-summary-item{padding:11px}.ledger-summary-item>strong{font-size:19px;margin-top:8px}.ledger-summary-item>div{font-size:11px}.ledger-section{padding:13px}.heatmap-peak{display:none}.heatmap-weekdays,.expense-heatmap-grid{gap:3px}.expense-day{min-height:46px;padding:5px}.expense-day small{font-size:8px}.year-chart{overflow:hidden}.year-bars{grid-template-columns:repeat(12,38px);padding-bottom:5px}.expense-row{grid-template-columns:34px minmax(0,1fr) 90px}.expense-row-actions{grid-column:2 / -1;justify-content:flex-end;margin-top:-5px}.record-filters{grid-template-columns:1fr}.budget-row{grid-template-columns:minmax(0,1fr) 130px}.budget-row>button{grid-column:1 / -1}.add-category-form{grid-template-columns:38px minmax(0,1fr)}.add-category-form label,.add-category-form>button{grid-column:1 / -1}.category-manage-row{grid-template-columns:34px minmax(0,1fr) auto 36px}}@media (prefers-reduced-motion: reduce){.ledger-sync-button .spinning{animation-duration:1ms}}.overtime-shell{display:grid;gap:16px;min-width:0}.overtime-loading{align-items:center;color:#596b67;display:flex;gap:10px;justify-content:center;min-height:280px}.overtime-login,.overtime-error{align-items:center;border-radius:8px;display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr) auto;padding:11px 13px}.overtime-login{background:#fff8e8;border:1px solid #ecd69a;color:#72561c}.overtime-login strong,.overtime-login small{display:block}.overtime-login small{color:#806d45;font-size:11px;margin-top:2px}.overtime-login button{background:#705721;border:0;border-radius:7px;color:#fff;font-weight:700;min-height:34px;padding:0 12px}.overtime-error{background:#fff0ed;border:1px solid #e9beb6;color:#9c4138;grid-template-columns:auto minmax(0,1fr)}.overtime-toolbar{align-items:center;display:flex;justify-content:space-between;gap:12px}.overtime-month{align-items:center;display:flex;gap:8px}.overtime-month strong{min-width:110px;text-align:center}.overtime-month button,.overtime-sync{align-items:center;background:#fff;border:1px solid #d8e3df;border-radius:7px;color:#58716a;display:inline-flex;gap:6px;justify-content:center;min-height:34px;padding:0 9px}.overtime-month button{padding:0;width:34px}.overtime-sync .spinning{animation:overtime-spin .8s linear infinite}@keyframes overtime-spin{to{transform:rotate(360deg)}}.overtime-summary{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}.overtime-summary>div{background:#fff;border:1px solid #dfe8e3;border-radius:8px;display:grid;gap:3px;padding:12px}.overtime-summary span{color:#71817d;font-size:11px}.overtime-summary strong{color:#176f66;font-size:22px}.overtime-summary small{color:#7e908a;font-size:11px;font-weight:500;margin-left:3px}.overtime-grid{align-items:start;display:grid;gap:16px;grid-template-columns:minmax(0,1fr) minmax(300px,360px)}.overtime-side{display:grid;gap:16px}.overtime-calendar,.overtime-plan,.overtime-weeks{min-width:0;padding:16px}.overtime-section-heading{align-items:center;display:flex;justify-content:space-between;gap:12px}.overtime-section-heading>div{align-items:center;display:flex;gap:9px;min-width:0}.overtime-section-heading svg{color:#17877a;flex:0 0 auto}.overtime-section-heading strong,.overtime-section-heading small{display:block}.overtime-section-heading strong{color:#2c403c;font-size:14px}.overtime-section-heading small{color:#81908c;font-size:10px;margin-top:2px}.overtime-section-heading label{color:#637570;font-size:11px;white-space:nowrap}.overtime-section-heading input{border:1px solid #d7e2de;border-radius:6px;color:#314440;min-height:32px;padding:0 6px;width:70px}.overtime-weekdays,.overtime-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.overtime-weekdays{color:#80918c;font-size:11px;gap:5px;margin-top:18px;text-align:center}.overtime-calendar-grid{gap:5px;margin-top:5px}.overtime-cell{align-items:center;background:#f1f5f2;border:1px solid transparent;border-radius:6px;color:#526762;display:grid;min-height:70px;padding:5px;position:relative}.overtime-cell>span{font-size:11px}.overtime-cell input{background:transparent;border:0;color:#214b45;font-size:13px;font-weight:700;min-width:0;outline:0;padding:2px 0;width:100%}.overtime-cell input::placeholder{color:transparent}.overtime-cell small{bottom:4px;color:#527c73;font-size:9px;position:absolute;right:5px}.overtime-cell.muted{opacity:.45}.overtime-cell.level-1{background:#dff4ee}.overtime-cell.level-2{background:#aee6dc}.overtime-cell.level-3{background:#63cdbf}.overtime-cell.level-4{background:#168d81;color:#fff}.overtime-cell.level-4 input,.overtime-cell.level-4 small{color:#fff}.overtime-hint{color:#71837f;font-size:11px;line-height:1.6;margin:12px 0 0}.overtime-plan h3{color:#176f66;font-size:18px;margin:20px 0 6px}.overtime-plan p{color:#657873;font-size:12px;line-height:1.6;margin:0 0 13px}.overtime-plan-row,.overtime-week-row{align-items:center;border-top:1px solid #e6eeeb;display:flex;justify-content:space-between;gap:8px;padding:9px 0}.overtime-plan-row span,.overtime-week-row span{color:#61736e;font-size:11px}.overtime-plan-row strong{color:#2b5e56;font-size:13px}.overtime-week-row div{display:flex;gap:4px}.overtime-week-row button{background:#f1f5f2;border:1px solid #d9e5e0;border-radius:5px;color:#627570;font-size:10px;min-height:28px;padding:0 7px}.overtime-week-row button.active{background:#dff4ee;border-color:#63b9ac;color:#126e65;font-weight:700}.overtime-rules{align-items:flex-start;background:#f0f7f4;border:1px solid #d6e7e2;border-radius:8px;color:#49615d;display:flex;font-size:12px;gap:9px;line-height:1.7;padding:13px 15px}.overtime-rules svg{color:#d29327;flex:0 0 auto;margin-top:3px}.reference-note{color:#8a9995;display:block;font-size:10px;margin-top:10px}@media (max-width: 980px){.overtime-grid{grid-template-columns:1fr}}@media (max-width: 620px){.overtime-login{align-items:start;grid-template-columns:auto minmax(0,1fr)}.overtime-login button{grid-column:1 / -1;width:100%}.overtime-toolbar{align-items:stretch;flex-direction:column}.overtime-sync{width:100%}.overtime-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.overtime-calendar,.overtime-plan,.overtime-weeks{padding:12px}.overtime-section-heading{align-items:flex-start;flex-direction:column}.overtime-section-heading label{width:100%}.overtime-section-heading input{width:90px}.overtime-cell{min-height:58px;padding:4px}.overtime-cell input{font-size:12px}.overtime-weekdays,.overtime-calendar-grid{gap:3px}}.overtime-progress{display:grid;gap:8px;padding:12px 14px}.overtime-progress>div:first-child{align-items:center;display:flex;justify-content:space-between}.overtime-progress span{color:#71817d;font-size:11px}.overtime-progress strong{color:#176f66;font-size:18px}.overtime-progress-track{background:#e5efeb;border-radius:999px;height:9px;overflow:hidden}.overtime-progress-track span{background:linear-gradient(90deg,#52b9a8,#168d81);border-radius:inherit;display:block;height:100%;transition:width .24s ease}.overtime-progress small{color:#81908c;font-size:10px}.overtime-adjusted{align-items:center;display:flex;gap:14px;justify-content:space-between;padding:13px 14px}.overtime-adjusted>div{display:grid;gap:3px;min-width:0}.overtime-adjusted>div strong{color:#2c403c;font-size:13px}.overtime-adjusted span,.overtime-adjusted small{color:#81908c;font-size:10px;line-height:1.5}.overtime-adjusted>strong{color:#176f66;font-size:22px;white-space:nowrap}.overtime-adjusted>strong small{margin-left:3px}.overtime-cell input:disabled{cursor:not-allowed;opacity:.6}.overtime-cell em{color:#bd6b2e;font-size:9px;font-style:normal;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overtime-cell.holiday{border-color:#efb47f}.overtime-cell.workday{border-color:#9bb9e7}.overtime-cell.workday em{color:#4773ae}.overtime-cell.travel{box-shadow:inset 0 -3px #8061bd}.overtime-cell.comp-off{outline:1px solid #6f9ed4;outline-offset:-2px}.overtime-day-badges{display:flex;gap:2px;position:absolute;right:4px;top:4px}.overtime-day-badges b{align-items:center;border-radius:4px;color:#fff;display:inline-flex;font-size:9px;font-weight:800;height:17px;justify-content:center;width:17px}.overtime-day-badges b.travel{background:#8061bd}.overtime-day-badges b.comp-off{background:#4e83bd}@media (max-width: 620px){.overtime-calendar,.overtime-plan,.overtime-weeks,.overtime-progress{padding:12px}}:root{color:#22302f;background:#f6f7f3;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled,input:disabled{cursor:not-allowed;opacity:.58}.loading{align-items:center;color:#4b625f;display:flex;gap:14px;justify-content:center;min-height:100vh}.loading img{border-radius:16px;height:56px;width:56px}.app-shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh}.sidebar{background:#102826;color:#f4fbf8;display:flex;flex-direction:column;gap:24px;padding:22px}.brand{align-items:center;display:flex;gap:12px}.brand img{background:#f7fbf6;border-radius:14px;display:block;height:52px;object-fit:cover;width:52px}.brand-logo-button{background:transparent;border:0;border-radius:14px;flex:0 0 52px;padding:0}.brand-logo-button:hover{box-shadow:0 0 0 3px #5ed2c433}.brand-logo-button:focus-visible{outline:2px solid #70d8cc;outline-offset:3px}.brand strong{display:block;font-size:22px}.brand span{color:#a8c5c0;display:block;font-size:12px;margin-top:3px}.nav{display:grid;gap:8px}.nav button,.group-filter{align-items:center;background:transparent;border:0;border-radius:8px;color:#cfe1dd;display:flex;gap:10px;min-height:42px;padding:0 12px;text-align:left}.nav button.active,.group-filter.active,.nav button:hover,.group-filter:hover{background:#1d3d39;color:#fff}.side-section{display:grid;gap:8px}.section-title{align-items:center;color:#91aaa5;display:flex;font-size:12px;justify-content:space-between;text-transform:uppercase}.dot{border-radius:999px;display:inline-block;height:10px;width:10px}.dot.all{background:linear-gradient(135deg,#20b6a6,#f6a03d)}.group-icon{align-items:center;color:#b7cbc7;display:inline-flex;flex:0 0 18px;justify-content:center;width:18px}.group-icon.all{color:#5ed2c4}.group-filter-row{align-items:center;display:grid;gap:3px;grid-template-columns:minmax(0,1fr) 30px 30px}.group-filter-row .group-filter{min-width:0;width:100%}.group-action{color:#91aaa5;height:30px;opacity:.42;width:30px}.group-filter-row:hover .group-action,.group-action:focus-visible{opacity:1}.group-action.danger:hover{background:#e85d7529;color:#ff9bad}.group-lock{align-items:center;color:#6f918b;display:inline-flex;grid-column:2 / -1;justify-content:center;min-height:30px}.sidebar-group-input{background:#f7fbf9;border:1px solid #4a8279;border-radius:8px;color:#17312e;min-height:36px;min-width:0;padding:0 9px;width:100%}.sync-card{background:#173632;border:1px solid #26534d;border-radius:8px;display:grid;gap:12px;margin-top:auto;padding:14px}.sidebar-profile{align-items:center;background:transparent;border:1px solid #2a4c47;border-radius:8px;color:#e6f2ef;display:grid;gap:9px;grid-template-columns:34px minmax(0,1fr) 18px;padding:8px;text-align:left}.sidebar-profile:hover{background:#173632}.sidebar-profile>span{min-width:0}.sidebar-profile strong,.sidebar-profile small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-profile strong{font-size:13px}.sidebar-profile small{color:#91aaa5;font-size:10px;margin-top:2px}.sidebar-profile>svg{color:#8eb2ab}.sidebar-login-prompt{align-items:center;background:#173632;border:1px solid #3d6d65;border-radius:8px;color:#eef9f6;display:grid;gap:9px;grid-template-columns:34px minmax(0,1fr) 18px;padding:9px;text-align:left}.sidebar-login-prompt:hover{background:#1d443f;border-color:#62a198}.sidebar-login-icon{align-items:center;background:#dff4ee;border-radius:8px;color:#0a756a;display:flex;height:34px;justify-content:center;width:34px}.sidebar-login-prompt>span:nth-child(2){min-width:0}.sidebar-login-prompt strong,.sidebar-login-prompt small{display:block}.sidebar-login-prompt strong{font-size:13px}.sidebar-login-prompt small{color:#a9c6c0;font-size:10px;line-height:1.4;margin-top:2px}.sync-card div{align-items:center;color:#d7e9e5;display:flex;gap:9px}.sync-card button,.quick-add button,.settings-panel button,.account-row button{align-items:center;background:#20b6a6;border:0;border-radius:8px;color:#08201d;display:inline-flex;font-weight:700;gap:8px;min-height:40px;padding:0 14px}.workspace{display:flex;flex-direction:column;gap:22px;min-width:0;padding:28px}.login-notice{align-items:center;background:#fff8e8;border:1px solid #efd79d;border-radius:8px;color:#5f4a1e;display:flex;gap:16px;justify-content:space-between;padding:12px 14px}.login-notice>div,.login-notice>div>span{min-width:0}.login-notice>div{align-items:center;display:flex;gap:10px}.login-notice>div>svg{color:#b87913;flex:0 0 auto}.login-notice strong,.login-notice small{display:block}.login-notice strong{font-size:14px}.login-notice small{color:#7a673f;font-size:12px;line-height:1.45;margin-top:2px}.login-notice>button{background:#173f3a;border:0;border-radius:8px;color:#fff;flex:0 0 auto;font-weight:700;min-height:38px;padding:0 14px}.topbar{align-items:flex-start;display:flex;gap:20px;justify-content:space-between}.topbar p{color:#6d7f7b;margin:0 0 4px}.topbar h1{font-size:32px;line-height:1.15;margin:0}.topbar-side{align-items:flex-end;display:grid;gap:14px;justify-items:end;max-width:min(840px,72%);min-width:0;width:100%}.topbar-insights{display:grid;gap:12px;grid-template-columns:minmax(240px,.85fr) minmax(360px,1.15fr);width:100%}.daily-quote{align-items:flex-start;background:#fff;border:1px solid #dfe8e3;border-left:3px solid #20b6a6;border-radius:8px;color:#536965;display:grid;gap:10px;grid-template-columns:22px minmax(0,1fr);min-height:176px;padding:16px}.daily-quote>svg{color:#20a697;margin-top:2px}.daily-quote blockquote{color:#344844;font-size:15px;font-weight:700;line-height:1.6;margin:0;text-align:left}.daily-quote cite{color:#7a8b87;display:block;font-size:12px;font-style:normal;margin-top:4px;text-align:left}.daily-quote .quote-source{color:#99a6a2;display:block;font-size:10px;line-height:1.4;margin-top:2px;text-align:left}.daily-quote .quote-explanation{border-top:1px solid #edf2ef;color:#657873;font-size:11px;line-height:1.55;margin:8px 0 0;padding-top:7px;text-align:left}.today-info{background:#fff;border:1px solid #dfe8e3;border-radius:8px;min-height:176px;min-width:0;padding:12px 14px}.today-info-heading,.today-info-heading>div,.zodiac-toolbar,.zodiac-toolbar>span,.almanac-summary span{align-items:center;display:flex}.today-info-heading{gap:12px;justify-content:space-between}.today-info-heading>div:first-child{color:#273d39;flex:0 0 auto;gap:8px}.today-info-heading>div:first-child>svg{color:#e99a26}.today-info-heading strong,.today-info-heading small{display:block}.today-info-heading strong{font-size:14px}.today-info-heading small{color:#7a8b87;font-size:11px;margin-top:1px}.today-info-tabs{background:#edf3f0;border-radius:8px;display:grid;flex:0 0 auto;grid-template-columns:repeat(4,1fr);padding:3px}.today-info-tabs button{background:transparent;border:0;border-radius:6px;color:#657873;font-size:12px;min-height:28px;padding:0 9px}.today-info-tabs button.active{background:#fff;box-shadow:0 1px 4px #1028261f;color:#147c71;font-weight:700}.today-info-content{margin-top:12px;min-width:0}.festival-content{align-items:center;display:grid;gap:12px;grid-template-columns:42px minmax(0,1fr);min-height:91px}.festival-icon{align-items:center;background:#fff3df;border-radius:8px;color:#d78113;display:flex;height:42px;justify-content:center;width:42px}.festival-content strong{color:#263b37;display:block;font-size:14px;line-height:1.45}.festival-content p,.fortune-advice{color:#6b7c78;font-size:12px;line-height:1.55;margin:5px 0 0}.almanac-summary{color:#71817d;display:flex;flex-wrap:wrap;font-size:11px;gap:5px 10px}.almanac-summary span{gap:4px}.almanac-lists{display:grid;gap:7px;margin-top:9px}.almanac-lists>div{align-items:flex-start;display:grid;font-size:12px;gap:7px;grid-template-columns:22px minmax(0,1fr);line-height:1.45}.almanac-lists>div span{color:#4f625e;overflow-wrap:anywhere}.almanac-lists strong{border-radius:5px;font-size:11px;padding:1px 4px;text-align:center}.almanac-lists .good{background:#e3f5ef;color:#148170}.almanac-lists .avoid{background:#fff0ec;color:#c65b48}.reference-note{color:#95a39f;display:block;font-size:10px;margin-top:7px;text-align:right}.zodiac-toolbar{justify-content:space-between}.zodiac-toolbar>span{color:#4d625e;font-size:12px;font-weight:700;gap:5px}.zodiac-toolbar>span svg{color:#7c70cf}.zodiac-toolbar select{background:#f7f8f6;border:1px solid #d9e2de;border-radius:6px;color:#344844;font-size:12px;min-height:28px;padding:0 5px}.fortune-scores{display:grid;gap:5px;margin-top:8px}.fortune-score{align-items:center;color:#637571;display:grid;font-size:11px;gap:7px;grid-template-columns:28px minmax(60px,1fr) 22px}.fortune-score i{background:#e7ece9;border-radius:99px;display:block;height:5px;overflow:hidden}.fortune-score b{background:#20a697;border-radius:inherit;display:block;height:100%}.fortune-score strong{color:#344844;font-size:11px;text-align:right}.fortune-advice{color:#465b57;margin-top:7px}.weather-empty{align-items:center;display:grid;gap:10px;grid-template-columns:30px minmax(0,1fr) auto;min-height:88px}.weather-empty>svg{color:#3e82a0}.weather-empty strong{color:#2e4541;display:block;font-size:13px}.weather-empty p{color:#73837f;font-size:11px;line-height:1.45;margin:3px 0 0}.weather-empty button{background:#e6f3f7;border:1px solid #c6dfe8;border-radius:8px;color:#275f74;font-size:11px;font-weight:700;min-height:34px;padding:0 10px}.weather-content{display:grid;gap:7px}.weather-overview{align-items:center;display:grid;gap:9px;grid-template-columns:30px auto minmax(0,1fr)}.weather-overview>svg{color:#d28a19}.weather-overview>div:nth-child(2){display:grid;gap:1px}.weather-overview>div:nth-child(2) strong{color:#273d39;font-size:22px;line-height:1}.weather-overview>div:nth-child(2) span,.weather-location span{color:#6b7d78;font-size:10px}.weather-location{align-items:center;display:flex;gap:3px;justify-content:flex-end;min-width:0}.weather-location span{align-items:center;display:inline-flex;gap:3px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.weather-location .icon-button{flex:0 0 28px;height:28px;width:28px}.weather-stats{color:#516964;display:flex;flex-wrap:wrap;font-size:10px;gap:5px 10px}.weather-advice{display:grid;gap:4px}.weather-advice p{align-items:flex-start;color:#526662;display:grid;font-size:10px;gap:5px;grid-template-columns:15px minmax(0,1fr);line-height:1.4;margin:0}.weather-advice svg{color:#c2811f;margin-top:1px}.metrics{display:flex;gap:10px}.metrics span{background:#fff;border:1px solid #dfe8e3;border-radius:8px;color:#63736f;min-width:104px;padding:10px 12px}.metrics strong{color:#102826;display:block;font-size:22px}.content-grid{display:grid;gap:18px;grid-template-columns:minmax(430px,1fr) minmax(340px,420px);min-height:0}.panel{background:#fff;border:1px solid #dfe8e3;border-radius:8px;box-shadow:0 12px 40px #10282612}.task-panel{display:flex;flex-direction:column;gap:14px;min-width:0;padding:16px}.quick-add{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr)) auto}.quick-add>input{font-size:16px;grid-column:1 / -1;min-height:48px}.quick-add input,.quick-add select,.auth-form input,.title-input,.field-grid input,.field-grid select,.list-controls select,.group-edit-row input,.notes-label textarea{background:#f9fbf9;border:1px solid #d7e1dc;border-radius:8px;color:#22302f;min-height:42px;padding:0 12px;width:100%}.task-list{display:grid;gap:10px;min-width:0}.review-today{background:#f7fbfa;border:1px solid #dce9e5;border-radius:8px;display:grid;gap:10px;padding:12px}.review-today-header{align-items:center;color:#263633;display:flex;justify-content:space-between}.review-today-header span{align-items:center;display:inline-flex;font-weight:800;gap:7px}.review-today-header strong{background:#20b6a6;border-radius:999px;color:#08201d;font-size:12px;min-width:26px;padding:4px 8px;text-align:center}.review-today p{color:#71837f;font-size:13px;margin:0}.review-today-list{display:grid;gap:9px}.review-row{align-items:center;background:#fff;border:1px solid #e1ece8;border-radius:8px;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto;padding:11px}.review-row div:first-child{display:grid;gap:5px;min-width:0}.review-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-row span{color:#71837f;font-size:12px}.review-actions{display:flex;gap:7px}.review-actions button{background:#edf7f4;border:1px solid #cfe5df;border-radius:8px;color:#24524c;font-size:12px;font-weight:700;min-height:32px;padding:0 9px}.review-actions button.danger{background:#fff0f2;border-color:#f4ccd2;color:#9a2337}.plan-task-list{gap:16px}.plan-section{display:grid;gap:10px}.plan-section-header{align-items:center;background:transparent;border:0;border-bottom:1px solid #e5eeea;color:#273734;display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr) auto auto;min-height:44px;padding:4px 2px 10px;text-align:left}.plan-section-header span{font-size:20px;font-weight:800}.plan-section-header small{color:#879693;font-size:14px}.plan-section-header strong{background:#eef5f2;border-radius:999px;color:#3c5652;font-size:12px;min-width:26px;padding:4px 8px;text-align:center}.plan-section-header svg{color:#5d706c;transition:transform .16s ease}.plan-section-header svg.collapsed{transform:rotate(-90deg)}.plan-section-tasks{display:grid;gap:10px}.completed-task-section{border-top:1px solid #dce6e2;display:grid;gap:10px;margin-top:6px;padding-top:16px}.completed-task-header{align-items:center;color:#63736f;display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr) auto;min-height:38px}.completed-task-header span{align-items:center;display:inline-flex;font-size:18px;font-weight:800;gap:7px}.completed-task-header small{color:#91a09c;font-size:13px}.completed-task-header strong{background:#edf1f0;border-radius:999px;color:#667672;font-size:12px;min-width:26px;padding:4px 8px;text-align:center}.task-row{align-items:center;background:#fbfdfb;border:1px solid #e0e9e5;border-radius:8px;display:grid;gap:10px;grid-template-columns:18px 28px minmax(0,1fr) 70px;min-height:78px;padding:12px}.task-row.pinned:not(.completed){border-color:#b8ddd7;box-shadow:inset 3px 0 #20b6a6}.task-row.selected{background:#f5f7ff;border-color:#6476b8;box-shadow:0 0 0 2px #6476b82e}.task-row.pinned.selected:not(.completed){box-shadow:inset 3px 0 #20b6a6,0 0 0 2px #6476b82e}.task-row.completed{background:#f3f5f4;border-color:#e7ece9;opacity:.68}.task-row.completed:hover,.task-row.completed.selected{opacity:.9}.task-row.completed.selected{background:#f1f3fa;border-color:#8793be}.task-row.completed .task-title-line strong{color:#7f8c89;text-decoration:line-through;text-decoration-color:#9aa7a4;text-decoration-thickness:1.5px}.task-row.completed .task-meta{color:#96a19f}.task-row.completed .priority,.task-row.completed .plan-badge,.task-row.completed .kind-badge{filter:grayscale(.55)}.task-row.completing{animation:task-complete-glow .68s ease both}.task-row.completing .task-actions{opacity:.35;pointer-events:none}.task-row.dragging{opacity:.55}.task-actions{align-items:center;display:flex;justify-content:flex-end}.pin-button{color:#94a5a1}.pin-button.active{background:#dff4ee;color:#0a8f81}.pin-button.active svg{fill:currentColor}.drag-handle{color:#9fb1ad}.check-button{align-items:center;background:#fff;border:2px solid #c8d7d2;border-radius:999px;color:#fff;display:flex;height:26px;justify-content:center;padding:0;position:relative;width:26px}.check-button.done{background:#20b6a6;border-color:#20b6a6}.check-button.celebrating{animation:completion-pop .68s cubic-bezier(.2,.85,.32,1.35) both;box-shadow:0 0 #20b6a661}.check-button.celebrating:disabled{cursor:default;opacity:1}.check-button.celebrating:after{border:2px solid rgba(32,182,166,.55);border-radius:999px;content:"";top:-2px;right:-2px;bottom:-2px;left:-2px;position:absolute;animation:completion-ring .68s ease-out both}.check-button.celebrating svg{animation:completion-check .42s 80ms ease-out both}@keyframes completion-pop{0%{transform:scale(.86)}42%{box-shadow:0 0 0 8px #20b6a624;transform:scale(1.22)}72%{transform:scale(.96)}to{box-shadow:0 0 0 12px #20b6a600;transform:scale(1)}}@keyframes completion-ring{0%{opacity:.9;transform:scale(.72)}to{opacity:0;transform:scale(1.75)}}@keyframes completion-check{0%{opacity:0;transform:rotate(-18deg) scale(.35)}to{opacity:1;transform:rotate(0) scale(1)}}@keyframes task-complete-glow{0%{background:#fbfdfb}38%{background:#e4f7f1;border-color:#76cbbf}to{background:#f3faf7;border-color:#b8ddd7}}.task-main{min-width:0}.task-title-line{align-items:start;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) 64px;min-width:0}.task-title-line strong{font-size:16px;line-height:1.45;min-width:0;overflow-wrap:anywhere;white-space:normal}.priority{border-radius:999px;display:inline-flex;flex:0 0 auto;font-size:12px;justify-content:center;justify-self:end;min-height:24px;min-width:60px;padding:4px 9px;white-space:nowrap}.priority-high{background:#ffe3e6;color:#b5223c}.priority-medium{background:#fff0d6;color:#91520c}.priority-low{background:#e1f6ef;color:#146b5f}.priority-none{background:#edf1f0;color:#667672}.task-meta{color:#71837f;display:flex;flex-wrap:wrap;font-size:12px;gap:10px;margin-top:8px}.task-meta span{align-items:center;display:inline-flex;gap:5px}.task-meta i{border-radius:999px;display:inline-block;height:8px;width:8px}.task-meta .completed-time{color:#3d6d67;font-weight:700}.plan-badge{border-radius:999px;font-weight:700;padding:2px 7px}.kind-badge{background:#eef5ff;border-radius:999px;color:#315d96;font-weight:700;padding:2px 7px}.plan-day{background:#edf1f0;color:#667672}.plan-week{background:#e6f4ff;color:#226899}.plan-month{background:#f4e7ff;color:#8b47b5}.plan-year{background:#fff0d6;color:#91520c}.icon-button{align-items:center;background:transparent;border:0;border-radius:8px;color:inherit;display:inline-flex;height:32px;justify-content:center;padding:0;width:32px}.icon-button:hover{background:#20b6a624}.muted{color:#8fa19d}.empty-state,.empty-detail{align-items:center;color:#71837f;display:flex;justify-content:center;min-height:260px;padding:24px;text-align:center}.detail-panel{display:flex;flex-direction:column;gap:16px;min-width:0;padding:18px}.detail-header{align-items:center;color:#71837f;display:flex;justify-content:space-between}.title-input{font-size:22px;font-weight:800;min-height:52px}.field-grid{display:grid;gap:12px;grid-template-columns:1fr 1fr}.field-grid label,.notes-label{color:#63736f;display:grid;font-size:13px;gap:6px}.field-grid .wide{grid-column:1 / -1}.completed-at-field input{color:#52645f;font-weight:700}.review-toggle span{align-items:center;background:#f9fbf9;border:1px solid #d7e1dc;border-radius:8px;color:#344440;display:flex;gap:8px;min-height:42px;padding:0 12px}.review-toggle input{min-height:auto;padding:0;width:auto}.review-summary{background:#f7fbfa;border:1px solid #dce9e5;border-radius:8px;color:#5a6f6b;display:flex;flex-wrap:wrap;font-size:13px;gap:10px;padding:10px 12px}.review-curve-card{background:#fbfdfc;border:1px solid #dfe8e3;border-radius:8px;display:grid;gap:10px;padding:12px}.review-curve-title{align-items:center;display:flex;justify-content:space-between}.review-curve-title span{align-items:center;color:#263633;display:inline-flex;font-weight:800;gap:7px}.review-curve-title small{background:#edf7f4;border-radius:999px;color:#2f6961;font-size:12px;font-weight:700;padding:4px 8px}.review-curve{height:auto;overflow:visible;width:100%}.review-curve line{stroke:#d8e5e0;stroke-width:1}.review-curve .review-node-line{stroke-dasharray:3 4}.review-curve polyline{fill:none;stroke:#20b6a6;stroke-linecap:round;stroke-linejoin:round;stroke-width:3}.review-curve circle{fill:#fff;stroke:#9ab2ad;stroke-width:2}.review-curve circle.current{fill:#f6a03d;stroke:#f6a03d}.review-curve circle.done{fill:#20b6a6;stroke:#20b6a6}.review-curve text{fill:#71837f;font-size:10px;text-anchor:middle}.review-node-list{display:flex;flex-wrap:wrap;gap:7px}.review-node-list span{background:#f0f4f2;border-radius:999px;color:#5d706c;font-size:12px;font-weight:700;padding:5px 8px}.review-node-list span.current{background:#fff0d6;color:#91520c}.review-node-list span.done{background:#dff4ee;color:#146b5f}.review-curve-card p{color:#71837f;font-size:13px;line-height:1.55;margin:0}.notes-label textarea{min-height:150px;padding:12px;resize:vertical}.notes-label-primary textarea{min-height:180px}.markdown-preview{background:#f8faf9;border:1px solid #dfe8e3;border-radius:8px;color:#344440;min-height:110px;overflow-wrap:anywhere;padding:14px}.markdown-preview h1,.markdown-preview h2,.markdown-preview h3,.markdown-preview p{margin:0 0 10px}.markdown-preview code{background:#e5eeea;border-radius:5px;padding:2px 5px}.markdown-preview a{color:#0a8f81}.list-controls{display:grid;gap:10px;grid-template-columns:1fr}.list-controls>select{justify-self:end;max-width:160px}.calendar-layout,.settings-grid{display:grid;gap:18px;grid-template-columns:minmax(430px,1fr) minmax(300px,380px)}.calendar-panel,.review-panel,.settings-panel{padding:18px}.calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.calendar-header h2,.review-panel h2,.settings-panel h2{margin:0}.weekdays,.calendar-grid{display:grid;gap:8px;grid-template-columns:repeat(7,minmax(0,1fr))}.weekdays{color:#72837f;font-size:12px;margin-bottom:8px;text-align:center}.calendar-cell{aspect-ratio:1;background:#f3f6f4;border:1px solid #dce6e2;border-radius:8px;color:#263633;display:flex;flex-direction:column;justify-content:space-between;min-height:64px;padding:8px;text-align:left}.calendar-cell strong{align-self:flex-end}.calendar-cell.selected{outline:3px solid rgba(246,160,61,.45)}.calendar-cell.muted-month{color:#9ba9a6;opacity:.65}.calendar-cell small{color:#7b6750;font-size:10px;line-height:1.2;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-cell.holiday-day{border-color:#f0b27a;background:#fff4e8}.calendar-cell.workday-day{border-color:#9bb9e7;background:#eef5ff}.calendar-cell.travel-day{box-shadow:inset 0 -3px #8d6bd1}.calendar-cell.holiday-day small,.holiday-badge{color:#c56b2b}.calendar-cell.workday-day small,.workday-badge{color:#3f6eaf}.calendar-day-status{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.calendar-day-status span{font-size:12px;font-weight:700}.travel-toggle{background:#f4f0fb;border:1px solid #d8cbed;border-radius:6px;color:#675196;cursor:pointer;font-size:12px;padding:6px 9px}.travel-toggle.active{background:#e8def8;border-color:#a88bd4;color:#51338c}.level-1{background:#dff4ee}.level-2{background:#aee6dc}.level-3{background:#63cdbf}.level-4{background:#168d81;color:#fff}.eyebrow{color:#0a8f81;font-size:12px;font-weight:800;text-transform:uppercase}.review-list{margin-top:24px}.review-item{border-bottom:1px solid #e5eeea;display:grid;gap:5px;padding:12px 0}.review-item span{color:#71837f;font-size:13px}.review-item-notes{background:#f7f9f8;border:1px solid #e1e9e5;border-radius:7px;display:grid;gap:6px;margin-top:5px;overflow-wrap:anywhere;padding:10px}.review-item-notes>b{color:#637570;font-size:11px}.review-item-notes>div,.review-item-notes>p{color:#3f514d;font-size:12px;line-height:1.6;margin:0;min-width:0}.review-item-notes>div>:first-child{margin-top:0}.review-item-notes>div>:last-child{margin-bottom:0}.review-item-notes a{color:#137d72;overflow-wrap:anywhere}.review-item-notes pre,.review-item-notes code{max-width:100%;overflow-x:auto;white-space:pre-wrap;word-break:break-word}.guide-view{display:grid;gap:20px}.guide-intro{align-items:end;border-bottom:1px solid #dfe8e3;display:grid;gap:18px;grid-template-columns:minmax(0,1fr) minmax(280px,440px);padding:4px 0 20px}.guide-intro h2{font-size:24px;margin:6px 0 0}.guide-intro p{color:#63736f;line-height:1.7;margin:0}.guide-grid{display:grid;gap:0 28px;grid-template-columns:repeat(2,minmax(0,1fr))}.guide-card{border-bottom:1px solid #e1e9e5;padding:20px 2px}.guide-card-title{align-items:center;color:#1d4d47;display:flex;gap:9px}.guide-card-title h3{color:#263633;font-size:17px;margin:0}.guide-card ol{color:#5f716d;line-height:1.75;margin:13px 0 0;padding-left:22px}.guide-card li+li{margin-top:5px}.innovation-band{background:#f0f7f4;border:1px solid #d6e7e2;border-radius:8px;display:grid;gap:14px;padding:18px}.innovation-list{display:flex;flex-wrap:wrap;gap:9px}.innovation-list span{background:#fff;border:1px solid #d9e7e3;border-radius:999px;color:#49615d;font-size:13px;padding:7px 10px}.guide-quick-start .innovation-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.guide-quick-start .innovation-list span{border-radius:8px;line-height:1.5;padding:12px}.guide-quick-start .innovation-list strong{color:#176f66;display:block;margin-bottom:2px}@media (max-width: 760px){.guide-quick-start .innovation-list{grid-template-columns:1fr}}.settings-grid{align-items:start}.settings-panel{display:grid;gap:14px}.settings-heading{align-items:center;display:flex;gap:11px}.settings-heading-icon{align-items:center;background:#e5f4ef;border-radius:8px;color:#17877a;display:flex;flex:0 0 40px;height:40px;justify-content:center}.settings-heading h2{margin:0 0 2px}.settings-heading p{font-size:12px}.settings-panel p{color:#667672;margin:0}.wide-panel{grid-column:1 / -1}.auth-form,.account-box,.group-editor{display:grid;gap:10px}.auth-form div,.account-row{align-items:center;display:flex;gap:10px}.auth-form p,.auth-note{font-size:13px}.auth-mode-tabs{background:#edf2ef;border-radius:8px;display:grid!important;grid-template-columns:1fr 1fr;padding:4px}.auth-mode-tabs button{background:transparent;color:#61736f;justify-content:center;min-height:38px}.auth-mode-tabs button.active{background:#fff;box-shadow:0 1px 5px #1028261f;color:#146f66}.auth-field,.profile-editor label,.signup-profile-preview label{display:grid;gap:6px;min-width:0}.auth-field>span,.profile-editor label>span,.signup-profile-preview label>span{color:#536863;font-size:12px;font-weight:700}.auth-submit{justify-content:center;width:100%}.forgot-password-button{background:transparent;border:0;color:#267267;font-size:12px;justify-self:end;min-height:28px;padding:0}.password-notice{align-items:flex-start!important;border-radius:7px;display:grid!important;gap:3px!important;padding:10px 12px}.password-notice.important{background:#fff5e8;border:1px solid #edc58c;color:#75511f}.password-notice strong{font-size:13px}.password-notice span{font-size:11px;line-height:1.5}.password-change-box{background:#f7faf8;border:1px solid #dce7e2;border-radius:8px;display:grid;gap:8px;padding:11px 12px}.password-change-box>strong{color:#40534f;font-size:13px}.password-change-fields{display:grid;gap:8px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.password-change-fields input{background:#fff;border:1px solid #d4dfda;border-radius:7px;min-height:38px;min-width:0;padding:0 10px}.password-change-fields button{white-space:nowrap}.auth-note{background:#f5f8f6;border-left:3px solid #8aa59f;line-height:1.55;padding:9px 11px}.auth-message{background:#edf7f3;border-radius:7px;color:#267267;font-size:12px;line-height:1.45;min-height:34px;padding:8px 10px}.signup-profile-preview,.profile-editor{align-items:center;background:#f7faf8;border:1px solid #dce7e2;border-radius:8px;display:grid!important;gap:12px;grid-template-columns:64px minmax(130px,1fr) auto;padding:12px}.signup-profile-preview input,.profile-editor input{background:#fff;border:1px solid #d4dfda;border-radius:7px;min-height:38px;min-width:0;padding:0 10px;width:100%}.pixel-avatar{background:#edf2ef;border:1px solid #d4dfda;border-radius:8px;display:grid;flex:0 0 auto;grid-template-columns:repeat(7,1fr);image-rendering:pixelated;overflow:hidden;padding:5px}.pixel-avatar.small{height:34px;padding:3px;width:34px}.pixel-avatar.medium{height:44px;width:44px}.pixel-avatar.large{height:58px;width:58px}.pixel-avatar i{display:block}.profile-avatar-editor{height:64px;position:relative;width:64px}.avatar-shuffle{background:#fff;border:1px solid #d5e1dc;bottom:0;color:#177f73;height:28px;position:absolute;right:0;width:28px}.account-identity{background:#f7faf8;border-radius:8px;display:grid;gap:3px;padding:10px 12px}.account-identity span{color:#304440;font-size:14px;overflow-wrap:anywhere}.account-identity small{color:#84928f;font-size:11px}.signout-button{justify-content:center}.account-row{justify-content:space-between}.account-row span{min-width:0;overflow-wrap:anywhere}@media (max-width: 720px){.password-change-fields{grid-template-columns:1fr}.password-change-fields button{justify-content:center;width:100%}}.account-row.subtle{color:#667672;font-size:13px}.settings-panel button.secondary{background:#edf2ef;color:#23312e}.group-edit-row{display:grid;gap:10px;grid-template-columns:48px minmax(0,1fr) 34px}.group-edit-row input[type=color]{padding:4px}.settings-group-lock{align-items:center;color:#7f918d;display:inline-flex;justify-content:center}@media (max-width: 980px){.app-shell{grid-template-columns:1fr}.sidebar{position:static}.content-grid,.calendar-layout,.settings-grid,.guide-intro{grid-template-columns:1fr}.topbar{align-items:stretch;flex-direction:column}.topbar-side{align-items:stretch;justify-items:stretch;max-width:none}.metrics{flex-wrap:wrap}}@media (max-width: 1280px) and (min-width: 981px){.topbar{align-items:stretch;flex-direction:column}.topbar-side{align-items:stretch;justify-items:stretch;max-width:none}}@media (max-width: 760px){.topbar-insights{grid-template-columns:1fr}.daily-quote,.today-info{min-height:0}}@media (max-width: 620px){.workspace,.sidebar{padding:16px}.today-info-heading{align-items:flex-start;flex-direction:column}.today-info-tabs{width:100%}.today-info-tabs button{min-height:32px;padding-inline:5px}.weather-empty{grid-template-columns:28px minmax(0,1fr)}.weather-empty button{grid-column:1 / -1;width:100%}.weather-overview{grid-template-columns:30px minmax(0,1fr)}.weather-location{grid-column:1 / -1;justify-content:flex-start}.login-notice{align-items:stretch;flex-direction:column}.login-notice>button{width:100%}.signup-profile-preview,.profile-editor{align-items:stretch;grid-template-columns:64px minmax(0,1fr)}.signup-profile-preview>button,.profile-editor>button{grid-column:1 / -1;justify-content:center}.account-row{align-items:stretch;flex-direction:column}.account-row button{justify-content:center}.quick-add,.list-controls,.field-grid,.guide-grid,.review-row{grid-template-columns:1fr}.review-actions{flex-wrap:wrap}.task-row{grid-template-columns:28px minmax(0,1fr) 70px}.task-title-line{grid-template-columns:minmax(0,1fr) 58px}.task-title-line strong{font-size:15px}.task-title-line .priority{min-width:56px;padding-inline:6px}.drag-handle{display:none}.calendar-cell{min-height:46px;padding:5px}}@media (prefers-reduced-motion: reduce){.task-row.completing,.check-button.celebrating,.check-button.celebrating:after,.check-button.celebrating svg{animation-duration:1ms}}
