/* One retained form; only panel visibility and targeted summaries change. */
.tt-expense-editor{max-width:900px;margin-inline:auto;background:var(--surface-glass);border:1px solid var(--border-glass);border-radius:var(--radius-card);padding:var(--space-5);box-shadow:var(--shadow-elevated)}
.tt-expense-editor .section-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}
.tt-editor-context{font-size:var(--font-card);font-weight:var(--weight-strong);margin:0;overflow-wrap:anywhere}
.tt-editor-title{font-size:var(--font-section);outline-offset:4px}
.tt-editor-navigation{display:flex;gap:var(--space-2);margin-block:var(--space-3)}
.tt-editor-navigation button{flex:1;min-width:0;font-size:var(--font-caption);padding:var(--space-2);margin:0;gap:var(--space-1)}
.tt-editor-navigation button[aria-pressed="true"]{background:var(--accent-highlight);color:var(--accent-on)}
.tt-editor-amount{background:var(--surface-glass);border:1px solid var(--border-glass);border-radius:var(--radius-card);padding:var(--space-4);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2);align-items:center}
.tt-editor-amount label{font-weight:var(--weight-medium)}
.tt-editor-amount input{font-size:clamp(2rem,7vw,3rem);font-weight:var(--weight-strong);font-variant-numeric:tabular-nums;background:transparent;border:0;padding:var(--space-2) 0;min-width:0;width:100%;margin:0}
.tt-editor-amount .tt-editor-field{min-width:0}.tt-editor-conversion{grid-column:1/-1;font-size:var(--font-secondary);color:var(--text-secondary);min-height:1.5em;overflow-wrap:anywhere}
.tt-currency-trigger{max-width:120px;padding:var(--space-2);gap:var(--space-1)}
.tt-editor-categories{padding:0;border:0;margin:var(--space-5) 0}
.tt-editor-categories .category-rail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible;gap:var(--space-2);padding:0}
.tt-editor-categories .category-option{min-width:0;flex:none;margin:0}
.tt-editor-categories .category-option>span{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:76px;padding:var(--space-2);border:1px solid var(--border-control);border-radius:var(--radius-control);background:var(--surface-glass);font-size:var(--font-caption);gap:var(--space-1);color:var(--text-primary)}
.tt-editor-categories .category-option:has(:checked)>span{background:var(--accent-highlight);color:var(--accent-on);border-color:var(--accent-primary);box-shadow:var(--shadow-soft)}
.tt-editor-categories .category-option:has(:disabled)>span{background:var(--surface-subtle);color:var(--text-muted)}
.tt-editor-categories small{font-size:.65rem;text-align:center}.tt-editor-categories .tt-icon{width:24px;height:24px}
.tt-editor-field{margin-block:var(--space-3)}
.tt-editor-field input{width:100%;min-width:0}
.tt-payer-trigger{width:100%;display:flex;align-items:center;gap:var(--space-3);justify-content:flex-start;margin-block:var(--space-4)}
.tt-payer-trigger .tt-avatar{flex-shrink:0}.tt-payer-trigger>span:last-child{overflow-wrap:anywhere}
.tt-quick-participants{border:0;padding:0;min-width:0;margin-block:var(--space-5)}
.tt-participant-rail{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-block:var(--space-3)}
.tt-participant-choice{position:relative;display:block;min-width:48px;max-width:100px;margin:0;flex:1}
.tt-participant-choice>input{position:absolute;opacity:0;width:1px;height:1px}
.tt-participant-face{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);border:1px solid var(--border-control);border-radius:var(--radius-control);padding:var(--space-2);font-size:var(--font-caption);overflow-wrap:anywhere;min-height:96px}
.tt-member-selected{visibility:hidden;line-height:1}.tt-member-selected .tt-icon{width:16px;height:16px}
.tt-participant-choice:has(:checked) .tt-participant-face{background:var(--surface-selected);border-color:var(--accent-primary)}
.tt-participant-choice:has(:checked) .tt-member-selected{visibility:visible;color:var(--success)}
.tt-participant-choice:has(:focus-visible) .tt-participant-face{outline:var(--focus-ring);outline-offset:3px}
.tt-quick-participants>button{font-size:var(--font-caption);padding:var(--space-2);margin:var(--space-1)}
.tt-editor-private{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);background:var(--surface-glass);border-radius:var(--radius-control);padding:var(--space-3)}
.tt-editor-private input{width:24px;height:24px;margin:0;accent-color:var(--accent-primary);flex-shrink:0}
.tt-editor-private small{display:block;font-size:var(--font-caption);color:var(--text-secondary);margin-top:var(--space-1)}
.tt-more-trigger,.tt-expense-save{width:100%;margin-top:var(--space-4)}
.tt-expense-save{display:flex;justify-content:center;align-items:center;gap:var(--space-2);background:var(--accent-highlight);color:var(--accent-on);border-radius:var(--radius-pill);min-height:52px}
.tt-editor-fx{background:var(--surface-glass);border:1px solid var(--border-glass);border-radius:var(--radius-card);padding:var(--space-4);margin-block:var(--space-4)}
.tt-editor-fx .tt-editor-section-title{font-size:var(--font-card);display:flex;align-items:center;gap:var(--space-2)}
.tt-editor-capabilities{display:flex;gap:var(--space-3);color:var(--text-secondary);background:var(--surface-subtle);padding:var(--space-4);border-radius:var(--radius-control);font-size:var(--font-secondary)}
.tt-editor-capabilities .tt-icon{flex-shrink:0}.tt-editor-capabilities p{margin:0}
.tt-editor-split #split-controls{border:0;padding:0;min-width:0}.tt-split-members{display:flex;flex-direction:column;gap:var(--space-3)}
.tt-split-members .beneficiary{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,1fr);align-items:center;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-control);background:var(--surface-glass)}
.tt-split-members .beneficiary>strong{grid-column:2;grid-row:1;font-size:var(--font-secondary);overflow-wrap:anywhere}
.tt-split-members .beneficiary>.tt-avatar{grid-column:1;grid-row:1}
.tt-split-members .split-value{grid-column:1/-1;margin:0;min-width:0}.tt-split-members .split-value input{font-variant-numeric:tabular-nums;min-width:0;width:100%}
.tt-split-members output{font-size:var(--font-secondary);font-weight:var(--weight-strong);text-align:end;overflow-wrap:anywhere;min-width:0}
.tt-split-members .percentage-lock{grid-column:1/-1;margin:0;min-height:44px}
.tt-split-status{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3);background:var(--surface-selected);border-radius:var(--radius-control);font-size:var(--font-secondary);overflow-wrap:anywhere}
.tt-split-status .tt-icon{flex-shrink:0}.tt-split-done{width:100%}
.tt-editor-split .tt-segmented-options{grid-template-columns:repeat(4,minmax(0,1fr))}.tt-editor-split .tt-choice-face{font-size:var(--font-caption);padding:var(--space-2)}
.tt-expense-editor [data-editor-panel]>button{min-height:44px}
.tt-draft #split-help,.tt-draft #percentage-status{font-size:var(--font-caption);color:var(--text-secondary)}
@media(min-width:1024px){.tt-expense-editor{padding:var(--space-6)}.tt-editor-quick{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:var(--space-4) var(--space-5);align-items:start}.tt-editor-quick>.tt-editor-amount,.tt-editor-quick>.tt-editor-categories,.tt-editor-quick>.tt-editor-field{grid-column:1}.tt-editor-quick>.tt-payer-trigger{grid-column:2;grid-row:1}.tt-editor-quick>.tt-quick-participants{grid-column:2;grid-row:2}.tt-editor-quick>.tt-editor-private{grid-column:2;grid-row:3}.tt-more-trigger{grid-column:1/-1}.tt-editor-more{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-4)}.tt-editor-more .tt-editor-fx{grid-column:2;grid-row:1/4}.tt-editor-more>.tt-editor-capabilities{grid-column:1/-1}}
@media(max-width:639px){.tt-expense-editor{padding:var(--space-3)}.tt-editor-navigation .tt-icon{display:none}.tt-editor-categories .category-rail{gap:var(--space-1)}.tt-editor-categories .category-option>span{font-size:.65rem}.tt-editor-split .tt-choice-face{font-size:.7rem;padding:var(--space-1)}.tt-editor-amount{padding:var(--space-3)}.tt-split-members .beneficiary{padding:var(--space-2)}}
.tt-editor-categories .category-option>span{min-width:0;height:100%;box-sizing:border-box;overflow-wrap:anywhere}
.tt-editor-categories .category-option>span>span{font-size:inherit}
.tt-editor-categories .category-option>span>small{font-size:.6rem;line-height:1.2}
.tt-participant-choice>input{inset:0;width:100%;height:100%;z-index:1;cursor:pointer}
.tt-split-members .split-value>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.tt-editor-categories .category-option:has(:disabled)>span{font-weight:var(--weight-normal)}

.tt-editor-categories .category-option>span{position:relative}
.tt-category-selected{position:absolute;inset:var(--space-1) var(--space-1) auto auto;visibility:hidden}
.tt-category-selected .tt-icon{width:14px;height:14px}
.category-option:has(:checked) .tt-category-selected{visibility:visible}

/* Keep the full maximum supported amount visible, including in desktop columns. */
.tt-editor-amount .tt-editor-field{grid-column:1/-1;grid-row:1}
.tt-editor-amount .tt-currency-trigger{grid-column:2;grid-row:1;align-self:start;margin-top:0}
.tt-editor-amount label{display:flex;align-items:center;min-height:48px;margin:0 0 var(--space-2);padding-inline-end:120px}
.tt-editor-amount #shared-amount,.tt-editor-amount #amount{font-size:clamp(2rem,7vw,3rem)}
@media(min-width:768px){.tt-editor-split .tt-split-members{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}
/* Native radio remains the full tile hit target above its decorative face. */
.tt-editor-categories .category-option>input{inset:0;width:100%;height:100%;z-index:1;cursor:pointer}
/* Compact hierarchy: keep advanced context secondary and category cells even. */
.tt-editor-context{font-size:var(--font-secondary);font-weight:var(--weight-medium);min-width:0;flex:1}
.tt-editor-amount .tt-editor-field{margin-block:0}
.tt-editor-categories .tt-category-note{font-size:var(--font-caption);margin-top:var(--space-2);text-align:start}
.tt-participant-face{position:relative;min-height:88px}
.tt-participant-face>.tt-member-selected{position:absolute;top:var(--space-1);inset-inline-end:var(--space-1)}
