/* DEV119: existing palette, quieter fields, explicit common commands. */
.top>.menu-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:90px;min-height:48px;padding:8px 10px;font-size:16px;white-space:nowrap}
.top:has(>.menu-button){grid-template-columns:auto minmax(0,1fr) auto}
.top>.header-add{grid-column:2 / -1;justify-self:end;max-width:100%}
.sheet-date.sheet-characteristic{display:block;text-align:left;width:100%;max-width:none;margin:20px 0}
.sheet-date.sheet-characteristic h3{font-size:inherit;color:var(--ink,#203b36);font-weight:700;margin:0 0 10px}
.sheet-date .sheet-value-row{width:100%;justify-content:space-between}
.sheet-date .sheet-value-text{min-height:42px;flex:1}
.sheet-edit-controls{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center;justify-content:flex-end;gap:8px}
.sheet-inline-editor:has(>[data-article-editor]),.sheet-inline-editor:has(>.article-editor){display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px}
.sheet-inline-editor>.article-editor{margin:0}
.sheet-inline-editor:has(>.article-editor)>[role=alert]{grid-column:1 / -1}
.purchase-row svg{width:21px;height:21px;display:block}
.purchase-line>[type=hidden]{display:none}
.purchase-line>[data-remove-article]{min-height:44px;min-width:36px;display:flex;align-items:center;justify-content:center;color:#ac3030}
.article-task-link{color:#245c92;background:transparent;border:0;padding:6px 0;text-decoration:underline;text-align:left;min-height:40px;font-size:14px}
.article-linked-task{margin:2px 0 8px}
.article-removal-confirmation{padding:10px;background:#fff3ee;border:1px solid #b45646;border-radius:10px;margin-top:8px}
.article-removal-confirmation p{margin:0 0 8px;overflow-wrap:anywhere}
.article-removal-confirmation>div{display:flex;justify-content:flex-end;gap:8px}
dialog{overscroll-behavior:contain;touch-action:pan-y;max-height:calc(100dvh - 24px)}
html.modal-background-locked{overflow:hidden;overscroll-behavior:none}
.calendar .days,.calendar .day{touch-action:pan-y}
.calendar-completed-mark{position:absolute;top:3px;right:3px;background:#fff;border-radius:4px;color:#245d43;line-height:1;pointer-events:none}
.calendar-completed-mark svg{width:13px;height:13px;display:block}
.calendar-history-row{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:8px;align-items:center;width:100%;text-align:left;background:transparent;padding:12px 0;border:0;border-bottom:1px solid #cbd8cf;border-radius:0}
.calendar-history-row svg,.history-calendar-legend svg{width:20px;height:20px;display:inline-block;vertical-align:middle}
.calendar-history-row small{display:block;color:#536c68;margin-top:4px}
.calendar-history-heading{margin-top:26px}
.print-preview-controls{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.print-preview-frame{width:100%;height:55dvh;border:1px solid #cbd8cf;border-radius:8px;background:#fff}
@media(max-width:600px){.sheet-inline-editor:has(>.article-editor){grid-template-columns:minmax(0,1fr)}.sheet-inline-editor:has(>.article-editor)>.sheet-edit-controls{grid-row:2;justify-self:end}.top>.menu-button{min-width:84px}.sheet-date.sheet-characteristic h3{font-size:18px}}
@media print{.print-preview-controls,.dialog-head{display:none}}
.consultation-sheet .sheet-date.sheet-characteristic{display:block;text-align:left;color:var(--ink,#203b36);font-size:1rem}
.consultation-sheet .sheet-date.sheet-characteristic .sheet-value-row{width:100%;flex:none;justify-content:space-between}
.consultation-sheet .sheet-date.sheet-characteristic .sheet-value-text{flex:1;min-height:42px;font-size:1rem}
.sheet-inline-editor:has(>.article-editor){display:block}
.purchase-edit-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
.purchase-edit-line .sheet-edit-controls{margin:0}
@media(max-width:600px){.purchase-edit-line{grid-template-columns:minmax(0,1fr)}.purchase-edit-line .sheet-edit-controls{justify-self:end}}

/* DEV121: empty shopping hint is display text, never saved data. */
.shopping-placeholder{color:#66746e;font-weight:400}
textarea[name="purchaseNotes"]::placeholder,.sheet-inline-editor textarea[placeholder="Liste d’achats pour articles non codés"]::placeholder{color:#66746e;opacity:1}
.article-task-link{display:inline-flex;align-items:center;gap:5px}
[data-article-task-field][hidden]{display:none!important}
.legacy-purchase-row{background:transparent;border:0}
