@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Noto+Sans+KR:wght@400;500;600&family=Noto+Serif+KR:wght@400;500;600&display=swap";:root{color:#25231f;background:#f2efe9;font-family:Noto Sans KR,Apple SD Gothic Neo,sans-serif;font-synthesis:none;--paper: #f2efe9;--sheet: #faf8f3;--aged: #e5ded2;--ink: #25231f;--charcoal: #171714;--walnut: #716a60;--line: #c9c1b5;--chalk: #f5f1e8;--burgundy: #6f1d1b;--serif: "Noto Serif KR", serif;--mono: "DM Mono", monospace;--ease: cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:2px solid var(--burgundy);outline-offset:3px}.site-shell{min-height:100vh;overflow:hidden}.site-header{position:relative;z-index:10;background:#f2efe9f2;border-bottom:1px solid rgba(201,193,181,.75);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.header-inner{width:min(100% - 48px,1400px);height:88px;margin:0 auto;display:grid;grid-template-columns:160px 1fr auto;align-items:center;gap:36px}.brand{width:fit-content;display:flex;flex-direction:column;font-family:var(--serif);font-size:18px;font-weight:600;line-height:.88;letter-spacing:-.04em}.desktop-nav{display:flex;align-items:center;gap:clamp(24px,3vw,48px);font-size:13px;font-weight:500}.desktop-nav a,.desktop-nav button,.login-button{min-height:44px;padding:0;display:inline-flex;align-items:center;background:none;border:0;cursor:pointer;position:relative}.desktop-nav a:after,.desktop-nav button:after{content:"";position:absolute;left:0;right:100%;bottom:8px;height:1px;background:var(--ink);transition:right .22s var(--ease)}.desktop-nav a:hover:after,.desktop-nav button:hover:after{right:0}.header-actions{display:flex;align-items:center;gap:16px}.header-search{width:clamp(230px,22vw,330px);height:44px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:0 12px 0 16px;border:1px solid var(--line);background:#faf8f394}.header-search:focus-within{border-color:var(--ink);box-shadow:0 0 0 2px #6f1d1b26}.header-search input{min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:13px}.header-search input::placeholder{color:var(--walnut)}.login-button{padding:0 8px;font-size:13px}.signup-button,.primary-button{min-height:44px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--burgundy);border-radius:2px;background:var(--burgundy);color:var(--chalk);font-size:13px;font-weight:600;cursor:pointer;transition:transform .2s var(--ease),filter .2s var(--ease)}.signup-button:hover,.primary-button:hover{transform:translateY(-1px);filter:brightness(1.08)}.signup-button:active,.primary-button:active{transform:translateY(1px) scale(.99)}.mobile-menu-button{display:none;width:44px;height:44px;border:0;background:transparent;align-items:center;justify-content:center;cursor:pointer}.mobile-nav{padding:20px 24px 28px;display:none;flex-direction:column;gap:4px;border-top:1px solid var(--line);background:var(--paper)}.mobile-nav>a,.mobile-nav>button{min-height:48px;display:flex;align-items:center;padding:0;border:0;border-bottom:1px solid rgba(201,193,181,.7);background:none}.mobile-nav>div{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}.mobile-nav>div button{min-height:44px;border:1px solid var(--line);background:var(--sheet)}.mobile-nav>div button:last-child{border-color:var(--burgundy);background:var(--burgundy);color:var(--chalk)}.hero{position:relative;min-height:min(820px,88dvh);display:grid;align-items:center;background:url(/assets/archive-drawer-hero.png) center / cover no-repeat;color:var(--chalk)}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#17171429;pointer-events:none}.hero-inner{position:relative;z-index:1;width:min(100% - 48px,1400px);margin:0 auto;display:grid;grid-template-columns:repeat(12,1fr);gap:24px}.hero-copy{grid-column:1 / span 6;max-width:690px}.eyebrow{margin:0 0 20px;font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.13em}.eyebrow.dark{color:var(--burgundy)}.hero h1{margin:0;font-family:var(--serif);font-size:clamp(2.7rem,4.2vw,4.4rem);font-weight:400;line-height:1.22;letter-spacing:-.045em;text-wrap:balance}.hero-copy>p:not(.eyebrow){max-width:560px;margin:28px 0 0;color:#f5f1e8bd;font-size:15px;line-height:1.8}.hero-link{width:fit-content;min-height:44px;margin-top:34px;display:inline-flex;align-items:center;gap:12px;font-size:14px;font-weight:600}.hero-link svg{transition:transform .22s var(--ease)}.hero-link:hover svg{transform:translate(5px)}.ledger-section,.featured-section{width:min(100% - 48px,1400px);margin:0 auto;padding:clamp(76px,9vw,136px) 0}.section-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:48px;margin-bottom:50px}.section-heading h2,.featured-intro h2,.contribution-copy h2{margin:0;font-family:var(--serif);font-size:clamp(2rem,3vw,3.4rem);font-weight:500;line-height:1.26;letter-spacing:-.035em}.section-heading>p{max-width:430px;margin:0 0 4px auto;color:var(--walnut);font-size:14px;line-height:1.8}.filter-bar{min-height:60px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}.category-list{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.category-list button{min-height:36px;padding:0 14px;border:1px solid transparent;border-radius:99px;background:transparent;color:var(--walnut);font-size:12px;cursor:pointer}.category-list button.active{border-color:var(--burgundy);color:var(--burgundy);background:#6f1d1b0a}.result-count{flex:none;color:var(--walnut);font-family:var(--mono);font-size:11px}.ledger-head,.ledger-row{display:grid;grid-template-columns:86px minmax(280px,2.1fr) minmax(100px,.62fr) minmax(150px,.95fr) 125px 110px;align-items:center;gap:22px}.ledger-head{min-height:58px;color:var(--walnut);font-size:12px;font-weight:600}.ledger-row{position:relative;min-height:76px;border-top:1px solid rgba(201,193,181,.78);transition:background-color .2s var(--ease),transform .2s var(--ease);cursor:pointer}.ledger-row:last-child{border-bottom:1px solid var(--ink)}.ledger-row:hover,.ledger-row:focus-within{background:#e5ded280}.ledger-row.saved{color:var(--burgundy)}.ledger-row strong{color:inherit;font-family:var(--serif);font-size:15px;font-weight:500;line-height:1.55}.ledger-row>span,.ledger-row time{color:var(--walnut);font-size:12px}.ledger-row.saved>span,.ledger-row.saved time{color:inherit}.row-no{display:flex;align-items:center;gap:8px;font-family:var(--mono)}.author{display:inline-flex;align-items:center;gap:10px}.avatar{width:28px;height:28px;flex:0 0 28px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--charcoal);color:var(--chalk);font-family:var(--serif);font-size:11px}.detail-link{min-height:44px;display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;border:0;background:transparent;color:inherit;font-size:12px;cursor:pointer}.action-cell{display:flex;align-items:center}.detail-link svg{transition:transform .2s var(--ease)}.detail-link:hover svg{transform:translate(4px)}.empty-state{min-height:250px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-bottom:1px solid var(--ink)}.empty-state strong{margin-top:16px;font-family:var(--serif);font-size:20px}.empty-state p{margin:8px 0 20px;color:var(--walnut);font-size:13px}.empty-state button{min-height:40px;padding:0 16px;border:1px solid var(--line);background:var(--sheet);cursor:pointer}.featured-section{display:grid;grid-template-columns:2.5fr 9.5fr;gap:clamp(46px,7vw,100px);border-top:1px solid var(--line)}.featured-intro p:not(.eyebrow){margin:24px 0 18px;color:var(--walnut);font-size:13px;line-height:1.8}.featured-intro a{min-height:44px;display:inline-flex;align-items:center;gap:8px;font-size:13px}.card-grid{display:grid;grid-template-columns:.92fr 1.18fr .98fr;align-items:end;gap:clamp(16px,2.2vw,30px)}.record-card{min-height:390px;position:relative;display:flex;flex-direction:column;padding:26px 25px 20px;border:1px solid rgba(201,193,181,.9);border-radius:2px;background:#f7f3ea;box-shadow:0 10px 30px #352d241c;transition:transform .22s var(--ease),box-shadow .22s var(--ease)}.record-card:nth-child(2){min-height:440px;background:#eee7da}.record-card:hover{transform:translateY(-3px) rotate(-.15deg);box-shadow:0 14px 38px #352d2426}.record-top{display:flex;justify-content:space-between;color:var(--walnut);font-family:var(--mono);font-size:10px}.record-top span:last-child{font-family:Noto Sans KR,sans-serif}.record-card blockquote{flex:1;margin:54px 0 42px;white-space:pre-line;font-family:var(--serif);font-size:clamp(1.25rem,1.8vw,1.75rem);font-weight:500;line-height:1.65;letter-spacing:-.035em}.record-card blockquote:before{content:"“";display:block;margin-bottom:12px;font-family:var(--serif);font-size:40px;line-height:.7}.record-author{display:flex;align-items:center;gap:10px;padding-bottom:18px;border-bottom:1px solid var(--line);font-size:12px}.record-stats{min-height:48px;display:flex;align-items:center;gap:14px;color:var(--walnut);font-family:var(--mono);font-size:10px}.record-stats span,.record-stats button{display:inline-flex;align-items:center;gap:4px}.record-stats button{min-height:44px;padding:0;border:0;background:transparent;color:inherit;cursor:pointer}.record-stats button.liked{color:var(--burgundy)}.best-label{position:absolute;top:12px;right:-7px;padding:7px 13px;background:var(--burgundy);color:var(--chalk);font-family:var(--mono);font-size:9px;letter-spacing:.08em;box-shadow:0 4px 12px #352d242e}.contribution-section{position:relative;min-height:620px;display:grid;align-items:center;background:url(/assets/archive-envelope-cta.png) center / cover no-repeat;color:var(--chalk)}.contribution-section:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#1717142e;pointer-events:none}.contribution-copy{position:relative;z-index:1;width:min(100% - 48px,1400px);margin:0 auto}.contribution-copy h2{max-width:700px;font-size:clamp(2.2rem,4vw,4.5rem)}.contribution-copy>p:not(.eyebrow){margin:22px 0 30px;color:#f5f1e8b8}.light-outline{border-color:#f5f1e847;box-shadow:inset 0 0 0 1px #f5f1e80f}.site-footer{padding:68px 0 62px;border-top:1px solid rgba(245,241,232,.16);background:var(--charcoal);color:#f5f1e8a6}.footer-grid{width:min(100% - 48px,1400px);margin:0 auto;display:grid;grid-template-columns:1.7fr repeat(4,1fr);gap:46px}.footer-brand .brand{color:var(--chalk);font-size:25px}.footer-brand p{margin:32px 0 0;font-size:12px;line-height:1.9}.footer-grid>div:not(.footer-brand){padding-top:16px;border-top:1px solid rgba(245,241,232,.22)}.footer-grid h3{margin:0 0 24px;color:var(--chalk);font-size:12px;font-weight:500}.footer-grid a,.footer-grid button{min-height:34px;display:flex;align-items:center;padding:0;border:0;background:none;color:inherit;font-size:12px;cursor:pointer}.footer-grid a:hover,.footer-grid button:hover{color:var(--chalk)}.footer-legal p{margin:24px 0 0;padding-top:20px;border-top:1px solid rgba(245,241,232,.18);font-family:var(--mono);font-size:9px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:center;padding:24px;background:#171714b8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.prompt-modal,.contribution-modal,.auth-modal{width:min(100%,900px);max-height:min(88dvh,860px);overflow:auto;border:1px solid var(--line);border-radius:4px;background:var(--sheet);box-shadow:0 28px 80px #00000047}.modal-header{padding:28px 30px 26px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.modal-header h2,.auth-form h2{max-width:680px;margin:8px 0 0;font-family:var(--serif);font-size:clamp(1.6rem,3vw,2.5rem);font-weight:500;line-height:1.4;letter-spacing:-.035em}.serial{margin:0;color:var(--burgundy);font-family:var(--mono);font-size:10px;letter-spacing:.08em}.icon-button{width:44px;height:44px;flex:0 0 44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:transparent;cursor:pointer}.modal-meta{padding:16px 30px;display:flex;align-items:center;gap:22px;border-bottom:1px solid var(--line);color:var(--walnut);font-size:11px}.prompt-copy{margin:30px;padding:30px;white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid rgba(201,193,181,.85);background:var(--aged);color:var(--ink);font-family:Noto Sans KR,sans-serif;font-size:15px;line-height:1.9}.modal-actions{padding:0 30px 30px;display:flex;align-items:center;gap:10px}.secondary-button{min-height:44px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);background:var(--sheet);color:var(--ink);font-size:13px;cursor:pointer}.auth-modal{display:grid;grid-template-columns:1.05fr .95fr}.auth-visual{min-height:650px;background:url(/assets/archive-drawer-hero.png) 70% center / cover no-repeat}.auth-form{position:relative;padding:64px 48px 42px}.auth-close{position:absolute;top:20px;right:20px}.auth-intro{margin:14px 0 30px;color:var(--walnut);font-size:13px;line-height:1.7}.auth-form form,.contribution-form{display:grid;gap:18px}.auth-form label,.contribution-form label{display:grid;gap:8px;color:var(--ink);font-size:12px;font-weight:600}.auth-form input,.contribution-form input,.contribution-form select,.contribution-form textarea{width:100%;height:48px;padding:0 14px;border:1px solid var(--line);border-radius:2px;outline:0;background:var(--sheet);color:var(--ink);font-size:14px}.auth-form input:focus,.contribution-form input:focus,.contribution-form select:focus,.contribution-form textarea:focus{border-color:var(--ink);box-shadow:0 0 0 2px #6f1d1b29}.auth-submit{width:100%;margin-top:4px}.mode-switch{min-height:44px;margin:16px auto 0;display:block;border:0;background:transparent;color:var(--walnut);font-size:12px;cursor:pointer}.contribution-modal{width:min(100%,760px)}.contribution-form{padding:28px 30px 30px}.contribution-form textarea{min-height:230px;padding-top:14px;resize:vertical;line-height:1.7}.form-foot{display:flex;align-items:center;justify-content:space-between;gap:20px}.form-foot span{color:var(--walnut);font-size:11px}.toast{position:fixed;right:24px;bottom:24px;z-index:50;min-height:48px;padding:0 18px;display:flex;align-items:center;gap:10px;border:1px solid var(--ink);border-radius:2px;background:var(--sheet);color:var(--ink);box-shadow:0 12px 30px #352d2429;font-size:13px;animation:toast-in .24s var(--ease)}.auth-loading{color:var(--walnut);font-size:.78rem;white-space:nowrap}.session-actions{display:flex;align-items:center;gap:14px;min-width:0}.session-actions>span{max-width:132px;overflow:hidden;color:var(--ink);font-size:.8rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.logout-button{color:var(--ink);font-size:.8rem;font-weight:600}.logout-button:hover{color:var(--burgundy)}.form-error{margin:0;color:var(--burgundy);font-size:.8rem;font-weight:600;line-height:1.55}.ledger-skeleton{display:grid}.skeleton-row{display:grid;grid-template-columns:.7fr 3.6fr 1.1fr 1.5fr;gap:20px;min-height:72px;padding:20px 14px;border-bottom:1px solid var(--line)}.skeleton-row span{height:13px;border-radius:2px;background:linear-gradient(90deg,var(--aged) 25%,#eee8de 50%,var(--aged) 75%);background-size:200% 100%;animation:ledger-shimmer 1.6s linear infinite}.skeleton-row span:nth-child(2){width:min(100%,520px)}.skeleton-row span:nth-child(3),.skeleton-row span:nth-child(4){width:72%}@keyframes ledger-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.error-state{color:var(--ink)}.danger-text-button{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0 10px;color:var(--burgundy);font-size:.82rem;font-weight:700}.danger-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border:1px solid var(--burgundy);border-radius:2px;background:var(--burgundy);color:var(--chalk);font-weight:700}.danger-button:disabled,.danger-text-button:disabled{cursor:wait;opacity:.62}.delete-confirmation{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding-top:22px;border-top:1px solid var(--line)}.delete-confirmation strong{display:block;margin-bottom:8px;font-family:var(--serif);font-size:1.15rem}.delete-confirmation p{margin:0;color:var(--walnut);font-size:.85rem}.delete-confirmation .form-error{margin-top:8px;color:var(--burgundy)}.delete-confirmation>div:last-child{display:flex;flex:0 0 auto;gap:10px}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1120px){.header-inner{grid-template-columns:130px 1fr auto}.desktop-nav{gap:20px}.header-search{width:220px}.login-button{display:none}.ledger-head,.ledger-row{grid-template-columns:72px minmax(250px,2fr) 90px minmax(140px,.9fr) 108px 94px;gap:14px}}@media(max-width:900px){.header-inner{width:min(100% - 32px,1400px);grid-template-columns:1fr auto}.desktop-nav,.signup-button,.header-search{display:none}.mobile-menu-button,.mobile-nav{display:flex}.hero{min-height:720px;background-position:58% center}.hero-inner{width:min(100% - 40px,1400px)}.hero-copy{grid-column:1 / span 8}.section-heading{grid-template-columns:1fr;gap:20px}.section-heading>p{margin-left:0}.ledger-head{display:none}.ledger-row{grid-template-columns:76px 1fr auto;grid-template-areas:"no title action" "no author action" "no date action";gap:4px 14px;min-height:112px;padding:18px 0}.row-no{grid-area:no;align-self:start}.ledger-row strong{grid-area:title;padding-right:8px}.ledger-row>span[data-label=카테고리]{display:none}.ledger-row .author{grid-area:author}.ledger-row time{grid-area:date}.action-cell{grid-area:action;align-self:center}.featured-section{grid-template-columns:1fr}.featured-intro h2 br{display:none}.card-grid{grid-template-columns:1fr 1fr}.record-card:nth-child(3){grid-column:1 / -1;min-height:340px}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}.footer-brand{grid-row:span 2}.auth-modal{grid-template-columns:.8fr 1.2fr}}@media(max-width:640px){.header-inner{height:64px}.brand{font-size:16px}.hero{min-height:690px;align-items:end;padding-bottom:58px;background-position:65% center}.hero:before,.contribution-section:before{background:#1717144d}.hero-inner{width:min(100% - 32px,1400px);display:block}.hero-copy{max-width:100%}.hero h1{font-size:clamp(2.35rem,12vw,3.55rem)}.ledger-section,.featured-section,.footer-grid{width:min(100% - 32px,1400px)}.filter-bar{align-items:flex-start;flex-direction:column;padding:14px 0}.category-list{gap:2px}.category-list button{padding:0 10px}.ledger-row{grid-template-columns:56px 1fr 44px;gap:5px 10px}.ledger-row strong{font-size:14px}.action-cell{width:44px}.detail-link{width:44px;overflow:hidden;color:transparent;gap:0}.detail-link svg{flex:none;color:var(--ink)}.ledger-row.saved .detail-link svg{color:var(--burgundy)}.card-grid{grid-template-columns:1fr}.record-card,.record-card:nth-child(2),.record-card:nth-child(3){grid-column:auto;min-height:380px}.contribution-section{min-height:610px;position:relative;background-position:66% center}.contribution-copy{width:min(100% - 32px,1400px)}.contribution-copy h2{font-size:clamp(2.15rem,10vw,3.4rem)}.footer-grid{grid-template-columns:1fr 1fr;gap:40px 26px}.footer-brand{grid-column:1 / -1;grid-row:auto}.footer-legal{grid-column:1 / -1}.modal-backdrop{align-items:end;padding:0}.prompt-modal,.contribution-modal,.auth-modal{max-height:92dvh;border-radius:6px 6px 0 0}.modal-header{padding:22px 18px 20px}.modal-meta{padding:14px 18px;gap:12px;flex-wrap:wrap}.prompt-copy{margin:18px;padding:20px;font-size:14px}.modal-actions{padding:0 18px 22px;display:grid;grid-template-columns:1fr auto}.modal-actions .primary-button{grid-column:1 / -1}.auth-modal{display:block}.auth-visual{min-height:170px;background-position:70% center}.auth-form{padding:38px 22px 28px}.auth-close{top:14px;right:14px;background:var(--sheet)}.contribution-form{padding:22px 18px 24px}.form-foot{align-items:stretch;flex-direction:column}.toast{right:14px;bottom:14px;left:14px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
