/* 건빵마당: 녹색 포장지와 크림색 종이 라벨. 기본 테마 위에 적용한다. */
:root {
  --pack-page:#f1ecda;--pack-paper:#fffcf0;--pack-paper-2:#e6e2cb;
  --pack-ink:#173f2e;--pack-muted:#586550;--pack-line:#b8bda3;--pack-line-strong:#849477;
  --pack-accent:#24593c;--pack-accent-text:#fff9e6;--pack-wash:#e3e9d4;
  --pack-gold:#846027;--pack-gold-wash:#eadcba;
}
[data-theme="dark"] {
  --pack-page:#14251b;--pack-paper:#1d3123;--pack-paper-2:#2b422d;
  --pack-ink:#f3ecd5;--pack-muted:#bbc7ad;--pack-line:#486047;--pack-line-strong:#7e9871;
  --pack-accent:#c6d6a8;--pack-accent-text:#1a2c1d;--pack-wash:#2c4730;
  --pack-gold:#d9c18a;--pack-gold-wash:#423b27;
}
@media (prefers-color-scheme:dark) {
  :root:not([data-theme="light"]) {
    --pack-page:#14251b;--pack-paper:#1d3123;--pack-paper-2:#2b422d;
    --pack-ink:#f3ecd5;--pack-muted:#bbc7ad;--pack-line:#486047;--pack-line-strong:#7e9871;
    --pack-accent:#c6d6a8;--pack-accent-text:#1a2c1d;--pack-wash:#2c4730;
    --pack-gold:#d9c18a;--pack-gold-wash:#423b27;
  }
}
body:not(.admin-page) {
  --color-base-100:var(--pack-paper);--color-base-200:var(--pack-page);
  --color-base-300:var(--pack-paper-2);--color-base-content:var(--pack-ink);
  --color-primary:var(--pack-accent);--color-primary-content:var(--pack-accent-text);
  --color-secondary:var(--pack-gold);--color-secondary-content:var(--pack-paper);
  --color-accent:var(--pack-accent);--color-accent-content:var(--pack-accent-text);
  --brand-vivid:var(--pack-accent);--brand-deep:var(--pack-ink);--brand-wash:var(--pack-wash);
  --bc-10:color-mix(in srgb,var(--pack-ink) 16%,transparent);
  --bc-20:color-mix(in srgb,var(--pack-ink) 28%,transparent);
  --bc-soft:var(--pack-muted);--bc-mid:var(--pack-muted);--bc-strong:var(--pack-ink);
  --radius-field:5px;--radius-box:7px;
  --tone-0:#3d694a;--tone-1:#667c45;--tone-2:#8a6839;
  --tone-3:#42725c;--tone-4:#7c6649;--tone-5:#536440;
  --shadow-1:2px 3px 0 color-mix(in srgb,var(--pack-ink) 9%,transparent);
  --shadow-2:4px 5px 0 color-mix(in srgb,var(--pack-ink) 12%,transparent);
  --shadow-3:5px 7px 0 color-mix(in srgb,var(--pack-ink) 16%,transparent);
  background:radial-gradient(color-mix(in srgb,var(--pack-ink) 6%,transparent) .6px,transparent .6px) 0 0 / 5px 5px,var(--pack-page);
}
body:not(.admin-page) .site-header {
  position:relative;border-top:9px solid transparent;
  border-image:repeating-linear-gradient(90deg,var(--pack-ink) 0 9px,var(--pack-paper) 9px 17px) 9;
  background:var(--pack-paper);backdrop-filter:none;box-shadow:0 1px 0 var(--pack-line-strong);
}
body:not(.admin-page) .brand-logo,body:not(.admin-page) .brand .brand-logo {border:3px double var(--pack-ink);border-radius:50%;background:var(--pack-paper);color:var(--pack-ink);box-shadow:none;transform:none}
body:not(.admin-page) .brand-name {font-weight:950;letter-spacing:-.05em}
body:not(.admin-page) .header-tabs {background:var(--pack-paper);border-bottom:3px double var(--pack-line)}
body:not(.admin-page) .header-tabs .tab {font-weight:800}
body:not(.admin-page) .btn,body:not(.admin-page) .input,
body:not(.admin-page) .select,body:not(.admin-page) .textarea {border-radius:5px}
body:not(.admin-page) .card {border-radius:7px;border-color:var(--pack-line);background:var(--pack-paper);box-shadow:var(--shadow-1)}
body:not(.admin-page) .card-title {font-weight:850}
body:not(.admin-page) .post-cover {border-radius:5px 5px 0 0}
body:not(.admin-page) .post-cover:after {display:none}
body:not(.admin-page) .feed-head h2 {font-weight:950;letter-spacing:-.035em}
body:not(.admin-page) .feed-head h2:after {border-radius:0;background:var(--pack-accent);transform:rotate(45deg)}
body:not(.admin-page) .feed-lines .list-row {border-radius:0}
body:not(.admin-page) .page-head {padding-bottom:18px;border-bottom:3px double var(--pack-line-strong)}
body:not(.admin-page) .page-head h1 {font-weight:950}
body:not(.admin-page) .article-head {border-bottom:3px double var(--pack-line-strong)}
body:not(.admin-page) .auth-card {border-radius:7px;border-top:5px double var(--pack-ink)}
body:not(.admin-page) .auth-mark {border:3px double var(--pack-accent);border-radius:50%;background:var(--pack-wash);color:var(--pack-accent)}
body:not(.admin-page) .shortcut-icon {border:3px double var(--pack-line-strong);border-radius:50%;box-shadow:none}
body:not(.admin-page) .guide-card {border-radius:6px;border:1px solid var(--pack-line-strong);box-shadow:var(--shadow-1)}
body:not(.admin-page) .footer {position:relative;border-top:3px double var(--pack-line-strong);background:var(--pack-paper)}
body:not(.admin-page) .footer:before {content:"";position:absolute;left:0;right:0;top:0;height:8px;background:repeating-linear-gradient(90deg,var(--pack-ink) 0 9px,var(--pack-paper) 9px 17px);pointer-events:none}
body:not(.admin-page) :focus-visible {outline-color:var(--pack-accent)}

/* 포장지 앞면. 글·버튼은 실제 콘텐츠, 엠블럼만 장식이다. */
body.home-page .hero.hardtack-pack {
  position:relative;isolation:isolate;overflow:hidden;border:1px solid #173a27;
  border-radius:4px!important;background:
    linear-gradient(116deg,transparent 42%,rgba(255,255,255,.035) 43%,transparent 45%),
    linear-gradient(26deg,transparent 67%,rgba(0,0,0,.09) 68%,transparent 70%),#194c33;
  color:#fff7df;box-shadow:5px 6px 0 color-mix(in srgb,var(--pack-ink) 16%,transparent);
}
body.home-page .hardtack-pack:before,body.home-page .hardtack-pack:after {
  content:"";position:absolute;z-index:2;left:0;right:0;width:auto;height:15px;transform:none;
  border-block:1px solid #f5efd9;border-radius:0;pointer-events:none;
  background:repeating-linear-gradient(90deg,#f5efd9 0 9px,#194c33 9px 19px);
}
body.home-page .hardtack-pack:before {top:0;bottom:auto}
body.home-page .hardtack-pack:after {bottom:0;top:auto}
body.home-page .hardtack-pack .hero-content {grid-template-columns:minmax(0,1.25fr) minmax(210px,.75fr);gap:48px;min-height:0;max-width:none;padding:48px 46px 30px}
body.home-page .hardtack-pack .hero-copy {max-width:660px}
body.home-page .hardtack-pack .hero-kicker {padding:0;border:0;border-radius:0;background:none;color:#d4dfc2;font:11px/1.5 var(--mono);letter-spacing:.14em}
body.home-page .hardtack-pack h1 {color:#fff7df;white-space:pre-line;font-size:clamp(36px,4.8vw,64px);line-height:1.2;font-weight:950;text-wrap:balance}
body.home-page .hardtack-pack .hero-copy>p {max-width:520px;color:#d4dfc2;font-size:16px;line-height:1.85}
body.home-page .hardtack-pack .hero-actions {--color-primary:#fff1ca;--color-primary-content:#19412d;--color-base-content:#fff7df;gap:10px}
body.home-page .hardtack-pack .hero-actions .btn {min-width:126px;border-radius:3px;box-shadow:none}
body.home-page .hardtack-pack .hero-actions .btn-outline {border-color:#d4dfc2;color:#fff7df;background:transparent}
body.home-page .hardtack-pack .hero-actions .btn-outline:hover {color:#19412d;background:#fff1ca;border-color:#fff1ca}
.hardtack-pack-foot {display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin:0 46px;padding:14px 0 30px;border-top:3px double #b7c9a0;color:#d4dfc2;font:11px/1.6 var(--mono);letter-spacing:.06em}
.hardtack-emblem {display:flex;align-items:center;flex-direction:column;gap:10px;text-align:center;color:#fff7df;transform:rotate(-4deg)}
.hardtack-emblem-caption {font-size:11px;letter-spacing:.13em}
.hardtack-pack-name {font-size:70px;line-height:1.1;font-weight:950;letter-spacing:.05em}
.hardtack-window {position:relative;width:184px;height:184px;margin-block:8px;border:8px solid #f7f0d7;border-radius:50%;outline:2px solid #f7f0d7;outline-offset:5px;background:#dccca2;box-shadow:inset 0 0 0 4px #194c33;overflow:hidden}
.hardtack-window:after {content:"";position:absolute;inset:8px;border:2px dashed #194c33;border-radius:50%;pointer-events:none}
.hardtack-biscuit {position:absolute;width:76px;height:62px;border:2px solid #ad8242;border-radius:19px;background:radial-gradient(ellipse,#8e672e 0 2px,#c29451 2px 3px,transparent 3px) 8px 7px / 21px 18px,#e9bb73;box-shadow:inset 0 0 0 4px #f4d69c,3px 5px 0 rgba(85,60,22,.2)}
.hardtack-biscuit:nth-child(1) {left:18px;top:27px;transform:rotate(-25deg)}
.hardtack-biscuit:nth-child(2) {right:14px;top:55px;transform:rotate(24deg)}
.hardtack-biscuit:nth-child(3) {left:32px;bottom:23px;transform:rotate(-10deg)}
@media (max-width:960px) {
  body.home-page .hardtack-pack .hero-content {grid-template-columns:minmax(0,1fr) 205px;gap:24px;padding:40px 30px 24px}
  .hardtack-pack-foot {margin-inline:30px}
  .hardtack-pack-name {font-size:57px}
}
@media (max-width:640px) {
  body.home-page .hardtack-pack .hero-content {grid-template-columns:1fr;gap:28px;padding:35px 24px 24px}
  body.home-page .hardtack-pack h1 {font-size:clamp(34px,9.5vw,48px)}
  body.home-page .hardtack-pack .hero-copy>p {font-size:14px}
  body.home-page .hardtack-pack .hero-actions .btn {min-width:0}
  .hardtack-emblem {display:grid;grid-template-columns:1fr 125px;align-content:center;column-gap:12px;row-gap:6px;transform:none;text-align:left;border-top:3px double #b7c9a0;padding-top:20px}
  .hardtack-emblem-caption {font-size:10px;grid-column:1}
  .hardtack-pack-name {font-size:48px;grid-column:1}
  .hardtack-window {grid-column:2;grid-row:1 / span 4;width:115px;height:115px;margin:0;justify-self:end;border-width:6px;outline-offset:3px}
  .hardtack-biscuit {width:47px;height:38px;border-radius:12px;background-size:14px 13px;box-shadow:inset 0 0 0 2px #f4d69c,2px 3px 0 rgba(85,60,22,.2)}
  .hardtack-biscuit:nth-child(1) {left:11px;top:15px}
  .hardtack-biscuit:nth-child(2) {right:9px;top:32px}
  .hardtack-biscuit:nth-child(3) {left:19px;bottom:15px}
  .hardtack-window:after {inset:4px}
  .hardtack-pack-foot {margin-inline:24px;padding-bottom:27px;font-size:10px}
}
@media (prefers-reduced-motion:reduce) {
  body:not(.admin-page) .btn,body:not(.admin-page) .post-card {transition:none}
}
@media print {
  body.home-page .hardtack-pack {background:white;box-shadow:none;color:black}
  body.home-page .hardtack-pack h1,body.home-page .hardtack-pack .hero-copy>p {color:black}
  .hardtack-emblem,.hardtack-pack-foot,body.home-page .hardtack-pack:before,body.home-page .hardtack-pack:after {display:none}
}
