/* Athletic campaign direction, using the existing DecoGrace colors and typefaces. */
.dg-admin-shell { background:var(--paper); grid-template-columns:20vw minmax(0,1fr); }
.dg-admin-sidebar { padding:32px 18px 24px; border-top:6px solid var(--pink); }
.dg-admin-brand { font-size:34px; padding:0 8px; }
.dg-admin-eyebrow { padding-left:8px; color:#bcbcbc; letter-spacing:.12em; margin-bottom:28px; }
.dg-admin-shell .dg-admin-nav a { padding:12px 14px; min-height:46px; font:700 15px/1.15 var(--font-ui); letter-spacing:.035em; border-left:0; position:relative; }
.dg-admin-nav a .dg-icon { width:18px; }
.dg-admin-nav a.active { background:var(--pink); color:var(--ink); }
.dg-admin-nav a.active::after { content:""; width:6px; height:6px; background:currentColor; margin-left:auto; flex:none; }
.dg-admin-nav a:hover:not(.active) { background:#303030; color:#fff; }
.dg-admin-nav-label { margin:24px 14px 8px; color:#a9a9a9; font-weight:700; letter-spacing:.12em; }
.dg-admin-sidebar-note { margin-top:38px; padding:24px 10px 0; }
.dg-admin-back { padding:12px 10px; min-height:44px; font-weight:600; }
.dg-admin-content { padding:0 clamp(22px,3.6vw,60px) 64px; }
.dg-admin-topline { min-height:76px; margin-bottom:32px; padding:18px 0; align-items:center; font-size:10px; letter-spacing:.1em; color:var(--ink); border-color:var(--ink); }
.dg-admin-topline > span { display:flex; align-items:center; gap:9px; }
.dg-admin-studio-dot { width:7px; height:7px; background:var(--pink-dark); }
.dg-admin-store-link { display:inline-flex; align-items:center; gap:10px; color:var(--ink); text-decoration:none; min-height:40px; }
.dg-admin-store-link:hover { color:var(--pink-dark); }
.dg-admin-title { letter-spacing:-.025em; }
.dg-admin-subtitle { color:#555; max-width:650px; }

/* One action system, including controls that used to inherit native browser styles. */
:is(.dg-admin-shell,.dg-admin-access) .btn { --bs-btn-focus-shadow-rgb:174,35,88; display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:48px; padding:14px 24px; border:1px solid var(--ink); border-radius:0; box-shadow:none; font:700 12px/1.35 var(--font-ui); letter-spacing:.055em; text-transform:uppercase; text-decoration:none; white-space:normal; text-align:center; vertical-align:middle; cursor:pointer; transition:background-color .15s,color .15s,border-color .15s; }
:is(.dg-admin-shell,.dg-admin-access) .btn-primary { background:var(--ink); color:#fff; border-color:var(--ink); }
:is(.dg-admin-shell,.dg-admin-access) .btn-primary:hover:not(:disabled) { background:var(--pink-dark); color:#fff; border-color:var(--pink-dark); }
.dg-admin-shell :is(.btn-outline-pink,.dg-admin-button-secondary) { background:transparent; border-color:var(--ink); color:var(--ink); }
.dg-admin-shell :is(.btn-outline-pink,.dg-admin-button-secondary):hover:not(:disabled) { background:var(--ink); color:#fff; }
.dg-admin-shell .dg-admin-button-danger { background:transparent; color:#9c2445; border-color:#d9acb9; }
.dg-admin-shell .dg-admin-button-danger:hover:not(:disabled) { background:#9c2445; color:#fff; border-color:#9c2445; }
.dg-admin-shell :is(.dg-admin-button-secondary,.dg-admin-button-danger) { min-height:40px; padding:10px 16px; font-size:11px; }
:is(.dg-admin-shell,.dg-admin-access) .btn:active:not(:disabled) { transform:translateY(1px); }
.dg-admin-shell :is(.btn,.dg-admin-template):disabled,.dg-admin-shell fieldset:disabled .btn { opacity:.45; cursor:not-allowed; box-shadow:none; transform:none; }
.dg-admin-shell :is(.btn,.dg-admin-template,.dg-admin-nav a):focus-visible { outline:3px solid var(--pink-dark); outline-offset:4px; box-shadow:none; }
.dg-admin-sidebar .dg-admin-nav a:focus-visible { outline-color:#fff; }
.dg-admin-shell .dg-filter { display:inline-flex; align-items:center; justify-content:center; min-height:42px; padding:10px 18px; border:1px solid #c9c9c9; background:#fff; color:var(--ink); border-radius:0; font:700 11px/1.3 var(--font-ui); text-transform:uppercase; letter-spacing:.04em; text-decoration:none; }
.dg-admin-shell .dg-filter.active,.dg-admin-shell .dg-filter:hover { color:#fff; background:var(--ink); border-color:var(--ink); }
.dg-admin-filters { padding-bottom:22px; border-bottom:1px solid var(--line); gap:10px; }
.dg-admin-actions,.dg-admin-pagination { gap:10px; }

.dg-admin-hero { background:var(--pink); border:0; padding:clamp(30px,4vw,58px); min-height:390px; gap:18px; margin-bottom:0; }
.dg-admin-hero .dg-admin-title { font-size:clamp(58px,6.2vw,94px); line-height:.9; margin:24px 0; max-width:650px; }
.dg-admin-hero .dg-admin-title span { color:#fff; }
.dg-admin-hero .dg-admin-subtitle { color:var(--ink); font-size:16px; line-height:1.55; margin-bottom:28px; }
.dg-admin-hero-actions { display:flex; gap:10px; flex-wrap:wrap; }
.dg-admin-hero > .dg-admin-hero-copy { flex:1 1 65%; }
.dg-admin-hero > .dg-admin-hero-art { flex:0 1 30%; display:flex; flex-direction:column; align-items:center; gap:28px; align-self:center; color:var(--ink); }
.dg-admin-hero-art > .dg-icon { width:100%; height:auto; transform:rotate(-12deg); }
.dg-admin-hero-art > span { font:800 12px/1.4 var(--font-ui); letter-spacing:.08em; text-align:center; }
.dg-admin-cards { gap:0; border:1px solid var(--ink); margin-bottom:52px; }
.dg-admin-card { padding:26px; border:0; border-right:1px solid var(--line); background:#fff; }
.dg-admin-card:last-child { border-right:0; }
.dg-admin-card .value { font:700 clamp(40px,4vw,58px)/1 var(--font-display); }
.dg-admin-card .label { display:flex; align-items:center; justify-content:space-between; gap:8px; font:700 10px/1.4 var(--font-ui); letter-spacing:.065em; text-transform:uppercase; color:var(--ink); }
.dg-admin-card:hover { background:var(--pink-soft); }
.dg-admin-section-heading h2 { font-size:clamp(32px,3vw,44px); line-height:1; }
.dg-admin-feature-grid { gap:20px; }
.dg-admin-feature { min-height:340px; padding:32px; background:var(--ink); color:white; border:0; }
.dg-admin-feature.is-pink { background:var(--pink-soft); color:var(--ink); }
.dg-admin-feature h2 { font-size:clamp(34px,3.2vw,48px); line-height:1; letter-spacing:-.015em; }
.dg-admin-feature p { color:#d2d2d2; max-width:340px; margin:18px 0 28px; }
.dg-admin-feature.is-pink p { color:#51434a; }
.dg-admin-feature strong { display:inline-flex; align-items:center; justify-content:space-between; gap:22px; background:#fff; color:var(--ink); padding:15px 20px; text-transform:uppercase; font-size:11px; letter-spacing:.04em; min-height:46px; }
.dg-admin-feature.is-pink strong { background:var(--ink); color:#fff; }
.dg-admin-feature:hover { color:white; outline:3px solid var(--pink-dark); }
.dg-admin-feature.is-pink:hover { color:var(--ink); }
.dg-admin-feature:hover strong { background:var(--pink); color:var(--ink); }

.dg-admin-shell :is(.dg-admin-panel,.dg-admin-section,.dg-admin-table,.dg-admin-methods) { border-color:#dedede; border-radius:0; box-shadow:none; }
.dg-admin-panel-heading { border-color:var(--ink); }
.dg-admin-shell input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=color]),.dg-admin-shell select { min-height:46px; }
.dg-admin-shell :is(input,select,textarea):focus { outline:2px solid var(--pink-dark); outline-offset:2px; }
.dg-admin-shell input[type=file]::file-selector-button { background:var(--ink); border:0; border-radius:0; color:white; font:700 11px var(--font-ui); padding:14px 18px; margin-right:14px; text-transform:uppercase; cursor:pointer; }
.dg-admin-template { border:1px solid #c9c9c9; border-radius:0; box-shadow:none; min-height:150px; transition:background-color .15s,border-color .15s; }
.dg-admin-template strong { font:700 23px/1.1 var(--font-display); text-transform:uppercase; }
.dg-admin-template .dg-icon { color:var(--ink); }
.dg-admin-template.is-selected { background:var(--pink-soft); border:2px solid var(--ink); }
.dg-admin-template:hover:not(:disabled) { background:var(--pink-soft); border-color:var(--ink); }
.dg-admin-shell .dg-payment-option { border-radius:0; box-shadow:none; border:1px solid #aaa; padding:16px; background:#fff; }
.dg-admin-shell .dg-payment-option.active { border:2px solid var(--ink); background:var(--pink-soft); }
.dg-admin-shell .dg-status-badge { border-radius:0; font-size:10px; letter-spacing:.035em; }
@media(max-width:1150px) {
    .dg-admin-shell { grid-template-columns:200px minmax(0,1fr); }
    .dg-admin-hero { min-height:340px; }
    .dg-admin-hero .dg-admin-title { font-size:64px; }
    .dg-admin-hero > .dg-admin-hero-art { flex-basis:22%; }
    .dg-admin-hero-art > span { font-size:9px; }
}
@media(max-width:800px) {
    .dg-admin-shell { grid-template-columns:1fr; }
    .dg-admin-sidebar { padding:22px; }
    .dg-admin-nav { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:4px; }
    .dg-admin-shell .dg-admin-nav a { font-size:11px; padding:10px; min-height:44px; }
    .dg-admin-topline { min-height:64px; margin-bottom:24px; gap:12px; }
    .dg-admin-store-link { font-size:9px; }
    .dg-admin-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .dg-admin-card { border-bottom:1px solid var(--line); padding:22px; }
    .dg-admin-card:nth-child(2) { border-right:0; }
    .dg-admin-card:nth-child(n+3) { border-bottom:0; }
}
@media(max-width:540px) {
    .dg-admin-content { padding:0 18px 40px; }
    .dg-admin-nav { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .dg-admin-hero { padding:28px 22px; min-height:0; }
    .dg-admin-hero .dg-admin-title { font-size:58px; }
    .dg-admin-hero > .dg-admin-hero-art { display:none; }
    .dg-admin-hero-actions { flex-direction:column; }
    .dg-admin-hero-actions .btn { width:100%; }
    .dg-admin-feature { padding:26px; min-height:320px; }
    .dg-admin-feature strong { width:100%; }
    .dg-admin-template-grid { gap:10px; }
    .dg-admin-template strong { font-size:20px; }
    .dg-admin-topline { font-size:9px; letter-spacing:.03em; }
}
@media(prefers-reduced-motion:reduce) { .dg-admin-shell * { transition:none !important; } }

/* Use the whole workspace; the sidebar scales with the screen instead of squeezing labels. */
@media(min-width:801px) {
    .dg-admin-shell { grid-template-columns:clamp(200px,20vw,345px) minmax(0,1fr); }
    .dg-admin-content { width:100%; max-width:none; padding-left:clamp(24px,2.5vw,48px); padding-right:clamp(24px,2.5vw,48px); }
    .dg-admin-sidebar { padding-left:24px; padding-right:24px; }
    .dg-admin-shell .dg-admin-nav a { padding:14px 16px; font-size:14px; }
}
.dg-admin-page-heading { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:20px; }
.dg-admin-report-range { display:flex; align-items:end; flex-wrap:wrap; gap:14px; padding:24px; border:1px solid var(--line); margin:18px 0; }
.dg-admin-report-range label { display:block; font-size:12px; font-weight:700; margin-bottom:8px; }
.dg-admin-report-cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:18px; margin:24px 0; }
.dg-admin-report-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.dg-admin-report-columns > .dg-admin-section { min-width:0; margin-top:0; }
.dg-admin-reconciliation { display:grid; grid-template-columns:1fr 1fr; gap:30px; background:var(--pink-soft); padding:28px; margin:24px 0; }
.dg-admin-reconciliation h2 { font-size:32px; }
.dg-admin-reconciliation h2 span { font-size:22px; }
.dg-admin-reconciliation p { font-size:14px; line-height:1.6; margin:0; }
.dg-admin-missing-total { padding:20px; background:var(--pink-soft); font-size:14px; }
.dg-admin-estimates summary { font:700 24px var(--font-display); cursor:pointer; padding:6px 0; }
.dg-admin-estimates > p { margin-top:20px; }
.dg-admin-work-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:18px; }
.dg-admin-work-item { display:flex; flex-direction:column; align-items:start; padding:24px; border:1px solid var(--line); border-top:3px solid var(--ink); color:var(--ink); text-decoration:none; }
.dg-admin-work-item h3 { font-size:28px; margin:14px 0 8px; }
.dg-admin-work-item p { font-size:14px; color:#555; line-height:1.6; }
.dg-admin-work-item > span:last-child { margin-top:auto; font-size:11px; font-weight:700; display:flex; gap:20px; padding-top:12px; }
.dg-admin-work-item:hover { background:var(--pink-soft); color:var(--ink); border-color:var(--pink-dark); }
.dg-admin-work-state { font:700 10px var(--font-ui); text-transform:uppercase; color:var(--pink-dark); letter-spacing:.08em; }
.dg-admin-explainer-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:16px; margin:22px 0 28px; }
.dg-admin-explainer-step { display:flex; flex-direction:column; gap:10px; padding:20px 22px; border:1px solid var(--line); border-top:3px solid var(--ink); }
.dg-admin-explainer-step svg { color:var(--pink-dark); }
.dg-admin-explainer-step strong { font:700 14px var(--font-ui); }
.dg-admin-explainer-step span { font-size:13px; color:#555; line-height:1.55; }
.dg-admin-callout { display:flex; gap:16px; align-items:flex-start; padding:22px 26px; margin-bottom:32px; background:var(--pink-soft); }
.dg-admin-callout svg { flex:none; color:var(--pink-dark); margin-top:2px; }
.dg-admin-callout strong { display:block; font:700 15px var(--font-display); margin-bottom:4px; }
.dg-admin-callout p { margin:0; font-size:13.5px; line-height:1.6; color:#3a343a; }
.dg-admin-callout a { color:var(--pink-dark); font-weight:700; }
.dg-admin-callout.is-tip { background:#fff; border:1px dashed var(--pink); }
.dg-admin-callout.is-tip svg { color:var(--pink); }
.dg-admin-entity-toolbar { display:flex; align-items:end; flex-wrap:wrap; gap:14px; padding:18px 0 22px; margin-bottom:24px; border-bottom:1px solid var(--line); }
.dg-admin-filter-field { display:grid; gap:6px; min-width:170px; }
.dg-admin-filter-field label { font:700 10px/1.2 var(--font-ui); letter-spacing:.08em; text-transform:uppercase; }
.dg-admin-filter-field select,.dg-admin-filter-field input { min-width:180px; }
.dg-admin-entity-count { margin-left:auto; color:#555; font:500 12px/1.5 var(--font-ui); }
.dg-admin-entity-count strong { color:var(--ink); }
.dg-admin-entity-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.dg-admin-entity-card { min-width:0; border:1px solid #dedede; background:#fff; color:var(--ink); }
.dg-admin-entity-media { position:relative; display:grid; place-items:center; overflow:hidden; aspect-ratio:4/3; background:#f4f1ef; }
.dg-admin-entity-media img { width:100%; height:100%; object-fit:contain; padding:12px; }
.dg-admin-entity-media .dg-status-badge { position:absolute; top:12px; right:12px; }
.dg-admin-order-custom-swatch { position:absolute; top:12px; left:12px; width:42px; height:42px; border-radius:8px; overflow:hidden; border:2px solid #fff; box-shadow:0 2px 8px rgba(0,0,0,.25); background:#fff; }
.dg-admin-order-custom-swatch img { width:100%; height:100%; object-fit:cover; display:block; }
.dg-admin-entity-card:hover { border-color:var(--ink); }
.dg-admin-order-card { display:block; color:var(--ink); text-decoration:none; }
.dg-admin-order-card:hover { color:var(--ink); }
.dg-admin-entity-arrow { position:absolute; right:12px; bottom:12px; display:grid; place-items:center; width:38px; height:38px; background:var(--pink); color:var(--ink); }
.dg-admin-order-head { display:flex; align-items:baseline; justify-content:space-between; gap:12px; }
.dg-admin-order-head h2 { margin:0; font:700 24px/1.1 var(--font-display); }
.dg-admin-order-head strong { white-space:nowrap; font:700 19px/1 var(--font-display); }
.dg-admin-order-customer { margin:12px 0 2px; font-weight:700; }
.dg-admin-order-email { margin:0; color:#555; font-size:12px; overflow-wrap:anywhere; }
.dg-admin-order-item { overflow:hidden; margin-top:12px; color:#555; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
.dg-admin-entity-copy { padding:18px; }
.dg-admin-entity-title { margin:0 0 5px; font:700 24px/1.1 var(--font-display); }
.dg-admin-entity-subtitle { color:#555; font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.dg-admin-entity-meta { display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px; margin-top:16px; color:#626262; font-size:11px; }
.dg-admin-order-total { margin-top:14px; font:700 20px/1 var(--font-display); }
.dg-admin-order-card .dg-admin-entity-media > .dg-order-item-preview { position:absolute; inset:0; width:100%; height:100%; aspect-ratio:auto; flex-basis:auto; }
.dg-admin-order-card .dg-admin-entity-media .dg-order-item-photo { padding:0; object-fit:cover; }
.dg-admin-order-card .dg-admin-entity-media .dg-order-item-art { padding:0; object-fit:contain; }
.dg-admin-order-products > h2 { display:flex; align-items:baseline; gap:12px; flex-wrap:wrap; }.dg-admin-order-products > h2 span { color:#777; font:500 12px var(--font-ui); }
.dg-admin-order-product-list { display:grid; gap:10px; }
.dg-admin-order-product { display:grid; grid-template-columns:112px minmax(0,1fr) auto; align-items:center; gap:18px; padding:16px; border:1px solid var(--line); background:#fff; }
.dg-admin-order-product-copy { min-width:0; }.dg-admin-order-product-copy h3 { margin:0 0 5px; font:700 20px/1.1 var(--font-display); }.dg-admin-order-product-copy h3 span { color:#777; font:600 12px var(--font-ui); }.dg-admin-order-product-copy p { margin:0 0 7px; color:#666; font-size:12px; }
.dg-admin-order-product-copy > strong { display:block; margin-top:9px; font:700 12px var(--font-ui); }
.dg-admin-order-customization { display:flex; align-items:center; gap:6px; color:var(--pink-dark); font:700 11px var(--font-ui); }.dg-admin-order-customization .dg-icon { flex:none; }
.dg-admin-order-personal-text { margin-top:7px!important; padding-left:10px; border-left:2px solid var(--pink); color:var(--ink)!important; font:600 13px var(--font-display); }
.dg-admin-order-product-total { align-self:start; font:700 19px var(--font-display); white-space:nowrap; }
@media(max-width:640px) { .dg-admin-order-product { grid-template-columns:82px minmax(0,1fr); gap:12px; padding:12px; }.dg-admin-order-product .dg-order-item-preview { --preview-width:82px!important; }.dg-admin-order-product-total { grid-column:2; align-self:auto; font-size:16px; } }
.dg-admin-product-actions { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:16px; }
.dg-admin-variant-list { display:grid; gap:8px; margin-top:14px; font-size:12px; }
.dg-admin-variant-row { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:8px 10px; background:#f7f5f3; }
.dg-admin-variant-name { font-weight:700; }
.dg-admin-variant-stock { color:#666; }
.dg-admin-variant-price { font-weight:700; white-space:nowrap; }
.dg-admin-person-visual { position:relative; display:grid; place-items:center; overflow:hidden; aspect-ratio:4/3; background:linear-gradient(135deg,#f4dce4,#f7efeb 55%,#eed1dc); }
.dg-admin-person-visual.is-external { background:linear-gradient(135deg,#e5e4e1,#f5f0ec 55%,#e4d4d5); }
.dg-admin-person-initials { display:grid; place-items:center; width:112px; height:112px; border:1px solid rgba(30,25,26,.7); border-radius:50%; font:500 38px/1 var(--font-display); letter-spacing:.04em; }
.dg-admin-person-photo { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.dg-admin-person-photo-edit { position:absolute; top:12px; right:12px; z-index:2; display:grid; place-items:center; width:34px; height:34px; border-radius:50%; background:#fff; color:var(--ink); border:1px solid rgba(30,25,26,.15); cursor:pointer; box-shadow:0 2px 8px rgba(0,0,0,.2); overflow:hidden; }
.dg-admin-person-photo-edit:hover { background:var(--pink); }
.dg-admin-person-photo-edit input[type=file] { position:absolute; inset:0; opacity:0; cursor:pointer; }
.dg-admin-domain-tag { position:absolute; left:14px; top:14px; padding:8px 10px; background:var(--ink); color:#fff; font:700 9px var(--font-ui); letter-spacing:.12em; }
.dg-admin-person-flower { position:absolute; right:18px; bottom:18px; color:var(--pink-dark); }
.dg-admin-person-name { font:700 25px/1.1 var(--font-display); overflow-wrap:anywhere; }
.dg-admin-person-email { margin-top:5px; color:#555; font-size:12px; overflow-wrap:anywhere; }
.dg-admin-person-chips { display:flex; flex-wrap:wrap; gap:6px; margin-top:14px; }
.dg-admin-person-chip { padding:6px 8px; border:1px solid #bbb; color:#555; font:700 9px/1 var(--font-ui); letter-spacing:.05em; text-transform:uppercase; }
.dg-admin-person-chip.is-role { border-color:#d9afbd; background:#fbf3f6; color:#7d2144; }
.dg-admin-person-chip.is-verified { border-color:#95b49c; background:#eff6f0; color:#285b32; }
.dg-admin-person-manage { margin-top:18px; border-top:1px solid var(--line); padding-top:12px; }
.dg-admin-person-manage summary { cursor:pointer; font:700 10px/1.4 var(--font-ui); letter-spacing:.06em; text-transform:uppercase; }
.dg-admin-person-role-controls { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-top:14px; font-size:12px; }
.dg-admin-person-security { display:grid; gap:10px; margin-top:14px; padding-top:12px; border-top:1px solid var(--line); font-size:12px; }
.dg-admin-device-line { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px; }
.dg-admin-empty { display:grid; justify-items:center; gap:10px; padding:64px 20px; border:1px solid var(--line); text-align:center; }
.dg-admin-empty h2 { margin:0; font:700 30px/1.1 var(--font-display); }
.dg-admin-empty p { margin:0; color:#555; }
.dg-admin-people-heading { margin-top:46px; }
.dg-admin-product-heading { display:flex; align-items:flex-end; justify-content:space-between; flex-wrap:wrap; gap:18px; margin:18px 0 28px; }
.dg-admin-product-heading .dg-admin-title { margin:10px 0 8px; font-size:clamp(42px,5vw,68px); }
.dg-admin-product-heading .dg-admin-subtitle { margin:0; }
.dg-admin-product-layout { display:grid; grid-template-columns:minmax(0,1fr); gap:22px; }
.dg-admin-product-layout > .dg-admin-section { min-width:0; margin:0; }
.dg-admin-product-section-heading { margin:0 0 22px; }
.dg-admin-product-section-heading .eyebrow { color:var(--pink-dark); font-size:10px; font-weight:700; letter-spacing:.1em; }
.dg-admin-product-section-heading h2 { margin:8px 0; font:700 clamp(27px,3vw,38px)/1 var(--font-display); text-transform:uppercase; }
.dg-admin-product-section-heading p { max-width:620px; margin:0; color:#666; font-size:13px; line-height:1.6; }
.dg-admin-product-form { display:grid; gap:20px; }
.dg-admin-product-form > .dg-field { display:grid; gap:8px; }
.dg-admin-product-form label,.dg-admin-variant-input label { font:700 11px/1.3 var(--font-ui); letter-spacing:.045em; text-transform:uppercase; }
.dg-admin-product-form label span { color:#777; font-weight:500; }
.dg-admin-field-help { color:#686868; font-size:11px; line-height:1.5; }
.dg-admin-product-split { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.dg-admin-money-field { position:relative; display:flex; align-items:center; border:1px solid #c9c9c9; background:#fff; }
.dg-admin-money-field > span { padding-left:14px; color:#555; }
.dg-admin-money-field input { min-width:0; width:100%; border:0 !important; }
.dg-admin-money-field input:focus { outline:0 !important; }
.dg-admin-customization-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.dg-admin-choice { display:grid; gap:8px; padding:14px; border:1px solid #c9c9c9; background:#fff; cursor:pointer; }
.dg-admin-choice input { accent-color:var(--pink-dark); }
.dg-admin-choice strong { font:700 14px var(--font-display); text-transform:uppercase; }
.dg-admin-choice span { color:#666; font-size:11px; font-weight:400; letter-spacing:0; text-transform:none; line-height:1.45; }
.dg-admin-choice.is-selected { border-color:var(--ink); background:var(--pink-soft); box-shadow:inset 0 0 0 1px var(--ink); }
.dg-admin-image-list { display:grid; grid-template-columns:repeat(auto-fill,minmax(120px,1fr)); gap:10px; margin-bottom:12px; }
.dg-admin-image-thumb { position:relative; overflow:hidden; aspect-ratio:1; background:var(--blush); border:1px solid var(--line); }
.dg-admin-image-thumb img { width:100%; height:100%; object-fit:contain; padding:5px; }
.dg-admin-image-thumb > span { position:absolute; left:7px; bottom:7px; padding:5px 7px; background:var(--ink); color:#fff; font:700 8px var(--font-ui); letter-spacing:.08em; }
.dg-admin-image-thumb button { position:absolute; top:6px; right:6px; display:grid; place-items:center; width:30px; height:30px; border:0; background:#fff; color:var(--ink); cursor:pointer; }
.dg-admin-image-drop { position:relative; display:flex; align-items:center; gap:14px; min-height:86px; padding:16px; border:1px dashed #9a8b91; background:var(--blush); cursor:pointer; }
.dg-admin-image-drop > span { display:grid; gap:5px; }
.dg-admin-image-drop strong { font:700 14px var(--font-display); text-transform:uppercase; }
.dg-admin-image-drop small { color:#666; font:400 11px var(--font-ui); letter-spacing:0; text-transform:none; }
.dg-admin-image-drop input[type=file] { position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer; }
.dg-admin-image-urls { margin-top:12px; }
.dg-admin-image-urls summary { cursor:pointer; font-size:12px; }
.dg-admin-image-urls label { display:block; margin:12px 0 6px; }
.dg-admin-product-actions { display:flex; align-items:center; flex-wrap:wrap; gap:10px; padding-top:18px; border-top:1px solid var(--line); }
.dg-admin-product-actions .btn-primary { margin-right:auto; }
.dg-admin-variants-section { display:grid; gap:14px; }
.dg-admin-variant-card { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; padding:18px; border:1px solid var(--line); background:#fff; }
.dg-admin-variant-card.is-new { border-style:dashed; background:var(--blush); }
.dg-admin-variant-card .dg-admin-product-section-heading { grid-column:1/-1; margin:0; }
.dg-admin-variant-input { display:grid; gap:6px; min-width:0; }
.dg-admin-variant-input :is(input,select) { min-width:0; width:100%; }
.dg-admin-variant-thumb { grid-column:1/-1; width:100%; height:120px; object-fit:contain; background:var(--blush); }
.dg-admin-variant-dimensions { grid-column:1/-1; display:flex; align-items:center; gap:8px; color:#666; font-size:11px; }
.dg-admin-variant-actions { grid-column:1/-1; display:flex; flex-wrap:wrap; gap:8px; }
.dg-admin-variant-upload { position:relative; overflow:hidden; }
.dg-admin-variant-upload input[type=file] { position:absolute; inset:0; opacity:0; cursor:pointer; }
.dg-admin-variant-card .btn { min-height:40px; padding:10px 14px; }
.dg-admin-content-section { margin-top:36px; }
.dg-admin-content-section:first-of-type { margin-top:12px; }
.dg-admin-content-section-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; flex-wrap:wrap; padding-bottom:16px; border-bottom:2px solid var(--ink); }
.dg-admin-content-section-heading h2 { margin:0; font:700 26px/1.1 var(--font-display); text-transform:uppercase; }
.dg-admin-content-section-heading p { margin:6px 0 0; }
.dg-admin-content-group { margin-top:22px; }
.dg-admin-content-group h3 { display:flex; align-items:center; gap:10px; margin:0 0 10px; font:700 11px/1.2 var(--font-ui); letter-spacing:.08em; text-transform:uppercase; color:#777; }
.dg-admin-content-group-count { display:inline-flex; align-items:center; justify-content:center; min-width:20px; height:20px; padding:0 6px; background:var(--pink-soft); color:var(--pink-dark); border-radius:999px; font-weight:700; }
.dg-admin-content-item { background:#fff; border:1px solid var(--line); border-left:3px solid var(--pink); padding:18px; margin-bottom:12px; display:grid; gap:12px; }
.dg-admin-content-item-row { display:flex; gap:12px; flex-wrap:wrap; align-items:flex-end; }
.dg-admin-field { display:flex; flex-direction:column; gap:4px; min-width:150px; }
.dg-admin-field label { margin:0; }
.dg-admin-field input,.dg-admin-field textarea { width:100%; }
.dg-admin-field-check { display:flex; align-items:center; gap:8px; white-space:nowrap; padding-bottom:11px; }
.dg-admin-content-item-actions { display:flex; gap:8px; }
.dg-photolab { max-width:1500px; margin:0 auto; color:var(--ink); }
.dg-photolab-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:28px; margin-bottom:28px; }
.dg-photolab-open { display:inline-flex; align-items:center; gap:8px; margin:0 0 12px; color:var(--pink-dark); font:700 11px var(--font-ui); text-decoration:none; }.dg-photolab-open:hover { text-decoration:underline; }
.dg-photolab-heading .dg-admin-title { margin:8px 0 10px; }
.dg-photolab-heading .dg-admin-subtitle { max-width:680px; margin:0; }
.dg-photolab-quota { width:min(310px,35%); padding:17px 19px; background:#fff; border:1px solid var(--line); display:grid; grid-template-columns:auto 1fr; align-items:baseline; column-gap:8px; }
.dg-photolab-quota strong { font:700 23px var(--font-display); }.dg-photolab-quota span { font-size:12px; color:#666; }.dg-photolab-quota small,.dg-photolab-meter { grid-column:1/-1; }.dg-photolab-quota small { color:#666; font-size:10px; margin-top:7px; }
.dg-photolab-meter { height:5px; background:#eee; margin-top:10px; }.dg-photolab-meter i { display:block; height:100%; background:var(--pink-dark); }
.dg-photolab-alert { margin:0 0 18px; padding:13px 16px; background:#eff6f0; border-left:3px solid #53835c; font-size:13px; }.dg-photolab-alert.is-error { background:#fff0f0; border-color:#b44242; }
.dg-photolab-drop { min-height:340px; display:grid; align-content:center; justify-items:center; gap:12px; border:1px dashed #95858c; background:linear-gradient(135deg,#fff 0%,var(--pink-soft) 100%); position:relative; text-align:center; cursor:pointer; }
.dg-photolab-drop strong { font:700 26px var(--font-display); text-transform:uppercase; }.dg-photolab-drop span { color:#666; font-size:12px; }.dg-photolab-drop input { position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer; }
.dg-photolab-workspace { display:grid; grid-template-columns:minmax(0,1fr) 360px; border:1px solid var(--line); background:#fff; }
.dg-photolab-stage { min-width:0; padding:18px; display:grid; grid-template-rows:auto minmax(420px,1fr) auto; gap:14px; background:#f0efed; }
.dg-photolab-stage-top { display:flex; justify-content:space-between; align-items:center; font:700 10px var(--font-ui); letter-spacing:.1em; }.dg-photolab-stage-top b { margin-left:8px; color:#777; letter-spacing:0; }
.dg-photolab-canvas { min-height:420px; display:grid; place-items:center; background-color:#dedbd8; background-image:linear-gradient(45deg,#e8e6e3 25%,transparent 25%),linear-gradient(-45deg,#e8e6e3 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e8e6e3 75%),linear-gradient(-45deg,transparent 75%,#e8e6e3 75%); background-size:24px 24px; background-position:0 0,0 12px,12px -12px,-12px 0; overflow:hidden; }
.dg-photolab-canvas img { display:block; max-width:90%; max-height:660px; object-fit:contain; box-shadow:0 10px 35px #0002; }
.dg-photolab-quality { min-height:18px; font-size:11px; color:#65615f; }.dg-photolab-quality .is-warn { color:#9c5616; }.dg-photolab-quality .is-good { color:#285b32; }
.dg-photolab-tools { display:flex; flex-direction:column; gap:18px; padding:24px; border-left:1px solid var(--line); }.dg-photolab-tool-group { display:grid; gap:10px; padding-bottom:16px; border-bottom:1px solid var(--line); }
.dg-photolab-tool-group h2 { margin:0; font:700 21px var(--font-display); text-transform:uppercase; }.dg-photolab-tool-group p { margin:0; color:#686868; font-size:11px; line-height:1.5; }.dg-photolab-tool-group label { display:flex; align-items:center; justify-content:space-between; gap:10px; font-size:11px; color:#555; }
.dg-photolab-tool-group select { max-width:190px; padding:8px; border:1px solid #ccc; background:#fff; font:500 11px var(--font-ui); }.dg-photolab-color { display:flex; align-items:center; gap:6px; color:var(--ink); }.dg-photolab-color input { width:30px; height:30px; padding:2px; border:1px solid #ccc; background:#fff; }
.dg-photolab-prompt-label { display:block!important; }.dg-photolab-tool-group textarea { width:100%; min-height:72px; resize:vertical; padding:9px; border:1px solid #ccc; font:11px/1.5 var(--font-ui); }
.dg-photolab-tool { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:43px; padding:10px 12px; text-align:left; background:#fff; border:1px solid #bcb6b8; color:var(--ink); font:700 11px var(--font-ui); cursor:pointer; }.dg-photolab-tool:hover { border-color:var(--pink-dark); background:var(--pink-soft); }.dg-photolab-tool span { color:var(--pink-dark); }.dg-photolab-tool.is-ai { border-color:var(--pink-dark); }
.dg-photolab-export { display:flex; justify-content:space-between; align-items:center; padding:15px 16px; background:var(--ink); color:#fff; border:0; font:700 12px var(--font-ui); cursor:pointer; text-transform:uppercase; letter-spacing:.06em; }.dg-photolab-export:hover { background:var(--pink-dark); }.dg-photolab-discard,.dg-photolab-quiet { padding:8px 10px; border:1px solid #bbb; background:transparent; font:600 10px var(--font-ui); cursor:pointer; }.dg-photolab-discard:hover,.dg-photolab-quiet:hover { border-color:var(--ink); }
.dg-photolab-history { margin-top:27px; padding:22px; border:1px solid var(--line); background:#fff; }.dg-photolab-history > div:first-child { display:flex; align-items:baseline; justify-content:space-between; }.dg-photolab-history h2 { margin:3px 0 15px; font:700 26px var(--font-display); text-transform:uppercase; }.dg-photolab-history h2 span { font:600 12px var(--font-ui); color:#777; }
.dg-photolab-version-list { display:flex; gap:10px; overflow-x:auto; padding-bottom:5px; }.dg-photolab-version { min-width:230px; display:flex; align-items:center; gap:10px; padding:8px; background:#fff; border:1px solid var(--line); text-align:left; cursor:pointer; }.dg-photolab-version.is-current { border-color:var(--pink-dark); box-shadow:inset 0 0 0 1px var(--pink-dark); }.dg-photolab-version img { width:48px; height:48px; object-fit:contain; background:#f2f0ee; }.dg-photolab-version span { display:grid; gap:4px; flex:1; }.dg-photolab-version b { font:700 12px var(--font-ui); }.dg-photolab-version small { color:#777; font:10px var(--font-ui); }
@media(max-width:900px) { .dg-photolab-workspace { grid-template-columns:1fr; }.dg-photolab-tools { border-left:0; border-top:1px solid var(--line); }.dg-photolab-stage { grid-template-rows:auto minmax(300px,1fr) auto; }.dg-photolab-canvas { min-height:300px; } }
@media(max-width:600px) { .dg-photolab-heading { align-items:stretch; flex-direction:column; }.dg-photolab-quota { width:100%; }.dg-photolab-stage { padding:10px; }.dg-photolab-version { min-width:200px; } }
@media(max-width:540px) { .dg-admin-content-item-row { flex-direction:column; align-items:stretch; } .dg-admin-field { min-width:0; } }
@media(max-width:1050px) { .dg-admin-entity-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) { .dg-admin-variant-card { grid-template-columns:repeat(2,minmax(0,1fr)); } .dg-admin-customization-options { grid-template-columns:1fr; } }
@media(max-width:1100px) { .dg-admin-report-columns,.dg-admin-reconciliation { grid-template-columns:1fr; } }
@media(max-width:540px) { .dg-admin-report-range { padding:18px; } .dg-admin-work-grid { grid-template-columns:1fr; } .dg-admin-estimates .dg-admin-row { align-items:start; } .dg-admin-entity-grid { grid-template-columns:1fr; } .dg-admin-entity-count { width:100%; margin-left:0; } .dg-admin-filter-field,.dg-admin-filter-field select,.dg-admin-filter-field input { width:100%; } .dg-admin-product-split,.dg-admin-variant-card { grid-template-columns:1fr; } .dg-admin-variant-card .dg-admin-product-section-heading,.dg-admin-variant-dimensions,.dg-admin-variant-actions,.dg-admin-variant-thumb { grid-column:auto; } .dg-admin-product-actions .btn-primary { width:100%; } }
