/* Layout: 야간 도로(아스팔트) 히어로 밴드 + 차선 노란색 단일 포인트, 본문은 차분한 서류 톤 */
:root{
  --paper:#F5F6F4; --card:#FFFFFF; --fg:#1B2028; --muted:#5A6371; --rule:#DADDE1;
  --tint:#ECEEEA; --asphalt:#141A23; --asphalt-2:#1D2531; --on-dark:#EDF0F3; --on-dark-mute:#A9B2BE;
  --line:#E2B23A; --line-ink:#8A6510; --l1:#D9C27A; --l2:#E2A23A; --l3:#D9663A; --l4:#B8322E;
  --f-display:"Noto Serif KR","Nanum Myeongjo",serif;
  --f-body:"IBM Plex Sans KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif;
  --f-mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --paper:#0F141B; --card:#161D27; --fg:#E5E9EE; --muted:#9AA4B1; --rule:#283241; --tint:#131A23;
  --asphalt:#0A0E14; --asphalt-2:#121923; --line-ink:#E2B23A; color-scheme:dark}}
:root[data-theme="dark"]{
  --paper:#0F141B; --card:#161D27; --fg:#E5E9EE; --muted:#9AA4B1; --rule:#283241; --tint:#131A23;
  --asphalt:#0A0E14; --asphalt-2:#121923; --line-ink:#E2B23A; color-scheme:dark}

*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--fg);font-family:var(--f-body);font-size:16px;line-height:1.7;word-break:keep-all;overflow-wrap:break-word;padding-bottom:64px}
a{color:inherit}
img{max-width:100%}
.num{font-family:var(--f-mono);font-variant-numeric:tabular-nums;letter-spacing:0}
.wrap{max-width:1120px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.narrow{max-width:820px}
h1,h2,h3{text-wrap:balance;margin:0}
h2{font-family:var(--f-display);font-size:clamp(1.5rem,1.1rem + 1.6vw,2.1rem);line-height:1.35;font-weight:900;margin-bottom:.6rem}
h3{font-size:1.06rem;line-height:1.45;font-weight:700}
.eyebrow{font-family:var(--f-mono),var(--f-body);font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--line-ink);margin:0 0 .5rem;font-weight:600}
.eyebrow.on-dark{color:var(--line)}
.lead{color:var(--muted);max-width:62ch;margin:0 0 1.8rem}
.note{color:var(--muted);font-size:.88rem;margin:1rem 0 0}
:focus-visible{outline:3px solid var(--line);outline-offset:2px}

/* header */
.site-hd{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:var(--asphalt);color:var(--on-dark);border-bottom:1px solid #ffffff14}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:21;background:var(--asphalt)}
.hd-in{display:flex;align-items:center;gap:24px;min-height:64px}
.brand{text-decoration:none;display:flex;flex-direction:column;line-height:1.25}
.brand strong{font-family:var(--f-display);font-size:1.12rem;font-weight:900}
.brand span{font-size:.76rem;color:var(--on-dark-mute)}
.hd-nav{display:flex;gap:20px;margin-left:auto;font-size:.92rem}
.hd-nav a{text-decoration:none;color:var(--on-dark-mute)}
.hd-nav a:hover{color:var(--on-dark)}
.hd-tel{text-decoration:none;display:flex;flex-direction:column;align-items:flex-end;line-height:1.2;padding:6px 14px;border:1px solid var(--line);border-radius:4px}
.hd-tel .num{color:var(--line);font-size:1.08rem;font-weight:600}
.hd-tel small{font-size:.7rem;color:var(--on-dark-mute)}

/* hero */
.hero{background:var(--asphalt);color:var(--on-dark);position:relative;overflow:hidden;padding-block:72px 64px}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:22px;height:4px;background:repeating-linear-gradient(90deg,var(--line) 0 56px,transparent 56px 104px);opacity:.55}
.hero-sm{padding-block:56px 64px}
.hero-in{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center}
.hero-copy{min-width:0}
.hero h1{font-family:var(--f-display);font-weight:900;font-size:clamp(2rem,1.3rem + 3vw,3.3rem);line-height:1.25;margin-bottom:1.1rem}
.hero h1 em{font-style:normal;color:var(--line)}
.hero-sub{color:var(--on-dark-mute);max-width:56ch;margin:0 0 1.8rem}
.hero-btns,.cta-btns{display:flex;flex-wrap:wrap;gap:12px}
.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;border-radius:4px;text-decoration:none;font-weight:700;font-size:1rem}
.btn-line{background:var(--line);color:#1A1406}
.btn-line:hover{filter:brightness(1.07)}
.btn-ghost{border:1px solid #ffffff40;color:var(--on-dark)}
.btn-ghost:hover{border-color:var(--on-dark)}
.crumb{margin-top:28px;font-size:.85rem;color:var(--on-dark-mute)}
.crumb a{color:var(--on-dark-mute)}

/* gauge */
.hero-gauge{background:var(--asphalt-2);border:1px solid #ffffff14;border-radius:6px;padding:24px 22px 18px;min-width:0}
.g-cap{font-family:var(--f-body);font-size:.8rem;letter-spacing:.02em;color:var(--on-dark-mute);margin:0 0 112px;text-transform:uppercase}
.gauge{position:relative;padding-bottom:4px}
.g-bar{position:relative;height:14px;border-radius:2px;background:#ffffff12;overflow:hidden}
.g-bar i{position:absolute;top:0;bottom:0}
.g-bar i:nth-child(1){background:var(--l1)}
.g-bar i:nth-child(2){background:var(--l2)}
.g-bar i:nth-child(3){background:var(--l4)}
.g-tick{position:absolute;bottom:22px;transform:translateX(-1px);border-left:1px dashed var(--on-dark-mute);height:62px;padding-left:6px;display:flex;flex-direction:column;justify-content:flex-start}
.g-tick b{font-size:1rem;color:var(--on-dark);font-weight:600;line-height:1.1}
.g-tick em{font-style:normal;font-size:.7rem;color:var(--on-dark-mute);white-space:nowrap;line-height:1.3}
.g-tick:nth-of-type(2){height:104px}
.g-tick:nth-of-type(3){transform:translateX(-100%);border-left:0;border-right:1px dashed var(--on-dark-mute);padding:0 6px 0 0;align-items:flex-end}
.g-scale{display:flex;justify-content:space-between;font-size:.72rem;color:var(--on-dark-mute);margin-top:6px}

/* sections */
.sec{padding-block:72px}
.sec-tint{background:var(--tint)}
.tc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule)}
.tc{background:var(--card);padding:24px 22px;min-width:0}
.tc-law{font-family:var(--f-mono);font-size:.72rem;color:var(--muted);margin:0 0 .6rem}
.tc h3 a{text-decoration:none;border-bottom:2px solid var(--line)}
.tc h3 a:hover{color:var(--line-ink)}
.tc p:last-child{color:var(--muted);font-size:.93rem;margin:.7rem 0 0}

.tbl-wrap{overflow-x:auto;border:1px solid var(--rule);background:var(--card)}
table.pen{width:100%;border-collapse:collapse;min-width:640px;font-size:.95rem}
table.pen-2{min-width:0}
.pen th,.pen td{padding:14px 16px;text-align:left;border-bottom:1px solid var(--rule);vertical-align:top}
.pen thead th{font-size:.8rem;color:var(--muted);font-weight:500;background:var(--tint)}
.pen tbody th{font-weight:700;white-space:nowrap}
.pen-2 tbody th{white-space:normal;width:42%}
.pen tr:last-child>*{border-bottom:0}
.lv{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:10px;vertical-align:1px}
.lv.l1{background:var(--l1)}.lv.l2{background:var(--l2)}.lv.l3{background:var(--l3)}.lv.l4{background:var(--l4)}

.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips a{text-decoration:none;font-size:.92rem;padding:8px 14px;border:1px solid var(--rule);background:var(--card);border-radius:3px}
.chips a:hover{border-color:var(--line);color:var(--line-ink)}

.chg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.chg-i{border-top:3px solid var(--line);padding-top:16px;min-width:0}
.chg-d{font-size:.85rem;color:var(--line-ink);margin:0 0 .4rem;font-weight:600}
.chg-i p:last-child{color:var(--muted);font-size:.93rem;margin:.5rem 0 0}

.why{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 28px;margin-top:1.4rem}
.why-c{min-width:0}
.why-c h3{padding-bottom:10px;border-bottom:1px solid var(--rule);margin-bottom:10px}
.why-c p{color:var(--muted);font-size:.93rem;margin:0}

.lw-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.lw{display:flex;gap:16px;background:var(--card);border:1px solid var(--rule);padding:18px;min-width:0}
.lw-av{flex:none;width:96px;height:119px;border-radius:4px;object-fit:cover;object-position:center top;background:var(--asphalt)}
.lw-ini{color:var(--line);display:grid;place-items:center;font-family:var(--f-display);font-weight:900;font-size:1.6rem}
.lw-team{font-family:var(--f-mono);font-size:.72rem;color:var(--line-ink);margin:0 0 2px;letter-spacing:.06em}
.lw h3 span{font-weight:500;color:var(--muted);font-size:.9rem}
.lw ul{margin:.4rem 0 0;padding:0;list-style:none;color:var(--muted);font-size:.88rem}

.rg-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 40px}
.rg{min-width:0}
.rg h3{font-size:.95rem;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--rule)}
.rg .chips a{padding:6px 12px;font-size:.9rem}

.faq{border-top:1px solid var(--rule)}
.faq-i{border-bottom:1px solid var(--rule)}
.faq-i summary{cursor:pointer;padding:18px 32px 18px 0;font-weight:700;list-style:none;position:relative}
.faq-i summary::-webkit-details-marker{display:none}
.faq-i summary::after{content:"+";position:absolute;right:4px;top:14px;font-family:var(--f-mono);font-size:1.3rem;color:var(--line-ink)}
.faq-i[open] summary::after{content:"−"}
.faq-i p{margin:0 0 18px;color:var(--muted)}

.jur{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:start}
.jur-txt{min-width:0}
.jur-txt p{margin:0 0 1rem;max-width:62ch}
.jur-dl{margin:0;background:var(--card);border:1px solid var(--rule)}
.jur-dl div{display:grid;grid-template-columns:7.5em 1fr;gap:12px;padding:12px 16px;border-bottom:1px solid var(--rule)}
.jur-dl div:last-child{border-bottom:0}
.jur-dl dt{color:var(--muted);font-size:.85rem}
.jur-dl dd{margin:0;font-weight:500;font-size:.93rem;min-width:0}

.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:4px solid var(--asphalt)}
.st{padding:20px 20px 0 0;min-width:0}
.st-n{color:var(--line-ink);font-size:.8rem;font-weight:600;margin:0 0 .4rem}
.st p:last-child{color:var(--muted);font-size:.92rem;margin:.5rem 0 0}

.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px}
.two>div{min-width:0}
.ticks,.nums{margin:0;padding-left:1.2em}
.ticks li,.nums li{margin-bottom:.55rem}
.ticks li::marker{color:var(--line-ink)}
.nums li::marker{font-family:var(--f-mono);color:var(--line-ink);font-weight:600}

.cta{background:var(--asphalt);color:var(--on-dark);padding-block:64px}
.cta-in{display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center}
.cta-in>div{min-width:0}
.cta h2{color:var(--on-dark)}
.cta p{color:var(--on-dark-mute);margin:0}

.site-ft{background:var(--asphalt);color:var(--on-dark-mute);font-size:.84rem;padding-block:40px 32px;border-top:1px solid #ffffff14}
.site-ft p{margin:0 0 .8rem}
.ft-brand{color:var(--on-dark);font-size:1rem}
.ft-meta{font-size:.78rem;line-height:1.7}

.m-bar{position:fixed;left:0;right:0;bottom:0;z-index:30;display:none;grid-template-columns:1.4fr 1fr;padding-bottom:env(safe-area-inset-bottom,0px);background:var(--asphalt)}
.m-bar a{display:flex;align-items:center;justify-content:center;min-height:56px;text-decoration:none;font-weight:700;font-size:.95rem}
.m-call{background:var(--line);color:#1A1406}
.m-kakao{color:var(--on-dark)}

@media (max-width:960px){
  .hero-in,.jur,.two,.cta-in{grid-template-columns:1fr}
  .tc-grid,.chg{grid-template-columns:repeat(2,minmax(0,1fr))}
  .why,.steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .steps{row-gap:8px}
  .hd-nav{display:none}
}
@media (max-width:640px){
  body{padding-bottom:calc(56px + env(safe-area-inset-bottom,0px))}
  .m-bar{display:grid}
  .hd-tel{display:none}
  .tc-grid,.chg,.why,.steps,.lw-grid,.rg-grid{grid-template-columns:1fr}
  .sec{padding-block:52px}
  .hero{padding-block:48px 56px}
  .g-tick em{display:none}
  .jur-dl div{grid-template-columns:6.5em 1fr}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* 메인 지도 · 비대면 선임 */
.hero-map{min-width:0;background:var(--asphalt-2);border:1px solid #ffffff14;border-radius:6px;padding:18px 18px 10px}
.hero-map .g-cap{margin:0 0 6px}
.kmap{display:block;width:100%;max-width:440px;height:auto;margin:0 auto}
.km-g path{fill:#2A3443;stroke:var(--asphalt);stroke-width:1;transition:fill .15s}
.km-g:hover path,.km-g:focus-visible path{fill:#3A4657}
.km-g:focus-visible{outline:none}
.km-inset{fill:none;stroke:#ffffff26;stroke-dasharray:3 3}
.km-isl{fill:#3A4657}
.km-small{font-size:9px;fill:var(--on-dark-mute);font-family:var(--f-body)}
.km-c circle{fill:var(--on-dark);stroke:var(--asphalt-2);stroke-width:1.5}
.km-c text{font-size:11px;fill:var(--on-dark-mute);font-family:var(--f-body);font-weight:500}
.km-c:hover circle{fill:var(--line)}
.km-c:hover text{fill:var(--on-dark)}
.km-o circle{fill:var(--line);stroke:var(--asphalt-2);stroke-width:2}
.km-o .km-o-in{fill:var(--asphalt);stroke:none}
.km-o text{font-size:12.5px;fill:var(--line);font-weight:700;font-family:var(--f-body)}
.remote{list-style:none;margin:0 0 1.8rem;padding:0;display:flex;flex-wrap:wrap;gap:0;border:1px solid #ffffff26;border-radius:4px;width:fit-content;max-width:100%}
.remote li{padding:10px 16px;font-size:.92rem;font-weight:500;display:flex;gap:8px;align-items:baseline}
.remote li+li{border-left:1px solid #ffffff26}
.remote b{color:var(--line);font-size:.78rem}
.gauge-box{background:var(--asphalt);border-radius:6px;padding:120px 24px 16px;margin:0 0 20px}
.gauge-box .g-scale{color:var(--on-dark-mute)}
@media (max-width:640px){
  .remote{flex-direction:column;width:100%}
  .remote li+li{border-left:0;border-top:1px solid #ffffff26}
  .gauge-box{padding-top:76px}
}

/* 법률정보 게시판 */
.pc-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule)}
.pc{background:var(--card);padding:22px;min-width:0;display:flex;flex-direction:column;gap:8px}
.pc-meta{display:flex;gap:10px;align-items:baseline;margin:0;font-size:.8rem;color:var(--muted)}
.pc-meta a{color:var(--line-ink);text-decoration:none;font-weight:700}
.pc h3 a{text-decoration:none}
.pc h3 a:hover{color:var(--line-ink);text-decoration:underline;text-decoration-color:var(--line)}
.pc p:last-child{margin:0;color:var(--muted);font-size:.92rem}
.more{margin:18px 0 0;text-align:right}
.more a{color:var(--line-ink);font-weight:700;text-decoration:none}
.cat-chips{margin-bottom:24px}
.cat-chips a[aria-current="page"]{background:var(--asphalt);color:var(--line);border-color:var(--asphalt)}
.wrap.narrow{max-width:780px}
.post-h1{font-size:clamp(1.6rem,1.2rem + 2vw,2.4rem)!important}
.post-by{color:var(--on-dark-mute);margin:.4rem 0 0;font-size:.9rem}
.on-dark-link{color:inherit;text-decoration:none}
.prose{font-size:1.04rem;line-height:1.85}
.prose h2{font-size:1.45rem;margin:2.4rem 0 .8rem;padding-top:.4rem;border-top:2px solid var(--line)}
.prose h3{font-size:1.12rem;margin:1.6rem 0 .5rem}
.prose p,.prose ul,.prose ol{margin:0 0 1rem}
.prose li{margin-bottom:.35rem}
.prose strong{color:var(--fg);background:linear-gradient(transparent 62%,color-mix(in srgb,var(--line) 35%,transparent) 62%)}
.prose a{color:var(--line-ink)}
.prose blockquote{margin:1.2rem 0;padding:14px 18px;border-left:4px solid var(--line);background:var(--tint);color:var(--fg)}
.prose blockquote p:last-child{margin:0}
.prose table{width:100%;border-collapse:collapse;margin:0 0 1.2rem;font-size:.93rem;display:block;overflow-x:auto}
.prose th,.prose td{border:1px solid var(--rule);padding:10px 12px;text-align:left;vertical-align:top}
.prose thead th{background:var(--tint)}
.toc{border:1px solid var(--rule);background:var(--card);padding:16px 20px;margin:0 0 1.6rem}
.toc p{margin:0 0 6px;font-weight:700;font-size:.9rem}
.toc ol{margin:0;padding-left:1.2em;font-size:.93rem}
.toc a{color:var(--fg);text-decoration:none}
.toc a:hover{color:var(--line-ink)}
.post-prac{margin:2rem 0 0;padding:14px 18px;background:var(--tint);font-weight:500}
.post-prac a{color:var(--line-ink);font-weight:700}
.post-note{color:var(--muted);font-size:.84rem;margin:1rem 0 0}
@media (max-width:960px){.pc-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.pc-list{grid-template-columns:1fr}}

/* 동·역 찾기 */
.finder{position:relative;max-width:560px;margin:0 0 28px}
.finder label{display:block;font-weight:700;margin-bottom:8px}
.finder input{width:100%;font:inherit;font-size:1.05rem;padding:14px 16px;border:2px solid var(--asphalt);border-radius:4px;background:var(--card);color:var(--fg)}
.finder input:focus{outline:none;border-color:var(--line)}
.finder-r{list-style:none;margin:6px 0 0;padding:0;background:var(--card);border:1px solid var(--rule);max-height:420px;overflow:auto}
.finder-r:empty{display:none}
.finder-r li a{display:flex;justify-content:space-between;gap:12px;padding:10px 14px;text-decoration:none;border-bottom:1px solid var(--rule)}
.finder-r li a:hover,.finder-r li a:focus-visible{background:var(--tint)}
.finder-r small{color:var(--muted);flex:none}
.finder-none{padding:12px 14px;color:var(--muted)}
.facts{max-width:760px}
.facts dd a{color:var(--line-ink)}

/* 음주진단 */
.hd-nav .nav-diag{color:var(--line)}
.cta-diag{grid-column:1/-1;margin:4px 0 0}
.cta-diag a{color:var(--line);font-weight:700;text-decoration:none}
.diag-banner{display:grid;grid-template-columns:1fr auto;gap:6px 24px;align-items:center;text-decoration:none;background:var(--asphalt);color:var(--on-dark);border-left:6px solid var(--line);padding:26px 28px;border-radius:4px}
.diag-banner .eyebrow{grid-column:1;margin:0;color:var(--line)}
.diag-banner strong{grid-column:1;font-size:clamp(1.1rem,1rem + .6vw,1.4rem);font-family:var(--f-display)}
.diag-go{grid-column:2;grid-row:1/3;background:var(--line);color:#1A1406;font-weight:700;padding:12px 18px;border-radius:4px;white-space:nowrap}
.dg{background:var(--card);border:1px solid var(--rule);border-radius:6px;padding:28px}
.dg-head{display:flex;align-items:center;gap:16px;margin-bottom:22px}
.dg-bar{flex:1;height:8px;background:var(--tint);border-radius:4px;overflow:hidden}
.dg-bar i{display:block;height:100%;width:0;background:var(--line);transition:width .25s}
.dg-count{margin:0;font-size:.9rem;color:var(--muted)}
.dg-step{border:0;margin:0;padding:0;min-width:0}
.dg-step legend{font-size:clamp(1.15rem,1rem + .6vw,1.45rem);font-weight:700;line-height:1.45;margin-bottom:18px;padding:0;text-wrap:balance}
.dg-n{display:block;font-size:.8rem;color:var(--line-ink);margin-bottom:4px;font-weight:600}
.dg-opts{display:grid;gap:10px}
.dg-opt{display:flex;align-items:center;gap:12px;padding:15px 16px;border:1.5px solid var(--rule);border-radius:4px;cursor:pointer;font-weight:500;background:var(--paper)}
.dg-opt:hover{border-color:var(--line)}
.dg-opt input{width:18px;height:18px;accent-color:var(--line-ink);flex:none;margin:0}
.dg-opt:has(input:checked){border-color:var(--line-ink);background:color-mix(in srgb,var(--line) 14%,var(--card))}
.dg-opt:has(input:focus-visible){outline:3px solid var(--line);outline-offset:2px}
.dg-nav{display:flex;justify-content:space-between;margin-top:20px}
.dg-btn{font:inherit;font-weight:700;padding:10px 18px;border:1px solid var(--rule);background:var(--card);color:var(--fg);border-radius:4px;cursor:pointer}
.dg-btn:disabled{opacity:.4;cursor:default}
.dg-reset{border-color:transparent;color:var(--muted)}
.dg-result{display:grid;gap:14px;outline:none}
.dg-top h2{margin:0}
.dg-lv{display:inline-block;font-size:.95rem;padding:3px 12px;border-radius:999px;vertical-align:4px;margin-left:6px;font-family:var(--f-body)}
.dg-lv-h{background:var(--l4);color:#fff}.dg-lv-m{background:var(--l2);color:#1A1406}.dg-lv-l{background:var(--l1);color:#1A1406}
.dg-card{border:1px solid var(--rule);border-top:4px solid var(--rule);border-radius:4px;padding:16px 18px;background:var(--paper)}
.dg-card h3{margin:0 0 8px}
.dg-card ul{margin:0;padding-left:1.1em}
.dg-card li{margin-bottom:6px}
.dg-c{border-top-color:var(--l4)}.dg-a{border-top-color:var(--l2)}.dg-r{border-top-color:var(--line)}.dg-w{border-top-color:var(--asphalt)}
.dg-cta{background:var(--asphalt);color:var(--on-dark);border-radius:4px;padding:20px}
.dg-cta p{margin:0 0 12px}
.dg-cta-btns{display:flex;flex-wrap:wrap;gap:10px}
.btn-ghost-dark{font:inherit;font-weight:700;border:1px solid #ffffff55;background:transparent;color:var(--on-dark);cursor:pointer}
.dg-sum{width:100%;margin-top:12px;font:inherit;font-size:.85rem;background:var(--asphalt-2);color:var(--on-dark-mute);border:1px solid #ffffff22;border-radius:4px;padding:10px;resize:vertical}
.dg-copied{color:var(--line);font-weight:700;margin:8px 0 0!important}
@media (max-width:640px){.dg{padding:20px 16px}.diag-banner{grid-template-columns:1fr}.diag-go{grid-column:1;grid-row:auto;justify-self:start}}
.dg-result{scroll-margin-top:90px}
.dg-copied a{color:var(--line)}
.dg-cta h3{margin:0 0 6px;color:var(--on-dark)}
.dg-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0 10px}
.dg-fields label{display:block;font-size:.88rem;font-weight:700;margin-bottom:6px;color:var(--on-dark)}
.dg-fields b,.dg-agree b{font-size:.72rem;color:var(--line);margin-left:4px}
.dg-fields input{width:100%;font:inherit;padding:12px 14px;border-radius:4px;border:1px solid #ffffff33;background:var(--asphalt-2);color:var(--on-dark)}
.dg-fields input:focus{outline:none;border-color:var(--line)}
.dg-hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}
.dg-agree{display:flex;align-items:center;gap:8px;font-size:.92rem;cursor:pointer}
.dg-agree input{width:18px;height:18px;accent-color:var(--line)}
.dg-privacy{margin:6px 0 4px;font-size:.82rem;color:var(--on-dark-mute)}
.dg-privacy summary{cursor:pointer}
.dg-privacy p{margin:6px 0 0!important}
.dg-msg{min-height:1.4em;color:var(--line);font-weight:700;margin:6px 0 10px!important}
.dg-cta a{color:var(--line)}
.dg-cta .btn-line{color:#1A1406}
.dg-alt{border:1px dashed var(--rule);border-radius:4px;padding:14px}
.dg-alt .dg-sum{background:var(--tint);color:var(--muted);border-color:var(--rule)}
.dg-alt .dg-copied{color:var(--line-ink)}
@media (max-width:640px){.dg-fields{grid-template-columns:1fr}}
