/* 공개 사이트 공통 조합(KITDI). 토큰과 키트 클래스만 조합하고, 화면 전용 이름은 접두사(site- home- page- …)를 붙인다.
   여러 화면에서 쓰는 부품은 키트 editorial 층(ds/editorial.css)에 있다. 여기는 화면 배치와 그림 조각만. */

/* ── 내비 로고 크기: 좁은 화면은 조금 작게 ── */
.nav__brand .logo{--logo-h:21px}
@media (min-width:1200px){.nav__brand .logo{--logo-h:24px}}
.drawer__head .logo{--logo-h:20px}
.footer--deep .nav__brand .logo{--logo-h:26px}
/* 어두운 무대 위 내비의 버튼·메가 메뉴 트리거 */
.nav[data-tone="deep"] .nav__burger{color:var(--deep-ink)}

/* ══ 홈 ══════════════════════════════════════════════════ */
/* 우리가 믿는 것: 왼쪽 세로 사진, 오른쪽 큰 문장 */
.home-belief__lit{margin:0;text-wrap:pretty;word-break:keep-all}
@media (min-width:1024px){.home-belief .feature-split{grid-template-columns:minmax(0,5fr) minmax(0,6fr)}.home-belief__photo{max-height:640px}}
@media (max-width:1023px){.home-belief__photo{--ar:4 / 3}}

/* 첫 화면: 좁은 화면은 사진 속 사람들이 위쪽에 보이게 */
@media (max-width:767px){.hero-ed .photo-bg{--pos:66% 30%}}

/* 사업 분야 패널 */
@media (min-width:1024px){.home-panels{min-height:620px}}

/* 연구 카드: 무대 위 오브제 사진 */
.home-research .rcard__media{aspect-ratio:16 / 10}

/* 기술 벤토: 칸마다 위 글, 아래 그림이 남은 높이를 채운다 */
.home-bento{grid-auto-rows:minmax(300px,auto)}
.home-tile{background:var(--surface-alt);border-radius:var(--r-xl);overflow:hidden;padding:0;gap:0}
.home-tile__copy{display:flex;flex-direction:column;gap:var(--s-8);padding:var(--s-28) var(--s-28) 0}
.home-tile .tile__desc{max-width:32rem}
.home-tile__media{position:relative;flex:1 1 auto;display:flex;min-height:200px;margin:0;padding:0}
.home-tile__media .viz{flex:1}
.home-tile--chat .home-tile__media{min-height:340px}
.home-tile--chat .viz-chat{padding:var(--s-20) var(--s-28) var(--s-28);justify-content:flex-start}
.home-tile--chat .viz-chat__bar{margin-bottom:var(--s-8)}
.home-tile .viz-chat__list{font-size:var(--t-caption)}
.home-tile .viz-wave{padding:var(--s-24) var(--s-28)}
.home-tile .viz-wave__bars{justify-content:space-between}
.home-tile .viz-wave__bars i{flex:1;max-width:none}
.home-tile .viz-flow,.home-tile .viz-chart{padding:var(--s-20) var(--s-28) var(--s-28)}
.home-tile .viz-vision{padding:var(--s-20) var(--s-28) var(--s-28)}
.home-tile .viz-vision__frame{max-width:none}
@media (max-width:640px){.home-tile__copy{padding:var(--s-24) var(--s-24) 0}.home-tile--chat .viz-chat,.home-tile .viz-flow,.home-tile .viz-chart,.home-tile .viz-vision,.home-tile .viz-wave{padding-inline:var(--s-24)}}
.home-note{margin:var(--s-16) 0 0;color:var(--ink-subtle);font-size:var(--t-caption);line-height:var(--t-caption-lh)}

/* 함께 일하는 방식: 머리 아래 사진 */
.home-process__photo{width:100%;margin-top:var(--s-8)}
@media (max-width:1023px){.home-process__photo{display:none}}

/* 마지막 권유 */
.home-cta{padding-top:var(--s-48)}
/* 휴대폰: 권유 판 사진은 천장 대신 사람이 보이는 아래쪽으로 */
@media (max-width:767px){.home-cta .photo-bg img{object-position:58% 88%}}
.cta-deep .photo-bg img{filter:saturate(.7) brightness(.8)}
@media (max-width:767px){.cta-deep .photo-bg::after{background:linear-gradient(0deg,var(--deep) 38%,color-mix(in srgb,var(--deep) 70%,transparent) 62%,color-mix(in srgb,var(--deep) 25%,transparent) 100%)}
  .cta-deep{padding-top:var(--s-160)}}

/* ══ 하위 페이지 공통 ═════════════════════════════════════ */
.page-cta{padding-top:var(--s-48)}

/* ══ 회사 소개 ═══════════════════════════════════════════ */
.company-mv{display:grid;gap:var(--s-40)}
@media (min-width:768px){.company-mv{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-48)}}
.company-mv__item{display:flex;flex-direction:column;gap:var(--s-16);padding-top:var(--s-24);border-top:1px solid var(--line-strong)}
.company-mv__key{margin:0;font-size:var(--t-caption);line-height:var(--t-caption-lh);font-weight:700;color:var(--accent-text)}
.company-mv__text{margin:0;color:var(--ink);word-break:keep-all;text-wrap:balance}
.company-mv__desc{margin:0;color:var(--ink-muted);word-break:keep-all}

/* ══ AI 솔루션: 장면 속 가상 업무 AI 화면(이용 예시, 설계 폭 1280) ══ */
.sol-brand{display:flex;align-items:center;gap:var(--s-8);font-weight:700;color:var(--ink)}
.sol-brand .motif-dot{--dot:10px;margin:0}
.sol-chat{display:flex;flex-direction:column;justify-content:flex-end}
.sol-chat .bubble{font-size:var(--t-body-sm);max-width:78%}
.sol-cite{display:flex;flex-wrap:wrap;gap:var(--s-6)}
.sol-cite span{padding:2px var(--s-8);border-radius:var(--r-xs);background:var(--accent-soft);color:var(--accent-text);font-size:var(--t-caption);font-weight:600}
.sol-source{display:flex;flex-direction:column;gap:var(--s-6);padding:var(--s-12);border-radius:var(--r-md);background:var(--surface-alt);font-size:var(--t-caption);line-height:var(--t-caption-lh);color:var(--ink-muted)}
.sol-source + .sol-source{margin-top:var(--s-8)}
.sol-source b{color:var(--ink);font-weight:600}
.sol-source mark{background:var(--accent-soft);color:var(--accent-text);padding:0 2px;border-radius:2px}
.sol-fields{--dmock-cols:150px minmax(0,1fr) 140px}
.sol-conf{font-size:var(--t-caption);color:var(--good-text);font-weight:600;font-variant-numeric:tabular-nums}
.sol-runs{--dmock-cols:28px minmax(0,1fr) 140px 90px 80px}
.sol-step-no{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--tint);font-size:var(--t-caption);font-weight:700;color:var(--ink-muted)}
.sol-forecast{--dmock-cols:minmax(0,1fr) 110px 110px 90px 110px}
.sol-up{color:var(--good-text);font-weight:600;font-variant-numeric:tabular-nums}
.sol-down{color:var(--ink-muted);font-weight:600;font-variant-numeric:tabular-nums}
.sol-alert{display:grid;place-items:center;flex:none;width:24px;height:24px;border-radius:50%;background:var(--warn-soft);color:var(--warn-text)}
.sol-chart{display:flex;align-items:flex-end;gap:var(--s-6);height:150px;margin-bottom:var(--s-20);padding:var(--s-16);border-radius:var(--r-md);box-shadow:inset 0 0 0 1px var(--line)}
.sol-chart i{flex:1;height:calc(var(--h) * 1%);border-radius:var(--r-xs) var(--r-xs) 0 0;background:var(--accent);opacity:.8}
.sol-chart i.is-fc{opacity:1;background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--accent) 55%,transparent) 0 4px,transparent 4px 8px);box-shadow:inset 0 0 0 1px var(--accent)}
.sol-paper{display:grid;place-items:center;background:var(--canvas-sunken)}
.sol-paper__sheet{position:relative;display:flex;flex-direction:column;gap:var(--s-12);width:220px;aspect-ratio:.72;padding:var(--s-20);background:var(--surface);box-shadow:var(--sh-lg)}
.sol-paper__title{align-self:center;font-size:var(--t-caption);font-weight:700;color:var(--ink);word-spacing:.3em}
.sol-paper__row{display:flex;gap:var(--s-8)}
.sol-paper__row i,.sol-paper__table i{display:block;flex:1;height:8px;border-radius:2px;background:var(--tint-active)}
.sol-paper__table{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-6) var(--s-8);padding:var(--s-8) 0;border-block:1px solid var(--line)}
.sol-paper i.is-hit{background:color-mix(in srgb,var(--accent) 45%,transparent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 30%,transparent)}
.sol-paper__stamp{position:absolute;right:var(--s-20);bottom:var(--s-20);width:34px;height:34px;border-radius:50%;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--bad) 70%,transparent)}

/* ══ 기술 ═══════════════════════════════════════════════ */
.tech-rows{display:grid;gap:var(--s-16)}
.tech-row{display:grid;gap:var(--s-24);padding:var(--s-28);border-radius:var(--r-2xl);background:var(--surface-alt);overflow:hidden}
@media (min-width:1024px){
  .tech-row{grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:var(--s-56);align-items:center;padding:var(--s-48)}
  .tech-row--flip .tech-row__copy{order:2}
}
.tech-row__copy{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s-12)}
.tech-row__no{font-size:var(--t-caption);font-weight:700;color:var(--accent-text)}
.tech-row__title{margin:0;color:var(--ink);word-break:keep-all}
.tech-row__desc{margin:0;color:var(--ink-muted);word-break:keep-all}
.tech-row__tags{display:flex;flex-wrap:wrap;gap:var(--s-6);margin:var(--s-8) 0 0;padding:0;list-style:none}
.tech-row__tags li{padding:var(--s-4) var(--s-10);border-radius:var(--r-xs);background:var(--surface);box-shadow:0 0 0 1px var(--line);font-size:var(--t-caption);line-height:var(--t-caption-lh);color:var(--ink-body)}
.tech-row__media{display:flex;min-height:300px;border-radius:var(--r-xl);background:var(--surface);box-shadow:0 0 0 1px var(--line)}
.tech-row__media .viz{flex:1}
.tech-row__media .viz-chat{justify-content:center;padding:var(--s-28)}
.tech-row__media .viz-chat__list{font-size:var(--t-caption)}

/* ══ 문의 ═══════════════════════════════════════════════
   넓은 화면: 왼쪽 어두운 소개(붙어 따라옴) + 오른쪽 밝은 폼. 바깥 여백은 컨테이너 선에 맞춘다. */
.contact{display:grid}
.contact__intro{position:relative;overflow:hidden;padding:var(--s-48) var(--s-20) var(--s-56)}
.contact__intro-in{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start}
.contact__title{margin:0;color:var(--ink)}
.contact__lede{margin:var(--s-24) 0 0;max-width:30rem;color:var(--ink-body);font-size:var(--t-body-lg);line-height:var(--t-body-lg-lh);word-break:keep-all}
.contact__steps{display:grid;gap:var(--s-10);margin:var(--s-40) 0 0;padding:0;list-style:none;color:var(--ink-body)}
/* 바로 연락하기(전화·메일): 진행 순서 아래, 선 하나로 나눈다 */
.contact__direct{display:grid;gap:var(--s-8);margin:var(--s-32) 0 0;padding-top:var(--s-24);border-top:1px solid var(--line);max-width:30rem}
.contact__direct div{display:flex;align-items:center;gap:var(--s-16)}
.contact__direct dt{width:2.5rem;color:var(--ink-muted);font-size:var(--t-body-sm)}
.contact__direct dd{margin:0}
.contact__direct a{display:inline-flex;align-items:center;min-height:44px;color:var(--ink);font-weight:600;font-variant-numeric:tabular-nums}
@media (hover:hover){.contact__direct a:hover{text-decoration:underline;text-underline-offset:3px}}
.contact__steps li{display:flex;align-items:center;gap:var(--s-12);font-weight:500}
.contact__steps span{display:grid;place-items:center;width:32px;height:32px;border-radius:var(--r-sm);box-shadow:inset 0 0 0 1px var(--line-strong);font-size:var(--t-caption);font-weight:700;color:var(--accent-text)}
.contact__card{padding:var(--s-48) var(--s-20) var(--s-80)}
.contact__form{max-width:640px}
.contact__row{display:grid;gap:inherit}
.contact__trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.contact__consent{display:flex;flex-direction:column;gap:var(--s-8);padding:var(--s-16);border-radius:var(--r-md);background:var(--surface-alt)}
.contact__consent-note{margin:0;color:var(--ink-muted);font-size:var(--t-caption);line-height:var(--t-caption-lh)}
.contact__consent-note a{color:var(--accent-text);text-decoration:underline;text-underline-offset:2px}
@media (min-width:768px){
  .contact__intro{padding-inline:var(--s-32)}.contact__card{padding-inline:var(--s-32)}
  .contact__row{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:1024px){
  .contact{grid-template-columns:minmax(0,5fr) minmax(0,7fr);min-height:calc(var(--fx-vh,100svh) - var(--nav-h))}
  .contact__intro{padding:var(--s-80) var(--s-56) var(--s-80) max(40px,calc((100vw - var(--w-wide)) / 2))}
  .contact__intro-in{position:sticky;top:calc(var(--nav-h) + var(--s-48))}
  .contact__card{padding:var(--s-80) max(40px,calc((100vw - var(--w-wide)) / 2)) var(--s-96) var(--s-80)}
}

/* 접수 완료 */
.sent{position:relative;overflow:hidden;display:grid;align-items:center;min-height:max(560px,var(--fx-vh,100svh));padding:calc(var(--nav-h) + var(--s-64)) 0 var(--s-80)}
.sent__inner{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center}
.sent__mark{display:grid;place-items:center;width:72px;height:72px;margin-bottom:var(--s-32);border-radius:var(--r-lg);background:var(--accent);color:var(--accent-ink)}
.sent__title{margin:0;color:var(--ink)}
.sent__lede{margin:var(--s-20) 0 0;max-width:32rem;color:var(--ink-body);word-break:keep-all}
.sent__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--s-12) var(--s-16);margin-top:var(--s-40)}
@media (min-width:640px){.sent__actions{column-gap:var(--s-32)}} /* 주버튼 + 화살표 링크: 히어로·권유 줄과 같은 간격(키트 18) */

/* ══ 개인정보처리방침 ═══════════════════════════════════ */
.privacy-toc{display:none}
@media (min-width:1024px){.privacy-toc{display:block;position:sticky;top:calc(var(--nav-h) + var(--s-32))}}
.privacy-toc ol{margin:0;padding:0;list-style:none;display:grid;gap:var(--s-2)}
.privacy-toc a{display:flex;align-items:center;min-height:36px;color:var(--ink-muted);font-size:var(--t-body-sm)}
@media (hover:hover){.privacy-toc a:hover{color:var(--ink)}}
.privacy h2{scroll-margin-top:var(--s-8);color:var(--ink)}
.privacy a{color:var(--accent-text);text-decoration:underline;text-underline-offset:2px}

/* ══ 관리자: 문의 ═══════════════════════════════════════ */
.admin-filter{display:flex;flex-wrap:wrap;gap:var(--s-8)}
.admin-table{padding:var(--s-8) var(--s-20);overflow-x:auto}
.admin-table__sub{display:block;color:var(--ink-muted);font-size:var(--t-caption)}
.admin-table__msg{color:var(--ink-muted)}
.admin-card{display:flex;flex-direction:column;gap:var(--s-16);padding:var(--s-24)}
.admin-card__message{margin:0;white-space:pre-wrap;color:var(--ink-body)}
.admin-inline{display:inline}
/* AI로 글 하나 쓰기: 종류에 따라 검색어 칸과 요청 도움말을 바꾼다(스크립트 없이 :has) */
.compose{gap:var(--s-32)}
.compose__part{display:grid;gap:var(--s-12);margin:0;padding:0;border:0;min-width:0}
.compose__part > legend{margin-bottom:var(--s-12);padding:0}
.compose .choice-card__title{display:flex;align-items:center;gap:var(--s-8);flex-wrap:wrap}
.compose__help-news{display:none}
.compose:has(input[name="kind"][value="news"]:checked) .compose__strategy{display:none}
.compose:has(input[name="kind"][value="news"]:checked) .compose__help-news{display:inline}
.compose:has(input[name="kind"][value="news"]:checked) .compose__help-strategy{display:none}
.compose__submit{align-items:center;gap:var(--s-16);flex-wrap:wrap}
.admin-files{gap:0;padding-block:var(--s-8)}
.admin-files__row{display:grid;gap:var(--s-4);padding-block:var(--s-12);border-top:1px solid var(--line)}
.admin-files__row:first-child{border-top:0}
.admin-files__row dt{font-weight:600;white-space:nowrap}
.admin-files__row dd{color:var(--ink-body)}
@media (min-width:640px){.admin-files__row{grid-template-columns:10rem minmax(0,1fr);gap:var(--s-16)}}
.admin-steps{display:grid;gap:var(--s-6);margin-top:var(--s-12);padding-left:var(--s-20);list-style:decimal}
.privacy-side{align-self:stretch}


/* ══ AI 서비스: 사진 카드 가로 띠 ═══════════════════════════ */
.svc-card{padding:0;overflow:hidden;gap:0;background:var(--canvas-alt)}
.svc-card.hscroll__card{width:min(84vw,420px)}
.svc-card__photo{position:relative;margin:0;aspect-ratio:4 / 3;overflow:hidden;background:var(--deep)}
.svc-card__photo img{width:100%;height:100%;object-fit:cover;object-position:var(--pos,center)}
.svc-card__body{display:flex;flex:1;flex-direction:column;gap:var(--s-10);padding:var(--s-24) var(--s-24) var(--s-28)}
.svc-card__body h3,.svc-card__body p{margin:0}
.svc-card__tag{font-size:var(--t-caption);line-height:var(--t-caption-lh);font-weight:700;color:var(--accent-text)}

/* ══ 연구 ═══════════════════════════════════════════════ */
.research-rows{display:grid;gap:var(--s-96)}
@media (max-width:1023px){.research-rows{gap:var(--s-64)}}
.research-row{scroll-margin-top:calc(var(--nav-h) + var(--s-80))}
.research-row__no{font-size:var(--t-caption);font-weight:700;color:var(--accent-text);font-variant-numeric:tabular-nums}
.research-row__desc{margin:0;color:var(--ink-muted);font-size:var(--t-body-lg);line-height:var(--t-body-lg-lh);word-break:keep-all;max-width:34rem}
.research-row__topics{display:grid;gap:var(--s-10);margin:var(--s-8) 0 0;padding:var(--s-20) 0 0;list-style:none;width:100%;border-top:1px solid var(--line)}
.research-row__topics li{display:flex;align-items:center;gap:var(--s-10);color:var(--ink-body);font-size:var(--t-body-sm);line-height:var(--t-body-sm-lh)}
.research-row__topics .ico{color:var(--accent-text)}

/* 인재 채용: 일하는 방식 아래 사진 줄(위는 앞 섹션 여백을 잇고, 아래만 띄운다) */
.careers-photos{padding-bottom:var(--sec-md)}
@media (max-width:767px){.careers-photos{padding-bottom:var(--s-64)}}
@media (max-width:640px){.home-tile .viz-chat__a{max-width:100%}.home-tile .viz-chat__src span:nth-child(3){display:none}}

/* AX: 다루는 범위 여섯 칸은 좁은 화면에서도 두 칸 */
@media (max-width:639px){.ax-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-28) var(--s-16)}
  .ax-features .feature__desc{font-size:var(--t-body-xs);line-height:var(--t-body-xs-lh)}}



/* ══ 관리자 로그인 ══════════════════════════════════════════ */
.admin-login .auth__card{justify-content:center;gap:var(--s-32);padding-bottom:var(--s-80)}
.admin-login__brand{align-self:flex-start}
.admin-login__note{margin:0}
.admin-logout{display:contents}
/* 관리자: 첫 화면·블로그 */
.admin-board{margin-top:var(--s-20)}
.admin-card__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-12)}
.admin-card__head h2{margin:0}
.admin-list{display:grid;gap:var(--s-10);margin:0;padding:0;list-style:none}
.admin-list li{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-8);min-width:0}
.admin-list li > a{flex:1;min-width:0;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-list__meta{color:var(--ink-subtle);font-size:var(--t-caption)}
.admin-post{display:grid;gap:var(--s-20);margin-top:var(--s-20)}
@media (min-width:1200px){.admin-post{grid-template-columns:minmax(0,1fr) 360px;align-items:start}}
.admin-post__body{min-height:640px;font-family:var(--font-mono);font-size:var(--t-body-sm);line-height:1.7}
.admin-post__side .admin-card{gap:var(--s-16)}
.admin-post__actions{gap:var(--s-8)}
.admin-post__cover{overflow:hidden;border-radius:var(--r-md);aspect-ratio:3 / 2;background:var(--surface-alt)}
.admin-post__cover img{width:100%;height:100%;object-fit:cover}
.admin-post__help summary{cursor:pointer;font-weight:600}
.admin-narrow{max-width:720px;margin-top:var(--s-20)}
.admin-log{margin:0;padding:var(--s-16);overflow:auto;max-height:480px;border-radius:var(--r-md);background:var(--surface-alt);font-family:var(--font-mono);font-size:var(--t-caption);line-height:1.7;white-space:pre-wrap}
.admin-grid-2{display:grid;gap:var(--s-16)}
@media (min-width:640px){.admin-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* 관리자: 확인할 초안 카드, 글 목록의 시각·비용, AI 연결·요금, 비용 */
.admin-kpi-link{color:inherit;text-decoration:none}
.admin-section{display:grid;gap:var(--s-16);margin-top:var(--s-32)}
.admin-section .admin-card__head h2{margin:0}
.admin-subhead{margin:var(--s-8) 0 0}
.admin-warn{color:var(--warn-text);font-weight:600}
.admin-drafts{display:grid;gap:var(--s-16);margin:0;padding:0;list-style:none}
@media (min-width:1200px){.admin-drafts{grid-template-columns:repeat(2,minmax(0,1fr))}}
.admin-draft{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:start;gap:var(--s-12);padding:var(--s-16)}
@media (min-width:640px){.admin-draft{grid-template-columns:160px minmax(0,1fr);gap:var(--s-16)}}
.admin-draft__media{display:block;overflow:hidden;border-radius:var(--r-md);aspect-ratio:3 / 2;background:var(--surface-alt)}
.admin-draft__media img{width:100%;height:100%;object-fit:cover}
.admin-draft__body{display:grid;gap:var(--s-8);min-width:0}
.admin-draft__meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-8);margin:0;color:var(--ink-muted);font-size:var(--t-caption)}
.admin-draft__title{margin:0;font-size:var(--t-body-lg);line-height:1.45;font-weight:700;word-break:keep-all}
.admin-draft__title a{color:var(--ink);text-decoration:none}
.admin-draft__title a:hover{text-decoration:underline}
.admin-draft__summary{margin:0;color:var(--ink-body);font-size:var(--t-body-sm);line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:keep-all}
.admin-draft__note{display:flex;gap:var(--s-6);align-items:flex-start;margin:0;color:var(--warn-text);font-size:var(--t-caption);line-height:1.55}
.admin-draft__note .ico{flex:none;margin-top:2px}
.admin-draft__actions{flex-wrap:wrap;gap:var(--s-8);margin-top:var(--s-4)}
.admin-table > .table{min-width:720px} /* 좁은 화면에서는 표를 옆으로 밀어 본다(.admin-table 이 가로 스크롤). 칸을 글자 하나 폭까지 줄이지 않는다 */
.admin-table > .admin-posts{min-width:900px}
.admin-posts td:first-child{min-width:240px}
.admin-posts td{vertical-align:middle}
.admin-posts__act{white-space:nowrap;text-align:right}
.admin-times{margin:0}
.admin-cost__total{margin:0;font-size:var(--t-heading-sm);font-weight:700;color:var(--ink)}
.admin-keys{display:grid;gap:var(--s-16)}
@media (min-width:1200px){.admin-keys{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}}
.admin-key__state{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-8);margin:0;font-size:var(--t-body-sm);color:var(--ink-body)}
.admin-key__meta{margin:0;color:var(--ink-muted);font-size:var(--t-caption)}
.admin-key details summary{cursor:pointer;font-weight:600;font-size:var(--t-body-sm)}
.admin-key details[open] summary{margin-bottom:var(--s-12)}
.admin-tasks{display:grid;gap:var(--s-16)}
.admin-task{display:grid;gap:var(--s-12);padding-bottom:var(--s-16);border-bottom:1px solid var(--line)}
.admin-task:last-of-type{border-bottom:0}
@media (min-width:768px){.admin-task{grid-template-columns:160px minmax(0,1fr) minmax(0,1fr);align-items:end}}
.admin-task__name{margin:0 0 var(--s-12);font-weight:700;color:var(--ink)}
.admin-table > .admin-prices{min-width:860px}
.admin-prices td:first-child,.admin-prices td:nth-child(2){white-space:nowrap}
.admin-prices .input{min-width:88px}
.admin-prices__foot{padding:var(--s-16) 0 var(--s-12);border-top:1px solid var(--line)}
.admin-prices__date,.admin-prices__remove{white-space:nowrap}
.admin-price__proposal{display:block;margin-top:var(--s-4);color:var(--warn-text);font-size:var(--t-caption)}
.admin-bars{display:grid;gap:var(--s-8);margin:0;padding:0;list-style:none}
.admin-bars li{display:grid;grid-template-columns:112px minmax(0,1fr) 88px;align-items:center;gap:var(--s-12);font-size:var(--t-body-sm)}
.admin-bars__track{height:8px;border-radius:var(--r-full);background:var(--surface-alt);overflow:hidden}
.admin-bars__fill{display:block;height:100%;width:calc(var(--v,0) * 100%);border-radius:inherit;background:var(--accent)}
.admin-bars__value{text-align:right;font-variant-numeric:tabular-nums}
