/* Scoped to Gift Cards; existing sections and shared form rules stay unchanged. */
.giftcards{display:grid;gap:14px;min-width:0;max-width:100%}
.giftcards>*{min-width:0;max-width:100%;margin-block:0}
.giftcards-banner{border:1px solid var(--line);border-left:4px solid var(--accent);background:var(--panel-soft);padding:10px 14px;border-radius:10px;color:var(--text)}
.giftcards-nav{display:flex;flex-wrap:nowrap;gap:4px;align-items:stretch;overflow-x:auto;overscroll-behavior-x:contain;padding:4px 3px 8px;scroll-padding-inline:4px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
#workspace .giftcards-nav button{flex:0 0 auto;min-height:44px;padding:8px 12px;font-size:.82rem;font-weight:600;line-height:1.25;white-space:nowrap;text-align:center;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--muted)}
#workspace .giftcards-nav button:hover{background:var(--panel-soft);color:var(--text)}
#workspace .giftcards-nav [aria-current=page]{background:var(--panel-soft);color:var(--text);border-color:var(--line);box-shadow:inset 0 -3px var(--accent)}
.giftcards-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.giftcards-metrics .stat-card{min-width:0;display:grid;align-content:start;gap:4px;padding:12px 14px;border-radius:10px;box-shadow:none}
.giftcards-metrics .stat-card span{font-size:.78rem;line-height:1.35;font-weight:600}
.giftcards-metrics .stat-card strong{margin:0;font-size:1.55rem;line-height:1.2;font-weight:700;color:var(--text)}
.giftcards-metrics small{color:var(--muted);font-size:.72rem;line-height:1.3}
.giftcards-filter-panel{border:1px solid var(--line);border-radius:10px;background:var(--panel);overflow:visible}
.giftcards-filter-panel>summary{padding:10px 14px;min-height:44px;cursor:pointer;font-size:.85rem;font-weight:600;color:var(--text)}
#workspace .giftcards-filters{max-width:none;grid-template-columns:minmax(160px,1.5fr) repeat(4,minmax(115px,1fr));align-items:end;gap:10px 12px;padding:4px 14px 12px;border:0;border-radius:0 0 10px 10px}
#workspace .giftcards-filters label{gap:5px;font-size:.78rem;line-height:1.35}
#workspace .giftcards-filters input,#workspace .giftcards-filters select{min-height:44px;height:44px;padding:8px 10px;font-size:.85rem}
.giftcards-filters .workspace-toolbar{gap:8px}
.giftcards-filters .workspace-toolbar button{min-height:44px;padding:8px 12px;font-size:.82rem}
.giftcards-filters .form-message:empty{display:none}
.giftcards-filters .form-message{color:#b42318;margin:0;font-size:.85rem;line-height:1.5}
.giftcards-filters>.workspace-hint,.giftcards-filters>.form-message,.giftcards-filters>.workspace-toolbar{grid-column:1/-1}
.giftcards-state{border:1px solid var(--line);background:var(--panel);color:var(--text);text-align:left}
.giftcards-state p{margin:0;line-height:1.5;font-size:.85rem}
.giftcards-state[data-state=invalid],.giftcards-state[data-state=error]{border-color:var(--danger)}
.giftcards-schema{border:1px solid var(--line);border-radius:10px;padding:10px 14px;color:var(--muted)}
.giftcards-schema summary{min-height:24px;cursor:pointer;color:var(--text);font-size:.82rem;line-height:1.5}
.giftcards-schema p{margin:12px 0 0;line-height:1.6}
.giftcards-blocked-action{display:grid;gap:5px;justify-items:start}
.giftcards-blocked-action p{margin:0;max-width:75ch}
.giftcards-issuance{display:grid;gap:14px;min-width:0}
#workspace .giftcards-issue-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px}
.giftcards-issue-form>p,.giftcards-issue-form>.workspace-warning,.giftcards-issue-form>button{grid-column:1/-1}
.giftcards-issue-form>button{justify-self:start;min-height:44px}
.giftcards-issue-form .giftcards-duration{padding:12px;border:1px solid #8796a8;border-radius:8px;line-height:1.6}
.giftcards-issue-form .workspace-warning p{margin:10px 0;line-height:1.6}
#workspace .giftcards .giftcards-consent{display:flex;align-items:flex-start;gap:10px;font-weight:400}
.giftcards-consent input{flex:none;margin-top:4px}
.giftcards button:disabled{cursor:not-allowed}
.giftcards input:disabled,.giftcards select:disabled{opacity:1;color:#526171;background:#edf1f5}
.giftcards :focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media(max-width:1100px){.giftcards-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}#workspace .giftcards-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.giftcards-metrics{grid-template-columns:1fr}#workspace .giftcards-filters,#workspace .giftcards-issue-form{grid-template-columns:1fr}.giftcards-nav{margin-inline:-2px}#workspace .giftcards-nav button{padding-inline:10px}.giftcards-filter-panel>summary{padding-block:12px}.giftcards-issue-form{max-width:100%}.giftcards-blocked-action>button{width:100%}}

@media(min-width:1101px) and (max-width:1350px){#workspace .giftcards-filters{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Read-only results: preserve exact large amounts without widening the page. */
.giftcards-metrics .stat-card strong{overflow-wrap:anywhere}
.giftcards table caption{text-align:left;padding:10px 12px;color:var(--muted);font-size:.85rem}
.giftcards section[aria-label]{min-width:0;max-width:100%}

/* Details are a sibling panel, never content inside the sticky action column. */
#workspace .giftcards .giftcards-batches-table{width:max-content;min-width:100%;table-layout:auto}
#workspace .giftcards table td,#workspace .giftcards table th{overflow-wrap:normal;word-break:normal;white-space:nowrap}
#workspace .giftcards .giftcards-batches-table td:first-child{min-width:105px}
#workspace .giftcards .giftcards-batches-table td:nth-child(2){min-width:155px}
#workspace .giftcards .giftcards-batches-table td:nth-child(3),#workspace .giftcards .giftcards-batches-table td:nth-child(5){min-width:165px}
.giftcards-detail-panel{width:100%;box-sizing:border-box;display:grid;gap:14px;margin-top:18px;padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}
.giftcards-detail-panel[hidden]{display:none}
.giftcards-detail-panel>*{min-width:0;max-width:100%;margin-block:0}
#workspace .giftcards .giftcards-detail-panel td:last-child,#workspace .giftcards .giftcards-detail-panel th:last-child{position:static;min-width:250px}
#workspace .giftcards .giftcards-cards-table td:first-child{min-width:110px}
.giftcards-cancel-form{display:grid;gap:8px;min-width:220px;max-width:420px;white-space:normal}
.giftcards-cancel-form label{display:grid;gap:5px;font-size:.8rem}
.giftcards-cancel-form input{min-height:44px;box-sizing:border-box;width:100%;border:1px solid #8796a8;border-radius:8px;padding:8px}
.giftcards-cancel-form button{min-height:44px;justify-self:start}
@media(max-width:600px){.giftcards-detail-panel{padding:12px}.giftcards-cancel-form{max-width:100%}}
