:root{--color-background:#e9e3d7;--color-paper:#fffdf8;--color-paper-muted:#f1ece2;--color-ink:#27251f;--color-ink-soft:#625d53;--color-gray:#756f65;--color-line:#d9d1c4;--color-line-strong:#cfc6b8;--color-stamp-red:#9b3a32;--font-sans:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-body:16px;--font-size-small:13px;--font-size-label:12px;--font-size-title:clamp(24px, 6.8vw, 29px);--line-height-letter:1.8;--line-height-compact:1.5;--letter-spacing-label:.12em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:40px;--space-9:48px;--app-max-width:430px;--tap-target-min:44px;--tab-bar-height:64px;--paper-shadow:0 8px 18px #3d362c17;--app-shadow:0 0 40px #3d362c1f;font-family:var(--font-sans);color:var(--color-ink);background:var(--color-background)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{min-width:320px;font-size:var(--font-size-body);line-height:var(--line-height-letter);background-color:#d9cdbc;background-image:radial-gradient(circle at 18% 8%,#fffaec61,#0000 29%),radial-gradient(circle at 82% 26%,#765f4417,#0000 35%),repeating-linear-gradient(0deg,#59452f05 0 1px,#0000 1px 5px);margin:0;overflow-x:hidden}a{color:inherit}img,svg{max-width:100%;display:block}.app-shell{width:100%;max-width:var(--app-max-width);background:0 0;flex-direction:column;min-height:100dvh;margin:0 auto;display:flex}.app-shell.has-tab-bar{padding-bottom:calc(var(--tab-bar-height) + env(safe-area-inset-bottom))}.screen{min-width:0;padding:max(var(--space-8), env(safe-area-inset-top)) var(--space-6) max(var(--space-7), env(safe-area-inset-bottom));flex:1}.eyebrow{margin:0 0 var(--space-3);font-size:var(--font-size-label);letter-spacing:var(--letter-spacing-label)}h1{font-size:var(--font-size-title);letter-spacing:-.04em;margin:0;line-height:1.3}.page-header{margin-bottom:30px}.page-header-title-row{justify-content:space-between;align-items:start;gap:var(--space-4);display:flex}.page-header-title-row .eyebrow{margin-bottom:var(--space-3)}.page-icon-button{width:var(--tap-target-min);height:var(--tap-target-min);border:1px solid var(--color-line-strong);background:var(--color-paper);color:var(--color-ink);border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.page-icon-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px;width:21px;height:21px}.page-icon-button:focus-visible{outline:2px solid var(--color-ink);outline-offset:2px}.page-description,.status-copy{color:var(--color-gray);overflow-wrap:anywhere;line-height:var(--line-height-letter)}.onboarding{gap:var(--space-5);min-height:calc(100dvh - max(var(--space-8), env(safe-area-inset-top)) - max(var(--space-7), env(safe-area-inset-bottom)));grid-template-rows:auto minmax(0,1fr) auto;display:grid}.onboarding-header{justify-content:space-between;align-items:center;display:flex}.onboarding-header .eyebrow{margin:0}.onboarding-progress{gap:var(--space-1);margin:0;padding:0;list-style:none;display:flex}.onboarding-progress li{width:var(--space-2);height:var(--space-2);border:1px solid var(--color-gray);border-radius:50%}.onboarding-progress li.current{background:var(--color-ink);border-color:var(--color-ink)}.onboarding-card{min-height:clamp(340px,54dvh,440px);padding:var(--space-5) var(--space-6) var(--space-6);border:1px solid var(--color-line);background:var(--color-paper);flex-direction:column;justify-content:space-between;display:flex}.onboarding-card h1{max-width:13em}.onboarding-card p{margin:var(--space-4) 0 0;color:var(--color-ink-soft);line-height:var(--line-height-letter);white-space:pre-line}.onboarding-art{object-fit:contain;mix-blend-mode:multiply;width:100%;height:clamp(215px,39dvh,300px)}.onboarding-actions{justify-content:flex-end;gap:var(--space-2);display:flex}button,input{font:inherit}button{cursor:pointer}.primary-button,.text-button,.mode-switch button{min-height:var(--tap-target-min);border:0;border-radius:0;padding:0 18px}.primary-button{background:var(--color-ink);color:var(--color-paper);font-weight:700}.primary-button:disabled{opacity:.6;cursor:wait}.text-button{color:var(--color-ink-soft);background:0 0}.auth-page{min-height:calc(100dvh - max(var(--space-8), env(safe-area-inset-top)) - max(var(--space-7), env(safe-area-inset-bottom)));padding-bottom:max(128px, calc(var(--space-7) + env(safe-area-inset-bottom)))}.auth-page .page-header{margin-bottom:var(--space-7)}.form-error{color:var(--color-stamp-red);overflow-wrap:anywhere;line-height:var(--line-height-compact);margin:0}.social-login-buttons{gap:var(--space-3);display:grid}.social-login-button{border:1px solid #0000;border-radius:6px;grid-template-columns:40px 1fr 40px;align-items:center;width:100%;min-height:52px;padding:0 12px;font-weight:700;display:grid}.social-login-button span:last-child{grid-column:2}.social-login-button:focus-visible{outline:2px solid var(--color-ink);outline-offset:2px}.social-login-button:disabled{opacity:.65}.social-login-icon{text-align:center;grid-column:1;font-size:20px;line-height:1}.social-login-button.kakao{color:#191919;background:#fee500}.social-login-button.google{color:#202124;background:#fff;border-color:#dadce0}.social-login-button.google .social-login-icon{color:#4285f4}.social-login-error{margin-top:var(--space-4);font-size:var(--font-size-small)}.quiet-notice{min-height:156px;padding:var(--space-6);border:1px solid var(--color-line);background:var(--color-paper);color:var(--color-ink-soft);text-align:center;align-content:center;display:grid}.quiet-notice p{margin:0 0 6px;font-weight:700}.quiet-notice span{font-size:14px}.character-list{gap:var(--space-5);display:grid}.character-card{column-gap:var(--space-4);row-gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-line);background:var(--color-paper);grid-template-columns:92px minmax(0,1fr);display:grid}.character-profile-image{background:var(--color-paper-muted);border:0;grid-row:span 2;width:92px;height:116px;padding:0}.character-profile-image img{object-fit:cover;width:100%;height:100%}.character-profile-copy{min-width:0;color:inherit;text-align:left;background:0 0;border:0;align-self:end;padding:0}.character-card h2{margin:0 0 var(--space-1);font-size:20px;line-height:1.4}.character-card p{color:var(--color-ink-soft);font-size:14px;line-height:var(--line-height-compact);-webkit-line-clamp:1;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.character-card .outline-button{place-self:start;margin:0}.new-thread-notice{margin:-18px 0 var(--space-5);color:var(--color-gray);font-size:13px;line-height:var(--line-height-compact)}.refresh-button{min-height:var(--tap-target-min);margin:-12px 0 16px;padding:0;font-size:13px;text-decoration:underline}.letter-form{gap:24px;display:grid}.letter-writing{min-height:calc(100dvh - var(--tab-bar-height) - max(var(--space-8), env(safe-area-inset-top)) - max(var(--space-7), env(safe-area-inset-bottom)));flex-direction:column;display:flex}.letter-recipient-header{justify-content:space-between;align-items:start;gap:var(--space-4);min-height:var(--tap-target-min);margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-line);display:flex}.letter-recipient-header .eyebrow{margin-bottom:var(--space-1);color:var(--color-gray)}.letter-recipient-header h1{overflow-wrap:anywhere;font-size:clamp(20px,5.4vw,25px)}.letter-recipient-header .text-button{padding-inline:var(--space-2)}.letter-compose-form{flex:1;grid-template-rows:auto minmax(320px,1fr) auto auto}fieldset{border:0;min-width:0;margin:0;padding:0}fieldset legend,.letter-field{margin-bottom:10px;font-size:14px;font-weight:700;display:block}.style-picker{flex-wrap:wrap;gap:8px;display:flex}.style-picker legend{flex-basis:100%}.style-picker button{border:1px solid var(--color-line-strong);background:var(--color-paper);min-height:44px;color:var(--color-ink-soft);border-radius:0;padding:0 20px}.style-picker button.selected{border-color:var(--color-ink);background:var(--color-ink);color:var(--color-paper)}.plus-notice{width:100%;margin:var(--space-2) 0 0;color:var(--color-ink-soft);font-size:var(--font-size-small)}.sua-writing .plus-notice{color:#e8e8e3}.letter-field{gap:9px;display:grid}.letter-field textarea,.text-field{resize:vertical;border:1px solid var(--color-line-strong);background:var(--color-paper);min-height:260px;color:var(--color-ink);font:inherit;line-height:var(--line-height-letter);border-radius:0;padding:18px 16px}.letter-field textarea:focus,.text-field:focus{outline:2px solid var(--color-ink);outline-offset:2px}.letter-compose-form .letter-field{min-height:0;margin:0}.letter-compose-form .letter-paper-input{height:100%;min-height:clamp(320px,45dvh,520px);padding:var(--space-6) var(--space-5);border-color:var(--color-line);background:var(--color-paper);box-shadow:var(--paper-shadow);overflow-wrap:anywhere;scroll-margin-bottom:160px;line-height:1.9}.letter-compose-form .primary-button{scroll-margin-bottom:160px}.luka-writing .letter-recipient-header{border-color:#23344e38}.luka-writing .letter-paper-input{color:#25354c;background-color:#f5f5f0;background-image:linear-gradient(#ffffff75,#0000 28%),repeating-linear-gradient(0deg,#23344e04 0 1px,#0000 1px 6px);border-color:#cbd1d9;box-shadow:0 8px 18px #1e2a3c14}.eric-writing .letter-recipient-header{border-color:#41413e2e}.eric-writing .letter-paper-input{color:#30302d;background-color:#fbfbf8;background-image:linear-gradient(90deg,#0000 0 19px,#c45b5252 19px 20px,#0000 20px),linear-gradient(#ffffff94,#0000 30%);border-color:#d5d5d0;padding-left:32px;box-shadow:0 7px 15px #2d2d2a12}.daon-writing .letter-recipient-header{border-color:#634b3333}.daon-writing .letter-paper-input{color:#3f3428;background-color:#f5efdf;background-image:repeating-linear-gradient(0deg,#664c3004 0 1px,#0000 1px 7px),linear-gradient(#fffdf494,#0000 30%);border-color:#d8cdb7;box-shadow:0 8px 18px #4a352214}.sua-writing{background-color:#30343b;background-image:radial-gradient(circle at 86% 10%,#b5ccdb21,#0000 28%),linear-gradient(#373b43,#2d3036)}.sua-writing .letter-recipient-header{border-color:#fff3}.sua-writing .letter-recipient-header .eyebrow,.sua-writing .letter-recipient-header h1,.sua-writing .letter-recipient-header .text-button{color:#f6f6f3}.sua-writing .style-picker legend,.sua-writing .letter-field,.sua-writing .letter-meta{color:#e8e8e3}.sua-writing .letter-paper-input{color:#242422;background-color:#fbfbf8;background-image:linear-gradient(135deg,#0000 0 97%,#41413e14 97% 100%);border-color:#d8d8d3;box-shadow:0 8px 18px #080a0d3d}.yuna-writing .letter-recipient-header{border-color:#27446530}.yuna-writing .letter-paper-input{color:#173d68;background-color:#f8f8f4;background-image:repeating-linear-gradient(178.8deg,#0000 0 29px,#4060821c 29px 30px);border-color:#cfd4d6;line-height:1.75;box-shadow:0 7px 15px #27354414}.letter-meta{justify-content:space-between;gap:var(--space-3);min-height:20px;color:var(--color-gray);font-size:var(--font-size-small);line-height:var(--line-height-compact);display:flex}.letter-meta p,.letter-meta span{margin:0}.confirm-layer{z-index:10;padding:max(var(--space-6), env(safe-area-inset-top)) var(--space-6) max(var(--space-6), env(safe-area-inset-bottom));background:#27251f47;place-items:end center;display:grid;position:fixed;inset:0}.confirm-dialog{width:min(100%,382px);padding:var(--space-6);border:1px solid var(--color-line);background:var(--color-paper);box-shadow:var(--app-shadow)}.confirm-dialog h2{margin:0;font-size:22px;line-height:1.4}.confirm-dialog>p:not(.eyebrow){margin:var(--space-3) 0 0;color:var(--color-ink-soft);font-size:14px;line-height:var(--line-height-letter)}.confirm-actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-6);display:flex}.tracking-card{padding:var(--space-6);border:1px solid var(--color-line);background:var(--color-paper);margin:0 0 24px}.tracking-title{margin:0 0 var(--space-5);font-size:var(--font-size-label);letter-spacing:var(--letter-spacing-label);font-weight:700}.tracking-overview{padding-bottom:var(--space-5);border-bottom:1px solid var(--color-line)}.tracking-overview .eyebrow{margin-bottom:var(--space-2);color:var(--color-gray)}.tracking-arrival{color:var(--color-ink);letter-spacing:-.04em;margin:0;font-size:clamp(25px,7vw,31px);font-weight:700;line-height:1.32}.arrival-copy{margin:var(--space-3) 0 0;color:var(--color-ink-soft);overflow-wrap:anywhere;font-size:14px;line-height:var(--line-height-letter)}.tracking-current{align-items:center;gap:var(--space-2);margin:var(--space-5) 0 var(--space-3);color:var(--color-ink);font-size:14px;font-weight:700;display:flex}.tracking-current span{padding:2px var(--space-2);border:1px solid var(--color-line-strong);color:var(--color-gray);letter-spacing:.04em;font-size:10px;font-weight:600}.dev-delivery{width:100%;margin-top:12px;display:block}.delivery-progress{grid-template-columns:repeat(4,1fr);gap:4px;margin:0;padding:0;list-style:none;display:grid}.delivery-progress li{color:var(--color-gray);text-align:center;padding-top:14px;font-size:10px;line-height:1.3;position:relative}.delivery-progress li:before{border:1px solid var(--color-gray);background:var(--color-paper);content:"";border-radius:50%;width:8px;height:8px;position:absolute;top:0;left:calc(50% - 4px)}.delivery-progress li:not(:last-child):after{background:var(--color-line);content:"";width:calc(100% - 8px);height:1px;position:absolute;top:4px;left:calc(50% + 4px)}.delivery-progress li.done{color:var(--color-ink);font-weight:700}.delivery-progress li.done:before{border-color:var(--color-ink);background:var(--color-ink)}.delivery-progress li.current{color:var(--color-ink);font-weight:700}.delivery-progress li.current:before{border-color:var(--color-ink);background:var(--color-ink);box-shadow:0 0 0 3px var(--color-paper), 0 0 0 4px var(--color-ink)}.envelope-list{gap:var(--space-4);display:grid}.inbox-letter-item{gap:var(--space-2);display:grid}.inbox-letter-item .tracking-card{margin:0}.inbox-screen button{min-width:var(--tap-target-min);min-height:var(--tap-target-min)}.inbox-items{gap:24px}.inbox-bundle{min-width:0}.bundle-toggle{isolation:isolate;width:100%;min-height:var(--tap-target-min);color:var(--color-ink);text-align:left;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:10px 7px 12px;display:block;position:relative}.bundle-paper-layer{z-index:-1;pointer-events:none;background:#f4eee2;border:1px solid #c5bbaa;position:absolute;inset:12px 8px;box-shadow:0 2px 4px #3d362c12}.bundle-paper-layer.layer-1{transform:translate(3px,5px)rotate(1.1deg)}.bundle-paper-layer.layer-2{transform:translate(-2px,8px)rotate(-1.2deg)}.bundle-paper-layer.layer-3{transform:translate(1px,10px)rotate(.5deg)}.bundle-cover{background:linear-gradient(105deg,#ffffff73,#0000 60%),#fffaf0;border:1px solid #c7bdad;padding:20px 20px 14px;display:block;position:relative;box-shadow:0 3px 9px #3d362c1a}.bundle-metal-clip{pointer-events:none;border:2px solid #8b8c87;border-radius:9px 9px 7px 7px;width:15px;height:38px;position:absolute;top:-9px;left:20px;transform:rotate(-9deg);box-shadow:1px 1px #d8d8d0,2px 2px 2px #27251f21}.bundle-metal-clip:after{content:"";border:1px solid #a5a69f;border-top:0;border-radius:0 0 4px 4px;position:absolute;inset:5px 3px 4px}.bundle-topline{min-height:18px;color:var(--color-gray);letter-spacing:.08em;justify-content:space-between;align-items:center;padding-left:29px;font-size:11px;display:flex}.bundle-unopened-dot{background:var(--color-stamp-red);border-radius:50%;flex:none;width:7px;height:7px}.bundle-name{overflow-wrap:anywhere;margin:17px 0 9px;font-family:Georgia,Noto Serif KR,serif;font-size:23px;font-weight:600;line-height:1.4;display:block}.bundle-meta,.bundle-bottomline{color:var(--color-ink-soft);justify-content:space-between;align-items:center;gap:12px;font-size:12px;display:flex}.bundle-meta>span{flex:none}.bundle-bottomline{border-top:1px solid var(--color-line);margin-top:16px;padding-top:9px;font-size:11px}.bundle-bottomline small{font-size:10px}.bundle-toggle:focus-visible,.bundle-letter:focus-visible{outline:2px solid var(--color-ink);outline-offset:2px}.bundle-drawer{visibility:hidden;grid-template-rows:0fr;display:grid}.bundle-drawer-clip{min-height:0;overflow:hidden}.inbox-bundle.is-expanded .bundle-drawer{visibility:visible;grid-template-rows:1fr}.bundle-letter-list{gap:10px;margin:0;padding:10px 7px 7px;list-style:none;display:grid}.bundle-letter-item{opacity:0;min-width:0;transform:translateY(-12px) rotate(var(--paper-tilt));transform-origin:24px 0}.inbox-bundle.is-expanded .bundle-letter-item{opacity:1;transform:translateY(0)rotate(0)}.bundle-letter{border:1px solid var(--color-line-strong);background:var(--color-paper);width:100%;min-height:92px;color:var(--color-ink);text-align:left;align-items:center;gap:14px;padding:16px;display:flex;position:relative;box-shadow:0 2px 3px #3d362c0f}.bundle-letter.is-opened{background-image:repeating-linear-gradient(#0000 0 25px,#756f6512 25px 26px);background-position:0 10px}.bundle-letter.is-opened:after{border-bottom:1px solid var(--color-line);border-left:1px solid var(--color-line);content:"";pointer-events:none;background:linear-gradient(45deg,#f1ece2 49%,#e0d6c5 50%);width:12px;height:12px;position:absolute;top:0;right:0}.bundle-letter.is-sealed{background:#f1e9da}.bundle-letter:disabled{cursor:wait}.bundle-letter-copy{flex:1;min-width:0;display:block}.bundle-letter-meta{color:var(--color-gray);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:2px 8px;font-size:11px;line-height:1.6;display:flex}.bundle-letter-meta small{font-size:10px}.bundle-letter-preview{text-overflow:ellipsis;white-space:nowrap;margin-top:10px;font-size:14px;display:block;overflow:hidden}.bundle-sealed-envelope{background:#f8f1e4;border:1px solid #b3a28a;flex:none;width:48px;height:34px;display:block;position:relative;overflow:hidden}.bundle-sealed-envelope:before{content:"";border-bottom:1px solid #b3a28a;border-right:1px solid #b3a28a;width:34px;height:34px;position:absolute;top:-21px;left:6px;transform:rotate(45deg)}.bundle-sealed-envelope:after{content:"";background:#a38462;border-radius:50%;width:7px;height:7px;position:absolute;top:13px;left:20px}.bundle-sealed-label{letter-spacing:.1em;margin-top:7px;font-size:13px;display:block}.bundle-letter-item .envelope-error{margin:8px 0 0}@media (prefers-reduced-motion:no-preference){.bundle-drawer{transition:grid-template-rows .45s cubic-bezier(.22,.7,.28,1),visibility 0s .45s}.inbox-bundle.is-expanded .bundle-drawer{transition-delay:0s}.bundle-letter-item{transition:transform .2s ease-in,opacity .2s ease-in;transition-delay:var(--fold-delay)}.inbox-bundle.is-expanded .bundle-letter-item{transition-timing-function:ease-out;transition-delay:var(--unfold-delay)}}.envelope-card{gap:var(--space-4);padding:var(--space-5);border:1px solid var(--color-line);background:var(--color-paper);grid-template-columns:72px minmax(0,1fr);display:grid}.envelope-card.scheduled{background:var(--color-paper-muted)}.envelope-card.arrived{border-color:var(--color-ink)}.envelope-card.opened{gap:var(--space-3);padding:var(--space-4) 0;background:0 0;border-left:0;border-right:0;grid-template-columns:minmax(0,1fr) auto}.envelope-mark{width:72px;height:52px;margin-top:var(--space-1);border:1px solid var(--color-gray);background:var(--color-paper-muted);position:relative}.envelope-card.scheduled .envelope-mark{opacity:.62}.envelope-card.arrived .envelope-mark{background:var(--color-paper)}.envelope-mark:before,.envelope-mark:after{background:var(--color-gray);content:"";width:44px;height:1px;position:absolute;top:10px}.envelope-mark:before{transform-origin:0;left:-1px;transform:rotate(35deg)}.envelope-mark:after{transform-origin:100%;right:-1px;transform:rotate(-35deg)}.envelope-stamp{z-index:1;border:1px solid var(--color-stamp-red);background:var(--color-paper);width:31px;height:31px;color:var(--color-stamp-red);letter-spacing:.04em;border-radius:50%;place-items:center;font-size:9px;font-weight:700;display:grid;position:absolute;top:-9px;right:-11px;transform:rotate(-10deg)}.envelope-copy{min-width:0}.envelope-copy h2{margin:2px 0 6px;font-size:19px}.envelope-copy>p:not(.letter-state){color:var(--color-ink-soft);margin:0 0 12px;font-size:13px;line-height:1.45}.letter-state{color:var(--color-gray);margin:0;font-size:12px;font-weight:700}.envelope-card.opened .envelope-copy h2{margin-bottom:3px;font-size:17px}.envelope-card.opened .envelope-copy>p:not(.letter-state){text-overflow:ellipsis;white-space:nowrap;margin-bottom:0;overflow:hidden}.opening-card{min-height:120px;display:block}.opening-skeleton{align-items:center;gap:var(--space-4);grid-template-columns:72px minmax(0,1fr);min-height:78px;display:grid}.opening-skeleton .envelope-mark{opacity:.72;margin:0}.skeleton-line{width:86%;height:10px;margin:0 0 var(--space-2);background:var(--color-line);display:block}.skeleton-line.short{width:44%}.opening-skeleton p{margin:var(--space-2) 0 0;color:var(--color-gray);font-size:var(--font-size-small)}.envelope-error{color:var(--color-stamp-red);font-size:var(--font-size-small);line-height:var(--line-height-compact);grid-column:1/-1;margin:0}.outline-button{min-height:var(--tap-target-min);border:1px solid var(--color-ink);color:var(--color-ink);background:0 0;border-radius:0;margin-top:4px;padding:0 13px;font-weight:700}.envelope-card .outline-button{grid-column:2;justify-self:start}.envelope-card.opened .outline-button{align-self:center}@keyframes envelope-tear{0%{opacity:1;transform:rotate(0)}60%{opacity:.75;transform:rotate(-1.5deg)translateY(-2px)}to{opacity:.35;transform:rotate(1deg)translateY(3px)}}@media (prefers-reduced-motion:no-preference){.envelope-card.opening .envelope-mark,.opening-skeleton{animation:.28s ease-out both envelope-tear}}.back-button{min-height:var(--tap-target-min);margin:-8px 0 12px;padding:0;text-decoration:underline}.letter-reading{padding-inline:clamp(var(--space-4), 6vw, var(--space-6))}.letter-reading .back-button{color:#423629c2;font-size:13px;text-decoration-color:#4236296b}.paper-sheet,.letter-paper{padding:var(--space-7) var(--space-6) var(--space-6);border:1px solid var(--color-line);background:var(--color-paper);box-shadow:var(--paper-shadow);position:relative}.letter-paper{--letter-ink:#514435;--letter-muted:#83715d;--letter-rule:#846c4d45;isolation:isolate;background-color:#f4ecd9;background-image:linear-gradient(90deg,#7e664708 0 1px,#0000 1px 8px),linear-gradient(#fffff775,#0000 24%),repeating-linear-gradient(0deg,#654f3305 0 1px,#0000 1px 4px);border-color:#cfc2ad;padding:clamp(30px,8vw,40px) clamp(24px,7vw,32px) clamp(32px,9vw,44px);overflow:hidden;box-shadow:0 14px 28px #46352326,0 2px 5px #46352317}.letter-paper:before{z-index:0;content:"";pointer-events:none;background:linear-gradient(105deg,#0000 0 44%,#69533908 50%,#0000 56%);position:absolute;inset:0}.letter-paper>*{z-index:1;position:relative}.letter-paper.rereading{background-color:#eee3ce;border-color:#cabda8;box-shadow:0 10px 21px #4635231f,inset 0 0 20px #6f563608}.letter-heading{justify-content:space-between;gap:var(--space-4);padding:0 var(--space-7) var(--space-5) 0;border-bottom:1px solid #846c4d45;display:flex}.letter-heading>div{overflow-wrap:anywhere;min-width:0}.letter-heading .eyebrow{margin-bottom:var(--space-1);color:#786650;font-size:10px}.letter-heading h1{color:#3e3428;letter-spacing:-.03em;font-size:25px;font-weight:650}.letter-sender-link{color:inherit;font:inherit;font-weight:inherit;letter-spacing:inherit;text-align:left;background:0 0;border:0;padding:0}.letter-heading>p{margin:var(--space-1) 0 0;color:#83715d;text-align:right;flex:none;font-family:Georgia,Times New Roman,serif;font-size:12px}.letter-reread-label{margin:var(--space-2) 0 0;color:#917963;letter-spacing:.04em;font-size:11px}.letter-fold{z-index:0;background:linear-gradient(90deg,#0000,#7e65442e 12%,#7e654442 50%,#7e65442e 88%,#0000);height:1px;position:absolute;top:48%;left:0;right:0;box-shadow:0 1px #fffff773}.letter-stamp{color:#8b392f;letter-spacing:.08em;border:1px solid #8b392fb8;border-radius:50%;place-items:center;width:38px;height:38px;font-size:10px;font-weight:700;display:grid;position:absolute;top:18px;right:17px;transform:rotate(-8deg)}.rereading .letter-stamp{color:#805e41ad;opacity:.7;border-color:#805e417a}.letter-body{min-height:180px;margin:var(--space-7) 0 var(--space-6);white-space:pre-wrap;color:#514435;letter-spacing:.018em;overflow-wrap:anywhere;font-family:Georgia,Times New Roman,Noto Serif KR,serif;font-size:16px;line-height:1.95}.first-reading .letter-body{color:#3f3225}.rereading .letter-body{color:#5f5140}.letter-signoff-space{border-top:1px solid #846c4d2e;min-height:58px}.letter-reveal-hint{color:var(--color-gray);opacity:.62;pointer-events:none;margin:0;font-size:12px;position:absolute;bottom:clamp(32px,9vw,44px);right:clamp(24px,7vw,32px)}.letter-paper .primary-button{width:100%}.letter-paper.luka-letter{--letter-ink:#25354c;--letter-muted:#536177;--letter-rule:#23344e38;background-color:#f5f5f0;background-image:linear-gradient(#ffffff94,#0000 26%),repeating-linear-gradient(0deg,#23344e03 0 1px,#0000 1px 6px);border-color:#cbd1d9;box-shadow:0 14px 28px #1e2a3c1c,0 2px 5px #1e2a3c0f}.letter-paper.luka-letter:before{background:linear-gradient(105deg,#0000 0 44%,#23344e05 50%,#0000 56%)}.luka-letter .letter-heading{padding-right:var(--space-6);border-top:1px solid #23344e66;border-bottom-color:#23344e38}.luka-letter .letter-heading .eyebrow,.luka-letter .letter-heading>p,.luka-letter .letter-reread-label{color:#536177;font-family:var(--font-sans)}.luka-letter .letter-heading h1,.luka-letter .letter-body{color:var(--letter-ink)}.luka-letter .letter-body{font-family:var(--font-sans);letter-spacing:.01em;line-height:2.05}.luka-letter .letter-signoff-space{border-top-color:#23344e29}.luka-letter .letter-fold{background:linear-gradient(90deg,#0000,#23344e1a 18%,#23344e29 50%,#23344e1a 82%,#0000);box-shadow:0 1px #ffffff8c}.luka-letter .letter-stamp{background:#a54b45;border:0;border-radius:50%;width:9px;height:9px;top:20px;right:18px;transform:none;box-shadow:0 0 0 2px #a54b451f}.letter-paper.luka-letter.rereading{background-color:#ecece7;border-color:#c2c8cf;box-shadow:0 8px 18px #1e2a3c14,inset 0 0 16px #23344e05}.luka-letter.rereading .letter-body{color:#3d4a5e}.letter-paper.eric-letter{--letter-ink:#30302d;--letter-muted:#777772;--letter-rule:#41413e2e;background-color:#fbfbf8;background-image:linear-gradient(90deg,#0000 0 29px,#c45b524d 29px 30px,#0000 30px),linear-gradient(#ffffff94,#0000 34%);border-color:#d5d5d0;box-shadow:0 11px 22px #2d2d2a17,0 1px 4px #2d2d2a0d}.letter-paper.eric-letter:before{background:linear-gradient(135deg,#0000 0 97%,#2d2d2a12 97% 100%)}.eric-letter .letter-heading{padding:22px 0 var(--space-5);border-bottom-color:#41413e2e;display:block;position:relative}.eric-letter .letter-heading>p{color:#777772;font-family:var(--font-sans);text-align:left;margin:0;font-size:11px;position:absolute;top:0;left:0}.eric-letter .letter-heading .eyebrow{color:#777772;font-family:var(--font-sans)}.eric-letter .letter-heading h1,.eric-letter .letter-body{color:var(--letter-ink)}.eric-letter .letter-body{font-family:var(--font-sans);letter-spacing:.006em;line-height:1.8}.eric-letter .letter-signoff-space{border-top-color:#41413e21}.eric-letter .letter-fold{box-shadow:none;background:linear-gradient(90deg,#0000,#41413e12 18%,#41413e1f 50%,#41413e12 82%,#0000)}.eric-letter .letter-stamp{opacity:.55;background:linear-gradient(0deg,#0000 0 3px,#9b9b96 3px 4px,#0000 4px 8px,#9b9b96 8px 9px,#0000 9px);border:0;border-radius:0;width:20px;height:13px;top:18px;right:17px;transform:rotate(-3deg)}.letter-paper.eric-letter.rereading{background-color:#f1f1ed;border-color:#cdcdc8;box-shadow:0 7px 16px #2d2d2a12,inset 0 0 14px #2d2d2a05}.eric-letter.rereading:before{background:linear-gradient(135deg,#0000 0 97%,#2d2d2a14 97% 100%),linear-gradient(90deg,#0000 0 44%,#2d2d2a05 50%,#0000 56%)}.eric-letter .letter-reread-label{color:#777772;font-family:var(--font-sans);letter-spacing:.02em;font-size:10px}.daon-letter,.daon-thread-paper{--daon-line-height:2.15}.letter-paper.daon-letter{--letter-ink:#3f3428;--letter-muted:#806a53;--letter-rule:#634b3333;background-color:#f5efdf;background-image:repeating-linear-gradient(0deg,#664c3004 0 1px,#0000 1px 7px),linear-gradient(#fffdf499,#0000 30%);border-color:#d8cdb7;box-shadow:0 12px 24px #4a35221a,0 1px 4px #4a35220d}.letter-paper.daon-letter:before{background:linear-gradient(105deg,#0000 0 44%,#664c3005 50%,#0000 56%)}.daon-letter .letter-heading{padding-right:var(--space-6);border-top:1px solid #634b3366;border-bottom-color:#634b3333}.daon-letter .letter-heading .eyebrow,.daon-letter .letter-heading>p{color:#806a53;font-family:var(--font-sans)}.daon-letter .letter-heading h1,.daon-letter .letter-body{color:var(--letter-ink)}.daon-letter .letter-body{font-family:var(--font-sans);letter-spacing:.012em;line-height:var(--daon-line-height)}.daon-letter .letter-signoff-space{border-top-color:#634b3326}.daon-letter .letter-fold{background:linear-gradient(90deg,#0000,#634b3317 18%,#634b3324 50%,#634b3317 82%,#0000);box-shadow:0 1px #fffdf499}.daon-letter .letter-stamp{display:none}.letter-paper.daon-letter.rereading{background-color:#ede5d4;border-color:#cec2ad;box-shadow:0 8px 17px #4a352212,inset 0 0 14px #4a352205}.daon-letter.rereading .letter-body{color:#504337}.daon-letter .letter-reread-label{color:#967956;font-family:var(--font-sans);letter-spacing:.02em;border-bottom:1px solid #9b7a4e73;padding-bottom:2px;font-size:10px}.sua-reading,.sua-thread-reading{background-color:#30343b;background-image:radial-gradient(circle at 86% 10%,#b5ccdb21,#0000 28%),linear-gradient(#373b43,#2d3036)}.sua-reading .back-button,.sua-thread-reading .back-button{color:#f6f6f3d6;text-decoration-color:#f6f6f36b}.letter-paper.sua-letter{--letter-ink:#242422;--letter-muted:#686864;--letter-rule:#41413e2b;background-color:#fbfbf8;background-image:linear-gradient(135deg,#0000 0 97%,#41413e14 97% 100%);border-color:#d8d8d3;box-shadow:0 13px 26px #080a0d47,0 1px 4px #080a0d1f}.letter-paper.sua-letter:before{background:linear-gradient(105deg,#0000 0 44%,#41413e05 50%,#0000 56%)}.sua-letter .letter-heading{padding-right:var(--space-6);border-bottom-color:#41413e2b}.sua-letter .letter-heading .eyebrow,.sua-letter .letter-heading>p{color:#686864;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.sua-letter .letter-heading h1,.sua-letter .letter-body{color:var(--letter-ink)}.sua-letter .letter-body{font-family:var(--font-sans);letter-spacing:.006em;line-height:1.8}.sua-letter .letter-signoff-space{border-top-color:#41413e1f}.sua-letter .letter-fold{box-shadow:none;background:linear-gradient(90deg,#0000,#41413e12 18%,#41413e1c 50%,#41413e12 82%,#0000)}.sua-letter .letter-stamp{background:#d8e0e3;border:1px solid #535b6452;border-radius:2px;width:16px;height:12px;top:19px;right:17px;transform:rotate(2deg);box-shadow:2px 2px #41413e0f}.letter-paper.sua-letter.rereading{background-color:#f1f1ee;border-color:#cecec9;box-shadow:0 8px 18px #080a0d38,inset 0 0 14px #41413e05}.sua-letter.rereading:before{background:linear-gradient(105deg,#0000 0 44%,#41413e08 50%,#0000 56%),linear-gradient(15deg,#0000 0 82%,#41413e08 88%,#0000 94%)}.sua-letter .letter-reread-label{color:#50575c;font-family:var(--font-sans);letter-spacing:.02em;background:#d8e0e3;padding:2px 6px;font-size:10px;display:inline-block}.letter-paper.yuna-letter{--letter-ink:#173d68;--letter-muted:#617386;--letter-rule:#27446530;background-color:#f8f8f4;background-image:repeating-linear-gradient(178.8deg,#0000 0 30px,#4060821a 30px 31px);border-color:#cfd4d6;transform:rotate(-.16deg);box-shadow:0 11px 22px #2735441a,0 1px 4px #2735440d}.letter-paper.yuna-letter:before{background:linear-gradient(135deg,#0000 0 96.5%,#27354414 96.5% 100%),linear-gradient(98deg,#0000 0 46%,#27354405 50%,#0000 54%)}.yuna-letter .letter-heading{padding-right:var(--space-6);border-bottom-color:var(--letter-rule)}.yuna-letter .letter-heading .eyebrow,.yuna-letter .letter-heading>p,.yuna-letter .letter-reread-label{color:var(--letter-muted);font-family:var(--font-sans)}.yuna-letter .letter-heading h1,.yuna-letter .letter-body{color:var(--letter-ink)}.yuna-letter .letter-body{font-family:var(--font-sans);letter-spacing:.004em;line-height:1.75}.yuna-letter .letter-signoff-space{border-top-color:#27446521}.yuna-letter .letter-fold{box-shadow:none;background:linear-gradient(90deg,#0000,#2744650f 18%,#2744651a 50%,#2744650f 82%,#0000)}.yuna-letter .letter-stamp{opacity:.7;background:linear-gradient(170deg,#0000 0 42%,#173d6880 44% 49%,#0000 51% 100%),linear-gradient(8deg,#0000 0 50%,#173d684d 52% 56%,#0000 58% 100%);border:0;border-radius:0;width:24px;height:9px;top:20px;right:18px;transform:rotate(-4deg)}.letter-paper.yuna-letter.rereading{background-color:#eeeeea;border-color:#c8cdcf;transform:rotate(.22deg);box-shadow:0 7px 16px #27354414,inset 0 0 16px #27446508}.yuna-letter.rereading:before{background:linear-gradient(135deg,#0000 0 96.5%,#27354417 96.5% 100%),linear-gradient(98deg,#0000 0 45%,#27354408 50%,#0000 55%),linear-gradient(12deg,#0000 0 78%,#27354406 84%,#0000 90%)}.yuna-letter .letter-reread-label{letter-spacing:.02em;font-size:10px}@keyframes paper-unfold{0%{opacity:.42;transform-origin:top;transform:perspective(900px)rotateX(-7deg)scaleY(.94)}65%{opacity:.96;transform-origin:top;transform:perspective(900px)rotateX(1deg)scaleY(1.008)}to{opacity:1;transform-origin:top;transform:perspective(900px)rotateX(0)scaleY(1)}}@media (prefers-reduced-motion:no-preference){.letter-paper.is-unfolding{animation:.28s ease-out both paper-unfold}}.thread-list{gap:var(--space-3);display:grid}.thread-reading{padding-inline:clamp(var(--space-4), 6vw, var(--space-6))}.thread-reading .back-button{color:#423629c2;font-size:13px;text-decoration-color:#4236296b}.thread-paper-list{gap:var(--space-6);padding-bottom:var(--space-4);display:grid}.thread-card{width:100%;padding:var(--space-4);border:1px solid var(--color-line);background:var(--color-paper);color:inherit;text-align:left;border-radius:0;grid-template-columns:minmax(0,1fr) auto;gap:13px;display:grid}.thread-card span{align-content:center;gap:4px;min-width:0;display:grid}.thread-card small,.thread-card em{color:var(--color-gray);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-style:normal;overflow:hidden}.thread-card b{align-self:center;font-size:12px}.thread-character-header{margin-bottom:var(--space-7);padding:0 var(--space-2) var(--space-6);border-bottom:1px solid #70573942}.thread-profile-link{align-items:center;gap:var(--space-3);color:var(--color-ink);text-align:left;background:0 0;border:0;padding:0;display:flex}.thread-profile-link img{object-fit:cover;background:var(--color-paper-muted);width:62px;height:76px}.thread-profile-link span{font-size:var(--font-size-title);letter-spacing:-.04em;font-weight:700}.thread-character-header>p:not(.eyebrow){margin:var(--space-2) 0 0;color:var(--color-ink-soft);overflow-wrap:anywhere;font-size:14px;line-height:var(--line-height-letter)}.thread-character-header .primary-button{width:100%;margin-top:var(--space-5)}.thread-paper{width:calc(100% - var(--space-3));padding:var(--space-5) var(--space-4) var(--space-5);background-color:#f0e6d3;background-image:linear-gradient(90deg,#7d624108 0 1px,#0000 1px 7px),repeating-linear-gradient(0deg,#634a2f05 0 1px,#0000 1px 4px);border:1px solid #cdbfa9;position:relative;overflow:hidden;box-shadow:0 7px 15px #4635231a}.thread-paper>*{z-index:1;position:relative}.thread-paper.inbound{color:#584a38;justify-self:start;transform:rotate(-.12deg)}.thread-paper.outbound{color:#4e4336;background-color:#e7dac2;border-color:#c3b397;justify-self:end;transform:rotate(.12deg)}.thread-paper.rereading{background-color:#ebe0cb;box-shadow:0 5px 12px #46352314,inset 0 0 14px #6d533308}.thread-paper-fold{z-index:0;background:linear-gradient(90deg,#0000,#765b3929 12%,#765b393b 50%,#765b3929 88%,#0000);height:1px;position:absolute;top:46%;left:0;right:0;box-shadow:0 1px #fffcee66}.thread-paper-heading{justify-content:space-between;align-items:start;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid #775b393b;display:flex}.thread-paper-heading .eyebrow{color:#78634c;margin:0;font-size:10px}.thread-paper-heading time{color:#8a755f;text-align:right;font-family:Georgia,Times New Roman,serif;font-size:11px;line-height:1.45}.thread-reread-label{margin:var(--space-2) 0 0;color:#927961;letter-spacing:.04em;font-size:10px}.thread-paper-body{min-height:88px;margin:var(--space-4) 0 var(--space-4);color:inherit;letter-spacing:.014em;overflow-wrap:anywhere;white-space:pre-wrap;font-family:Georgia,Times New Roman,Noto Serif KR,serif;font-size:15px;line-height:1.9}.thread-signoff-space{border-top:1px solid #775b392b;min-height:30px}.thread-paper.luka-thread-paper{color:#25354c;background-color:#f5f5f0;background-image:linear-gradient(#ffffff85,#0000 28%),repeating-linear-gradient(0deg,#23344e03 0 1px,#0000 1px 6px);border-color:#cbd1d9;transform:none;box-shadow:0 7px 15px #1e2a3c14}.thread-paper.luka-thread-paper.outbound{color:#2f4057;background-color:#eeefeb;border-color:#c3cad2}.thread-paper.luka-thread-paper.rereading{background-color:#e9eae6;box-shadow:0 5px 12px #1e2a3c12,inset 0 0 14px #23344e05}.luka-thread-paper .thread-paper-heading{padding-top:var(--space-2);border-top:1px solid #23344e61;border-bottom-color:#23344e33}.luka-thread-paper .thread-paper-heading .eyebrow,.luka-thread-paper .thread-paper-heading time,.luka-thread-paper .thread-reread-label{color:#536177;font-family:var(--font-sans)}.luka-thread-paper .thread-paper-body{font-family:var(--font-sans);line-height:2}.luka-thread-paper .thread-paper-fold{background:linear-gradient(90deg,#0000,#23344e17 18%,#23344e24 50%,#23344e17 82%,#0000)}.luka-thread-paper .thread-signoff-space{border-top-color:#23344e26}.thread-paper-seal{z-index:2;background:#a54b45;border-radius:50%;width:8px;height:8px;position:absolute;top:16px;right:16px;box-shadow:0 0 0 2px #a54b451f}.thread-paper.eric-thread-paper{color:#30302d;background-color:#fbfbf8;background-image:linear-gradient(90deg,#0000 0 22px,#c45b524d 22px 23px,#0000 23px),linear-gradient(#ffffff85,#0000 34%);border-color:#d5d5d0;transform:none;box-shadow:0 6px 13px #2d2d2a12}.thread-paper.eric-thread-paper.outbound{color:#30302d;background-color:#f6f6f2;border-color:#d1d1cc}.thread-paper.eric-thread-paper.rereading{background-color:#f0f0ec;box-shadow:0 5px 11px #2d2d2a0f,inset 0 0 12px #2d2d2a05}.eric-thread-paper .thread-paper-heading{gap:var(--space-1);padding-top:var(--space-3);border-bottom-color:#41413e2b;flex-direction:column}.eric-thread-paper .thread-paper-heading time{color:#777772;font-family:var(--font-sans);text-align:left;order:-1;align-self:start}.eric-thread-paper .thread-paper-heading .eyebrow,.eric-thread-paper .thread-reread-label{color:#777772;font-family:var(--font-sans)}.eric-thread-paper .thread-paper-body{font-family:var(--font-sans);line-height:1.8}.eric-thread-paper .thread-paper-fold{background:linear-gradient(90deg,#0000,#41413e0f 18%,#41413e1a 50%,#41413e0f 82%,#0000)}.eric-thread-paper .thread-signoff-space{border-top-color:#41413e1f}.thread-paper-staples{z-index:2;opacity:.5;background:linear-gradient(0deg,#0000 0 3px,#9b9b96 3px 4px,#0000 4px 8px,#9b9b96 8px 9px,#0000 9px);width:18px;height:12px;position:absolute;top:15px;right:15px;transform:rotate(-3deg)}.thread-paper.daon-thread-paper{color:#3f3428;background-color:#f5efdf;background-image:repeating-linear-gradient(0deg,#664c3003 0 1px,#0000 1px 7px),linear-gradient(#fffdf48f,#0000 30%);border-color:#d8cdb7;transform:none;box-shadow:0 7px 14px #4a352214}.thread-paper.daon-thread-paper.outbound{color:#463a2e;background-color:#f0e9d9;border-color:#d1c5ae}.thread-paper.daon-thread-paper.rereading{background-color:#ede5d4;box-shadow:0 5px 12px #4a352212,inset 0 0 12px #4a352205}.daon-thread-paper .thread-paper-heading{border-top:1px solid #634b335c;border-bottom-color:#634b332e}.daon-thread-paper .thread-paper-heading .eyebrow,.daon-thread-paper .thread-paper-heading time{color:#806a53;font-family:var(--font-sans)}.daon-thread-paper .thread-reread-label{color:#967956;font-family:var(--font-sans);border-bottom:1px solid #9b7a4e73;padding-bottom:2px}.daon-thread-paper .thread-paper-body{font-family:var(--font-sans);line-height:var(--daon-line-height)}.daon-thread-paper .thread-paper-fold{background:linear-gradient(90deg,#0000,#634b3314 18%,#634b331f 50%,#634b3314 82%,#0000)}.daon-thread-paper .thread-signoff-space{border-top-color:#634b3324}.sua-thread-reading .thread-character-header{border-bottom-color:#fff3}.sua-thread-reading .thread-profile-link,.sua-thread-reading .thread-character-header>p:not(.eyebrow),.sua-thread-reading .thread-character-header .eyebrow{color:#f6f6f3}.thread-paper.sua-thread-paper{color:#242422;background-color:#fbfbf8;background-image:linear-gradient(135deg,#0000 0 97%,#41413e12 97% 100%);border-color:#d8d8d3;transform:none;box-shadow:0 7px 15px #080a0d33}.thread-paper.sua-thread-paper.outbound{color:#242422;background-color:#f5f5f2;border-color:#d1d1cc}.thread-paper.sua-thread-paper.rereading{background-color:#f1f1ee;box-shadow:0 5px 12px #080a0d2e,inset 0 0 12px #41413e05}.sua-thread-paper .thread-paper-heading{border-bottom-color:#41413e29}.sua-thread-paper .thread-paper-heading .eyebrow,.sua-thread-paper .thread-paper-heading time{color:#686864;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.sua-thread-paper .thread-paper-body{font-family:var(--font-sans);line-height:1.8}.sua-thread-paper .thread-paper-fold{background:linear-gradient(90deg,#0000,#41413e0f 18%,#41413e1a 50%,#41413e0f 82%,#0000)}.sua-thread-paper .thread-signoff-space{border-top-color:#41413e1f}.sua-thread-paper .thread-reread-label{color:#50575c;font-family:var(--font-sans);letter-spacing:.02em;background:#d8e0e3;padding:2px 6px;font-size:10px;display:inline-block}.thread-paper-sticker{z-index:2;background:#d8e0e3;border:1px solid #535b644d;border-radius:2px;width:14px;height:11px;position:absolute;top:15px;right:15px;transform:rotate(2deg);box-shadow:2px 2px #41413e0f}.thread-paper.yuna-thread-paper{color:#173d68;background-color:#f8f8f4;background-image:repeating-linear-gradient(178.8deg,#0000 0 27px,#4060821a 27px 28px);border-color:#cfd4d6;transform:rotate(-.12deg);box-shadow:0 6px 13px #27354414}.thread-paper.yuna-thread-paper.outbound{color:#173d68;background-color:#f2f2ee;border-color:#c9ced0;transform:rotate(.12deg)}.thread-paper.yuna-thread-paper.rereading{background-color:#ecece8;box-shadow:0 5px 11px #27354412,inset 0 0 12px #27446508}.yuna-thread-paper .thread-paper-heading{border-bottom-color:#2744652e}.yuna-thread-paper .thread-paper-heading .eyebrow,.yuna-thread-paper .thread-paper-heading time,.yuna-thread-paper .thread-reread-label{color:#617386;font-family:var(--font-sans)}.yuna-thread-paper .thread-paper-body{font-family:var(--font-sans);line-height:1.75}.yuna-thread-paper .thread-paper-fold{box-shadow:none;background:linear-gradient(90deg,#0000,#2744650f 18%,#2744651a 50%,#2744650f 82%,#0000)}.yuna-thread-paper .thread-signoff-space{border-top-color:#27446521}.character-profile-page{padding-bottom:max(112px, calc(var(--space-7) + env(safe-area-inset-bottom)))}.character-profile-page.sua-profile{background:#e2e5e8}.character-profile-page.yuna-profile{background:#e9ebea}.character-profile-header{align-items:center;gap:var(--space-5);margin-bottom:var(--space-5);display:flex}.character-profile-header .back-button{min-width:var(--tap-target-min);flex:none;margin:0;font-size:13px}.character-profile-header h1{overflow-wrap:anywhere;min-width:0;font-size:21px}.character-profile-paper{color:var(--letter-ink);text-align:left;padding:38px 32px 28px}.character-profile-paper.luka-letter:after{background:var(--letter-rule);content:"";pointer-events:none;height:1px;position:absolute;top:24px;left:32px;right:40px}.character-profile-paper.yuna-letter{transform:rotate(-.08deg)}.character-profile-paper .character-profile-bookmark{opacity:.75;pointer-events:none;background:#9b7a4e;width:11px;height:40px;position:absolute;top:0;right:24px}.character-profile-photo{background:#fffdf8;width:min(100%,244px);margin:12px auto 28px;padding:3px;transform:rotate(-.6deg);box-shadow:0 4px 10px #27251f24}.character-profile-image-large{aspect-ratio:4/5;object-fit:cover;background:var(--color-paper-muted);width:100%;display:block}.character-profile-image-fallback{aspect-ratio:4/5;background:var(--color-paper-muted);place-items:center;width:100%;display:grid}.character-profile-image-fallback span{color:var(--letter-muted);font-family:Georgia,Times New Roman,Noto Serif KR,serif;font-size:clamp(56px,20vw,82px);line-height:1}.character-profile-intro h2{letter-spacing:-.03em;overflow-wrap:anywhere;margin:0;font-size:25px;font-weight:650}.character-tagline{margin:var(--space-2) 0 0;color:var(--letter-muted);font-size:13px;line-height:var(--line-height-letter);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.character-profile-rule{margin:var(--space-5) 0;border:0;border-top:1px solid var(--letter-rule)}.character-profile-paper .character-bio{text-align:left;min-height:0;margin:0}.character-extra-images{gap:var(--space-4);margin-top:var(--space-6);display:grid}.character-extra-images img{aspect-ratio:4/3;object-fit:cover;background:#fffdf8;width:100%;padding:3px;box-shadow:0 3px 8px #27251f1a}.character-profile-cta{width:100%;min-height:48px;margin-top:var(--space-7);background:var(--letter-ink)}.character-profile-page button:focus-visible{outline-offset:3px;outline:2px solid}.character-profile-cta:focus-visible{outline-color:var(--letter-ink)}.character-story-list{margin-top:var(--space-7);padding-top:var(--space-5);border-top:1px solid var(--letter-rule)}.character-story-list>.eyebrow{margin-bottom:var(--space-4);color:var(--letter-muted);font-weight:400}.character-story-list>div{gap:var(--space-4);display:grid}.character-story-card{gap:var(--space-1);min-width:0;padding-left:var(--space-3);border-left:1px solid var(--letter-rule);display:grid}.character-story-card small{color:var(--letter-muted);font-size:11px}.character-story-card strong{color:var(--letter-ink);font-size:14px;font-weight:400;line-height:var(--line-height-letter);overflow-wrap:anywhere}.me-page{padding-bottom:max(104px, calc(var(--space-7) + env(safe-area-inset-bottom)))}.me-page .page-header{margin-bottom:var(--space-5)}.me-error{margin:0 0 var(--space-4)}.me-sections{gap:var(--space-4);display:grid}.me-card{padding:var(--space-5);border:1px solid var(--color-line);background-color:var(--color-paper);background-image:repeating-linear-gradient(0deg,#644c3005 0 1px,#0000 1px 5px)}.me-card>.eyebrow{margin-bottom:var(--space-4)}.nickname-form{gap:var(--space-2) var(--space-3);grid-template-columns:minmax(0,1fr) auto;align-items:end;display:grid}.nickname-form label{gap:var(--space-2);min-width:0;color:var(--color-ink-soft);font-size:var(--font-size-small);display:grid}.nickname-form input{min-width:0;min-height:44px;padding:0 var(--space-3);border:1px solid var(--color-line-strong);color:var(--color-ink);background:#fffdf8c2;border-radius:0}.nickname-form input:focus{outline:2px solid var(--color-ink);outline-offset:2px}.nickname-form p{color:var(--color-gray);font-size:var(--font-size-small);line-height:var(--line-height-compact);grid-column:1/-1;margin:0}.nickname-form .outline-button{margin:0}.me-segmented{border:1px solid var(--color-line-strong);grid-template-columns:1fr 1fr;max-width:260px;display:grid}.me-segmented button{border:0;border-right:1px solid var(--color-line-strong);min-height:42px;color:var(--color-ink-soft);background:0 0;font-weight:700}.me-segmented button:last-child{border-right:0}.me-segmented button.selected{background:var(--color-ink);color:var(--color-paper)}.me-description{margin:var(--space-3) 0 0;color:var(--color-gray);font-size:var(--font-size-small);line-height:var(--line-height-letter)}.notice-permission{align-items:center;gap:var(--space-3);display:flex}.notice-permission strong{font-size:15px;display:block}.notice-permission p{margin:var(--space-1) 0 0;color:var(--color-gray);font-size:var(--font-size-small);line-height:var(--line-height-compact)}.permission-mark{border:1px solid var(--color-line-strong);background:var(--color-paper-muted);border-radius:50%;flex:none;width:12px;height:12px}.permission-mark.granted{border-color:var(--color-ink);background:var(--color-ink)}.permission-mark.denied{border-color:var(--color-stamp-red);background:var(--color-stamp-red)}.me-card>.outline-button{margin-top:var(--space-4)}.mail-stats{border-top:1px solid var(--color-line);border-bottom:1px solid var(--color-line);grid-template-columns:repeat(3,1fr);margin:0;display:grid}.mail-stats div{min-width:0;padding:var(--space-3) var(--space-2);text-align:center}.mail-stats div+div{border-left:1px solid var(--color-line)}.mail-stats dt{color:var(--color-gray);font-size:11px;line-height:var(--line-height-compact);word-break:keep-all}.mail-stats dd{margin:var(--space-1) 0 0;font-family:Georgia,Times New Roman,serif;font-size:25px;line-height:1.2}.empty-stats{margin:var(--space-3) 0 0;color:var(--color-gray);font-size:var(--font-size-small)}.account-details{gap:var(--space-3);margin:0;display:grid}.account-details div{gap:var(--space-1);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-line);display:grid}.account-details dt{color:var(--color-gray);font-size:var(--font-size-small)}.account-details dd{overflow-wrap:anywhere;margin:0;font-size:15px}.me-logout{width:100%}.app-about p{margin:0;font-family:Georgia,Times New Roman,serif;font-size:17px}.legal-links{gap:var(--space-3);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.legal-links button{min-height:var(--tap-target-min);color:var(--color-gray);font-size:var(--font-size-small);text-underline-offset:3px;padding:0;text-decoration:underline}.app-about .legal-links{margin-top:var(--space-2)}.legal-page{padding-bottom:max(64px, env(safe-area-inset-bottom))}.legal-document{color:var(--color-ink);font-size:var(--font-size-small);overflow-wrap:anywhere;line-height:1.75}.legal-document h1{margin:var(--space-4) 0 var(--space-6);font-size:23px;line-height:1.35}.legal-document h2{margin:var(--space-7) 0 var(--space-3);font-size:17px;line-height:1.45}.legal-document p,.legal-document ul,.legal-document ol{margin:0 0 var(--space-4)}.legal-document ul,.legal-document ol{padding-left:1.4em}.legal-document li+li{margin-top:var(--space-2)}.legal-document code{font:inherit}.legal-document hr{border:0;border-top:1px solid var(--color-gray);margin:var(--space-6) 0}.legal-table-scroll{max-width:100%;margin:var(--space-4) 0 var(--space-5);overflow-x:auto}.legal-document table{border-collapse:collapse;width:100%;min-width:600px;font-size:12px;line-height:1.6}.legal-document th,.legal-document td{border:1px solid var(--color-gray);text-align:left;vertical-align:top;padding:9px}.tab-bar{z-index:5;width:min(100%, var(--app-max-width));min-height:calc(var(--tab-bar-height) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--color-line);background:var(--color-paper);grid-template-columns:repeat(3,1fr);display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.tab{min-height:var(--tap-target-min);color:var(--color-gray);grid-template-rows:22px 18px;place-content:center;justify-items:center;gap:2px;font-size:13px;line-height:1;text-decoration:none;display:grid}.tab.active{color:var(--color-ink);font-weight:700}.tab-icon{place-items:center;width:22px;height:22px;display:grid;position:relative}.tab-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px;width:22px;height:22px}.tab-dot{border:1px solid var(--color-paper);background:var(--color-stamp-red);border-radius:50%;width:6px;height:6px;position:absolute;top:1px;right:-3px}.tab:focus-visible{outline:3px solid var(--color-ink);outline-offset:-3px}@media (width>=431px){.app-shell{box-shadow:var(--app-shadow)}}.header-actions,.letter-header-actions{align-items:center;gap:var(--space-2);flex:none;display:flex}.letter-header-actions .text-button{padding-inline:var(--space-2)}@media (width<=390px){.screen{padding-right:var(--space-4);padding-left:var(--space-4)}.confirm-actions{flex-wrap:wrap}}
