.calendar-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:16px}.calendar-actions input,.calendar-actions select{padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--ink);font:500 10px 'DM Mono',monospace}.tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.person-card,.bin-card{display:flex;gap:16px;padding:20px;border:1px solid var(--line);border-radius:12px;background:var(--card)}.person-photo{width:58px;height:58px;flex:0 0 58px;object-fit:cover;border-radius:50%;background:var(--mint);color:var(--forest-2);display:grid;place-items:center;font-size:22px}.person-photo-empty{font-family:'DM Mono',monospace}.person-card-main,.bin-card-main{min-width:0;flex:1}.bin-card{position:relative;overflow:hidden}.bin-swatch{width:9px;flex:0 0 9px;border-radius:8px;background:var(--bin-colour)}.bin-card h3{margin:15px 0 5px;font-size:15px}.tool-history{margin-top:14px;padding:21px}.calendar-manage{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.calendar-event.bin{background:#e7efe9;color:#47735c}.calendar-event.flagged{background:#f6e5d7;color:#9b5f3f}.checkbox-field{display:flex!important;align-items:center;grid-template-columns:auto 1fr!important;gap:8px!important}.checkbox-field input{width:auto}.status-pill.status-missed{background:#f7e1dd;color:#a04f43}@media(max-width:780px){.tool-grid{grid-template-columns:1fr}.calendar-actions{justify-content:flex-start}}
.bill-controls{padding:16px;margin-bottom:14px}.bill-filter-row{display:grid;grid-template-columns:minmax(180px,2fr) minmax(140px,1fr) minmax(140px,1fr) auto auto;gap:8px;align-items:center}.bill-filter-row input,.bill-filter-row select{min-width:0;padding:11px 12px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--ink);font:500 11px 'DM Mono',monospace}.bill-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.bill-summary article{padding:13px 14px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}.bill-summary span,.bill-summary small{display:block;color:var(--muted);font:500 9px 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.08em}.bill-summary strong{display:block;margin:5px 0;font-size:20px}.bill-card-wide{padding:21px!important}.bill-card-heading{display:flex;justify-content:space-between;gap:16px}.bill-card-heading h3{margin:4px 0;font-size:18px}.bill-card-heading p{margin:0;color:var(--muted)}.bill-amount{text-align:right;white-space:nowrap}.bill-amount strong{display:block;font-size:21px}.bill-amount small{display:block;color:var(--muted);font:500 9px 'DM Mono',monospace}.bill-category{display:inline-block;margin-bottom:7px;padding:4px 8px;border-left:3px solid var(--category-colour);border-radius:4px;background:color-mix(in srgb,var(--category-colour) 12%,white);color:var(--ink);font:600 9px 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.06em}.bill-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:15px 0 2px}.variance-pill{padding:4px 8px;border-radius:999px;font:600 10px 'DM Mono',monospace}.variance-up{background:#f7e1dd;color:#a04f43}.variance-down{background:#e3f0e7;color:#397354}.bill-over{color:#a04f43}.bill-under{color:#397354}.bill-archived{opacity:.7}.bill-activity{margin-top:14px}.activity-list{display:grid;gap:8px}.activity-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.activity-row:last-child{border-bottom:0}.activity-row>div{min-width:0;flex:1}.activity-row strong,.activity-row small{display:block}.activity-row small{margin-top:3px;color:var(--muted);font:500 10px 'DM Mono',monospace}.activity-dot{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:var(--accent)}.category-manager-list{display:grid;gap:8px;margin:15px 0}.category-manager-row{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid var(--line);border-radius:8px}.category-manager-row .bill-category{margin:0;flex:1}.history-section{margin-top:20px}.history-section+.history-section{padding-top:18px;border-top:1px solid var(--line)}.history-table{display:grid;gap:1px;margin-top:10px}.history-row{display:grid;grid-template-columns:minmax(140px,1.4fr) minmax(100px,1fr) auto minmax(80px,.7fr) auto;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid var(--line)}.history-row strong,.history-row small{display:block}.history-row small{margin-top:3px;color:var(--muted);font:500 10px 'DM Mono',monospace}.history-row>span:nth-child(2) small{text-align:right}.field-help{display:block;margin-top:5px;color:var(--muted);font:500 10px 'DM Mono',monospace}.bill-history-modal{max-width:880px}@media(max-width:900px){.bill-filter-row{grid-template-columns:1fr 1fr}.bill-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.history-row{grid-template-columns:1fr 1fr}.history-row button{justify-self:start}}@media(max-width:560px){.bill-filter-row{grid-template-columns:1fr}.bill-summary{grid-template-columns:1fr 1fr}.bill-card-heading{display:block}.bill-amount{text-align:left;margin-top:12px}.history-row{grid-template-columns:1fr}.history-row>span:nth-child(2){text-align:left}.history-row>span:nth-child(2) small{text-align:left}}
.bill-attention-head{display:flex;align-items:baseline;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.bill-attention-head .eyebrow{margin:0}.bill-attention{display:grid;gap:1px;margin-top:6px}.attention-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.attention-row>div{flex:1;min-width:0}.attention-row strong,.attention-row small{display:block}.attention-row small{margin-top:3px;color:var(--muted);font:500 10px 'DM Mono',monospace}.attention-clear{display:flex;gap:8px;align-items:center;padding:11px 0;color:var(--muted);font:500 10px 'DM Mono',monospace}.attention-clear strong{color:var(--ink);font-family:inherit}.bill-comparison{display:flex;gap:16px;flex-wrap:wrap;margin:13px 0 2px;color:var(--muted);font:500 10px 'DM Mono',monospace}.bill-comparison strong{color:var(--ink);font-family:inherit;margin-left:4px}@media(max-width:560px){.attention-row{align-items:flex-start}.attention-row .small-action{white-space:nowrap}}
.monthly-connected-plan{margin:0 0 14px;padding:21px}.connected-total{margin-top:3px;padding-top:16px;border-top:2px solid var(--line);font-weight:700}.linked-callout{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 14px;padding:15px 18px;border:1px solid #d7e4d9;border-radius:12px;background:#edf5ee}.linked-callout strong,.linked-callout span{display:block}.linked-callout span{margin-top:4px;color:var(--muted);font-size:10px}.linked-callout .text-btn{white-space:nowrap}@media(max-width:600px){.linked-callout{align-items:flex-start;flex-direction:column;gap:10px}}
.family-tree-panel{margin-bottom:14px;padding:20px}.family-tree-hint{margin:10px 0 0;color:var(--muted);font-size:10px;line-height:1.6}.family-tree-list{display:grid;gap:8px;margin-top:16px}.family-node{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(0,1.3fr);gap:14px;padding:13px 0;border-top:1px solid var(--line)}.family-node:first-child{border-top:0;padding-top:0}.family-node-person strong,.family-node-person small{display:block}.family-node-person strong{font-size:12px}.family-node-person small{margin-top:4px;color:var(--muted);font-size:9px}.family-links{display:grid;gap:7px;min-width:0}.family-link{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;padding:8px 10px;border-radius:8px;background:#f2f6f1;color:var(--ink);font-size:10px}.family-link.inferred{background:#fff4eb}.family-link.linked{background:#f2f1f6}.family-link>span:first-child{min-width:0;overflow-wrap:anywhere}.family-link strong{font-size:10px}.family-link em{margin:0 4px;color:var(--muted);font-style:normal}.family-link small{display:block;margin-top:4px;color:var(--muted);font:500 9px 'DM Mono',monospace}.family-link-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.family-link-actions .row-edit{margin:0}.family-link-empty{color:var(--muted);font:500 10px 'DM Mono',monospace}.person-links{display:flex;gap:5px;flex-wrap:wrap;margin-top:10px}.person-links .data-pill{font-size:8px}@media(max-width:780px){.family-node{grid-template-columns:1fr}.family-link{align-items:flex-start}.family-link-actions{flex-wrap:wrap;justify-content:flex-end}.family-tree-panel{padding:16px}}@media(max-width:560px){.family-node{gap:8px}.family-link{padding:10px}.family-link-actions{gap:4px}.family-link-actions .row-edit{min-height:38px}}
.profile-menu{position:absolute;top:58px;right:0;z-index:20;width:min(290px,calc(100vw - 30px));padding:9px;border:1px solid var(--line);border-radius:14px;background:var(--card);box-shadow:0 18px 45px rgba(20,42,37,.16);opacity:0;visibility:hidden;transform:translateY(-5px);transition:opacity .16s ease,transform .16s ease,visibility .16s ease}.profile-menu.is-open{opacity:1;visibility:visible;transform:translateY(0)}.profile-menu-label{margin:5px 9px 8px;color:var(--muted);font:500 9px 'DM Mono',monospace;letter-spacing:.08em}.profile-menu button{display:block;width:100%;padding:11px 10px;border-radius:9px;text-align:left}.profile-menu button:hover,.profile-menu button:focus-visible{background:#eef5ee}.profile-menu strong,.profile-menu small{display:block}.profile-menu strong{font-size:11px}.profile-menu small{margin-top:4px;color:var(--muted);font-size:9px}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.settings-card{padding:21px}.settings-card h3{margin:0;font-size:15px}.settings-card p:not(.eyebrow){color:var(--muted);font-size:10px;line-height:1.6}.settings-card .primary-btn,.settings-card .text-btn{margin-top:8px}.settings-card .subscribe-row{margin-top:14px}.settings-danger{border-color:#efd9d2}@media(max-width:780px){.profile-menu{position:fixed;top:72px;right:15px}.settings-grid{grid-template-columns:1fr}}
.interactive-surface{position:relative;cursor:pointer;touch-action:manipulation}.interactive-surface:hover,.interactive-surface:focus-visible{border-color:rgba(45,107,85,.28);box-shadow:0 12px 34px rgba(20,42,37,.09);outline:none}.interactive-surface:focus-visible{box-shadow:0 0 0 3px rgba(76,145,116,.22),0 12px 34px rgba(20,42,37,.09)}.interactive-surface::after{content:'↗';position:absolute;right:15px;top:13px;color:var(--accent);font-size:13px;opacity:0;transition:opacity .16s ease}.interactive-surface:hover::after,.interactive-surface:focus-visible::after{opacity:.8}.overview-action-row{position:relative;cursor:pointer;touch-action:manipulation}.overview-action-row:hover,.overview-action-row:focus-visible{background:#fbfcf8}.pulse-bars{align-items:end}.pulse-bar{position:relative;display:flex;align-items:flex-end;justify-content:center;min-width:34px;padding:0 3px;border:0;border-radius:7px 7px 2px 2px;background:#cfe1d3;color:var(--muted);cursor:pointer;touch-action:manipulation;transition:background .16s ease,transform .16s ease}.pulse-bar:hover,.pulse-bar:focus-visible{background:#9cc5aa;transform:translateY(-3px);outline:none}.pulse-bar span{position:absolute;bottom:-21px;font:500 9px 'DM Mono',monospace;white-space:nowrap}.profile-related-people{grid-column:1/-1;padding:12px 14px;border:1px solid #d7e4d9;border-radius:10px;background:#f3f8f3}.profile-related-people .eyebrow{margin:0}.profile-related-people p:not(.eyebrow){margin:5px 0;color:var(--ink);font-size:11px}.profile-related-people small{color:var(--muted);font:500 9px 'DM Mono',monospace}@media(max-width:780px){.interactive-surface::after{display:none}.interactive-surface{min-height:44px}.overview-action-row{padding-top:11px;padding-bottom:11px}.pulse-bar{min-width:28px}.profile-related-people{padding:12px}}@media(max-width:560px){.pulse-bar{min-width:24px}.pulse-bar span{font-size:8px}}
