/* K브랜드고객만족대상 신청서 · 접수 내역 공용 스타일 (2026-09-14)
   /k-brand/ 본 페이지의 색·글꼴(아이보리 바탕 · 딥그린 면 · 금박)을 그대로 따른다. */
:root{
  --bg:#F7F4EC; --surface:#FFFCF4; --surface-2:#F1ECDE;
  --text:#141E1B; --muted:#57665F; --faint:#8A968F;
  --line:#DCD4C1; --line-soft:#E8E1D2;
  --gold:#8F6E22; --gold-bright:#B48F35; --gold-wash:#F0E6CC;
  --danger:#A63A2B; --ok:#2F6B45;
  --shadow:0 1px 2px rgba(20,30,27,.05),0 12px 32px -18px rgba(20,30,27,.28);
  --field:#0A1311; --field-2:#0F1D19; --field-edge:#22332D;
  --on-field:#F0EADB; --on-field-mid:#B8C6BD; --on-field-dim:#7E8F86;
  --foil-hi:#F6E7B6; --foil-mid:#C9A34C; --foil-lo:#8A6A20;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#0B1211; --surface:#111A18; --surface-2:#16211E;
    --text:#EDE7D6; --muted:#9BAAA3; --faint:#748179;
    --line:#2C3B38; --line-soft:#1B2725;
    --gold:#D6B063; --gold-bright:#F0DDA8; --gold-wash:#1E2620;
    --danger:#E58A7B; --ok:#8FD1A2;
    --shadow:0 1px 2px rgba(0,0,0,.4),0 16px 40px -22px rgba(0,0,0,.8);
  }
}
:root[data-theme="dark"]{
  --bg:#0B1211; --surface:#111A18; --surface-2:#16211E;
  --text:#EDE7D6; --muted:#9BAAA3; --faint:#748179;
  --line:#2C3B38; --line-soft:#1B2725;
  --gold:#D6B063; --gold-bright:#F0DDA8; --gold-wash:#1E2620;
  --danger:#E58A7B; --ok:#8FD1A2;
  --shadow:0 1px 2px rgba(0,0,0,.4),0 16px 40px -22px rgba(0,0,0,.8);
}

*{box-sizing:border-box}
body{
  margin:0;background:var(--bg);color:var(--text);
  font-family:'IBM Plex Sans KR','Apple SD Gothic Neo','Malgun Gothic',system-ui,sans-serif;
  font-weight:300;font-size:16px;line-height:1.75;word-break:keep-all;overflow-wrap:break-word;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3{font-family:'Gowun Batang','Nanum Myeongjo',Georgia,serif;font-weight:700;margin:0;line-height:1.32;letter-spacing:-.01em}
p{margin:0}
a{color:inherit}
:where(a,button,input,label):focus-visible{outline:2px solid var(--gold-bright);outline-offset:3px}
[hidden]{display:none!important}
.wrap{width:min(760px,100% - 2.5rem);margin-inline:auto}
.wrap-wide{width:min(1140px,100% - 2.5rem)}

/* 상단 띠 */
.bar{position:sticky;top:0;z-index:60;background:var(--field);border-bottom:1px solid var(--field-edge)}
.bar-in{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:60px}
.bar-mark{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--on-field)}
.bar-mark img{width:26px;height:26px;flex:none}
.bar-mark b{font-family:'Gowun Batang',serif;font-weight:700;font-size:.95rem;letter-spacing:.02em}
.bar-back{color:var(--on-field-mid);text-decoration:none;font-size:.82rem;white-space:nowrap}
.bar-back:hover{color:var(--foil-hi)}

/* 머리 */
.head{
  position:relative;overflow:hidden;background:var(--field);color:var(--on-field);
  padding-block:clamp(2.6rem,6vw,4rem);text-align:center;
}
.head::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(110% 90% at 50% 0%,rgba(201,163,76,.20),transparent 62%),
             linear-gradient(180deg,var(--field-2),var(--field) 60%);
}
.head-in{position:relative;display:flex;flex-direction:column;align-items:center;gap:.9rem}
.eyebrow{font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;color:var(--foil-mid);font-weight:500}
.head h1{font-size:clamp(1.7rem,4.6vw,2.4rem);color:var(--on-field)}
.head p{color:var(--on-field-mid);font-size:.95rem;max-width:44ch}
.rule{display:flex;align-items:center;gap:.7rem;color:var(--foil-mid);font-size:.7rem}
.rule i{display:block;width:3.2rem;height:1px;background:linear-gradient(90deg,transparent,var(--foil-mid))}
.rule i:last-child{background:linear-gradient(90deg,var(--foil-mid),transparent)}
.head-dates{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem 1.4rem;font-size:.85rem;color:var(--on-field-mid)}
.head-dates b{color:var(--foil-hi);font-weight:500}

/* 카드 */
.main{padding-block:clamp(2rem,5vw,3.5rem) clamp(3rem,7vw,5rem)}
.card{
  background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);
  padding:clamp(1.4rem,4vw,2.4rem);position:relative;
}
.card::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;
  background:linear-gradient(90deg,var(--foil-lo),var(--foil-hi) 50%,var(--foil-lo))}
.card h2{font-size:1.25rem;margin-bottom:.35rem}
.card-lead{color:var(--muted);font-size:.9rem;margin-bottom:1.6rem}

/* 입력 */
.field{display:block;margin-bottom:1.25rem}
.field-label{display:flex;align-items:baseline;gap:.4rem;font-size:.9rem;font-weight:500;margin-bottom:.45rem}
.field-label em{font-style:normal;color:var(--gold);font-size:.8rem}
.field input[type=text],.field input[type=tel],.field input[type=password]{
  width:100%;font:inherit;font-weight:400;color:var(--text);background:var(--bg);
  border:1px solid var(--line);border-radius:2px;padding:.78rem .9rem;min-height:48px;
  transition:border-color .2s,box-shadow .2s;
}
.field input:focus{outline:none;border-color:var(--gold-bright);box-shadow:0 0 0 3px var(--gold-wash)}
.field-hint{margin-top:.35rem;font-size:.8rem;color:var(--faint)}
.field-err{margin-top:.35rem;font-size:.82rem;color:var(--danger);font-weight:500}
.field-err:empty{display:none}
.field.is-bad input{border-color:var(--danger)}
.row2{display:grid;gap:0 1rem;grid-template-columns:1fr}
@media (min-width:640px){.row2{grid-template-columns:1fr 1fr}}

/* 첨부 */
.drop{position:relative;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;text-align:center;
  border:1.5px dashed var(--line);background:var(--bg);padding:1.4rem 1rem;cursor:pointer;
  transition:border-color .2s,background .2s;min-height:128px;
}
.drop:hover,.drop.is-over{border-color:var(--gold-bright);background:var(--gold-wash)}
.drop-icon{width:34px;height:34px;color:var(--gold)}
.drop-title{font-weight:500;font-size:.95rem}
.drop-sub{font-size:.8rem;color:var(--faint)}
.drop input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.file-chip{
  display:flex;align-items:center;gap:.75rem;margin-top:.6rem;padding:.6rem .8rem;
  border:1px solid var(--line);background:var(--surface-2);font-size:.88rem;
}
.file-chip span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.file-chip small{color:var(--faint);white-space:nowrap}
.file-chip button{border:0;background:none;color:var(--muted);font:inherit;font-size:.82rem;cursor:pointer;text-decoration:underline;padding:.2rem}

/* 동의 */
.agree{margin:1.6rem 0 1.4rem;border:1px solid var(--line-soft);background:var(--surface-2);padding:1rem 1.1rem}
.agree dl{margin:0 0 .8rem;display:grid;grid-template-columns:5.5rem 1fr;gap:.25rem .6rem;font-size:.82rem;color:var(--muted)}
.agree dt{font-weight:500;color:var(--text)}
.agree dd{margin:0}
.check{display:flex;align-items:flex-start;gap:.6rem;font-size:.92rem;font-weight:500;cursor:pointer}
.check input{width:20px;height:20px;margin:.2rem 0 0;accent-color:var(--foil-lo);flex:none}

/* 버튼 */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;text-decoration:none;cursor:pointer;
  font:inherit;font-size:.95rem;font-weight:500;padding:.85rem 1.6rem;border-radius:1px;border:0;min-height:50px;
  transition:filter .2s,background .2s,color .2s;
}
.btn-gold{background:linear-gradient(150deg,var(--foil-hi),var(--foil-mid) 55%,var(--foil-lo));color:#14120A}
.btn-gold:hover{filter:brightness(1.08)}
.btn-gold[disabled]{filter:grayscale(.6);opacity:.7;cursor:wait}
.btn-line{background:transparent;border:1px solid var(--line);color:var(--text)}
.btn-line:hover{border-color:var(--gold-bright);color:var(--gold)}
.btn-block{width:100%}
.form-msg{margin-top:.9rem;font-size:.9rem;color:var(--danger);font-weight:500;text-align:center}
.form-msg:empty{display:none}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* 접수 완료 */
.done{text-align:center;padding-block:1rem}
.done-mark{width:72px;height:72px;margin:0 auto 1rem}
.done h2{font-size:1.5rem;margin-bottom:.6rem}
.done p{color:var(--muted);font-size:.95rem}
.done-no{display:inline-block;margin:1.1rem 0 1.4rem;padding:.5rem 1.2rem;border:1px solid var(--line);background:var(--surface-2);font-size:.95rem}
.done-no b{font-family:'Cormorant Garamond',Georgia,serif;font-size:1.3rem;color:var(--gold);font-weight:600;margin-left:.3rem}
.done-actions{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center}

.foot{background:var(--field);color:var(--on-field-dim);border-top:1px solid var(--field-edge);padding-block:1.8rem;font-size:.8rem;text-align:center;line-height:1.8}
.foot a{text-decoration:none;color:var(--on-field-mid)}
.foot a:hover{color:var(--foil-hi)}

/* ── 접수 내역(관리) ── */
.adm-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.8rem;margin-bottom:1.2rem}
.adm-top h2{font-size:1.3rem}
.adm-count{color:var(--muted);font-size:.9rem}
.adm-count b{color:var(--gold);font-weight:600}
.adm-tools{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.adm-search{font:inherit;font-size:.9rem;padding:.55rem .8rem;border:1px solid var(--line);background:var(--bg);color:var(--text);min-width:0;width:14rem;max-width:100%}
.btn-sm{min-height:40px;padding:.5rem 1rem;font-size:.85rem}
.tablewrap{overflow-x:auto;border:1px solid var(--line);background:var(--surface)}
table{width:100%;border-collapse:collapse;font-size:.88rem;min-width:760px}
th,td{padding:.75rem .85rem;text-align:left;border-bottom:1px solid var(--line-soft);vertical-align:middle}
thead th{background:var(--surface-2);font-weight:500;color:var(--muted);font-size:.8rem;letter-spacing:.02em;white-space:nowrap}
tbody tr:hover{background:var(--gold-wash)}
td.no{font-family:'Cormorant Garamond',Georgia,serif;font-size:1.05rem;color:var(--gold);font-weight:600;white-space:nowrap}
td.nowrap{white-space:nowrap}
td a.file{color:var(--gold);font-weight:500;text-decoration:underline;text-underline-offset:3px}
.empty{padding:2.5rem 1rem;text-align:center;color:var(--faint)}
