/* Studio admin: shares the storefront's typography, palette and graphic language. */
.dg-admin-shell,.dg-admin-access { font-family:var(--font-ui); }
.dg-admin-shell :is(h1,h2,h3,h4,h5,h6),.dg-admin-access :is(h1,h2,h3) { font-family:var(--font-display); }
.dg-admin-shell :is(button,input,select,textarea,.btn) { font-family:var(--font-ui); }
.dg-admin-nav a { font-family:var(--font-display); text-transform:uppercase; letter-spacing:.035em; }
.dg-admin-shell .dg-admin-nav a { font-size:18px; font-weight:700; }
.dg-admin-shell { display:grid; grid-template-columns:248px minmax(0,1fr); min-height:100vh; background:#f7f6f4; color:var(--ink); }
.dg-admin-sidebar { background:var(--ink); color:#fff; padding:35px 22px 24px; display:flex; flex-direction:column; position:sticky; top:0; height:100dvh; overflow:auto; }
.dg-admin-brand { display:flex; align-items:center; color:#fff; font:800 30px/1 var(--font-display); text-decoration:none; letter-spacing:-1px; }
.dg-admin-brand span,.dg-admin-brand .dg-icon { color:var(--pink); }
.dg-admin-brand .dg-icon { margin-left:auto; }
.dg-admin-eyebrow { color:#bbb; font-size:10px; letter-spacing:2px; margin:14px 0 34px; }
.dg-admin-nav { display:flex; flex-direction:column; gap:5px; }
.dg-admin-nav a { color:#d3d3d3; text-decoration:none; padding:12px 13px; display:flex; align-items:center; gap:12px; font-weight:600; font-size:14px; border-left:3px solid transparent; }
.dg-admin-nav a:hover { background:#292929; color:#fff; }
.dg-admin-nav a.active { background:var(--pink); color:#141414; border-color:#fff; }
.dg-admin-nav-label { font-size:9px; letter-spacing:1.6px; color:#aaa; margin:25px 15px 7px; }
.dg-admin-sidebar-note { border-top:1px solid #444; margin-top:auto; padding-top:28px; color:var(--pink); }
.dg-admin-sidebar-note p { color:#bcbcbc; font-size:13px; line-height:1.5; margin-top:12px; }
.dg-admin-back { display:flex; align-items:center; gap:10px; font-size:12px; color:inherit; text-decoration:none; margin-top:24px; }
.dg-admin-content { min-width:0; padding:25px clamp(22px,4vw,64px) 65px; }
.dg-admin-topline { display:flex; justify-content:space-between; gap:20px; font-size:9px; font-weight:700; letter-spacing:1.5px; padding-bottom:22px; margin-bottom:36px; border-bottom:1px solid #dcdad7; color:#686868; }
.dg-admin-title { font:800 clamp(40px,4.3vw,68px)/.98 var(--font-display); text-transform:uppercase; letter-spacing:-1px; margin:10px 0 18px; max-width:850px; }
.dg-admin-title span { color:var(--pink-dark); }
.dg-admin-subtitle { color:#65615f; font-size:15px; line-height:1.65; margin-bottom:30px; }
.dg-admin-hero { background:#fde7ef; padding:38px; display:flex; align-items:center; gap:24px; margin-bottom:28px; position:relative; overflow:hidden; border:1px solid #f2d8e2; }
.dg-admin-hero > div { flex:1; position:relative; z-index:1; }
.dg-admin-hero-flower { color:var(--pink); flex:none; transform:rotate(12deg); }
.dg-admin-shell .eyebrow { font:700 10px var(--font-ui); letter-spacing:1.8px; margin-bottom:12px; }
.dg-admin-shell .btn { font-size:12px; display:inline-flex; align-items:center; justify-content:center; gap:10px; border-radius:0; padding:13px 20px; }
.dg-admin-cards { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin-bottom:44px; }
.dg-admin-card { background:#fff; border:1px solid var(--line); padding:24px; border-top:3px solid var(--ink); transition:border-color .2s; }
.dg-admin-card:hover { border-color:var(--pink-dark); }
.dg-admin-card .value { font:700 48px/1 var(--font-display); }
.dg-admin-card .label { font-size:12px; color:#67615e; margin-top:12px; }
.dg-admin-section-heading { display:flex; justify-content:space-between; align-items:end; gap:20px; margin:30px 0 20px; }
.dg-admin-section-heading h2,.dg-admin-panel h2 { font:700 30px/1.1 var(--font-display); text-transform:uppercase; margin:0; }
.dg-admin-feature-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.dg-admin-feature { display:flex; flex-direction:column; align-items:start; padding:30px; border:1px solid #dedad5; background:#edece5; color:var(--ink); text-decoration:none; }
.dg-admin-feature.is-pink { background:#fde7ef; border-color:#f1cfdb; }
.dg-admin-feature > .dg-icon { margin-bottom:28px; }
.dg-admin-feature h2 { font:700 36px/1.05 var(--font-display); text-transform:uppercase; }
.dg-admin-feature p { color:#625c5b; font-size:14px; max-width:300px; line-height:1.6; }
.dg-admin-feature strong { margin-top:auto; font-size:12px; padding-top:16px; }
.dg-admin-feature:hover { outline:2px solid var(--pink-dark); outline-offset:-2px; color:var(--ink); }
.dg-admin-table,.dg-admin-methods,.dg-admin-section { background:#fff; border:1px solid var(--line); margin:20px 0; }
.dg-admin-section { padding:25px; }
.dg-admin-section h2 { font:700 27px var(--font-display); }
.dg-admin-row,.dg-admin-method-row { display:flex; align-items:center; gap:20px; padding:22px; border-bottom:1px solid var(--line); color:inherit; text-decoration:none; }
.dg-admin-row:last-child,.dg-admin-method-row:last-child { border-bottom:0; }
.dg-provider-brand { display:flex; flex:0 0 150px; align-items:center; justify-content:flex-start; min-width:0; min-height:48px; }
.dg-provider-brand a { display:flex; align-items:center; max-width:100%; color:inherit; text-decoration:none; }
.dg-provider-brand img { display:block; width:auto; max-width:142px; max-height:48px; object-fit:contain; }
.dg-provider-wordmark { font:800 23px/1 var(--font-ui); letter-spacing:-.045em; color:var(--provider-color,#3f3b3d)!important; white-space:nowrap; }
.dg-admin-template .dg-provider-brand { flex:1 1 auto; min-height:48px; margin-bottom:12px; }
.dg-provider-connection { display:flex; align-items:center; gap:22px; }
.dg-carrier-action { display:flex; align-items:center; gap:14px; }
.dg-carrier-action .dg-provider-brand { flex-basis:132px; min-height:36px; }
.dg-carrier-action .dg-provider-brand img { max-width:125px; max-height:38px; }
.dg-payment-option .dg-provider-brand { flex:0 0 116px; min-height:34px; }
.dg-payment-option .dg-provider-brand img { max-width:106px; max-height:32px; }
a.dg-admin-row:hover { background:#fff3f7; color:inherit; }
.dg-admin-row-main { flex:1; min-width:0; }
.dg-admin-row-title { font-size:15px; font-weight:700; }
.dg-admin-row-sub,.dg-admin-shell .dg-muted { color:#6c6562; font-size:12px; margin-top:6px; overflow-wrap:anywhere; }
.dg-admin-filters,.dg-admin-pagination,.dg-admin-actions { display:flex; flex-wrap:wrap; gap:14px; align-items:center; margin:20px 0; }
.dg-admin-shell input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=color]),.dg-admin-shell textarea,.dg-admin-shell select { border:1px solid #cfcac7; background:#fff; border-radius:0; padding:11px 12px; font:14px var(--font-ui); color:var(--ink); max-width:100%; }
.dg-admin-shell textarea { resize:vertical; }
.dg-admin-shell :focus-visible { outline:3px solid var(--pink-dark); outline-offset:3px; }
.dg-admin-shell input:focus,.dg-admin-shell textarea:focus { border-color:var(--pink-dark); }
.dg-admin-shell .dg-toggle { display:inline-flex; flex:none; }
.dg-admin-shell .dg-toggle input { accent-color:var(--pink-dark); width:20px; height:20px; }
.dg-admin-template-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin:25px 0 30px; }
.dg-admin-template-grid.is-three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.dg-admin-template { display:flex; align-items:start; flex-direction:column; text-align:left; border:1px solid #d9d5d1; background:#fff; padding:20px; color:var(--ink); min-width:0; }
.dg-admin-template .dg-icon { margin-bottom:20px; color:var(--pink-dark); }
.dg-admin-template strong { font-size:14px; margin-bottom:6px; }
.dg-admin-template span { font-size:12px; color:#6b6461; }
.dg-admin-template:hover { border-color:var(--pink-dark); }
.dg-admin-template.is-selected { background:#fde7ef; border:2px solid var(--pink-dark); padding:19px; }
.dg-admin-template:disabled { opacity:.65; cursor:default; }
.dg-admin-workspace { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:28px; align-items:start; }
.dg-admin-panel { background:#fff; border:1px solid var(--line); padding:28px; min-width:0; }
.dg-admin-panel-heading { padding-bottom:25px; border-bottom:1px solid var(--line); margin-bottom:22px; }
.dg-admin-panel label { display:block; font-size:12px; font-weight:700; margin:18px 0 8px; }
.dg-admin-panel input,.dg-admin-panel textarea { width:100%; }
.dg-admin-panel fieldset { min-width:0; }
.dg-admin-panel fieldset > .btn { margin-top:24px; }
.dg-admin-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:15px; }
.dg-admin-help { font-size:11px; color:#6c6562; line-height:1.6; margin:10px 0 0; }
.dg-admin-preview-label { display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px; margin-bottom:16px; font-size:10px; color:#666; }
.dg-admin-preview-label .eyebrow { margin:0; color:var(--ink); }
.dg-admin-email-preview { width:100%; height:670px; border:1px solid var(--line); background:#fff; }
.dg-admin-review { margin-top:26px; padding:22px; background:#f9f2f5; border-left:3px solid var(--pink-dark); font-size:13px; line-height:1.65; }
.dg-admin-review h3 { font:700 24px var(--font-display); }
.dg-admin-review p { overflow-wrap:anywhere; }
.dg-admin-notice { padding:18px; margin-bottom:22px; background:#edf4ec; border-left:3px solid #3d6940; font-size:14px; overflow-wrap:anywhere; }
.dg-admin-notice.is-error { background:#fff0f0; border-color:#a5223c; }
.dg-admin-access { max-width:550px; margin:12vh auto; padding:30px; }
.dg-admin-access h1 { font:700 50px var(--font-display); margin-top:20px; }
.dg-admin-document-preview { background:#e9e7e3; padding:24px; min-width:0; }
.dg-document-sheet { display:flex; flex-direction:column; align-items:center; gap:25px; }
.dg-business-card { width:3.5in; height:2in; max-width:100%; position:relative; overflow:hidden; flex:none; box-sizing:border-box; padding:22px; box-shadow:0 8px 20px #00000012; }
.dg-business-card.is-front { background:#141414; color:#fff; }
.dg-document-wordmark { font:800 27px/1 var(--font-display); letter-spacing:-.8px; }
.dg-document-wordmark span { color:#f85e8e; }
.dg-business-card.is-front > .dg-icon { position:absolute; right:24px; bottom:24px; color:#f85e8e; }
.dg-card-tagline { position:absolute; bottom:26px; font:700 12px/1.35 var(--font-ui); letter-spacing:1px; }
.dg-business-card.is-back { background:#fde7ef; color:#141414; display:flex; flex-direction:column; justify-content:space-between; }
.dg-card-person h2 { font:700 23px/1.05 var(--font-display); margin:0 0 5px; overflow-wrap:anywhere; }
.dg-card-person p { font-size:10px; margin:0; }
.dg-card-contact { display:flex; flex-direction:column; gap:3px; font-size:9px; padding-right:27px; overflow-wrap:anywhere; }
.dg-business-card.is-back > .dg-icon { position:absolute; right:20px; bottom:23px; color:#ae2358; }
.dg-brochure { background:#fff; color:#141414; width:100%; max-width:7.5in; }
.dg-brochure header { background:#141414; color:#fff; padding:25px; display:flex; justify-content:space-between; align-items:center; gap:20px; }
.dg-brochure header > span { font-size:8px; letter-spacing:1px; }
.dg-brochure-hero { background:#fde7ef; padding:35px 28px; position:relative; overflow:hidden; }
.dg-brochure-hero h2 { font:800 48px/.95 var(--font-display); text-transform:uppercase; max-width:80%; position:relative; z-index:1; overflow-wrap:anywhere; }
.dg-brochure-hero > .dg-icon { position:absolute; color:#f85e8e; right:-15px; bottom:10px; }
.dg-brochure-body { padding:26px; }
.dg-document-note { font-size:13px; line-height:1.7; white-space:pre-line; overflow-wrap:anywhere; }
.dg-brochure-products { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-top:28px; }
.dg-brochure-products .dg-icon { color:#ae2358; }
.dg-brochure-products h3 { font:700 23px/1.1 var(--font-display); margin:12px 0; }
.dg-brochure-products p { font-size:11px; line-height:1.6; }
.dg-brochure-process { display:flex; gap:12px; justify-content:space-between; border-top:1px solid #ddd; padding-top:22px; font-size:8px; font-weight:700; }
.dg-brochure footer { background:#edece5; padding:26px; font-size:12px; display:flex; flex-direction:column; gap:5px; overflow-wrap:anywhere; }
.dg-brochure footer h3 { font:700 26px var(--font-display); }
.dg-thankyou { width:6in; max-width:100%; min-height:4in; padding:30px; background:#fde7ef; color:#141414; text-align:center; box-sizing:border-box; }
.dg-thankyou > .dg-icon { color:#ae2358; margin:22px 0 12px; }
.dg-thankyou h2 { font:700 35px/1 var(--font-display); overflow-wrap:anywhere; }
.dg-thankyou footer { display:flex; flex-direction:column; gap:4px; font-size:10px; margin-top:16px; overflow-wrap:anywhere; }
@media(min-width:1500px) { .dg-admin-content { max-width:1600px; } }
@media(max-width:1150px) { .dg-admin-shell { grid-template-columns:210px minmax(0,1fr); } .dg-admin-sidebar { padding:28px 14px; } .dg-admin-workspace { grid-template-columns:1fr; } .dg-admin-hero-flower { width:100px; } .dg-admin-document-preview { max-width:800px; } }
@media(max-width:800px) { .dg-admin-shell { grid-template-columns:1fr; } .dg-admin-sidebar { position:relative; height:auto; padding:20px; } .dg-admin-brand { max-width:220px; } .dg-admin-eyebrow { margin:10px 0 18px; } .dg-admin-nav { flex-direction:row; flex-wrap:wrap; gap:6px; } .dg-admin-nav a { font-size:12px; padding:9px; } .dg-admin-nav-label,.dg-admin-sidebar-note { display:none; } .dg-admin-back { margin-top:16px; } .dg-admin-topline span:last-child { display:none; } .dg-admin-cards { gap:10px; } .dg-admin-card { padding:17px; } .dg-admin-template-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:540px) { .dg-admin-content { padding:22px 18px 40px; } .dg-admin-hero { padding:26px; } .dg-admin-hero-flower { position:absolute; right:-35px; top:10px; opacity:.3; width:150px; } .dg-admin-cards,.dg-admin-feature-grid,.dg-admin-template-grid.is-three { grid-template-columns:1fr 1fr; } .dg-admin-feature-grid { grid-template-columns:1fr; } .dg-admin-section-heading { align-items:start; flex-direction:column; } .dg-admin-title { font-size:43px; } .dg-admin-panel { padding:20px; } .dg-admin-form-grid { grid-template-columns:1fr; gap:0; } .dg-admin-document-preview { padding:12px; } .dg-admin-row { flex-wrap:wrap; gap:12px; } .dg-admin-row-main { flex-basis:100%; } .dg-brochure-products { grid-template-columns:1fr; } .dg-brochure header { flex-wrap:wrap; } .dg-admin-template { padding:16px; } .dg-admin-template.is-selected { padding:15px; } }
@media print {
    @page dg-studio { size:letter; margin:.5in; }
    body:has(.dg-document-sheet) { background:#fff !important; }
    body:has(.dg-document-sheet) .dg-admin-sidebar,body:has(.dg-document-sheet) .dg-admin-topline,body:has(.dg-document-sheet) .dg-admin-document-controls,body:has(.dg-document-sheet) #blazor-error-ui { display:none !important; }
    body:has(.dg-document-sheet) .dg-admin-shell,body:has(.dg-document-sheet) .dg-admin-content,body:has(.dg-document-sheet) .dg-admin-workspace,body:has(.dg-document-sheet) .dg-admin-document-preview { display:block !important; padding:0 !important; margin:0 !important; background:#fff !important; border:0 !important; max-width:none !important; }
    .dg-document-sheet { page:dg-studio; width:7.5in; gap:.25in; print-color-adjust:exact; -webkit-print-color-adjust:exact; }
    .dg-document-sheet * { print-color-adjust:exact; -webkit-print-color-adjust:exact; }
    .dg-business-card { width:3.5in; height:2in; max-width:none; box-shadow:none; break-inside:avoid; }
    .dg-brochure { width:7.5in; break-inside:avoid; }
    .dg-brochure-products { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .dg-brochure-hero h2 { font-size:60px; }
    .dg-thankyou { width:6in; height:4in; min-height:0; max-width:none; break-inside:avoid; padding:24px; }
    .dg-thankyou > .dg-icon { margin:12px 0 8px; height:30px; }
    .dg-thankyou h2 { font-size:30px; }
    .dg-thankyou .dg-document-note { font-size:11px; line-height:1.45; }
}
