/* Dosa Tycoon 5.0 (SINK50): Big buys in Outlets (js/sink50-ui.js) and the badges on an outlet card. Built from the windows' own
 * pieces (dtw-card, dtw-chip, dt-btn); text 13.5 px or more (the 12 px floor), buttons 44 px tall on a phone, nothing clipped at 360 px. */
.dsk { display: flex; flex-direction: column; gap: 8px; margin: 4px 0 6px; }
.dsk.is-hidden { display: none; }
.dsk__h { flex-wrap: wrap; }
.dsk__cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(320px, 100%), 1fr)); gap: 12px; }
.dsk-card { display: flex; flex-direction: column; gap: 6px; min-width: 0; padding: 10px 12px 12px; }
.dsk-card.is-locked { background: repeating-linear-gradient(135deg, rgba(58, 31, 18, .035) 0 10px, transparent 10px 20px), var(--card, #FFF8E7); }
.dsk-card__head { display: grid; grid-template-columns: 40px minmax(0, 1fr); column-gap: 10px; align-items: center; }
.dsk-card__ico { width: 40px; height: 40px; }
.dsk-card__ico svg { width: 100%; height: 100%; }
.dsk-card__title { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; min-width: 0; }
.dsk-card__name { margin: 0; font-family: var(--font-display); font-size: 20px; line-height: 1.15; }
.dsk-card__from { min-height: 26px; font-size: max(14px, var(--fl, 0px)); white-space: nowrap; }
.dsk-card__desc { margin: 0; font-size: max(15.5px, var(--fl-deep, 0px)); font-weight: 700; line-height: 1.35; color: #5E4433; }
.dsk-card__lock { margin: 0; display: flex; align-items: center; gap: 6px; font-size: max(16px, var(--fl-deep, 0px)); font-weight: 800; color: var(--muted); }
.dsk-card__lock.is-hidden, .dsk-card__rows.is-hidden, .dsk-card__more.is-hidden { display: none; }
.dsk-card__lockico { flex: none; width: 20px; height: 20px; }
.dsk-card__lockico svg { width: 100%; height: 100%; }
.dsk-card__rows { display: flex; flex-direction: column; }
.dsk-row { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; padding: 7px 0; border-top: 2px dashed rgba(58, 31, 18, .2); border-radius: 6px; }
.dsk-row.is-focus { outline: 4px solid var(--c-teal, #0E8C8C); outline-offset: 2px; animation: dtw-coach 1.5s ease-in-out 2; }
.dsk-row__main { display: flex; flex-direction: column; gap: 1px; flex: 1 1 180px; min-width: 0; }
.dsk-row__name { font-size: max(16.5px, var(--fl-deep, 0px)); font-weight: 800; line-height: 1.2; overflow-wrap: anywhere; }
.dsk-row__what { font-size: max(14px, var(--fl, 0px)); font-weight: 700; color: var(--muted); line-height: 1.3; font-variant-numeric: tabular-nums; }
.dsk-row__chip { min-height: 28px; white-space: nowrap; }
.dsk-row__chip.is-hidden, .dsk-row__btn.is-hidden { display: none; }
.dtw-window .dt-btn--small.dsk-row__btn { min-height: 40px; min-width: 96px; margin-left: auto; padding: 0 14px 4px; font-size: max(16px, var(--fl-deep, 0px)); border-radius: 13px; }
.dtw-window .dt-btn--small.dsk-row__btn.is-disabled { opacity: .55; }
.dtw-window .dt-btn--small.dsk-card__more { align-self: flex-start; min-height: 38px; font-size: max(15px, var(--fl-deep, 0px)); }
.is-compact .dtw-window .dt-btn--small.dsk-row__btn, .is-compact .dtw-window .dt-btn--small.dsk-card__more { min-height: 44px; }
/* the badges on an outlet card */
.dsk-badges { display: flex; flex-wrap: wrap; gap: 4px; }
.dsk-badges.is-hidden, .dsk-badge.is-hidden { display: none; }
.dsk-badge { min-height: 22px; padding: 0 8px 1px; font-size: max(13px, var(--fl, 0px)); border-width: 2px; white-space: nowrap; }
.dsk-badge--lm { color: #6B3A00; background: #FFE3A3; border-color: #8A5300; }
@media (prefers-reduced-motion: reduce) { .dsk-row.is-focus { animation: none; } }
