/* ==========================================================================
   domeniuliber.ro design system (dl.css). Plain CSS, no build step.
   Owner: FOUNDATION. Teams add page CSS in their own files (public/css/<team>.css)
   and use these tokens + components; do not edit this file from a team without
   telling the others (shared).
   Mobile first. Breakpoints: 640px (sm), 960px (md), 1200px (lg).
   ========================================================================== */

/* ---------- Fonts (self-hosted, latin + latin-ext: ș ț ă î â; OFL, see fonts/LICENSES.txt) ----------
   TITLU redesign (2026-11-06): Archivo variable (wght 100–900, wdth 62–125) for everything,
   JetBrains Mono variable for labels / numbers, Instrument Serif italic as the single accent. */
@font-face { font-family: 'Archivo'; font-style: normal; font-weight: 100 900; font-stretch: 62% 125%; font-display: swap; src: url(../fonts/archivo-var-latin.woff2) format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: 'Archivo'; font-style: normal; font-weight: 100 900; font-stretch: 62% 125%; font-display: swap; src: url(../fonts/archivo-var-latin-ext.woff2) format('woff2'); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+20A0-20AB,U+20AD-20C4,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: 'JetBrains Mono'; font-style: normal; font-weight: 100 800; font-display: swap; src: url(../fonts/jetbrains-mono-var-latin.woff2) format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215; }
@font-face { font-family: 'JetBrains Mono'; font-style: normal; font-weight: 100 800; font-display: swap; src: url(../fonts/jetbrains-mono-var-latin-ext.woff2) format('woff2'); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+20A0-20AB,U+20AD-20C4; }
@font-face { font-family: 'Instrument Serif'; font-style: italic; font-weight: 400; font-display: swap; src: url(../fonts/instrument-serif-italic-latin.woff2) format('woff2'); unicode-range: U+0000-00FF,U+2000-206F; }
@font-face { font-family: 'Instrument Serif'; font-style: italic; font-weight: 400; font-display: swap; src: url(../fonts/instrument-serif-italic-latin-ext.woff2) format('woff2'); unicode-range: U+0100-02FF; }

/* ---------- Tokens ---------- */
:root {
	/* colour: black, paper and one mint signal */
	--dl-ink: #0A0A09;          /* text on light, dark sections */
	--dl-ink-2: #141412;        /* cards on dark */
	--dl-ink-3: #1E1E1B;        /* fields on dark */
	--dl-paper: #EEEBE3;        /* light pages */
	--dl-paper-2: #E4E0D5;      /* alternate light band */
	--dl-card: #F6F3EC;         /* cards / certificates on light */
	--dl-line: #D3CEC1;         /* borders / dividers on light */
	--dl-line-dark: #2C2B27;    /* borders / dividers on dark */
	--dl-field: #7D786C;        /* form field border (3.7:1 on paper, 4.0:1 on card: WCAG 1.4.11) */
	--dl-text: #3E3D39;         /* body text on light (9.1:1 on paper) */
	--dl-text-dark: #B9B5AA;    /* body text on dark (9.7:1 on ink) */
	--dl-mint: #3DDC97;         /* the signal: FILLS on light, text only on ink */
	--dl-mint-dark: #0B6B44;    /* green text / icons on paper (5.5:1) */
	--dl-mint-tint: #DCF2E5;    /* highlighted row */
	--dl-orange: #FF8A3D;       /* attention (expiring, unpaid): fills with ink text */
	--dl-muted-light: #5E5B53;  /* small print on light (5.7:1) */
	--dl-muted-dark: #8C897F;   /* small print on dark (5.7:1) */
	--dl-danger: #B42318;       /* form errors on light (5.5:1 on paper) */

	/* contextual (flip inside .dl-dark) */
	--dl-bg: var(--dl-paper);
	--dl-fg: var(--dl-ink);
	--dl-body: var(--dl-text);
	--dl-border: var(--dl-line);
	--dl-surface: var(--dl-card);
	--dl-focus: var(--dl-ink);
	--dl-link: var(--dl-ink);

	/* type */
	--dl-font-head: 'Archivo', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
	--dl-font-body: 'Archivo', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
	--dl-font-mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	--dl-font-serif: 'Instrument Serif', Georgia, 'Times New Roman', serif;
	--dl-fs-xs: .8125rem;  /* 13 */
	--dl-fs-sm: .875rem;   /* 14 */
	--dl-fs-md: 1.0625rem; /* 17 */
	--dl-fs-lg: 1.1875rem; /* 19 */
	--dl-fs-xl: 1.5rem;    /* 24 */
	--dl-fs-2xl: clamp(1.875rem, 1.3rem + 2.2vw, 3rem);
	--dl-fs-3xl: clamp(2.5rem, 1.4rem + 4.6vw, 5.5rem);
	--dl-tracking-head: -0.035em;

	/* shape & space: sharp, printed */
	--dl-r-sm: 2px;
	--dl-r: 2px;
	--dl-r-lg: 2px;
	--dl-r-pill: 2px;
	--dl-s1: 4px; --dl-s2: 8px; --dl-s3: 12px; --dl-s4: 16px; --dl-s5: 24px; --dl-s6: 32px; --dl-s7: 48px; --dl-s8: 96px;
	--dl-container: 1320px;
	--dl-pad: 16px;
	--dl-shadow: 0 1px 0 rgba(0, 0, 0, .04), 0 24px 48px -28px rgba(40, 30, 10, .35);
	--dl-ease-out: cubic-bezier(.2, .8, .2, 1);
	--dl-ease: 200ms var(--dl-ease-out);
}
@media (min-width: 640px) { :root { --dl-pad: 32px; } }
@media (min-width: 1200px) { :root { --dl-pad: 48px; } }

.dl-dark {
	--dl-bg: var(--dl-ink);
	--dl-fg: var(--dl-paper);
	--dl-body: var(--dl-text-dark);
	--dl-border: var(--dl-line-dark);
	--dl-surface: var(--dl-ink-2);
	--dl-focus: var(--dl-mint);
	--dl-link: var(--dl-paper);
	background: var(--dl-bg);
	color: var(--dl-body);
}

/* ---------- Base ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
@supports (overflow-x: clip) { html, body { overflow-x: clip; } }
body {
	margin: 0;
	font-family: var(--dl-font-body);
	font-size: var(--dl-fs-md);
	font-variation-settings: 'wdth' 100;
	line-height: 1.55;
	color: var(--dl-body);
	background: var(--dl-paper);
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
	min-height: 100vh;
	display: flex;
	flex-direction: column;
}
.dl-main { flex: 1 0 auto; }
img, svg { max-width: 100%; height: auto; }
h1, h2, h3, h4, .dl-h1, .dl-h2, .dl-h3, .dl-h4 {
	font-family: var(--dl-font-head);
	font-weight: 760;
	font-variation-settings: 'wdth' 110;
	letter-spacing: var(--dl-tracking-head);
	line-height: 1;
	color: var(--dl-fg);
	margin: 0 0 var(--dl-s4);
}
h1, .dl-h1 { font-size: var(--dl-fs-3xl); line-height: .92; letter-spacing: -0.045em; font-variation-settings: 'wdth' 116; }
h2, .dl-h2 { font-size: var(--dl-fs-2xl); line-height: .96; }
h3, .dl-h3 { font-size: var(--dl-fs-xl); letter-spacing: -0.025em; line-height: 1.1; font-variation-settings: 'wdth' 106; }
h4, .dl-h4 { font-size: var(--dl-fs-lg); letter-spacing: -0.015em; line-height: 1.2; font-variation-settings: 'wdth' 104; }
p { margin: 0 0 var(--dl-s4); }
a { color: var(--dl-link); text-decoration: underline; text-underline-offset: .2em; text-decoration-thickness: 1px; }
a:hover { text-decoration-thickness: 2px; }
.dl-dark a:not(.dl-btn) { color: var(--dl-paper); }
strong, b { font-weight: 650; color: var(--dl-fg); }
small, .dl-small { font-size: var(--dl-fs-sm); }
hr { border: 0; border-top: 1px solid var(--dl-border); margin: var(--dl-s5) 0; }
code, kbd, pre, .dl-mono { font-family: var(--dl-font-mono); }
.dl-mono { font-feature-settings: 'zero' 0; letter-spacing: -0.01em; }
.dl-serif { font-family: var(--dl-font-serif); font-style: italic; font-weight: 400; letter-spacing: -0.01em; font-variation-settings: normal; }
h1 .dl-serif, h2 .dl-serif, .dl-h1 .dl-serif, .dl-h2 .dl-serif { font-size: 1.05em; letter-spacing: -0.02em; color: var(--dl-mint-dark); }
.dl-dark h1 .dl-serif, .dl-dark h2 .dl-serif, .dl-dark .dl-h1 .dl-serif, .dl-dark .dl-h2 .dl-serif { color: var(--dl-mint); }
/* small technical label: mono, uppercase, tracked */
.dl-label-mono, .dl-kicker { font-family: var(--dl-font-mono); font-size: .75rem; font-weight: 500; letter-spacing: .09em; text-transform: uppercase; line-height: 1.4; }
.dl-lead { font-size: var(--dl-fs-lg); line-height: 1.5; color: var(--dl-body); max-width: 40em; }
.dl-kicker { color: var(--dl-muted-light); margin: 0 0 var(--dl-s3); }
.dl-dark .dl-kicker { color: var(--dl-muted-dark); }
.dl-kicker::before { content: ''; display: inline-block; width: 8px; height: 8px; background: var(--dl-mint); margin-right: 10px; vertical-align: 1px; }
.dl-muted { color: var(--dl-body); opacity: 1; }
.dl-note { font-size: var(--dl-fs-sm); color: var(--dl-body); }
::selection { background: var(--dl-mint); color: var(--dl-ink); }

/* focus: always visible for keyboard users */
:focus-visible { outline: 3px solid var(--dl-focus); outline-offset: 2px; border-radius: 1px; }
.dl-dark :focus-visible { outline-color: var(--dl-mint); }

.dl-visually-hidden, .dl-sr-only {
	position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.dl-skip {
	position: absolute; left: var(--dl-s4); top: -100px; z-index: 1000;
	background: var(--dl-mint); color: var(--dl-ink); padding: var(--dl-s2) var(--dl-s4);
	border-radius: var(--dl-r-sm); font-weight: 650; text-decoration: none;
}
.dl-skip:focus { top: var(--dl-s3); }

/* ---------- Layout ---------- */
.dl-container { width: 100%; max-width: var(--dl-container); margin: 0 auto; padding: 0 var(--dl-pad); }
.dl-container--narrow { max-width: 920px; }
.dl-container--wide { max-width: 1600px; }
.dl-section { padding: 64px 0; }
@media (min-width: 960px) { .dl-section { padding: var(--dl-s8) 0; } }
.dl-section--tight { padding: var(--dl-s6) 0; }
.dl-stack > * + * { margin-top: var(--dl-s4); }
.dl-stack--lg > * + * { margin-top: var(--dl-s6); }
.dl-cluster { display: flex; flex-wrap: wrap; gap: var(--dl-s3); align-items: center; }
.dl-grid { display: grid; gap: var(--dl-s5); }
@media (min-width: 640px) { .dl-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 960px) {
	.dl-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.dl-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.dl-grid--main-side { grid-template-columns: minmax(0, 1fr) 400px; align-items: start; gap: var(--dl-s7); }
	.dl-grid--side-main { grid-template-columns: 240px minmax(0, 1fr); align-items: start; }
}
.dl-center { text-align: center; }
/* section head: index + label on the left, meta on the right, rule under it */
.dl-sec-hd { display: flex; justify-content: space-between; align-items: center; gap: var(--dl-s4); padding-bottom: 14px; border-bottom: 1px solid var(--dl-fg); margin-bottom: var(--dl-s7); color: var(--dl-fg); }
.dl-dark .dl-sec-hd { border-bottom-color: rgba(238, 235, 227, .45); }
.dl-sec-hd__ix { display: flex; gap: 18px; }
.dl-sec-hd__ix b { font-weight: 700; }
.dl-sec-hd__meta { color: var(--dl-muted-light); }
.dl-dark .dl-sec-hd__meta { color: var(--dl-muted-dark); }
@media (max-width: 639.98px) { .dl-sec-hd { margin-bottom: var(--dl-s6); } .dl-sec-hd__meta { display: none; } }

/* ---------- Wordmark ---------- */
.dl-wordmark {
	font-family: var(--dl-font-head); font-weight: 800; font-variation-settings: 'wdth' 108; letter-spacing: -0.035em; line-height: 1;
	font-size: 1.3125rem; text-decoration: none; display: inline-flex; align-items: baseline; white-space: nowrap;
	color: var(--dl-ink);
}
.dl-wordmark:hover { text-decoration: none; }
.dl-wordmark__a { color: var(--dl-ink); }
.dl-wordmark__b { color: var(--dl-mint-dark); }        /* "liber" on light: the readable mint */
.dl-wordmark__c { color: var(--dl-muted-light); }
.dl-dark .dl-wordmark__a, .dl-wordmark--dark .dl-wordmark__a { color: var(--dl-paper); }
.dl-dark .dl-wordmark__b, .dl-wordmark--dark .dl-wordmark__b { color: var(--dl-mint); }
.dl-dark .dl-wordmark__c, .dl-wordmark--dark .dl-wordmark__c { color: var(--dl-muted-dark); }
.dl-wordmark--lg { font-size: clamp(2rem, 1.2rem + 3.5vw, 3.5rem); }
.dl-mark { display: inline-block; width: 32px; height: 32px; flex: none; }

/* ---------- Buttons ---------- */
.dl-btn {
	--btn-bg: var(--dl-ink); --btn-fg: var(--dl-paper); --btn-bd: var(--dl-ink);
	position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 10px;
	min-height: 52px; padding: 0 var(--dl-s5);
	font-family: var(--dl-font-body); font-size: var(--dl-fs-md); font-weight: 700; font-variation-settings: 'wdth' 112; letter-spacing: -0.005em; line-height: 1.2;
	color: var(--btn-fg); background: var(--btn-bg); border: 1.5px solid var(--btn-bd); border-radius: var(--dl-r-sm);
	text-decoration: none; cursor: pointer; white-space: nowrap;
	transition: background-color var(--dl-ease), color var(--dl-ease), border-color var(--dl-ease), box-shadow var(--dl-ease), transform var(--dl-ease);
}
.dl-btn:hover { text-decoration: none; box-shadow: 0 0 0 5px rgba(10, 10, 9, .08); }
.dl-btn:active { transform: scale(.985); }
.dl-btn[disabled], .dl-btn[aria-disabled="true"] { opacity: .5; cursor: not-allowed; }
.dl-btn__arr { display: inline-block; transition: transform .3s var(--dl-ease-out); }
.dl-btn:hover .dl-btn__arr { transform: translateX(4px); }
/* primary: ink on light, mint on dark */
.dl-dark .dl-btn, .dl-btn--mint { --btn-bg: var(--dl-mint); --btn-fg: var(--dl-ink); --btn-bd: var(--dl-mint); }
.dl-dark .dl-btn:hover, .dl-btn--mint:hover { --btn-bg: #5BE8AA; --btn-bd: #5BE8AA; box-shadow: 0 0 0 6px rgba(61, 220, 151, .16); }
/* secondary: ink outline (paper outline on dark) */
.dl-btn--secondary { --btn-bg: transparent; --btn-fg: var(--dl-ink); --btn-bd: var(--dl-ink); }
.dl-dark .dl-btn--secondary { --btn-bg: transparent; --btn-fg: var(--dl-paper); --btn-bd: var(--dl-paper); }
.dl-btn--secondary:hover { --btn-bg: var(--dl-ink); --btn-fg: var(--dl-paper); box-shadow: none; }
.dl-dark .dl-btn--secondary:hover { --btn-bg: var(--dl-paper); --btn-fg: var(--dl-ink); --btn-bd: var(--dl-paper); box-shadow: none; }
.dl-btn--ghost { --btn-bg: transparent; --btn-fg: var(--dl-fg); --btn-bd: transparent; text-decoration: underline; }
.dl-btn--ghost:hover { box-shadow: none; }
.dl-dark .dl-btn--ghost { --btn-bg: transparent; --btn-fg: var(--dl-paper); --btn-bd: transparent; }
.dl-btn--sm { min-height: 42px; padding: 0 var(--dl-s4); font-size: var(--dl-fs-sm); }
.dl-btn--lg { min-height: 64px; padding: 0 var(--dl-s6); font-size: var(--dl-fs-lg); }
.dl-btn--block { display: flex; width: 100%; }

/* ---------- Pills (status: always icon + word, never colour alone) ---------- */
.dl-pill {
	display: inline-flex; align-items: center; gap: 7px;
	padding: 4px 10px; border-radius: var(--dl-r-pill); border: 1.5px solid transparent;
	font-family: var(--dl-font-mono); font-size: .75rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; line-height: 1.4; white-space: nowrap;
	color: var(--dl-ink); background: var(--dl-line);
}
.dl-pill__icon { font-size: .8em; line-height: 1; }
.dl-pill--transfer .dl-pill__icon { font-size: 1.2em; font-weight: 700; } /* the arrow is a thin glyph: keep it readable */
.dl-pill--liber, .dl-pill--activ { background: var(--dl-mint); border-color: var(--dl-mint); }
.dl-pill--ocupat { background: var(--dl-ink); border-color: var(--dl-ink); color: var(--dl-paper); }
.dl-dark .dl-pill--ocupat, .dl-card--dark .dl-pill--ocupat { background: var(--dl-paper); border-color: var(--dl-paper); color: var(--dl-ink); }
.dl-pill--expira { background: var(--dl-orange); border-color: var(--dl-orange); }
.dl-pill--transfer { background: transparent; border-color: var(--dl-ink); }
.dl-dark .dl-pill--transfer { border-color: var(--dl-paper); color: var(--dl-paper); }
.dl-pill--neutral { background: transparent; border-color: var(--dl-field); color: var(--dl-ink); }
.dl-dark .dl-pill--neutral { border-color: var(--dl-muted-dark); color: var(--dl-paper); }

/* ---------- Cards ---------- */
.dl-card {
	background: var(--dl-surface); border: 1px solid var(--dl-border); border-radius: var(--dl-r-lg);
	padding: var(--dl-s5); color: var(--dl-body);
}
@media (min-width: 640px) { .dl-card { padding: var(--dl-s6); } }
.dl-card--flat { box-shadow: none; }
.dl-card--raised { box-shadow: var(--dl-shadow); }
.dl-card--dark { --dl-fg: var(--dl-paper); --dl-body: var(--dl-text-dark); --dl-border: var(--dl-line-dark); --dl-focus: var(--dl-mint); --dl-link: var(--dl-paper); background: var(--dl-ink); border-color: var(--dl-ink); color: var(--dl-text-dark); }
.dl-card--dark .dl-btn:not(.dl-btn--secondary):not(.dl-btn--ghost) { --btn-bg: var(--dl-mint); --btn-fg: var(--dl-ink); --btn-bd: var(--dl-mint); }
/* secondary / ghost inside a dark card: paper outline / paper text (same as inside .dl-dark) */
.dl-card--dark .dl-btn--secondary { --btn-bg: transparent; --btn-fg: var(--dl-paper); --btn-bd: var(--dl-paper); }
.dl-card--dark .dl-btn--secondary:hover { --btn-bg: var(--dl-paper); --btn-fg: var(--dl-ink); --btn-bd: var(--dl-paper); }
.dl-card--dark .dl-btn--ghost { --btn-bg: transparent; --btn-fg: var(--dl-paper); --btn-bd: transparent; }
.dl-card--dark .dl-pill--transfer { border-color: var(--dl-paper); color: var(--dl-paper); }
.dl-card--dark .dl-pill--neutral { border-color: var(--dl-muted-dark); color: var(--dl-paper); }
.dl-card--compact { padding: var(--dl-s4); }
.dl-card__title { font-family: var(--dl-font-head); font-size: var(--dl-fs-lg); font-weight: 760; font-variation-settings: 'wdth' 108; letter-spacing: -0.025em; color: var(--dl-fg); margin: 0 0 var(--dl-s3); }
.dl-card > :last-child { margin-bottom: 0; }

/* ---------- Forms ---------- */
.dl-field { margin: 0 0 var(--dl-s4); }
.dl-label { display: block; margin: 0 0 6px; font-weight: 650; font-size: var(--dl-fs-sm); color: var(--dl-fg); }
.dl-label__opt { font-weight: 400; color: var(--dl-body); }
.dl-input, .dl-select, .dl-textarea {
	display: block; width: 100%; min-height: 52px; padding: 10px 14px;
	font: inherit; font-size: 16px; /* 16px: no iOS zoom on focus */
	color: var(--dl-ink); background: #FFFDF8;
	border: 1.5px solid var(--dl-field); border-radius: var(--dl-r-sm);
	transition: border-color var(--dl-ease), box-shadow var(--dl-ease);
}
.dl-textarea { min-height: 140px; resize: vertical; }
.dl-select { appearance: none; padding-right: 40px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%230A0A09' stroke-width='2'/%3E%3C/svg%3E");
	background-repeat: no-repeat; background-position: right 14px center; }
.dl-input:hover, .dl-select:hover, .dl-textarea:hover { border-color: var(--dl-ink); }
.dl-input:focus-visible, .dl-select:focus-visible, .dl-textarea:focus-visible { outline: none; border-color: var(--dl-ink); box-shadow: 0 0 0 4px rgba(61, 220, 151, .55); }
.dl-input--mono { font-family: var(--dl-font-mono); }
.dl-input[aria-invalid="true"], .dl-input--invalid, .dl-select[aria-invalid="true"], .dl-textarea[aria-invalid="true"] { border-color: var(--dl-danger); }
.dl-help { margin: 6px 0 0; font-size: var(--dl-fs-sm); color: var(--dl-body); }
.dl-error { margin: 6px 0 0; font-size: var(--dl-fs-sm); font-weight: 650; color: var(--dl-danger); }
.dl-error::before { content: '! '; }
.dl-check, .dl-radio { display: flex; gap: var(--dl-s3); align-items: flex-start; margin: 0 0 var(--dl-s3); cursor: pointer; color: var(--dl-body); }
.dl-check input, .dl-radio input { flex: none; width: 20px; height: 20px; margin: 2px 0 0; accent-color: var(--dl-ink); }
.dl-choice { display: flex; flex-wrap: wrap; gap: 10px; }
.dl-choice__opt { position: relative; flex: 1 1 200px; }
.dl-choice__opt input { position: absolute; opacity: 0; inset: 0; }
.dl-choice__opt span { display: block; padding: 14px 16px; border: 1.5px solid var(--dl-field); border-radius: var(--dl-r-sm); background: #FFFDF8; font-weight: 650; color: var(--dl-ink); cursor: pointer; transition: border-color var(--dl-ease), box-shadow var(--dl-ease); }
.dl-choice__opt input:checked + span { border-color: var(--dl-ink); box-shadow: inset 6px 0 0 var(--dl-mint); background: #fff; }
.dl-choice__opt input:checked + span::before { content: '✓ '; }
.dl-choice__opt input:focus-visible + span { outline: 3px solid var(--dl-focus); outline-offset: 2px; }
.dl-fieldset { border: 0; margin: 0 0 var(--dl-s5); padding: 0; min-width: 0; }
.dl-fieldset legend { padding: 0; margin: 0 0 var(--dl-s3); font-family: var(--dl-font-head); font-weight: 760; font-variation-settings: 'wdth' 106; letter-spacing: -0.02em; font-size: var(--dl-fs-lg); color: var(--dl-fg); }
.dl-form-grid { display: grid; gap: 0 var(--dl-s4); }
@media (min-width: 640px) { .dl-form-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } .dl-form-grid .dl-field--full { grid-column: 1 / -1; } }

/* ---------- Search field (paper box, mono input, mint button) ---------- */
.dl-search { display: flex; flex-direction: column; gap: var(--dl-s3); width: 100%; }
.dl-search__box { position: relative; display: flex; align-items: stretch; background: var(--dl-paper); border-radius: var(--dl-r-sm); border: 1.5px solid var(--dl-ink); transition: box-shadow .3s; }
.dl-dark .dl-search__box { border-color: var(--dl-paper); }
.dl-search__box:focus-within { box-shadow: 0 0 0 4px rgba(61, 220, 151, .5); }
.dl-search__pre { display: none; align-items: center; padding-left: 20px; color: var(--dl-muted-light); font-family: var(--dl-font-mono); font-size: 1.125rem; }
.dl-search__input {
	flex: 1; min-width: 0; min-height: 60px; border: 0; background: transparent; color: var(--dl-ink);
	font-family: var(--dl-font-mono); font-size: 1.125rem; font-weight: 500; letter-spacing: -0.01em; padding: 0 var(--dl-s3) 0 var(--dl-s4);
}
.dl-search__input::placeholder { color: #8F8A7E; opacity: 1; }
.dl-search__input:focus { outline: none; }
.dl-search__btn { --btn-bg: var(--dl-mint); --btn-fg: var(--dl-ink); --btn-bd: var(--dl-mint); min-height: 0; margin: 6px; padding: 0 var(--dl-s4); font-size: var(--dl-fs-md); }
.dl-search__hint { font-size: var(--dl-fs-sm); color: var(--dl-body); margin: 0; }
@media (min-width: 640px) {
	.dl-search__pre { display: flex; }
	.dl-search__input { font-size: 1.375rem; min-height: 72px; padding-left: 2px; }
	.dl-search__btn { margin: 8px; padding: 0 var(--dl-s5); font-size: var(--dl-fs-lg); }
}

/* TLD price chips (".ro 58,69 lei") */
.dl-chips { display: flex; flex-wrap: wrap; gap: var(--dl-s2); list-style: none; padding: 0; margin: 0; }
.dl-chip {
	display: inline-flex; align-items: baseline; gap: 8px; padding: 6px 12px; border-radius: var(--dl-r-pill);
	border: 1px solid var(--dl-border); background: transparent; color: var(--dl-fg);
	font-family: var(--dl-font-mono); font-size: var(--dl-fs-sm); text-decoration: none; white-space: nowrap;
}
.dl-chip__ext { font-weight: 700; }
.dl-chip__price { color: var(--dl-body); }
a.dl-chip:hover { border-color: var(--dl-fg); text-decoration: none; }

/* ---------- Extension badge (<x-dl.tld-badge>): extension in its associated colours + stripe ---------- */
.dl-tld { position: relative; display: inline-flex; align-items: center; justify-content: center; min-width: 64px; height: 38px; padding: 0 12px 4px; overflow: hidden;
	background: var(--tld-bg); color: var(--tld-fg); border-radius: 2px; font-family: var(--dl-font-head); font-weight: 800; font-variation-settings: 'wdth' 112; font-size: 1rem; letter-spacing: -0.01em; line-height: 1; white-space: nowrap; vertical-align: middle;
	box-shadow: 0 1px 0 rgba(0, 0, 0, .06), 0 6px 14px -8px rgba(10, 10, 9, .45); }
.dl-tld::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 5px; background: var(--tld-stripe); }
.dl-tld--sm { min-width: 54px; height: 30px; padding: 0 9px 3px; font-size: .875rem; }
.dl-tld--sm::after { height: 4px; }
.dl-tld--lg { min-width: 96px; height: 60px; padding: 0 16px 6px; font-size: 1.75rem; font-variation-settings: 'wdth' 118; letter-spacing: -0.03em; }
.dl-tld--lg::after { height: 7px; }
.dl-tld--long.dl-tld--lg { font-size: 1.375rem; }
.dl-tld--long.dl-tld--sm { font-size: .8125rem; font-variation-settings: 'wdth' 96; }

/* ---------- Price ---------- */
.dl-price { font-family: var(--dl-font-body); color: var(--dl-fg); white-space: nowrap; font-variant-numeric: tabular-nums; }
.dl-price__amount { font-weight: 650; font-variation-settings: 'wdth' 84; letter-spacing: -0.02em; }
.dl-price__per, .dl-price__note { font-family: var(--dl-font-body); font-size: var(--dl-fs-sm); color: var(--dl-body); white-space: normal; font-variation-settings: 'wdth' 100; letter-spacing: 0; }
.dl-price--lg .dl-price__amount { font-size: var(--dl-fs-xl); }
.dl-price--xl .dl-price__amount { font-size: var(--dl-fs-2xl); font-variation-settings: 'wdth' 76; letter-spacing: -0.04em; }
.dl-price--mint .dl-price__amount { color: var(--dl-mint); } /* dark backgrounds only (order summary total) */
/* big condensed numerals for prices */
.dl-num { font-weight: 640; font-variation-settings: 'wdth' 78; letter-spacing: -0.04em; font-variant-numeric: tabular-nums; line-height: .92; }

/* ---------- Tables ---------- */
.dl-table-wrap { overflow-x: auto; border-top: 1.5px solid var(--dl-fg); background: transparent; }
.dl-table { width: 100%; border-collapse: collapse; font-size: var(--dl-fs-md); font-variant-numeric: tabular-nums; }
.dl-table caption { text-align: left; padding: var(--dl-s4) 0 0; font-weight: 650; color: var(--dl-fg); }
.dl-table th, .dl-table td { text-align: left; padding: 14px var(--dl-s4); border-bottom: 1px solid var(--dl-border); vertical-align: middle; }
.dl-table th:first-child, .dl-table td:first-child { padding-left: 0; }
.dl-table th:last-child, .dl-table td:last-child { padding-right: 0; }
.dl-table thead th { font-family: var(--dl-font-mono); font-size: .75rem; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; color: var(--dl-muted-light); background: transparent; white-space: nowrap; }
.dl-dark .dl-table thead th { color: var(--dl-muted-dark); }
.dl-table tbody tr:last-child td, .dl-table tbody tr:last-child th { border-bottom: 0; }
.dl-table .dl-num, .dl-table td.dl-num, .dl-table th.dl-num { text-align: right; font-family: var(--dl-font-body); font-weight: 600; font-variation-settings: 'wdth' 84; letter-spacing: -0.015em; white-space: nowrap; line-height: 1.3; }
.dl-table thead th.dl-num { font-family: var(--dl-font-mono); font-weight: 500; font-variation-settings: normal; letter-spacing: .08em; }
.dl-table .dl-row--hl > * { background: var(--dl-mint-tint); }
.dl-table .dl-row--hl > :first-child { box-shadow: inset 4px 0 0 var(--dl-mint); padding-left: var(--dl-s4); }
/* stacked rows on phones: add .dl-table--stack and data-label on every td */
@media (max-width: 639.98px) {
	.dl-table--stack thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
	.dl-table--stack tr { display: block; padding: var(--dl-s3) 0; border-bottom: 1px solid var(--dl-border); }
	.dl-table--stack td, .dl-table--stack th { display: flex; justify-content: space-between; gap: var(--dl-s3); padding: 6px 0 !important; border: 0; text-align: right; }
	.dl-table--stack td::before, .dl-table--stack th::before { content: attr(data-label); font-weight: 650; color: var(--dl-fg); text-align: left; }
	.dl-table--stack td[data-label=""]::before { content: none; }
	.dl-table--stack .dl-row--hl { box-shadow: inset 4px 0 0 var(--dl-mint); background: var(--dl-mint-tint); padding-left: var(--dl-s3); }
	.dl-table--stack .dl-row--hl > * { background: transparent; box-shadow: none !important; }
}

/* Domain result rows (ledger): domain | pill | price | button */
.dl-results { list-style: none; margin: 0; padding: 0; border-top: 1.5px solid var(--dl-fg); }
.dl-result { display: grid; grid-template-columns: 1fr auto; gap: var(--dl-s2) var(--dl-s4); align-items: center; padding: var(--dl-s4) 0; border-bottom: 1px solid var(--dl-line); transition: background var(--dl-ease); }
.dl-result:hover { background: rgba(10, 10, 9, .025); }
.dl-result--hl { background: var(--dl-mint-tint); box-shadow: inset 5px 0 0 var(--dl-mint); padding-left: var(--dl-s4); padding-right: var(--dl-s4); }
.dl-result__domain { font-family: var(--dl-font-body); font-size: 1.1875rem; font-weight: 700; font-variation-settings: 'wdth' 96; letter-spacing: -0.025em; color: var(--dl-ink); overflow-wrap: anywhere; word-break: normal; }
.dl-result.is-taken .dl-result__domain { text-decoration: line-through; text-decoration-thickness: 2px; color: var(--dl-muted-light); }
.dl-result__price { grid-column: 1 / -1; font-size: var(--dl-fs-sm); }
.dl-result__price .dl-price__amount { font-size: 1.375rem; }
.dl-result__action { grid-column: 1 / -1; }
.dl-result__action .dl-btn { width: 100%; }
@media (min-width: 960px) {
	.dl-result { grid-template-columns: minmax(0, 1.4fr) 130px minmax(0, 1.3fr) 170px; }
	.dl-result__price, .dl-result__action { grid-column: auto; }
	.dl-result__action { text-align: right; }
	.dl-result__action .dl-btn { width: auto; min-width: 150px; }
}

/* ---------- Stepper (checkout) ---------- */
.dl-stepper { display: flex; gap: 0; list-style: none; margin: 0 0 var(--dl-s6); padding: 0; counter-reset: dlstep; border-top: 1.5px solid var(--dl-fg); }
.dl-stepper__item { flex: 1; display: flex; align-items: center; gap: var(--dl-s2); padding: 12px 0 0; font-family: var(--dl-font-mono); font-size: .75rem; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; color: var(--dl-muted-light); min-width: 0; }
.dl-stepper__num { flex: none; display: inline-grid; place-items: center; width: 28px; height: 28px; border-radius: 1px; border: 1.5px solid var(--dl-field); font-family: var(--dl-font-mono); font-weight: 700; color: var(--dl-ink); background: transparent; }
.dl-stepper__label { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dl-stepper__item.is-current { color: var(--dl-ink); font-weight: 700; }
.dl-stepper__item.is-current .dl-stepper__num { background: var(--dl-ink); border-color: var(--dl-ink); color: var(--dl-paper); }
.dl-stepper__item.is-done .dl-stepper__num { background: var(--dl-mint); border-color: var(--dl-mint); }
@media (max-width: 639.98px) { .dl-stepper__item:not(.is-current) .dl-stepper__label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); } }

/* ---------- Alerts ---------- */
.dl-alert { display: flex; gap: var(--dl-s3); padding: var(--dl-s4); border-radius: var(--dl-r); border: 1.5px solid var(--dl-ink); border-left-width: 6px; background: var(--dl-card); color: var(--dl-ink); margin: 0 0 var(--dl-s4); }
.dl-alert > :last-child { margin-bottom: 0; }
.dl-alert__icon { flex: none; font-weight: 800; }
.dl-alert--ok { border-color: var(--dl-mint-dark); background: var(--dl-mint-tint); }
.dl-alert--error { border-color: var(--dl-danger); background: #FBEFEC; }
.dl-alert--warn { border-color: var(--dl-orange); background: #FCF0E4; }
.dl-alert ul { margin: 0; padding-left: 1.2em; }

/* ---------- Order summary (black receipt) ---------- */
.dl-summary__row { display: flex; justify-content: space-between; gap: var(--dl-s3); padding: 12px 0; border-bottom: 1px solid var(--dl-line-dark); }
.dl-summary__row:last-of-type { border-bottom: 0; }
.dl-summary__total { display: flex; justify-content: space-between; align-items: baseline; gap: var(--dl-s3); padding-top: var(--dl-s4); margin-top: var(--dl-s2); border-top: 1.5px solid rgba(238, 235, 227, .5); color: var(--dl-paper); font-weight: 650; }

/* ---------- Tiles (account side tiles: Nameservere, Cod EPP...) ---------- */
.dl-tile { display: flex; flex-direction: column; gap: var(--dl-s2); padding: var(--dl-s4); border: 1px solid var(--dl-line); border-radius: var(--dl-r); background: var(--dl-card); text-decoration: none; color: var(--dl-ink); transition: border-color var(--dl-ease), box-shadow var(--dl-ease); }
.dl-tile:hover { border-color: var(--dl-ink); text-decoration: none; box-shadow: inset 4px 0 0 var(--dl-mint); }
.dl-tile__title { font-family: var(--dl-font-head); font-weight: 760; font-variation-settings: 'wdth' 106; letter-spacing: -0.02em; }
.dl-tile__text { font-size: var(--dl-fs-sm); color: var(--dl-text); }

/* ---------- Header ---------- */
.dl-header { background: var(--dl-ink); color: var(--dl-paper); border-bottom: 1px solid var(--dl-line-dark); position: sticky; top: 0; z-index: 50; }
.dl-header--light { background: var(--dl-paper); color: var(--dl-ink); border-bottom-color: var(--dl-line); }
/* home: floats over the hero, turns solid once the page scrolls (dl.js sets .is-solid) */
.dl-header--over { position: fixed; left: 0; right: 0; background: transparent; border-bottom-color: transparent; transition: background .3s, border-color .3s; }
.dl-header--over.is-solid, .dl-header--over.is-open { background: rgba(10, 10, 9, .88); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); border-bottom-color: var(--dl-line-dark); }
.dl-header__bar { display: flex; align-items: center; justify-content: space-between; gap: var(--dl-s4); min-height: 64px; max-width: 1600px; }
.dl-header__meta { display: none; gap: 22px; align-items: center; color: var(--dl-muted-dark); font-family: var(--dl-font-mono); font-size: .71875rem; letter-spacing: .09em; text-transform: uppercase; }
.dl-header__meta time { color: var(--dl-paper); font-variant-numeric: tabular-nums; }
.dl-header--light .dl-header__meta time { color: var(--dl-ink); }
.dl-dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--dl-mint); vertical-align: 1px; margin-right: 8px; animation: dl-pulse 2.2s infinite; }
@keyframes dl-pulse { 0% { box-shadow: 0 0 0 0 rgba(61, 220, 151, .55); } 70% { box-shadow: 0 0 0 9px rgba(61, 220, 151, 0); } 100% { box-shadow: 0 0 0 0 rgba(61, 220, 151, 0); } }
@media (min-width: 1200px) { .dl-header__meta { display: flex; } }
.dl-nav { display: none; }
.dl-nav__list { list-style: none; display: flex; align-items: center; gap: 2px; margin: 0; padding: 0; }
.dl-nav__link { display: inline-flex; align-items: center; min-height: 44px; padding: 0 12px; border-radius: var(--dl-r-sm); font-weight: 550; font-size: .9375rem; text-decoration: none; color: inherit; opacity: .86; transition: opacity var(--dl-ease); }
.dl-nav__link:hover { opacity: 1; text-decoration: none; }
.dl-nav__link[aria-current="page"] { opacity: 1; text-decoration: underline; text-decoration-color: var(--dl-mint); text-decoration-thickness: 2px; text-underline-offset: .45em; }
.dl-nav__account { display: inline-flex; align-items: center; gap: var(--dl-s2); }
.dl-nav__avatar { display: inline-grid; place-items: center; width: 26px; height: 26px; border-radius: 1px; background: var(--dl-mint); color: var(--dl-ink); font-family: var(--dl-font-mono); font-size: var(--dl-fs-xs); font-weight: 700; }
.dl-nav__cta { margin-left: 10px; }
.dl-nav__cta .dl-btn { min-height: 40px; padding: 0 16px; font-size: .9375rem; }
.dl-menu-btn {
	display: inline-flex; align-items: center; gap: var(--dl-s2); min-height: 44px; padding: 0 var(--dl-s3);
	background: transparent; color: inherit; border: 1px solid currentColor; border-radius: var(--dl-r-sm); font: inherit; font-weight: 650; cursor: pointer;
}
.dl-menu-btn__bars { width: 18px; height: 10px; position: relative; display: inline-block; border-top: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; }
.dl-header.is-open .dl-nav {
	display: block; position: absolute; left: 0; right: 0; top: 100%; z-index: 900;
	background: var(--dl-bg); /* ink in the dark header (.dl-dark), paper in .dl-header--light */
	border-top: 1px solid var(--dl-border); border-bottom: 1px solid var(--dl-border); box-shadow: 0 12px 24px rgba(0, 0, 0, .35);
	padding: var(--dl-s2) var(--dl-pad) var(--dl-s4);
}
.dl-header.is-open .dl-nav__link { width: 100%; font-size: 1.125rem; }
.dl-header.is-open .dl-nav__list { flex-direction: column; align-items: stretch; }
.dl-header.is-open .dl-nav__cta { margin: var(--dl-s3) 0 0; }
.dl-header.is-open .dl-nav__cta .dl-btn { width: 100%; min-height: 52px; }
@media (min-width: 960px) {
	.dl-menu-btn { display: none; }
	.dl-nav, .dl-header.is-open .dl-nav { display: block; position: static; padding: 0; border: 0; box-shadow: none; background: transparent; }
	.dl-header.is-open .dl-nav__link { width: auto; font-size: .9375rem; }
	.dl-header.is-open .dl-nav__list { flex-direction: row; align-items: center; }
	.dl-header.is-open .dl-nav__cta { margin: 0 0 0 10px; }
	.dl-header.is-open .dl-nav__cta .dl-btn { width: auto; min-height: 40px; }
}

/* ---------- Cart button (header) + drawer ---------- */
.dl-header__meta { order: 1; }
.dl-nav { order: 2; }
.dl-cartbtn { order: 3; display: inline-flex; align-items: center; gap: 10px; min-height: 40px; padding: 0 6px 0 14px; border: 1px solid var(--dl-line-dark); border-radius: 2px; font-weight: 650; font-size: .875rem; text-decoration: none; color: inherit; white-space: nowrap; transition: border-color var(--dl-ease); }
.dl-header--light .dl-cartbtn { border-color: var(--dl-line); }
.dl-cartbtn:hover { border-color: currentColor; text-decoration: none; }
.dl-cartbtn__n { min-width: 26px; height: 26px; display: inline-grid; place-items: center; background: var(--dl-paper); color: var(--dl-ink); font-family: var(--dl-font-mono); font-size: .75rem; font-weight: 700; border-radius: 1px; transition: background .3s; }
.dl-header--light .dl-cartbtn__n { background: var(--dl-ink); color: var(--dl-paper); }
.dl-cartbtn.has .dl-cartbtn__n { background: var(--dl-mint); color: var(--dl-ink); }
.dl-cartbtn.bump .dl-cartbtn__n { animation: dl-bump .5s var(--dl-ease-out); }
@keyframes dl-bump { 0% { transform: scale(1); } 30% { transform: scale(1.45); } 100% { transform: scale(1); } }
.dl-menu-btn { order: 4; }
@media (min-width: 960px) { .dl-cartbtn { margin-left: 4px; } }
@media (max-width: 959.98px) { .dl-header__bar > .dl-wordmark { margin-right: auto; } .dl-header__bar { gap: 10px; } }

.dl-scrim { position: fixed; inset: 0; z-index: 980; background: rgba(10, 10, 9, .55); -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px); opacity: 0; transition: opacity .35s; }
.dl-scrim.is-on { opacity: 1; }
.dl-drawer { position: fixed; top: 0; right: 0; bottom: 0; z-index: 990; width: min(480px, 100vw); display: flex; flex-direction: column; border-left: 1px solid var(--dl-line-dark); transform: translateX(102%); transition: transform .5s var(--dl-ease-out); }
.dl-drawer.is-on { transform: none; }
.dl-drawer__h { display: flex; justify-content: space-between; align-items: center; padding: 20px 24px; border-bottom: 1px solid var(--dl-line-dark); }
.dl-drawer__title { margin: 0; font-size: 1.75rem; font-weight: 780; font-variation-settings: 'wdth' 116; letter-spacing: -0.035em; }
.dl-drawer__x { width: 42px; height: 42px; display: grid; place-items: center; background: transparent; color: var(--dl-paper); border: 1px solid var(--dl-line-dark); border-radius: 2px; font-size: 1.375rem; cursor: pointer; }
.dl-drawer__x:hover { border-color: var(--dl-paper); }
.dl-drawer__list { flex: 1; overflow: auto; padding: 18px 24px; display: flex; flex-direction: column; gap: 12px; overscroll-behavior: contain; }
.dl-ditem { position: relative; background: var(--dl-card); color: var(--dl-ink); padding: 16px 18px 14px; overflow: hidden; }
.dl-ditem::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 6px; background: var(--dl-mint); }
.dl-ditem--transfer::before { background: var(--dl-ink); }
.dl-ditem.is-new { animation: dl-slidein .5s var(--dl-ease-out); }
@keyframes dl-slidein { from { opacity: 0; transform: translateX(30px); } }
.dl-ditem__top { display: flex; justify-content: space-between; gap: 12px; font-family: var(--dl-font-mono); font-size: .65625rem; letter-spacing: .08em; text-transform: uppercase; color: var(--dl-muted-light); }
.dl-ditem__nm { margin: 6px 0 8px; font-weight: 800; font-size: 1.5rem; letter-spacing: -0.035em; font-variation-settings: 'wdth' 96; line-height: 1.05; overflow-wrap: anywhere; }
.dl-ditem__nm span { background: linear-gradient(transparent 58%, var(--dl-mint) 58%, var(--dl-mint) 92%, transparent 92%); }
.dl-ditem__bt { display: flex; justify-content: space-between; align-items: flex-end; gap: 12px; }
.dl-ditem__bt .dl-num { font-size: 2rem; }
.dl-ditem__bt .dl-num small { font-size: .8125rem; margin-left: 4px; letter-spacing: 0; font-weight: 600; font-variation-settings: 'wdth' 100; }
.dl-ditem__rn { display: block; font-family: var(--dl-font-mono); font-size: .65625rem; letter-spacing: .04em; text-transform: uppercase; color: var(--dl-muted-light); margin-bottom: 6px; text-align: right; }
.dl-ditem__rm { background: none; border: 0; padding: 0; font: inherit; font-family: var(--dl-font-mono); font-size: .6875rem; letter-spacing: .06em; text-transform: uppercase; color: var(--dl-muted-light); border-bottom: 1px solid currentColor; cursor: pointer; float: right; }
.dl-ditem__rm:hover { color: var(--dl-danger); }
.dl-dsug { border: 1px dashed rgba(61, 220, 151, .55); padding: 14px 16px; display: flex; flex-direction: column; gap: 10px; color: var(--dl-text-dark); font-size: .9rem; }
.dl-dsug b { color: var(--dl-mint); }
.dl-dsug .dl-btn { align-self: flex-start; white-space: normal; }
/* "Protejează-ți numele și pe [.eu ▾] …" (drawer + checkout); the extension button opens the picker */
.dl-sug { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 14px 16px; border: 1.5px dashed var(--dl-mint-dark); border-radius: 2px; background: var(--dl-mint-tint); color: var(--dl-ink); }
.dl-sug--dark { border-color: rgba(61, 220, 151, .55); background: transparent; color: var(--dl-text-dark); }
.dl-sug__t { margin: 0; font-size: .97rem; line-height: 1.45; }
.dl-sug__ext { display: inline-flex; align-items: baseline; gap: 2px; margin: 0 2px; padding: 1px 8px; font: inherit; font-weight: 800; font-variation-settings: 'wdth' 110; letter-spacing: -0.01em; color: var(--dl-ink); background: var(--dl-mint); border: 0; border-radius: 2px; cursor: pointer; transition: box-shadow var(--dl-ease); }
.dl-sug__ext:hover, .dl-sug__ext[aria-expanded="true"] { box-shadow: 0 0 0 3px rgba(61, 220, 151, .35); }
.dl-sug__ext span { font-size: .75em; }
.dl-sug__pick { width: 100%; }
.dl-sug__pick .dl-select { min-height: 46px; }
.dl-sug .dl-btn { white-space: normal; text-align: left; }
.dl-dempty { color: var(--dl-muted-dark); padding: 40px 0; text-align: center; }
.dl-dempty .dl-num { font-size: 5.5rem; color: rgba(238, 235, 227, .15); display: block; }
.dl-drawer__f { padding: 18px 24px 22px; border-top: 1px solid var(--dl-line-dark); }
.dl-drawer__tot { display: flex; justify-content: space-between; align-items: flex-end; gap: 12px; }
.dl-drawer__lbl, .dl-drawer__note { font-family: var(--dl-font-mono); font-size: .6875rem; letter-spacing: .08em; text-transform: uppercase; color: var(--dl-muted-dark); }
.dl-drawer__sum { font-size: 3.75rem; color: var(--dl-paper); }
.dl-drawer__sum small { font-size: 1.125rem; margin-left: 6px; letter-spacing: 0; font-weight: 600; font-variation-settings: 'wdth' 100; }
.dl-drawer__note { margin: 4px 0 14px; text-transform: none; letter-spacing: .02em; }
html.dl-noscroll { overflow: hidden; }
.dl-drawer[hidden], .dl-scrim[hidden] { display: none; }

/* ---------- Footer ---------- */
.dl-footer { flex-shrink: 0; background: var(--dl-ink); color: var(--dl-text-dark); padding: 72px 0 28px; font-size: var(--dl-fs-sm); overflow: hidden; border-top: 1px solid var(--dl-line-dark); }
.dl-footer > .dl-container { max-width: 1600px; }
.dl-footer a { color: var(--dl-text-dark); text-decoration: none; }
.dl-footer a:hover { color: var(--dl-paper); text-decoration: underline; }
.dl-footer__grid { display: grid; gap: var(--dl-s6); }
@media (min-width: 640px) { .dl-footer__grid { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1200px) { .dl-footer__grid { grid-template-columns: 1.3fr 1fr 1.2fr 1fr; gap: 40px; } }
.dl-footer__title { font-family: var(--dl-font-mono); font-weight: 500; font-size: .6875rem; letter-spacing: .1em; text-transform: uppercase; color: var(--dl-muted-dark); margin: 0 0 var(--dl-s4); }
.dl-footer__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; }
.dl-footer__company p { margin: 0 0 4px; }
.dl-footer__company strong { color: var(--dl-paper); }
.dl-footer__badges { display: flex; flex-wrap: wrap; align-items: center; gap: var(--dl-s3); margin-top: var(--dl-s4); }
.dl-footer__sal { display: inline-flex; align-items: center; justify-content: center; background: #fff; border-radius: 2px; padding: 4px 8px; }
.dl-footer__sal img { display: block; width: 181px; height: 45px; }
.dl-footer__pay { display: inline-flex; align-items: center; gap: var(--dl-s2); background: #fff; border-radius: 2px; padding: 4px 10px; }
.dl-footer__pay img { display: block; height: 30px; width: auto; }
.dl-footer__netopia img { display: block; height: 35px; width: auto; }
/* the full-width wordmark (sized to the container by dl.js; CSS gives a close first guess) */
.dl-footer__wm { display: block; font-family: var(--dl-font-head); font-weight: 840; font-variation-settings: 'wdth' 125; letter-spacing: -0.055em; line-height: .78; white-space: nowrap; margin: 72px 0 22px -.04em; font-size: 14.6vw; color: var(--dl-paper); user-select: none; }
.dl-footer__wm b { color: var(--dl-mint); font-weight: 840; }
.dl-footer__wm i { font-style: normal; color: transparent; -webkit-text-stroke: 1.5px rgba(238, 235, 227, .5); }
@media (min-width: 1600px) { .dl-footer__wm { font-size: 228px; } }
.dl-footer__bottom { padding-top: var(--dl-s4); border-top: 1px solid var(--dl-line-dark); display: flex; flex-wrap: wrap; gap: var(--dl-s3); justify-content: space-between; color: var(--dl-muted-dark); font-family: var(--dl-font-mono); font-size: .6875rem; letter-spacing: .08em; text-transform: uppercase; }

/* ---------- Account shell ---------- */
.dl-acc { padding: var(--dl-s6) 0 var(--dl-s8); }
.dl-acc__head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: var(--dl-s3); margin-bottom: var(--dl-s5); padding-bottom: var(--dl-s4); border-bottom: 1.5px solid var(--dl-ink); }
.dl-acc__head h1 { font-size: var(--dl-fs-2xl); margin: 0; }
.dl-acc-nav { margin: 0 0 var(--dl-s5); }
.dl-acc-nav__list { list-style: none; margin: 0; padding: 0; display: flex; gap: var(--dl-s2); overflow-x: auto; scrollbar-width: thin; }
.dl-acc-nav__link { display: flex; align-items: center; gap: var(--dl-s2); min-height: 44px; padding: 0 var(--dl-s4); border-radius: var(--dl-r-pill); border: 1px solid var(--dl-line); background: var(--dl-card); color: var(--dl-ink); font-weight: 650; text-decoration: none; white-space: nowrap; transition: border-color var(--dl-ease); }
.dl-acc-nav__link:hover { border-color: var(--dl-ink); text-decoration: none; }
.dl-acc-nav__link[aria-current="page"] { background: var(--dl-ink); border-color: var(--dl-ink); color: var(--dl-paper); box-shadow: inset 4px 0 0 var(--dl-mint); }
.dl-acc-nav__count { display: inline-grid; place-items: center; min-width: 22px; height: 22px; padding: 0 6px; border-radius: 1px; background: var(--dl-orange); color: var(--dl-ink); font-family: var(--dl-font-mono); font-size: var(--dl-fs-xs); font-weight: 700; }
.dl-acc-nav__out { margin-top: var(--dl-s4); }
/* acc_actions is printed twice by layouts/account: in the head (>=960px) and after the tab nav (phones) */
.dl-acc__actions--wide { display: none; }
.dl-acc__actions--narrow { margin: 0 0 var(--dl-s5); }
@media (min-width: 960px) {
	.dl-acc__actions--wide { display: flex; }
	.dl-acc__actions--narrow { display: none; }
	.dl-acc__grid { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: var(--dl-s6); align-items: start; }
	.dl-acc-nav { position: sticky; top: 88px; }
	.dl-acc-nav__list { flex-direction: column; overflow: visible; }
}

/* ---------- Page band (dark title band of inner pages) ---------- */
.dl-band { position: relative; overflow: hidden; padding: 72px 0 56px; }
@media (min-width: 960px) { .dl-band { padding: 112px 0 72px; } }
.dl-band__bg { position: absolute; inset: 0; pointer-events: none; z-index: 0; }
.dl-band__bg svg { position: absolute; right: -12vw; top: -40%; width: min(80vw, 1100px); height: auto; opacity: .7; }
.dl-band > .dl-container { position: relative; z-index: 1; }
.dl-band h1 { max-width: 14em; margin-bottom: var(--dl-s5); }
.dl-band .dl-lead { color: rgba(238, 235, 227, .72); }

/* ---------- Misc ---------- */
/* demo-only strip above the header: in the page flow, so it never covers content */
.dl-badge-demo { display: block; position: relative; z-index: 60; background: var(--dl-orange); color: var(--dl-ink); font-weight: 700; font-size: var(--dl-fs-xs); line-height: 1.2; padding: 3px var(--dl-s4); text-align: center; text-decoration: none; }
.dl-badge-demo:hover { text-decoration: underline; }
.dl-badge-demo ~ .dl-header--over:not(.is-solid) { top: 21px; }
/* cookie notice (fixed/sticky bar): dl.js sets --dl-cookie-h so focused fields scroll clear of it */
html { scroll-padding-bottom: var(--dl-cookie-h, 0px); scroll-padding-top: 80px; }
.dl-empty { text-align: center; padding: var(--dl-s6) var(--dl-s4); color: var(--dl-body); }
.dl-divider { height: 1px; background: var(--dl-border); border: 0; margin: var(--dl-s5) 0; }
.dl-hero { padding: var(--dl-s7) 0; }
@media (min-width: 960px) { .dl-hero { padding: 112px 0 var(--dl-s8); } }
.dl-mt-0 { margin-top: 0 !important; } .dl-mb-0 { margin-bottom: 0 !important; }
.dl-mt-2 { margin-top: var(--dl-s2); } .dl-mt-4 { margin-top: var(--dl-s4); } .dl-mt-6 { margin-top: var(--dl-s6); }
.dl-mb-2 { margin-bottom: var(--dl-s2); } .dl-mb-4 { margin-bottom: var(--dl-s4); } .dl-mb-6 { margin-bottom: var(--dl-s6); }
/* reveal on scroll (dl.js adds .is-in; without JS / reduced motion everything is visible) */
.dl-js .dl-rv { opacity: 0; transform: translateY(24px); transition: opacity .9s var(--dl-ease-out), transform .9s var(--dl-ease-out); }
.dl-js .dl-rv.is-in { opacity: 1; transform: none; }

/* ---------- Motion ---------- */
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
	.dl-js .dl-rv { opacity: 1; transform: none; }
}

/* ---------- Print ---------- */
@media print {
	.dl-header, .dl-footer, .dl-acc-nav, .dl-skip, .dl-badge-demo { display: none !important; }
	body { background: #fff; }
}
