@charset "UTF-8";
:root{--paper:#f4f2eb;--ink:#292825;--muted:#74716b;--line:#d9d6cf;--soft:#eae7df;--accent:#dedbd3;--danger:#9a4038;--serif:Georgia,"Times New Roman","Songti SC","STSong",serif;--sans:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;--mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;--gutter:clamp(20px,5vw,80px)}
*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font:14px/1.65 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button,a,label.upload-button{touch-action:manipulation}button{cursor:pointer}button:disabled,fieldset:disabled{opacity:.55}button:disabled{cursor:wait}button{border:0}input,select,textarea{width:100%;background:#faf9f5;border:1px solid var(--line);border-radius:0;padding:11px 12px;min-height:46px}textarea{resize:vertical;line-height:1.8}input:focus,select:focus,textarea:focus{outline:2px solid #77736c;outline-offset:1px}input[type=checkbox]{width:18px;min-height:18px;height:18px;accent-color:var(--ink)}:focus-visible{outline:3px solid #77736c;outline-offset:4px}[hidden]{display:none!important}::selection{background:var(--accent)}fieldset{margin:0;padding:0;border:0;min-width:0}img,video{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h2{font:normal 28px/1.4 var(--serif)}h3{font-size:15px;font-weight:500;margin-bottom:5px}.eyebrow{font:9px/1.7 var(--mono);letter-spacing:.13em}.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}.skip{position:fixed;top:8px;left:8px;background:var(--accent);padding:12px;z-index:20;transform:translateY(-160%)}.skip:focus{transform:none}.admin-header{height:96px;margin:0 var(--gutter);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:11px;align-items:center;font:10px/1.3 var(--sans);letter-spacing:.08em}.brand-mark{display:grid;grid-template-columns:1fr 1fr;gap:4px;width:29px;height:29px}.brand-mark i{background:var(--ink)}.brand-mark i:last-child{border-radius:50%}.site-link{font-size:11px;display:flex;gap:20px;align-items:center;min-height:44px}.site-link span{font-size:22px}.gate{max-width:650px;padding:80px 0 120px;margin:0 var(--gutter)}.gate h1{font:normal clamp(45px,7vw,80px)/1.3 var(--serif);letter-spacing:-.03em;margin:20px 0 30px}.gate p{max-width:480px;color:var(--muted);margin-bottom:25px}.gate .button{width:max-content}.page-title{padding:65px var(--gutter) 38px;display:flex;gap:25px;justify-content:space-between;align-items:end}.page-title h1{font:normal clamp(29px,4vw,48px)/1.4 var(--serif);margin:14px 0 10px;letter-spacing:.015em}.page-title p{font-size:12px;color:var(--muted);margin:0}.account{font:9px/1.7 var(--mono);color:var(--muted);overflow-wrap:anywhere;text-align:right}.tabs{margin:0 var(--gutter);border-bottom:1px solid var(--line);display:flex;gap:35px}.tab{background:none;padding:15px 0;font-size:13px;display:flex;gap:20px;align-items:center;border-bottom:2px solid transparent}.tab span{font:8px var(--mono);color:var(--muted)}.tab.active{border-bottom-color:var(--ink)}.notice{margin:22px var(--gutter) 0;padding:12px 16px;background:var(--soft);font-size:12px;border-left:3px solid #77736c;white-space:pre-wrap}.notice.error{border-left-color:var(--danger);background:#f3e7e0}.notice a{text-decoration:underline}.panel{margin:40px var(--gutter) 0}.panel:not([hidden])#archives-panel{display:grid;grid-template-columns:260px minmax(0,1fr);gap:clamp(25px,4vw,65px);align-items:start}.section-top{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px}.section-top h2{font-size:21px;margin:0}.button{display:inline-flex;justify-content:center;align-items:center;gap:18px;min-height:44px;padding:12px 19px;font-size:12px;line-height:1.5;border:1px solid transparent;text-align:center}.primary{background:var(--ink);color:var(--paper)}.primary:hover{background:#45423d}.secondary{background:transparent;border-color:var(--line)}.secondary:hover{background:var(--soft)}.compact{min-height:36px;padding:8px 12px;font-size:11px}.text-button{font-size:11px;background:none;padding:6px 0;min-height:36px;text-underline-offset:4px}.text-button:hover{text-decoration:underline}.danger{color:var(--danger)}.small{font-size:10px;color:var(--muted)}.list-toolbar{display:flex;justify-content:space-between;align-items:center;margin:8px 0 15px;gap:12px}.entry-list{border-top:1px solid var(--line)}.list-entry{padding:16px 0;border-bottom:1px solid var(--line);position:relative}.list-entry.selected{padding-left:13px;border-left:2px solid #77736c}.list-entry .list-title{background:none;font-size:14px;font-family:var(--serif);text-align:left;padding:0;line-height:1.6;display:block;overflow-wrap:anywhere;width:100%}.list-entry .list-title:hover{text-decoration:underline;text-underline-offset:4px}.list-meta{font:9px/1.8 var(--mono);color:var(--muted);display:flex;gap:10px;margin:6px 0}.list-entry .badge{font-size:9px}.list-actions{display:flex;gap:17px;justify-content:space-between;align-items:center}.empty-list{padding:25px 0;color:var(--muted);font-size:12px}.editor-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.editor-heading h2{margin:12px 0 14px;font-size:32px}.badge{font:10px/1.5 var(--sans);background:var(--soft);padding:5px 9px;white-space:nowrap}.badge.published{background:#e5e2db;color:#45423d}.help{font-size:11px;color:var(--muted);line-height:1.8;margin-bottom:14px}.intro-help{margin-bottom:32px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:0 0 23px}.form-row.three{grid-template-columns:1.1fr 1fr .7fr}.form-row label,.settings-form label:not(.upload-button):not(.check-label){display:block;font-size:12px;line-height:1.7}.form-row input,.form-row select,.form-row textarea,.settings-form label>input{margin-top:9px}.optional{font-size:10px;color:var(--muted);font-weight:normal;margin-left:5px}.language-note{display:flex;gap:12px;flex-wrap:wrap;justify-content:space-between;border-top:1px solid var(--line);padding-top:26px;margin:33px 0 22px}.language-note>span:last-child{font-size:10px;color:var(--muted)}.media-section{margin-top:30px;padding-top:27px;border-top:1px solid var(--line)}.upload-area{display:grid;grid-template-columns:130px 1fr;gap:24px;align-items:center}.cover-preview{aspect-ratio:4/5;overflow:hidden;background:var(--soft);display:flex;align-items:center;justify-content:center}.cover-preview img{width:100%;height:100%;object-fit:cover}.empty{color:#77736c;font:italic 14px/1.8 var(--serif);text-align:center;padding:20px}.upload-button{cursor:pointer;width:max-content;max-width:100%}.upload-status{margin:11px 0 0;overflow-wrap:anywhere;white-space:pre-wrap}.file-input{position:absolute;width:1px;height:1px;padding:0;border:0;opacity:0;overflow:hidden;min-height:0}.upload-button:has(+input:focus-visible){outline:3px solid #77736c;outline-offset:4px}.save-explanation{font-size:11px;line-height:1.9;background:var(--soft);padding:14px 17px;margin:28px 0;color:var(--muted)}.editor-actions{padding-top:22px;border-top:1px solid var(--line)}.action-buttons{display:flex;gap:10px;flex-wrap:wrap}.editor-actions>.help{margin:15px 0 0;white-space:pre-wrap}.editor-actions>.help.error,.upload-status.error{color:var(--danger)}.attachment-list{display:grid;gap:10px;margin-top:18px}.attachment{display:flex;gap:13px;align-items:center;padding:10px;border:1px solid var(--line)}.attachment img,.attachment video{width:65px;height:65px;object-fit:cover;background:var(--soft)}.attachment-info{font-size:11px;min-width:0;flex:1;overflow-wrap:anywhere}.attachment-info small{display:block;color:var(--muted);font-size:9px}.attachment .text-button{flex-shrink:0}.settings-panel:not([hidden]){display:grid;grid-template-columns:260px minmax(0,1fr);gap:clamp(25px,4vw,65px)}.settings-intro h2{font-size:32px;margin:16px 0 22px}.settings-intro>p{font-size:12px;line-height:1.95}.settings-form>.media-section:first-child,.settings-form fieldset>.media-section:first-child{border-top:0;padding-top:0;margin-top:0}.hero-preview,.video-preview{aspect-ratio:16/9;width:100%;display:flex;align-items:center;justify-content:center;background:var(--soft);overflow:hidden;margin:18px 0}.hero-preview img,.video-preview video{width:100%;height:100%;object-fit:cover}.video-preview video{object-fit:contain;background:#202020}.inline-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:12px}.settings-form .form-row{margin-top:25px}.check-label{display:flex;gap:12px;margin-top:22px;font-size:12px;align-items:flex-start}.check-label input{margin-top:3px;flex-shrink:0}.check-label p{margin:6px 0 0}.admin-footer{margin:70px var(--gutter) 0;padding:30px 0;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);gap:25px}.admin-footer>span{font:30px/.9 var(--serif);letter-spacing:-.055em}.admin-footer p{font-size:10px;color:var(--muted);margin:0}dialog{width:min(800px,calc(100vw - 32px));border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:25px;max-height:calc(100dvh - 35px);overflow:auto}dialog::backdrop{background:#181818b3;backdrop-filter:blur(3px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding-bottom:17px}.preview-languages{display:flex;gap:20px;padding:15px 0}.preview-languages .active{text-decoration:underline}.preview-cover{width:100%;max-height:440px;object-fit:cover}.preview-meta{font:9px/1.8 var(--mono);color:var(--muted);margin:25px 0 15px}.preview-title{font:normal 34px/1.4 var(--serif);overflow-wrap:anywhere;margin-bottom:20px}.preview-body p{font-size:14px;line-height:2;white-space:pre-wrap;overflow-wrap:anywhere}.preview-body{margin-bottom:25px}.preview-media{margin:20px 0}.preview-media img,.preview-media video{width:100%;max-height:600px;object-fit:contain}.preview-media figcaption{font-size:10px;color:var(--muted);margin-top:6px}.preview-warning{font-size:11px;color:var(--muted);padding:12px;background:var(--soft)}
@media(min-width:1600px){#workspace{max-width:1700px;margin:0 auto}}
@media(max-width:1050px){.panel:not([hidden])#archives-panel,.settings-panel:not([hidden]){grid-template-columns:220px minmax(0,1fr);gap:28px}.form-row{gap:15px}.form-row.three{grid-template-columns:1fr 1fr}.form-row.three>label:last-child{grid-column:1/-1;max-width:180px}}
@media(max-width:760px){.admin-header{height:78px}.page-title{padding-top:37px;display:block}.account{display:block;text-align:left;margin-top:17px}.page-title h1{font-size:32px}.tabs{gap:27px}.panel{margin-top:27px}.panel:not([hidden])#archives-panel,.settings-panel:not([hidden]){grid-template-columns:1fr;gap:35px}.archive-sidebar{border-bottom:1px solid var(--line);padding-bottom:15px}.entry-list{max-height:310px;overflow:auto}.entry-list .list-entry{padding-top:12px;padding-bottom:12px}.list-entry .list-title{font-size:17px}.editor-heading h2,.settings-intro h2{font-size:29px}.intro-help{margin-bottom:24px}.form-row,.form-row.three{grid-template-columns:1fr;gap:19px;margin-bottom:20px}.form-row.three>label:last-child{grid-column:auto;max-width:none}.form-row input,.form-row select,.form-row textarea,.settings-form label>input{font-size:16px}.body-field{min-height:210px}.upload-area{grid-template-columns:100px 1fr;gap:17px}.upload-button{font-size:11px;padding:10px 13px}.action-buttons .button{flex:1;padding:12px 10px;gap:10px}.settings-intro{max-width:520px}.settings-intro>p{margin-bottom:12px}.admin-footer{margin-top:45px}.help{font-size:12px}.language-note{margin-top:28px}.dialog-heading .eyebrow{font-size:8px}dialog{padding:18px}.preview-title{font-size:29px}.attachment .text-button{min-height:44px}.hero-preview,.video-preview{margin-top:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.categories-panel:not([hidden]){display:grid;grid-template-columns:260px minmax(0,1fr);gap:clamp(25px,4vw,65px);align-items:start}.category-editor{max-width:900px}.category-editor>h2{font-size:32px;margin:14px 0 18px}.category-editor>p{margin-bottom:28px}.category-list{border-top:1px solid var(--line)}.category-item{border-bottom:1px solid var(--line);padding:17px 0}.category-item.selected{padding-left:13px;border-left:2px solid #77736c}.category-name{font:normal 18px/1.5 var(--serif);background:none;padding:0;text-align:left;overflow-wrap:anywhere;max-width:100%}.category-name:hover{text-decoration:underline;text-underline-offset:4px}.category-english{font-size:11px;color:var(--muted);margin:4px 0 9px;overflow-wrap:anywhere}.category-item .list-actions{gap:15px}.category-default-note{font-size:9px;color:var(--muted)}.category-editor .editor-actions>.help.error{color:var(--danger)}
@media(max-width:1050px){.categories-panel:not([hidden]){grid-template-columns:220px minmax(0,1fr);gap:28px}}
@media(max-width:760px){.categories-panel:not([hidden]){grid-template-columns:1fr;gap:30px}.category-sidebar{border-bottom:1px solid var(--line);padding-bottom:15px}.category-list{max-height:380px;overflow:auto}.category-editor>h2{font-size:29px}.tabs{gap:clamp(15px,4vw,27px)}.tab{gap:clamp(8px,2vw,20px);font-size:12px}}
.cover-preview,.hero-preview{position:relative}.attachment-thumb{width:65px;height:65px;overflow:hidden;position:relative;flex:none;background:var(--soft)}.attachment-thumb img,.attachment-thumb video{width:100%;height:100%;max-width:none;object-fit:cover}.attachment-actions{display:flex;flex-direction:column;align-items:flex-end;gap:1px}.attachment-actions .text-button{white-space:nowrap}.photo-editor{width:min(920px,calc(100vw - 28px));padding:25px}.photo-editor .dialog-heading h2{font:normal 29px/1.3 var(--serif);margin:8px 0 0}.crop-help{margin:18px 0}.crop-previews{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-items:start}.crop-previews.hero-crop{grid-template-columns:minmax(0,1fr) 150px}.crop-previews figure{margin:0;min-width:0}.crop-previews figcaption{font:9px/1.7 var(--mono);letter-spacing:.04em;color:var(--muted);margin-bottom:9px}.crop-stage{width:100%;max-height:450px;aspect-ratio:4/5;position:relative;overflow:hidden;background:#dedbd3;touch-action:none;cursor:grab;user-select:none;isolation:isolate}.crop-stage.is-dragging{cursor:grabbing}.crop-stage img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;pointer-events:none;user-select:none;-webkit-user-drag:none}.crop-stage::after{content:"";position:absolute;inset:0;pointer-events:none;border:1px solid #ffffff65;background:linear-gradient(90deg,transparent 33.1%,#fff4 33.2%,#fff4 33.4%,transparent 33.5%,transparent 66.4%,#fff4 66.5%,#fff4 66.7%,transparent 66.8%),linear-gradient(0deg,transparent 33.1%,#fff4 33.2%,#fff4 33.4%,transparent 33.5%,transparent 66.4%,#fff4 66.5%,#fff4 66.7%,transparent 66.8%)}.hero-crop #crop-main-stage{aspect-ratio:16/9;max-height:none}.crop-mobile-stage{aspect-ratio:9/16;max-height:none}.crop-controls{margin-top:20px;border-top:1px solid var(--line);padding-top:20px}.crop-controls .form-row{margin-bottom:18px}.crop-range-label{display:flex!important;justify-content:space-between;align-items:center;font-size:12px;margin-bottom:5px;gap:15px}.crop-range-label output{font:10px var(--mono);color:var(--muted)}.crop-controls input[type=range]{padding:0;min-height:30px;background:none;accent-color:var(--ink);border:0;cursor:pointer}.crop-position-controls{margin-top:18px}.crop-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:20px}.crop-save-note{margin:15px 0 0}.preview-cover-frame,.preview-media-frame{overflow:hidden;position:relative;max-width:100%;background:var(--soft)}.preview-cover-frame{width:min(100%,520px);margin:0 auto}.preview-cover-frame img,.preview-media-frame img{width:100%;height:100%;object-fit:cover;max-height:none}.crop-stage:focus-visible{outline:2px solid #77736c;outline-offset:3px}
@media(max-width:760px){.photo-editor{padding:18px}.crop-previews.hero-crop{grid-template-columns:minmax(0,1fr) 90px;gap:12px}.crop-stage{max-height:380px}.crop-actions{gap:10px}.crop-actions .button{padding:10px 13px}.crop-actions>.text-button{font-size:10px}.crop-controls .form-row{grid-template-columns:1fr 1fr;gap:13px}.crop-controls select{font-size:14px;padding-left:8px;padding-right:8px}.attachment-actions .text-button{font-size:10px}.attachment{gap:10px}.attachment-thumb{width:55px;height:55px}}
.crop-stage{max-height:none;margin-left:auto;margin-right:auto}.photo-editor .help.error{color:var(--danger)}
.skip:not(:focus-visible){visibility:hidden;pointer-events:none}
@media(max-width:760px){.photo-editor .dialog-heading{gap:10px}.photo-editor .dialog-heading h2{font-size:25px}.photo-editor #close-photo-editor{flex:none;white-space:nowrap}.crop-actions .action-buttons{gap:8px}.crop-actions .action-buttons .button{flex:none;gap:8px;white-space:nowrap;padding:10px 12px}}
.admin-svg-defs{position:absolute;width:0;height:0;overflow:hidden}.admin-icon{width:14px;height:14px;display:inline-block;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex:none}.site-link>.admin-icon{width:20px;height:20px}.compact{gap:8px}.text-button.photo-edit-button{display:inline-flex;align-items:center;gap:7px}.upload-button>.admin-icon{width:13px;height:13px}.photo-edit-button>.admin-icon{width:12px;height:12px}
.chapter-photos-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:25px}.chapter-photo-slot{min-width:0}.chapter-photo-slot h4{font:normal 19px/1.4 var(--serif);margin:0 0 15px}.chapter-photo-slot h4 span{display:block;font:10px/1.6 var(--mono);margin-top:5px;color:var(--muted)}.chapter-photo-preview{width:100%;aspect-ratio:4/5;background:var(--soft);overflow:hidden;position:relative;margin-bottom:15px}.chapter-photo-preview img{width:100%;height:100%;object-fit:cover}.chapter-photo-slot .upload-button{width:100%;font-size:11px;padding:10px 7px}.chapter-photo-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.chapter-photo-actions .text-button{font-size:10px}.chapter-photo-slot .upload-status{font-size:10px;overflow-wrap:anywhere}
@media(max-width:1050px){.chapter-photos-grid{grid-template-columns:1fr}.chapter-photo-slot{padding-bottom:20px;border-bottom:1px solid var(--line)}.chapter-photo-preview{max-width:360px}.chapter-photo-slot .upload-button{width:max-content;padding:11px 15px}.chapter-photo-actions{justify-content:flex-start;gap:20px}}
.chapter-photo-preview.empty{display:flex;align-items:center;justify-content:center}
.home-text-panel:not([hidden]){display:grid;grid-template-columns:260px minmax(0,1fr);gap:clamp(25px,4vw,65px);align-items:start}.home-text-form{min-width:0}.home-text-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:20px}.home-text-toolbar .help{margin:0;flex:1}.home-text-groups{border-top:1px solid var(--line);margin-bottom:30px}.home-text-group{border-bottom:1px solid var(--line)}.home-text-group>summary{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:22px 0;list-style:none;cursor:pointer}.home-text-group>summary::-webkit-details-marker{display:none}.home-text-group>summary>span:first-child{font:normal 22px/1.4 var(--serif)}.home-text-group>summary .admin-icon{transition:transform .15s}.home-text-group[open]>summary .admin-icon{transform:rotate(45deg)}.home-group-count{font:9px var(--mono);color:var(--muted);margin-left:auto;white-space:nowrap}.home-text-group-body{padding-bottom:25px}.home-section-toggle{display:flex;gap:12px;align-items:flex-start;padding:15px 17px;background:var(--soft);margin:0 0 23px;font-size:12px}.home-section-toggle input{margin-top:2px;flex:none}.home-section-toggle .help{display:block;margin:4px 0 0}.home-copy-field+.home-copy-field{margin-top:25px;padding-top:25px;border-top:1px solid var(--line)}.home-copy-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:10px}.home-copy-heading h4{font-size:13px;font-weight:500;margin:0}.home-copy-heading .text-button{font-size:10px;flex:none}.home-copy-field .form-row{margin-bottom:6px}.home-copy-field .help{margin:0}.home-copy-field textarea{min-height:120px;min-width:0}.home-copy-field .form-row>label{min-width:0}.home-text-form .editor-actions{margin-top:25px}
@media(max-width:1050px){.home-text-panel:not([hidden]){grid-template-columns:220px minmax(0,1fr);gap:28px}}
@media(max-width:760px){.home-text-panel:not([hidden]){grid-template-columns:1fr;gap:20px}.home-text-group>summary>span:first-child{font-size:20px}.home-text-group>summary{gap:10px}.home-text-toolbar{gap:8px}.home-text-toolbar .help{font-size:11px;flex-basis:100%}.home-text-toolbar .text-button{font-size:11px}.home-copy-heading{gap:12px}.home-copy-heading h4{font-size:13px}.home-group-count{font-size:8px}.tabs{gap:12px}.tab{gap:7px}}
@media(max-width:370px){.tabs{gap:8px}.tab{font-size:11px;gap:5px}}
