/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.grid{display:grid}.table{display:table}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--paper:#f4efe7;--paper-deep:#e9dfd2;--ink:#28231f;--muted:#756c63;--line:#28231f29;--serif:"Songti SC", "STSong", "Noto Serif CJK SC", Georgia, serif;--sans:var(--font-geist-sans), "PingFang SC", "Microsoft YaHei", sans-serif}*{box-sizing:border-box}html{background:var(--paper);scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}body.modal-open{overflow:hidden}button{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,[tabindex="-1"]:focus-visible{outline-offset:4px;outline:2px solid}.cover{color:#fff;background:#312d28;height:100svh;min-height:480px;position:relative;overflow:hidden}.cover-button{cursor:zoom-in;background:0 0;border:0;width:100%;height:100%;padding:0;display:block}.cover-button img{object-fit:cover;width:100%;height:100%;display:block}.cover h1{font-family:var(--serif);letter-spacing:.04em;text-shadow:0 2px 16px #00000059;margin:0;font-size:clamp(34px,6vw,76px);font-weight:500;position:absolute;bottom:clamp(24px,7vw,88px);right:clamp(20px,6vw,96px)}#letter-content{width:min(680px,100% - 40px);font-family:var(--serif);margin:0 auto;padding:clamp(88px,12vw,160px) 0 clamp(96px,13vw,180px);font-size:clamp(17px,1.5vw,20px);line-height:2.05}#letter-content p{margin:0 0 1.4em}#letter-content p:last-child{margin-bottom:0}.gallery{grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(20px,3vw,42px) 20px;width:min(1120px,100% - 48px);margin:0 auto;display:grid}.gallery-item{cursor:zoom-in;background:0 0;border:0;grid-column:span 6;align-self:start;min-width:0;padding:0;display:block}.gallery-item.wide{grid-column:span 12}.gallery-item.pair{grid-column:span 6}.gallery-item.center{grid-column:3/11}.gallery-item img{border-radius:10px;width:100%;height:auto;display:block}footer{width:min(1120px,100% - 48px);color:var(--muted);font-family:var(--serif);text-align:center;margin:0 auto;padding:96px 0 48px;font-size:14px}.lightbox{z-index:10;background:#1d1916f0;grid-template:1fr/minmax(0,1fr) auto minmax(0,1fr);place-items:center;gap:24px;padding:56px 28px 28px;display:grid;position:fixed;inset:0}.lightbox img{border-radius:8px;width:auto;max-width:min(78vw,1120px);height:auto;max-height:calc(100svh - 84px);display:block}.lightbox button{color:#fff;font:inherit;cursor:pointer;background:#ffffff14;border:1px solid #ffffff6b;border-radius:999px;padding:9px 14px}.lightbox-close{position:absolute;top:18px;right:22px}@media (width<=760px){.cover h1{font-size:clamp(32px,10vw,52px);bottom:24px;right:16px}#letter-content{width:calc(100% - 32px);padding:72px 0 88px}.gallery{grid-template-columns:1fr;gap:12px;width:calc(100% - 32px)}.gallery-item.wide,.gallery-item.pair,.gallery-item.center{grid-column:1}.gallery-item img{border-radius:8px}footer{width:calc(100% - 32px);padding:72px 0 32px}.lightbox{grid-template:1fr/auto minmax(0,1fr) auto;gap:10px;padding:56px 12px 20px}.lightbox img{min-width:0;max-width:100%;max-height:calc(100svh - 100px)}.lightbox button{padding:8px 10px;font-size:13px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
