:root{
  --paper:#f3f3ef;
  --paper-2:#ecece7;
  --surface:#fafaf7;
  --ink:#121212;
  --ink-2:#4d4d48;
  --muted:#7b7b74;
  --line:#cfcfc8;
  --line-dark:#9e9e96;
  --danger:#9f2d24;
  --white:#fff;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Noto Sans KR",sans-serif;-webkit-font-smoothing:antialiased}
body{min-height:100dvh}
button,input,select{font:inherit;color:inherit}
button{cursor:pointer}
a{color:inherit}
.muted{color:var(--muted);font-size:11px}
[hidden]{display:none!important}

/* MAP */
.map-page{overflow:hidden;background:var(--paper)}
.map-shell{position:relative;width:100%;height:100dvh;overflow:hidden}
.map-canvas{position:absolute;inset:0}
.map-header{position:absolute;z-index:10;top:0;left:0;right:0;height:76px;padding:0 24px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;background:var(--paper);border-bottom:1px solid rgba(18,18,18,.18)}
.brand-mark{display:flex;align-items:center;width:max-content;min-width:44px;height:52px;text-decoration:none}.site-logo{display:block;width:auto;max-width:72px;height:46px;object-fit:contain;object-position:left center}

.map-nav{display:flex;align-items:center;justify-content:flex-end;gap:18px}
.nav-text,.locate-control{border:0;background:none;padding:0}
.nav-text{height:36px;font-size:10px;font-weight:800;letter-spacing:.12em;border-bottom:1px solid transparent}
.nav-text:hover{border-bottom-color:var(--ink)}
.locate-control{position:relative;width:34px;height:34px;border:1px solid var(--ink);background:var(--paper)}
.locate-control:before,.locate-control:after,.locate-control span:before,.locate-control span:after{content:"";position:absolute;background:var(--ink)}
.locate-control:before{left:6px;right:6px;top:16px;height:1px}.locate-control:after{top:6px;bottom:6px;left:16px;width:1px}.locate-control span{position:absolute;inset:10px;border:1px solid var(--ink);border-radius:50%;background:var(--paper)}
.locate-control span:before,.locate-control span:after{display:none}
.map-message{position:absolute;z-index:12;top:92px;left:50%;transform:translateX(-50%);max-width:min(560px,calc(100% - 32px));background:var(--ink);color:var(--white);padding:11px 14px;font-size:12px;line-height:1.45}
.map-footer{position:absolute;z-index:9;left:24px;right:24px;bottom:max(20px,env(safe-area-inset-bottom));display:flex;align-items:end;justify-content:space-between;pointer-events:none}
.map-note{margin:0;padding:8px 10px;background:var(--paper);border-left:2px solid var(--ink);font-size:11px;color:var(--ink-2)}
.add-snowman{pointer-events:auto;display:flex;align-items:center;gap:16px;min-height:52px;padding:0 20px 0 0;border:0;background:var(--ink);color:var(--white);font-size:13px;font-weight:700;letter-spacing:-.02em;box-shadow:none}
.add-mark{width:52px;height:52px;display:grid;place-items:center;border-right:1px solid rgba(255,255,255,.32);font-size:20px;font-weight:400}
.partner-strip{position:absolute;z-index:11;left:24px;bottom:88px;width:min(520px,calc(100% - 48px));background:var(--surface);border-top:2px solid var(--ink);border-bottom:1px solid var(--ink);padding:12px 0}
.partner-strip .row{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center}
.partner-strip .overline{grid-column:1/-1;margin-bottom:2px}
.partner-strip strong{font-size:14px;letter-spacing:-.03em}.partner-strip .meta{margin-top:2px}
.partner-marker{width:34px;height:34px;border:1px solid var(--ink);border-radius:0;background:var(--ink);color:var(--white);display:grid;place-items:center;font-size:9px;font-weight:900;letter-spacing:.08em;padding:0}

/* DRAWERS */
dialog{color:var(--ink)}
.drawer{position:fixed;inset:0 0 0 auto;width:min(480px,100vw);max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;border-left:1px solid var(--ink);background:var(--surface);overflow:auto}
.drawer::backdrop{background:rgba(18,18,18,.36)}
.drawer-close{position:absolute;z-index:3;right:18px;top:18px;border:0;border-bottom:1px solid var(--ink);background:rgba(250,250,247,.92);padding:5px 0 4px;font-size:10px;font-weight:800;letter-spacing:.08em}
.drawer-media{height:46vh;min-height:300px;background:#dadad4;border-bottom:1px solid var(--ink)}
.detail-image{display:block;width:100%;height:100%;object-fit:cover}
.drawer-body{padding:32px 30px 38px}
.detail-heading{padding:2px 0 24px;border-bottom:1px solid var(--ink)}
.overline{display:block;font-size:9px;line-height:1.2;font-weight:900;letter-spacing:.17em;color:var(--ink-2)}
.detail-heading h1,.form-title h1{margin:8px 0 7px;font-size:34px;line-height:1.08;letter-spacing:-.055em;font-weight:760}
.meta{margin:0;color:var(--muted);font-size:11px;line-height:1.5}
.primary-actions{display:grid;grid-template-columns:1.4fr 1fr 1fr;border-bottom:1px solid var(--ink)}
.primary-actions button{height:50px;border:0;border-right:1px solid var(--line-dark);background:transparent;font-size:12px;font-weight:750}
.primary-actions button:last-child{border-right:0}.primary-actions .action-main{background:var(--ink);color:var(--white)}
.verification-block{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:end;padding:24px 0;border-bottom:1px solid var(--line-dark)}
.verification-block p{margin:7px 0 0;font-size:13px;letter-spacing:-.02em}.verification-actions{display:flex;gap:12px}
.verification-actions button{padding:0 0 4px;border:0;border-bottom:1px solid var(--ink);background:none;font-size:11px;font-weight:700}
.report-link{margin-top:26px;padding:0;border:0;border-bottom:1px solid var(--danger);background:none;color:var(--danger);font-size:10px}

/* FORMS */
.form-body{padding-top:72px}.form-title{padding-bottom:26px;border-bottom:1px solid var(--ink)}
.form-title p{max-width:340px;margin:12px 0 0;color:var(--muted);font-size:12px;line-height:1.6}.compact-title h1{font-size:27px}
.editorial-form{display:block}.field-block{display:grid;grid-template-columns:34px 1fr;gap:14px;padding:20px 0;border-bottom:1px solid var(--line);font-size:12px}
.field-number{font-size:9px;font-weight:800;letter-spacing:.08em;color:var(--muted);padding-top:2px}.field-copy{display:grid;gap:4px}.field-copy b{font-size:13px}.field-copy small{font-size:10px;font-weight:400;color:var(--muted);line-height:1.45}
.file-input{grid-column:2;margin-top:8px;width:100%;font-size:11px}.file-input::file-selector-button{border:1px solid var(--ink);background:transparent;padding:8px 10px;margin-right:10px;font-size:10px;font-weight:700}
.text-field-block input{grid-column:2;width:100%;height:42px;border:0;border-bottom:1px solid var(--ink);border-radius:0;background:transparent;padding:0;font-size:15px;outline:none}.text-field-block input:focus{border-bottom-width:2px}
.location-block{align-items:start}.privacy-option{display:grid;grid-template-columns:18px 1fr;column-gap:8px;row-gap:3px;padding:18px 0;font-size:11px}.privacy-option input{margin:1px 0 0;width:14px;height:14px;accent-color:var(--ink)}.privacy-option small{grid-column:2;color:var(--muted);font-size:10px}
.submit-wide{width:100%;min-height:52px;border:1px solid var(--ink);border-radius:0;background:var(--ink);color:var(--white);font-size:12px;font-weight:800;letter-spacing:.02em}.submit-wide:disabled{opacity:.48}
.error{min-height:16px;margin:9px 0 0;color:var(--danger);font-size:11px}
.choice-list{margin-top:8px}.choice-list label{display:grid;grid-template-columns:24px 1fr;align-items:center;padding:15px 0;border-bottom:1px solid var(--line);font-size:13px}.choice-list input{width:15px;height:15px;accent-color:var(--ink)}.choice-list .submit-wide{margin-top:24px}

/* MY WINTER */



/* MY WINTER */
.winter-body{
  display:flex;
  flex-direction:column;
  min-height:100%;
}
.winter-header{
  padding:4px 0 18px;
  border-bottom:1px solid var(--ink);
}
.winter-header h1{
  margin:0;
  font-size:24px;
  line-height:1;
  font-weight:760;
  letter-spacing:-.045em;
}
.winter-found{
  display:grid;
  gap:4px;
  padding:24px 0 18px;
}
.winter-found strong{
  font-size:44px;
  line-height:.9;
  font-weight:760;
  letter-spacing:-.055em;
}
.winter-found span{
  font-size:9px;
  font-weight:800;
  letter-spacing:.15em;
}
.winter-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:3px;
}
.winter-tile{
  position:relative;
  display:block;
  width:100%;
  aspect-ratio:1;
  overflow:hidden;
  padding:0;
  border:0;
  border-radius:0;
  background:var(--paper-2);
}
.winter-tile img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.winter-tile-fallback{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  font-size:9px;
  font-weight:800;
  letter-spacing:.12em;
  color:var(--muted);
}
.winter-empty{
  grid-column:1/-1;
  margin:0;
  padding:48px 0 54px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  font-size:9px;
  font-weight:800;
  letter-spacing:.14em;
  color:var(--muted);
}
.winter-account{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-top:32px;
  padding:18px 0 2px;
  border-top:1px solid var(--ink);
}
.winter-account-copy{
  display:grid;
  gap:4px;
  min-width:0;
}
.winter-account-copy strong{
  font-size:11px;
  line-height:1.2;
  letter-spacing:.02em;
}
.winter-account-copy span{
  font-size:10px;
  line-height:1.4;
  color:var(--muted);
}
.winter-account-actions{
  display:flex;
  align-items:center;
  gap:14px;
  flex:0 0 auto;
}
.winter-account-primary,
.winter-account-secondary,
.account-switch{
  width:max-content;
  padding:0 0 3px;
  border:0;
  border-bottom:1px solid var(--ink);
  border-radius:0;
  background:none;
  font-size:9px;
  font-weight:800;
  letter-spacing:.08em;
}
.winter-account-secondary{
  border-bottom-color:var(--line-dark);
  color:var(--muted);
}
.account-form{
  display:grid;
  gap:0;
  padding-top:8px;
}
.account-field{
  display:grid;
  gap:9px;
  padding:18px 0;
  border-bottom:1px solid var(--line);
}
.account-field>span{
  font-size:9px;
  font-weight:800;
  letter-spacing:.1em;
}
.account-field input{
  width:100%;
  height:44px;
  padding:0;
  border:0;
  border-bottom:1px solid var(--ink);
  border-radius:0;
  outline:none;
  background:transparent;
  font-size:16px;
}
.account-form .submit-wide{
  margin-top:24px;
}
.account-switch{
  margin-top:18px;
  justify-self:start;
}

@media(max-width:640px){
  .winter-header{
    padding-top:2px;
  }
  .winter-header h1{
    font-size:22px;
  }
  .winter-found{
    padding:22px 0 16px;
  }
  .winter-found strong{
    font-size:40px;
  }
  .winter-grid{
    gap:2px;
  }
  .winter-account{
    align-items:flex-start;
    flex-direction:column;
    gap:14px;
    margin-top:28px;
  }
  .winter-account-actions{
    width:100%;
    justify-content:flex-start;
    gap:18px;
  }
  .account-field input{
    font-size:16px;
  }
}

/* ADS */
.ad-card{margin-top:26px;border-top:2px solid var(--ink);border-bottom:1px solid var(--ink);padding:12px 0 14px}.ad-card img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;margin:10px 0 12px}.ad-card strong{display:block;font-size:15px;letter-spacing:-.03em}.ad-card .meta,.ad-card .muted{margin-top:4px;color:var(--muted);font-size:10px}.ad-actions{display:flex;gap:16px;margin-top:14px}.ad-actions a,.ad-actions button,.partner-strip a,.partner-strip button{min-height:32px;border:0;border-bottom:1px solid var(--ink);border-radius:0;background:none;padding:0;font-size:10px;font-weight:800;text-decoration:none;display:inline-flex;align-items:center}.ad-actions .ad-open,.partner-strip .map-ad-open{background:var(--ink);color:var(--white);padding:0 12px;border:0}

/* MAPBOX */
.mapboxgl-ctrl-bottom-left{left:8px!important;bottom:70px!important}.mapboxgl-ctrl-bottom-right{right:8px!important;bottom:70px!important}.mapboxgl-ctrl-attrib{font-size:9px!important;background:rgba(243,243,239,.78)!important}.mapboxgl-ctrl-logo{opacity:.48}

/* ADMIN */
.admin-page{background:var(--paper-2);min-width:320px}.admin-frame{min-height:100dvh;display:grid;grid-template-columns:180px minmax(0,1fr)}
.admin-rail{position:sticky;top:0;height:100dvh;padding:24px 18px;display:flex;flex-direction:column;border-right:1px solid var(--ink);background:var(--ink);color:var(--white)}
.admin-brand{display:flex;align-items:center;width:52px;height:52px;text-decoration:none}.admin-site-logo{display:block;max-width:52px;max-height:52px;object-fit:contain;object-position:left center}
.admin-nav{display:grid;gap:14px;margin-top:64px}.admin-nav a{width:max-content;text-decoration:none;font-size:9px;font-weight:800;letter-spacing:.14em;color:#bdbdb6}.admin-nav a:hover{color:var(--white)}
.admin-logout{margin-top:auto;width:max-content;padding:5px 0;border:0;border-bottom:1px solid #777;background:none;color:#bdbdb6;font-size:9px;font-weight:800;letter-spacing:.12em}
.admin-content{padding:30px 36px 72px;min-width:0}.admin-content-head{display:flex;align-items:end;justify-content:space-between;padding-bottom:18px;border-bottom:2px solid var(--ink)}.admin-content-head h1{margin:7px 0 0;font-size:34px;letter-spacing:-.06em}.admin-content-head time{font-size:10px;color:var(--muted);letter-spacing:.08em}
.metrics-strip{display:grid;grid-template-columns:repeat(6,1fr);border-bottom:1px solid var(--ink)}.metric{padding:17px 12px 18px 0}.metric+.metric{padding-left:14px;border-left:1px solid var(--line-dark)}.metric span{display:block;font-size:8px;font-weight:800;letter-spacing:.14em;color:var(--muted)}.metric strong{display:block;margin-top:5px;font-size:25px;line-height:1;font-weight:700}
.admin-section{padding:34px 0 44px;border-bottom:1px solid var(--ink)}.section-heading{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:end;margin-bottom:18px}.section-heading>div:first-child{display:flex;align-items:baseline;gap:11px}.section-index{font-size:9px;color:var(--muted)}.section-heading h2{margin:0;font-size:23px;letter-spacing:-.04em}.section-heading>div:last-child{display:flex;align-items:center;gap:16px}.section-heading p{margin:0;font-size:10px;color:var(--muted)}
.quiet-button{padding:0 0 3px;border:0;border-bottom:1px solid var(--ink);background:none;font-size:9px;font-weight:800;letter-spacing:.1em}
.branding-editor{display:grid;grid-template-columns:180px minmax(240px,420px);gap:28px;align-items:start;border-top:2px solid var(--ink);padding-top:16px}.branding-preview-wrap{display:flex;align-items:center;justify-content:center;width:180px;height:180px;background:#e6e6e0;border:1px solid var(--line-dark)}.branding-preview{display:block;max-width:138px;max-height:138px;object-fit:contain}.branding-empty{font-size:8px;font-weight:800;letter-spacing:.14em;color:var(--muted)}.branding-controls{display:grid;gap:18px}.branding-file{display:grid;gap:8px;padding-bottom:14px;border-bottom:1px solid var(--line)}.branding-file>span{font-size:8px;font-weight:900;letter-spacing:.12em;color:var(--muted)}.branding-file input{font-size:10px}.branding-actions{display:flex;align-items:center;gap:16px}
.analytics-chart{display:grid;grid-template-columns:repeat(30,minmax(18px,1fr));gap:3px;align-items:end;height:180px;padding-top:20px;border-top:1px solid var(--line);overflow-x:auto}.bar-day{display:grid;grid-template-rows:130px auto;gap:7px;min-width:18px}.bar-stack{display:flex;align-items:end;gap:1px;height:130px}.bar{width:50%;min-height:1px;background:var(--ink);border-radius:0}.bar.alt{background:#9c9c95}.bar-day small{font-size:7px;color:var(--muted);text-align:center;white-space:nowrap}
.table-wrap{width:100%;overflow:auto;border-top:1px solid var(--ink)}.table{width:100%;border-collapse:collapse;font-size:11px}.table th{padding:10px 12px 9px 0;border-bottom:1px solid var(--line-dark);text-align:left;font-size:8px;font-weight:900;letter-spacing:.09em;color:var(--muted);white-space:nowrap}.table td{padding:11px 12px 11px 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;white-space:nowrap}.thumb{display:block;width:48px;height:48px;object-fit:cover;border-radius:0;background:#ddd}.inline-actions{display:flex;gap:9px;align-items:center}.inline-actions button{min-height:0;padding:2px 0;border:0;border-bottom:1px solid var(--ink);border-radius:0;background:none;font-size:9px}.inline-actions button:last-child{color:var(--danger);border-color:var(--danger)}.linkish{text-underline-offset:3px}
.campaign-form{border-top:2px solid var(--ink);padding-top:14px}.campaign-form-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:14px;border-bottom:1px solid var(--line)}.campaign-form-head strong{font-size:12px}.campaign-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:20px}.campaign-fields label{display:grid;gap:7px;padding:14px 0;border-bottom:1px solid var(--line)}.campaign-fields label>span{font-size:9px;font-weight:700;color:var(--muted)}.campaign-fields input,.campaign-fields select{width:100%;height:35px;border:0;border-bottom:1px solid var(--line-dark);border-radius:0;background:transparent;padding:0;font-size:11px;outline:none}.campaign-fields input:focus,.campaign-fields select:focus{border-bottom-color:var(--ink)}.campaign-fields .span-2{grid-column:span 2}.campaign-fields .toggle-field{display:flex;align-items:center;flex-direction:row;gap:8px}.toggle-field input{width:14px;height:14px;accent-color:var(--ink)}.campaign-submit{display:flex;align-items:center;gap:16px;padding-top:18px}.admin-submit{min-height:40px;padding:0 16px;border:1px solid var(--ink);background:var(--ink);color:var(--white);font-size:9px;font-weight:900;letter-spacing:.08em}.campaign-submit p{margin:0;font-size:10px;color:var(--muted)}.campaign-table{margin-top:28px}
.admin-login{grid-column:2;align-self:start;width:min(700px,calc(100% - 72px));margin:14vh auto 0;display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-top:20px;border-top:2px solid var(--ink)}.login-copy h1{margin:12px 0 7px;font-size:34px;letter-spacing:-.055em}.login-copy p{margin:0;color:var(--muted);font-size:11px}.login-form{display:grid;gap:18px}.login-form label{display:grid;gap:6px}.login-form label span{font-size:8px;font-weight:900;letter-spacing:.12em;color:var(--muted)}.login-form input{height:40px;border:0;border-bottom:1px solid var(--ink);border-radius:0;background:transparent;outline:none}.login-form button{height:42px;border:1px solid var(--ink);background:var(--ink);color:var(--white);font-size:9px;font-weight:900;letter-spacing:.12em}

/* REPORT */
.report-page{background:var(--paper)}.report-shell{max-width:1080px;margin:0 auto;padding:28px 34px 70px}.report-header{display:flex;align-items:end;justify-content:space-between;padding-bottom:18px;border-bottom:2px solid var(--ink);font-size:9px;font-weight:800;letter-spacing:.13em}.report-brand{display:flex;align-items:center;min-width:44px;height:46px;text-decoration:none}.report-site-logo{display:block;max-width:64px;max-height:42px;object-fit:contain;object-position:left center}.report-content{padding-top:38px}.report-content h1{max-width:700px;margin:7px 0 10px;font-size:42px;line-height:1.05;letter-spacing:-.06em}.report-content h2{margin:42px 0 14px;font-size:19px;letter-spacing:-.04em}.report-kpis{display:grid;grid-template-columns:repeat(4,1fr);margin-top:34px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.report-kpi{padding:18px 14px 18px 0}.report-kpi+.report-kpi{padding-left:14px;border-left:1px solid var(--line-dark)}.report-kpi span{display:block;font-size:8px;letter-spacing:.12em;color:var(--muted)}.report-kpi strong{display:block;margin-top:7px;font-size:30px;font-weight:700;line-height:1}.report-bars{display:grid;gap:9px;border-top:1px solid var(--line);padding-top:14px}.report-bar-row{display:grid;grid-template-columns:66px 1fr 44px;gap:12px;align-items:center;font-size:9px}.report-bar-track{height:4px;background:#d9d9d3;overflow:hidden}.report-bar-fill{height:100%;background:var(--ink)}
.legal{max-width:760px;margin:40px auto;padding:24px;line-height:1.7}

@media(max-width:900px){
  .admin-frame{grid-template-columns:1fr}.admin-rail{position:relative;height:auto;padding:16px 18px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;border-right:0;border-bottom:1px solid var(--ink)}.admin-nav{display:flex;justify-content:center;gap:14px;margin:0}.admin-logout{margin:0}.admin-content{padding:24px 18px 60px}.admin-login{grid-column:1;width:calc(100% - 36px);grid-template-columns:1fr;gap:34px;margin-top:10vh}.metrics-strip{grid-template-columns:repeat(3,1fr)}.metric:nth-child(4){border-left:0;padding-left:0}.metric:nth-child(-n+3){border-bottom:1px solid var(--line)}.campaign-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
  .map-header{
    height:68px;
    padding:0 14px;
    grid-template-columns:minmax(0,1fr) auto;
    background:var(--paper-2);
    border-bottom-color:var(--line);
  }
  .brand-mark{
    height:52px;
    min-width:52px;
    padding:4px 0;
  }
  .site-logo{
    max-width:64px;
    height:44px;
    object-fit:contain;
    object-position:left center;
  }
  .map-nav{gap:14px}
  .nav-text{font-size:9px}
  .locate-control{
    width:32px;
    height:32px;
    background:transparent;
  }
  .locate-control:before{top:15px}
  .locate-control:after{left:15px}
  .locate-control span{inset:9px}

  .map-footer{
    left:auto;
    right:14px;
    bottom:max(14px,env(safe-area-inset-bottom));
    width:auto;
    justify-content:flex-end;
  }
  .map-note{display:none}
  .add-snowman{
    min-height:48px;
    margin-left:auto;
  }
  .add-mark{
    width:48px;
    height:48px;
  }
  .partner-strip{
    left:14px;
    bottom:76px;
    width:calc(100% - 28px);
    padding:10px 0;
  }
  .partner-strip .row{grid-template-columns:1fr auto}
  .partner-strip .map-ad-open{display:none}
  .drawer{top:auto;left:0;right:0;width:100%;height:auto;max-height:92dvh;border-left:0;border-top:1px solid var(--ink)}.drawer-media{height:42dvh;min-height:240px}.drawer-body{padding:26px 20px 30px}.drawer-close{top:13px;right:14px}.detail-drawer .drawer-close{background:rgba(250,250,247,.92);padding:6px}.detail-heading h1,.form-title h1{font-size:29px}.primary-actions{grid-template-columns:1.3fr 1fr 1fr}.primary-actions button{height:47px;font-size:11px}.verification-block{grid-template-columns:1fr;gap:14px}.verification-actions{justify-content:flex-start}.form-body{padding-top:62px}.compact-drawer{max-height:72dvh}.winter-drawer{max-height:82dvh}
  .admin-rail{grid-template-columns:auto auto}.admin-nav{display:none}.admin-content-head h1{font-size:29px}.metrics-strip{grid-template-columns:repeat(2,1fr)}.metric:nth-child(odd){border-left:0;padding-left:0}.metric:nth-child(even){border-left:1px solid var(--line-dark);padding-left:14px}.metric{border-bottom:1px solid var(--line)}.section-heading{grid-template-columns:1fr}.section-heading>div:last-child{justify-content:space-between}.branding-editor{grid-template-columns:1fr}.branding-preview-wrap{width:140px;height:140px}.campaign-fields{grid-template-columns:1fr}.campaign-fields .span-2{grid-column:auto}.admin-login{grid-template-columns:1fr}.analytics-chart{grid-template-columns:repeat(30,18px)}
  .report-shell{padding:20px 16px 50px}.report-content h1{font-size:32px}.report-kpis{grid-template-columns:repeat(2,1fr)}.report-kpi:nth-child(3){border-left:0;padding-left:0;border-top:1px solid var(--line)}.report-kpi:nth-child(4){border-top:1px solid var(--line)}
}


/* CUSTOM FILE PICKERS
   Native file inputs are visually hidden so browser/OS-localized labels
   never appear in the NUNDE interface. */
.native-file-input{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
  opacity:0!important;
  pointer-events:none!important;
}

.photo-field-block{
  position:relative;
}

.file-picker{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:16px;
  width:min(100%,440px);
  min-height:44px;
  padding:0;
  border:0;
  border-bottom:1px solid var(--ink);
  border-radius:0;
  background:transparent;
  color:var(--ink);
  text-align:left;
  cursor:pointer;
}

.file-picker:hover .file-picker-action,
.file-picker:focus-visible .file-picker-action{
  text-decoration:underline;
  text-underline-offset:4px;
}

.file-picker:focus-visible{
  outline:1px solid var(--ink);
  outline-offset:5px;
}

.file-picker-action{
  font-size:9px;
  font-weight:900;
  letter-spacing:.1em;
  white-space:nowrap;
}

.file-picker-name{
  min-width:0;
  overflow:hidden;
  color:var(--muted);
  font-size:10px;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.file-picker-name.has-file{
  color:var(--ink);
}

.admin-file-picker{
  width:100%;
}

.branding-file{
  display:grid;
  gap:8px;
  padding-bottom:14px;
  border-bottom:1px solid var(--line);
}

.branding-file>span{
  font-size:8px;
  font-weight:900;
  letter-spacing:.12em;
  color:var(--muted);
}

@media(max-width:640px){
  .file-picker{
    width:100%;
    grid-template-columns:1fr;
    gap:4px;
    padding:10px 0;
  }
}

/* EASTER EGGS */
.marker-brand-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:34px;padding-top:18px;border-top:1px solid var(--line-dark)}
.marker-brand-editor{display:grid;gap:14px;min-width:0}
.marker-brand-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.marker-brand-head strong{font-size:10px;letter-spacing:.08em}
.marker-brand-head span{font-size:9px;color:var(--muted)}
.marker-brand-preview{display:flex;align-items:center;justify-content:center;width:120px;height:120px;background:#e6e6e0;border:1px solid var(--line-dark)}
.marker-brand-preview .branding-preview{max-width:92px;max-height:92px}
.easter-fields{grid-template-columns:repeat(4,minmax(0,1fr))}
.easter-popup{display:grid;gap:4px;min-width:92px;padding:2px 0}
.easter-popup span{font-size:8px;font-weight:900;letter-spacing:.12em;color:#77776f}
.easter-popup strong{font-size:12px;letter-spacing:-.02em}
.mapboxgl-popup-content{border-radius:0;box-shadow:0 4px 18px rgba(0,0,0,.14)}
@media(max-width:640px){
  .marker-brand-grid{grid-template-columns:1fr}
  .easter-fields{grid-template-columns:1fr}
}





/* ADMIN USERS */
.user-metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border-top:2px solid var(--ink);
  border-bottom:1px solid var(--ink);
}
.user-metric{
  min-width:0;
  padding:18px 16px 16px 0;
}
.user-metric+.user-metric{
  padding-left:16px;
  border-left:1px solid var(--line-dark);
}
.user-metric span{
  display:block;
  font-size:8px;
  font-weight:800;
  letter-spacing:.12em;
  color:var(--muted);
}
.user-metric strong{
  display:block;
  margin-top:6px;
  font-size:30px;
  line-height:1;
  letter-spacing:-.04em;
}
.users-table{
  margin-top:20px;
}
.users-table td strong{
  font-size:11px;
}
@media(max-width:760px){
  .user-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .user-metric:nth-child(3){
    padding-left:0;
    border-left:0;
    border-top:1px solid var(--line-dark);
  }
  .user-metric:nth-child(4){
    border-top:1px solid var(--line-dark);
  }
}
