@font-face{font-family:Zen Kaku Gothic New;src:url('./fonts/ZenKakuGothicNew-Regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Zen Kaku Gothic New;src:url('./fonts/ZenKakuGothicNew-Bold.woff2') format('woff2');font-weight:700;font-display:swap}
:root{--red:#e60012;--ink:#1e1e1e;--gray:#626262;--line:#d9d9d9;--soft:#f6f6f6;--font:"Zen Kaku Gothic New","Hiragino Kaku Gothic ProN",Meiryo,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:auto;scroll-padding-top:24px}
body{margin:0;color:var(--ink);background:#fff;font-family:var(--font);font-size:16px;line-height:1.8;-webkit-font-smoothing:antialiased}
a{color:inherit;text-underline-offset:.25em}
button,input,textarea,select{font:inherit;color:inherit}
button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
button:disabled{cursor:default;opacity:.45}
button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--ink);outline-offset:5px}
input:focus,textarea:focus,select:focus{outline:2px solid var(--red);outline-offset:2px}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-weight:700;line-height:1.45;overflow-wrap:anywhere}
h1{letter-spacing:.025em}
p{overflow-wrap:anywhere}
[hidden]{display:none!important}
fieldset{border:0;padding:0;margin:0;min-width:0}
hr{border:0;border-top:1px solid var(--line);margin:24px 0}
.page-width{max-width:1240px;margin:0 auto;padding-left:48px;padding-right:48px}
.site-header{height:110px;max-width:1240px;margin:auto;padding:0 48px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{color:var(--red);text-decoration:none;font-size:37px;font-weight:700;letter-spacing:-1.5px;display:flex;align-items:center;line-height:1}
.brand-symbol{width:30px;height:30px;display:grid;grid-template-columns:1fr 1fr;gap:3px;margin-right:11px}
.brand-symbol i{background:var(--red)}
.brand-dot{margin-left:1px}
.site-header nav{display:flex;align-items:center;gap:28px}
.nav-link{font-size:15px;font-weight:700;text-decoration:none;border-bottom:1px solid transparent}
.nav-link:hover{border-color:currentColor}
.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;min-height:56px;border:1px solid var(--red);background:var(--red);color:#fff;border-radius:0;padding:13px 26px;font-size:16px;font-weight:700;text-decoration:none;line-height:1.5;transition:background .15s,color .15s}
.button:hover{background:#bc0010;border-color:#bc0010}
.button.outline{background:#fff;color:var(--ink);border-color:var(--ink)}
.button.outline:hover{color:var(--red);border-color:var(--red)}
.button.small{min-height:44px;padding:10px 20px;font-size:14px;gap:20px}
.site-header .button{border-radius:50px}
.button.full{width:100%}
.text-link,.text-button{font-size:14px;font-weight:700;background:none;border:0;padding:7px 0;text-decoration:underline;display:inline-block;text-underline-offset:5px}
.text-link:hover,.text-button:hover{color:var(--red)}
.eyebrow{font-size:14px;letter-spacing:.1em;font-weight:700;color:var(--red)}
.help,.edition-note{font-size:14px;line-height:1.8;color:var(--gray)}
.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:55px;align-items:center;padding-top:35px;padding-bottom:70px}
.hero h1{font-size:clamp(56px,6.3vw,84px);line-height:1.27;color:var(--red);letter-spacing:-.035em;margin:23px 0 27px}
.hero-description{font-size:17px;line-height:2}
.hero-button{margin-top:29px;min-width:260px;justify-content:space-between;min-height:62px}
.hero-copy>.help{margin-top:10px}
.hero-example{max-width:440px;margin-left:auto;width:100%;border:2px solid var(--red);padding:14px}
.example-label{display:flex;justify-content:space-between;font-size:14px;color:var(--red);font-weight:700;line-height:1;margin:3px 0 17px}
.hero-covers{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;text-decoration:none}
.hero-book{display:flex;align-items:center;justify-content:center;background:var(--soft);aspect-ratio:4/5;overflow:hidden}
.hero-book img{width:100%;height:100%;object-fit:contain;transition:transform .2s}
.hero-covers:hover img{transform:scale(1.035)}
.example-link{display:flex;justify-content:space-between;font-size:14px;font-weight:700;color:var(--red);text-decoration:none;margin-top:15px}
.format-strip{border-block:1px solid var(--red);display:flex;gap:0;color:var(--red);justify-content:center;font-size:16px;font-weight:700;padding:19px 24px}
.format-strip span+span{border-left:1px solid var(--red)}
.format-strip span{padding:0 36px}
.how-section,.public-section{padding-top:85px;padding-bottom:85px}
.section-heading{margin-bottom:34px}
.section-heading h2{font-size:32px;margin-top:10px;letter-spacing:.035em}
.how-grid{display:grid;grid-template-columns:repeat(3,1fr);padding:0;list-style:none;gap:38px;margin:0}
.how-grid li{border-top:1px solid var(--ink);padding-top:20px}
.step-number{font-size:40px;font-weight:700;color:var(--red);line-height:1}
.how-grid h3{font-size:20px;margin:18px 0 10px}
.how-grid p{font-size:15px}
.public-section{border-top:1px solid var(--line)}
.heading-row{display:flex;align-items:end;justify-content:space-between;gap:20px}
.public-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 25px}
.public-item{text-decoration:none}
.public-thumb{border:1px solid var(--line);overflow:hidden}
.public-thumb img{aspect-ratio:1200/630;object-fit:contain;transition:transform .2s}
.public-item:hover .public-thumb img{transform:scale(1.03)}
.public-item .help{margin-top:14px}
.public-item h3{display:flex;justify-content:space-between;gap:15px;font-size:19px}
.site-footer{border-top:2px solid var(--red);margin:50px auto 0;padding:40px 0 24px;background:#fff}
.footer-top,.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px}
.footer-brand{font-size:36px;color:var(--red);font-weight:700;letter-spacing:-1px;text-decoration:none}
.site-footer nav{display:flex;gap:28px;font-size:14px}
.site-footer nav a{text-decoration:none}
.footer-bottom{border-top:1px solid var(--line);margin-top:30px;padding-top:20px}
.footer-bottom small,.rakuten-credit{font-size:12px;color:var(--gray)}
.page-heading{border-top:2px solid var(--red);padding:42px 0 43px;margin-top:25px}
.page-heading h1{font-size:52px;color:var(--red);margin:6px 0 12px}
.page-heading p:last-child{font-size:16px}
.editor-layout{display:block}.editor-page{max-width:1100px}.publish-actions{border-top:1px solid var(--line);padding:16px 0;text-align:right;position:sticky;bottom:0;z-index:4;background:#fff}.publish-actions .button{min-width:240px}
.form-section{border-top:1px solid var(--ink);padding:26px 0 33px}
.form-section h2{font-size:22px;margin-bottom:25px}
.form-section h2>span{color:var(--red);font-size:16px;margin-right:12px;vertical-align:middle}
label{display:block;font-size:15px;font-weight:700}
label+label{margin-top:23px}
input:not([type=checkbox]):not([type=radio]),textarea,select{display:block;width:100%;border:1px solid #a8a8a8;border-radius:0;background:#fff;padding:11px 13px;font-size:16px;font-weight:400;margin-top:8px;line-height:1.6;min-height:48px}
input::placeholder,textarea::placeholder{color:#777}
textarea{resize:vertical}
.optional,.required{font-size:12px;font-weight:400;margin-left:10px;color:var(--gray)}
.required{color:var(--red)}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.field-row>label{margin:0}
.field-row+label{margin-top:20px}
.format-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border:1px solid var(--ink)}
.format-options label{display:flex;align-items:center;justify-content:center;padding:14px 5px;gap:8px;cursor:pointer;margin:0;position:relative}
.format-options label+label{border-left:1px solid var(--ink)}
.format-options label:has(:checked){background:var(--red);color:#fff}
.format-options input{width:15px;height:15px;accent-color:var(--red);margin:0;flex-shrink:0}
.format-options small{display:block;font-size:11px;font-weight:400;line-height:1.7}
.format-options span{font-size:17px;line-height:1.5}
#format-help{margin-top:14px}
.form-error{color:#b6000e;font-size:14px;line-height:1.8;margin-top:14px}
.form-error:empty{display:none}
.editor-works-heading{display:flex;align-items:center;justify-content:space-between}
#slot-count{font-size:14px;font-weight:700;color:var(--red);white-space:nowrap;margin-bottom:25px}
.editor-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:18px}
.editor-slot-scroll{overflow-x:auto;overscroll-behavior-x:contain}.editor-slot{border:1px solid var(--line);min-width:0}.editor-slots[data-grid="9"] .slot-picker{min-height:150px;padding-inline:6px}.editor-slots[data-grid="9"] .slot-title{font-size:12px}.editor-slots[data-grid="9"] .slot-empty{font-size:12px}
.slot-picker{border:0;background:#fff;width:100%;min-height:190px;position:relative;display:flex;flex-direction:column;align-items:center;padding:28px 12px 14px;text-align:center;gap:8px}
.slot-picker:hover{background:#fafafa}
.slot-number{position:absolute;top:8px;left:11px;color:var(--red);font-size:12px;font-weight:700}
.slot-picker img{height:91px;width:65px;object-fit:contain}
.slot-book{height:91px;display:flex;align-items:center;color:var(--red);font-size:15px}
.slot-title{font-size:14px;font-weight:700;line-height:1.5;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.slot-comment{font-size:11px;color:var(--gray)}
.slot-empty{display:flex;align-items:center;flex-direction:column;font-size:14px;color:var(--gray);padding:25px 0}
.slot-empty strong{font-size:30px;color:var(--red);font-weight:400}
.slot-actions{display:grid;grid-template-columns:1fr 1fr 1fr;border-top:1px solid var(--line)}
.slot-actions button{border:0;background:#fff;font-size:12px;min-height:40px;padding:0 2px;white-space:nowrap}
.editor-slot:has(.slot-empty) .slot-actions{display:none}
.slot-actions button+button{border-left:1px solid var(--line)}
.slot-actions button:hover{background:var(--soft)}
.editor-aside{position:sticky;top:24px}
.publish-panel{border-top:2px solid var(--red);padding-top:24px}
.publish-panel h2{font-size:22px;margin-bottom:24px}
.checkbox-label{display:flex;gap:12px;align-items:flex-start;line-height:1.8;font-size:14px}
.checkbox-label input{width:18px;height:18px;accent-color:var(--red);flex-shrink:0;margin:4px 0 0}
.publish-panel>.help{margin-top:10px}
.storage-note{font-size:14px}
.publish-panel .button{margin-top:20px}
.publish-panel>.text-link{display:block;text-align:center;margin-top:12px}
.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}
dialog{border:1px solid var(--ink);background:#fff;width:min(680px,calc(100% - 32px));max-height:calc(100dvh - 40px);padding:27px 32px 32px;color:var(--ink);overscroll-behavior:contain}
dialog::backdrop{background:#0008}
dialog h2{font-size:30px;color:var(--red);margin-bottom:22px}
.close-button{background:#fff;border:1px solid var(--ink);width:40px;height:40px;line-height:1;font-size:27px;flex-shrink:0}
.picker-tabs{display:flex;border-bottom:1px solid var(--ink);margin:22px 0}
.picker-tabs button{flex:1;padding:13px 8px;border:0;border-bottom:3px solid transparent;background:#fff;font-weight:700;font-size:15px}
.picker-tabs button[aria-selected=true]{border-bottom-color:var(--red);color:var(--red)}
.catalog-query{display:flex;gap:12px;align-items:end;margin-top:16px}.catalog-query>label{flex:1;min-width:0;margin:0}.catalog-query .button{min-height:52px}.catalog-form .manga-filter{display:flex;margin-top:14px;font-size:14px}.catalog-form .manga-filter input{width:18px;height:18px}.work-tile.is-empty{background:#ededed;border:1px solid #ddd}.work-tile.is-empty .tile-number{color:#888;background:transparent}.form-error:empty{display:none}
.catalog-filters label{font-size:13px;margin:0}
.catalog-filters select{font-size:14px}
.catalog-filters .button{min-height:48px}
#catalog-status{margin:18px 0 10px}
.catalog-results{max-height:330px;overflow-y:auto;overscroll-behavior:contain;border-top:1px solid var(--line)}
.catalog-row{display:flex;border-bottom:1px solid var(--line);align-items:center}
.catalog-item{display:flex;align-items:center;gap:14px;width:100%;text-align:left;border:0;background:#fff;padding:13px 7px;min-width:0}
.catalog-item:hover{background:var(--soft)}
.catalog-item img{flex:0 0 40px;height:56px;object-fit:contain}
.catalog-item>span:nth-child(2){flex:1;min-width:0}
.catalog-item strong{font-size:15px;line-height:1.5;display:block;overflow-wrap:anywhere}
.catalog-item small{display:block;font-size:12px;color:var(--gray);line-height:1.6;margin-top:3px}
.catalog-placeholder{width:40px;height:56px;display:flex;align-items:center;justify-content:center;background:var(--soft);color:var(--red)}
.catalog-source{font-size:12px;white-space:nowrap;padding:13px 5px}
.catalog-pagination{display:flex;align-items:center;justify-content:space-between;margin-top:10px;font-size:13px}
.picker-credit{margin-top:14px}
#manual-panel>.help{margin-bottom:20px}
#manual-panel .field-row{margin:20px 0}
.selected-work{border-top:2px solid var(--red);padding-top:20px;margin-top:22px}
.selected-heading{display:flex;align-items:start;gap:20px;justify-content:space-between}
.selected-heading strong{font-size:22px;line-height:1.5}
.selected-heading button{flex-shrink:0}
.selected-work>label{margin-top:20px}
.selected-work>a{font-size:13px}
.edition-note:empty{display:none}
.comment-count{text-align:right;margin-bottom:12px}
.notice,.version-note{border-left:3px solid var(--red);background:var(--soft);padding:16px 20px;font-size:14px;margin-bottom:25px}
.notice a{display:inline-block;margin-left:10px}
.board-intro{border-top:2px solid var(--red);margin-top:25px;padding:40px 0}
.board-intro h1{font-size:44px;color:var(--red);margin:14px 0 20px;max-width:1000px}
.intro-separator{margin:0 12px;color:#aaa}
.owner-message{font-size:16px;max-width:780px;white-space:pre-wrap;line-height:2}
.board-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:25px}
.play-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:40px}
.play-layout>section{min-width:0}
.play-instruction{font-size:15px;font-weight:700;margin-bottom:12px}
.board-scroll{overflow-x:auto;padding:2px;scrollbar-color:var(--red) #eee}
.board{display:grid;border:1px solid var(--red);background:var(--red);gap:1px}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.grid-9{grid-template-columns:repeat(9,minmax(0,1fr));min-width:630px}
.work-tile{position:relative;aspect-ratio:4/5;min-width:0;background:#fff;overflow:hidden}
.work-art{position:absolute;inset:0;display:flex;justify-content:center;align-items:center}
.work-art img{width:100%;height:100%;object-fit:contain}
.type-cover{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:15px;color:var(--red);height:100%;width:100%;text-align:center}
.type-cover small{font-size:12px}
.type-cover strong{font-size:18px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.tile-number{position:absolute;top:5px;left:5px;min-width:22px;padding:1px 4px;background:#fff;color:var(--red);font-size:12px;font-weight:700;pointer-events:none;z-index:1;line-height:1.5}
.work-toggle{position:absolute;inset:0;width:100%;height:100%;background:transparent;border:0;padding:0;display:flex;align-items:end;justify-content:center}
.work-toggle:hover{box-shadow:inset 0 0 0 3px var(--red)}
.work-toggle:focus-visible{outline:3px solid var(--ink);outline-offset:-4px;z-index:2}
.work-toggle:disabled{opacity:1}
.tile-title{background:#ffffffec;padding:5px 8px;font-size:13px;font-weight:700;line-height:1.55;width:100%;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-align:left}
.check-stamp{position:absolute;top:8px;right:8px;background:var(--red);color:#fff;width:36px;height:36px;border-radius:50%;font-size:23px;font-weight:700;line-height:33px;display:none;border:2px solid #fff}
.is-checked .check-stamp{display:block}
.is-checked .work-toggle{box-shadow:inset 0 0 0 4px var(--red)}
.is-checked .tile-title{background:var(--red);color:#fff}
.grid-5 .type-cover,.grid-9 .type-cover{padding:9px}
.grid-5 .type-cover strong{font-size:14px}
.grid-9 .type-cover strong{font-size:12px}
.grid-9 .type-cover small{display:none}
.grid-5 .tile-title,.grid-9 .tile-title{font-size:11px;padding:3px 4px}
.grid-5 .check-stamp,.grid-9 .check-stamp{width:25px;height:25px;line-height:22px;font-size:16px;top:4px;right:4px}
.board-caption{font-size:13px;color:var(--gray);margin-top:14px;display:flex;gap:15px;justify-content:space-between;flex-wrap:wrap}
.score-column{align-self:start;position:sticky;top:25px}
.score-card{border-block:2px solid var(--red);padding:20px 0 25px}
.score-main{display:flex;align-items:center;gap:18px;line-height:1.15;margin-top:20px}
.score-main>strong{font-size:76px;color:var(--red)}
.score-main>span{font-size:24px}
.score-main small{display:block;font-size:12px;color:var(--gray);margin-top:10px}
.score-stats{display:flex;gap:26px;border-top:1px solid var(--line);padding-top:14px;margin-top:20px;font-size:14px}
.score-stats strong{font-size:24px;margin-right:5px}
#score-message{font-size:14px;margin:20px 0}
.score-column>.text-link{margin-top:17px}
.work-details{margin-top:65px}
.detail-list{list-style:none;padding:0;margin:0}
.detail-list>li{display:grid;grid-template-columns:36px 100px minmax(0,1fr);gap:25px;padding:30px 0;border-top:1px solid var(--line);align-items:start}
.detail-number{font-size:17px;color:var(--red);font-weight:700}
.detail-cover{width:100px;height:140px;object-fit:contain}
.detail-placeholder{width:100px;height:140px;background:var(--soft);color:var(--red);display:flex;align-items:center;justify-content:center;font-size:13px}
.media-label{font-size:12px;color:var(--red)}
.detail-info h3{font-size:25px;margin:4px 0 6px}
.author{font-size:14px;color:var(--gray)}
.edition-note{font-size:12px;margin-top:5px}
.reason{margin:20px 0 10px;white-space:pre-wrap;font-size:16px;line-height:2.1;max-width:780px;overflow-wrap:anywhere}
.buy-button{display:block;width:fit-content;font-size:13px;margin-top:15px}
.buy-button small{font-size:10px;color:var(--gray);margin-left:8px}
.affiliate-disclosure{font-size:12px;color:var(--gray);border-top:1px solid var(--line);padding-top:20px;margin-top:10px}
.list-view{margin-top:0;max-width:1000px}
.single-item .detail-list>li{grid-template-columns:36px 200px minmax(0,1fr)}
.single-item .detail-cover,.single-item .detail-placeholder{width:200px;height:278px}
.page-end-actions{margin-top:40px}
.result-preview{margin:20px auto;max-width:340px;border:1px solid var(--line)}
.result-preview>p{padding:24px;font-size:14px}
.result-preview img{width:100%;height:auto}
.result-preview:has(img[height="630"]){max-width:none}
.share-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
.share-note{font-size:12px;color:var(--gray);margin-top:20px}
.mobile-dock{display:none}
.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,15px);padding:13px 22px;background:var(--ink);color:#fff;font-size:14px;max-width:calc(100% - 32px);width:max-content;opacity:0;pointer-events:none;z-index:10;transition:.2s}
.toast.visible{opacity:1;transform:translate(-50%,0)}
.my-page{min-height:55vh}
.my-page>.help{margin-top:24px}
.my-pages{margin:0 0 30px}
.my-item{display:flex;justify-content:space-between;gap:25px;border-top:1px solid var(--line);padding:24px 0;align-items:center}
.my-item h2{font-size:23px}
.my-item>div:last-child{display:flex;gap:16px;flex-shrink:0;align-items:center}
.draft-panel{display:flex;align-items:center;flex-wrap:wrap;gap:24px;background:var(--soft);padding:24px;margin-bottom:35px}
.draft-panel>div{flex:1}
.draft-panel h2{font-size:18px}
.draft-panel p{font-size:14px}
.error-page{min-height:55vh;padding-top:70px}
.error-page h1{font-size:32px;margin:14px 0 30px}
.skip-link{position:fixed;left:16px;top:-90px;background:#fff;padding:10px 16px;z-index:20}
.skip-link:focus{top:12px}
.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}
@media(min-width:1300px){.hero{padding-top:55px;padding-bottom:80px}.hero-example{max-width:470px}}
@media(max-width:1000px){
.page-width{padding-left:32px;padding-right:32px}.site-header{padding:0 32px;height:90px}
.hero{gap:32px}.hero h1{font-size:60px}.hero-description{font-size:15px}.hero-example{max-width:380px}
.format-strip{font-size:13px}.format-strip span{padding:0 20px}
.editor-layout{grid-template-columns:minmax(0,1fr) 230px;gap:28px}
.format-options span{font-size:15px}.format-options label{flex-direction:column;padding:10px 2px}.format-options input{position:absolute;opacity:0}.format-options label:focus-within{outline:2px solid var(--ink);outline-offset:3px}
.editor-slots{gap:10px}.slot-picker{min-height:180px;padding-inline:6px}
.play-layout{grid-template-columns:minmax(0,1fr) 220px;gap:28px}.score-stats{gap:15px}.score-main>strong{font-size:64px}
.how-grid{gap:24px}.how-grid h3{font-size:18px}.how-grid p{font-size:14px}
}
@media(max-width:760px){
.page-width{padding-left:22px;padding-right:22px}.site-header{height:82px;padding:0 22px;gap:12px}
.brand{font-size:28px}.brand-symbol{width:22px;height:22px;gap:2px;margin-right:8px}
.site-header nav{gap:13px}.nav-link{font-size:12px}.site-header .button.small{font-size:12px;min-height:38px;padding:8px 13px;gap:9px}
.hero{grid-template-columns:1fr;gap:35px;padding-top:30px;padding-bottom:40px}.hero h1{font-size:clamp(40px,12.5vw,60px);margin:14px 0 22px}.hero-description{font-size:16px}.hero-button{margin-top:24px;min-height:56px}
.hero-example{width:100%;max-width:440px;margin:0 auto;padding:12px}.hero-book{aspect-ratio:1}.hero-covers{gap:7px}.hero-example .example-label{margin-bottom:13px}
.format-strip{display:grid;grid-template-columns:1fr 1fr;padding:12px 15px;font-size:12px;gap:6px 0;text-align:center}
.format-strip span{padding:2px 7px}.format-strip span:last-child{grid-column:1/-1;border-left:0}
.how-section,.public-section{padding-top:48px;padding-bottom:48px}.section-heading h2{font-size:26px}.section-heading{margin-bottom:24px}
.how-grid{grid-template-columns:1fr;gap:25px}.how-grid li{display:grid;grid-template-columns:48px 1fr;column-gap:16px;padding-top:18px}.step-number{font-size:32px;grid-row:1/3}.how-grid h3{margin:0 0 9px;font-size:19px}.how-grid p{font-size:15px;grid-column:2}
.public-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px 16px}.public-item h3{font-size:16px}.public-item .help{font-size:12px}.heading-row{align-items:start;flex-direction:column;gap:12px}
.site-footer{padding:28px 0 22px;margin-top:35px}.footer-top{align-items:start;gap:24px;flex-direction:column}.footer-brand{font-size:31px}.site-footer nav{gap:22px;font-size:13px}.footer-bottom{align-items:start;gap:12px;flex-direction:column;margin-top:25px}.footer-bottom small{font-size:11px}
.page-heading{margin-top:10px;padding:26px 0 30px}.page-heading h1{font-size:36px}.page-heading p:last-child{font-size:14px}
.editor-layout{grid-template-columns:1fr;gap:5px}.form-section{padding-top:23px;padding-bottom:27px}.form-section h2{font-size:21px;margin-bottom:20px}
.editor-aside{position:static}.publish-panel{padding:24px 0 15px}.publish-panel h2{margin-bottom:20px}.publish-panel .button{min-height:56px}
.editor-slots{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.slot-picker{min-height:175px;padding-top:29px}.slot-picker img{width:55px;height:76px}.slot-title{font-size:12px}.slot-comment{font-size:10px}.slot-number{font-size:11px;top:5px;left:8px}.slot-empty{padding:20px 0;font-size:12px}.slot-actions button{font-size:11px;min-height:38px}
.format-options span{font-size:17px}.format-options small{font-size:10px}.format-options label{padding:13px 2px}
dialog{padding:20px;width:calc(100% - 24px);max-height:calc(100dvh - 24px)}dialog h2{font-size:26px;margin-top:5px}.close-button{width:36px;height:36px;font-size:25px}
.catalog-filters{gap:8px}.catalog-filters .button{padding:10px 16px}.catalog-filters select{padding:10px 7px}.catalog-item{gap:10px}.catalog-item strong{font-size:14px}.catalog-source{font-size:11px}
.field-row{gap:14px}.selected-heading strong{font-size:20px}.selected-work textarea{min-height:180px}
.board-intro{margin-top:10px;padding:28px 0}.board-intro h1{font-size:32px;margin:12px 0 16px}.board-intro .eyebrow{font-size:12px}.owner-message{font-size:15px}.board-actions{gap:12px;margin-top:20px}.board-actions .button{font-size:12px}
.play-layout{grid-template-columns:1fr;gap:26px}.play-instruction{font-size:14px}.board-caption{font-size:12px}.score-column{position:static}.score-card{padding:20px 0;display:grid;grid-template-columns:1fr 1fr;column-gap:20px}.score-card>.eyebrow{grid-column:1/-1}.score-main{margin-top:8px;grid-row:2/4}.score-main>strong{font-size:62px}.score-main>span{font-size:20px}.score-stats{border:0;margin-top:9px;padding:0;gap:15px;flex-wrap:wrap;font-size:12px}.score-stats strong{font-size:21px}#score-message{font-size:12px;margin:8px 0 18px}.score-card>.button{grid-column:1/-1}.score-column>.text-link{font-size:13px}
.type-cover{padding:12px 7px}.type-cover strong{font-size:14px}.type-cover small{font-size:10px}.tile-title{font-size:11px;padding:4px 5px}.check-stamp{width:28px;height:28px;font-size:18px;line-height:25px;top:5px;right:5px}
.grid-5 .type-cover strong{font-size:11px}.grid-5 .type-cover small{display:none}.grid-5 .tile-title{font-size:10px;line-height:1.35}.grid-5 .tile-number{font-size:10px;top:2px;left:2px;min-width:15px;padding:0 2px}
.work-details{margin-top:42px}.list-view{margin-top:0}.detail-list>li{grid-template-columns:26px 65px minmax(0,1fr);gap:12px;padding:25px 0}.detail-number{font-size:14px}.detail-cover,.detail-placeholder{width:65px;height:91px;font-size:11px}.detail-info h3{font-size:21px}.reason{margin-top:14px;font-size:15px;line-height:2.1}.author{font-size:12px}.edition-note{font-size:11px}
.single-item .detail-list>li{grid-template-columns:26px 95px minmax(0,1fr)}.single-item .detail-cover,.single-item .detail-placeholder{width:95px;height:132px}.single-item .detail-info{grid-column:1/-1}.single-item .detail-info h3{font-size:26px}.single-item .reason{font-size:16px}
.mobile-dock{display:flex;position:fixed;bottom:0;left:0;right:0;align-items:center;justify-content:space-between;gap:18px;background:#fff;border-top:1px solid var(--red);padding:12px 22px calc(12px + env(safe-area-inset-bottom));z-index:5}
.mobile-dock strong{font-size:20px;color:var(--red);margin-right:12px}.mobile-dock small{font-size:12px}.mobile-dock>.button{font-size:13px}
body:has(.mobile-dock){padding-bottom:80px}body:has(.mobile-dock) .toast{bottom:90px}
.my-item{align-items:start;flex-direction:column;gap:12px}.my-item h2{font-size:22px}
.draft-panel{padding:20px;gap:15px}.draft-panel>div{flex-basis:100%}
.share-actions .button{font-size:14px;padding:12px 17px;gap:10px}
}
@media(max-width:380px){
.site-header{padding-inline:16px}.brand{font-size:25px}.brand-symbol{display:none}.site-header nav{gap:10px}.page-width{padding-inline:16px}
.editor-slots{grid-template-columns:repeat(3,minmax(0,1fr))}.format-options span{font-size:15px}.mobile-dock{padding-inline:16px}.mobile-dock strong{margin-right:7px}
}
/* Alternate section backgrounds while keeping the page and input surfaces white. */
.public-section{background:#f5f5f5;max-width:none}.public-section>.section-heading,.public-section>.public-grid{max-width:1144px;margin-left:auto;margin-right:auto}
.how-section>.section-heading,.how-section>.how-grid{max-width:1144px;margin-left:auto;margin-right:auto}
.form-section.format-section{background:#f5f5f5;padding:24px;margin-bottom:25px;border-top:0}
.publish-panel{background:#f5f5f5;padding:24px 20px}
.score-card{background:#f5f5f5;padding:20px}
.work-details:not(.list-view){background:#f5f5f5;padding:32px}
.detail-list>li:has(.detail-placeholder),.single-item .detail-list>li:has(.detail-placeholder){grid-template-columns:36px minmax(0,1fr)}
.detail-placeholder{display:none}
.mobile-only{display:none}
@media(max-width:760px){.form-section.format-section{padding:20px 14px}.publish-panel{padding:24px 20px}.work-details:not(.list-view){padding:25px 16px;margin-left:-6px;margin-right:-6px}.score-card{padding:20px 16px}}
@media(max-width:760px){.detail-list>li:has(.detail-placeholder),.single-item .detail-list>li:has(.detail-placeholder){grid-template-columns:26px minmax(0,1fr)}.single-item li:has(.detail-placeholder) .detail-info{grid-column:auto}}
@media(max-width:760px){.site-header .brand{font-size:26px;flex-shrink:0}.site-header nav{gap:10px}.nav-link{font-size:11px;white-space:nowrap}.site-header .button.small{padding:8px 11px;gap:6px;white-space:nowrap}.mobile-only{display:initial}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Media selection and compact editing on every board size. */
.media-options,.board-view-options{display:flex;gap:8px}
.media-options button,.board-view-options button{flex:1;min-width:0;border:1px solid var(--line);background:#fff;padding:12px 6px;font-size:14px;font-weight:700;min-height:48px}
.media-options button[aria-pressed=true],.board-view-options button[aria-pressed=true]{background:var(--red);border-color:var(--red);color:#fff}
.manual-help{margin-bottom:18px;font-size:12px}
#use-manual{margin-top:20px}
#comment-help{margin-top:10px}
.editor-slot-scroll{overflow:visible;margin-bottom:18px}
.editor-slots{margin-bottom:0}
.editor-slots{grid-template-columns:repeat(3,minmax(0,1fr))}
.slot-picker .slot-number{position:static;align-self:flex-start;line-height:1;margin-bottom:5px}
.slot-picker{padding-top:12px}
.board-view-options{margin-bottom:18px}
.work-filter{display:flex;align-items:end;gap:15px;margin-bottom:18px}
.work-filter>label{flex:1;min-width:0}
.work-filter .help{white-space:nowrap;margin-bottom:12px}
/* Numbers and labels occupy their own space, outside the artwork. */
.board.grid-9{min-width:0}
.board .work-tile{aspect-ratio:auto;display:flex;flex-direction:column}
.board .work-toggle{position:static;inset:auto;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;height:100%;text-align:left}
.board .work-art{position:relative;inset:auto;display:block;aspect-ratio:4/5;width:100%;overflow:hidden;flex-shrink:0}
.board .work-art img,.board .type-cover{position:absolute;inset:0;width:100%;height:100%}
.board .tile-top{display:flex;align-items:center;justify-content:space-between;min-height:26px;padding:3px 6px;flex-shrink:0;background:#fff}
.board .tile-number{position:static;min-width:0;padding:0;font-size:12px;line-height:1.4;background:none}
.board .check-stamp{position:static;display:inline-flex;align-items:center;justify-content:center;width:19px;height:19px;line-height:1;font-size:13px;border:0;visibility:hidden}
.board .is-checked .check-stamp{visibility:visible}
.board .tile-title{background:#fff;min-height:45px;flex:1;padding:6px;font-size:13px}
.board .is-checked .tile-top{background:var(--red);color:#fff}
.board .is-checked .tile-number{color:#fff}
.board .is-checked .check-stamp{background:#fff;color:var(--red)}
.board .is-checked .tile-title{background:#fff;color:var(--ink)}
.board .work-tile.is-empty .work-art{background:#eee}
.board .tile-detail{display:block;font-size:12px;padding:6px;text-align:center;background:#fff;border-top:1px solid var(--line)}
.board.grid-9[data-view=board] .tile-title,.board.grid-9[data-view=board] .tile-detail{display:none}
.board.grid-9[data-view=board] .tile-top{min-height:19px;padding:2px 4px}
.board.grid-9[data-view=board] .tile-number{font-size:10px}
.board.grid-9[data-view=board] .check-stamp{width:14px;height:14px;font-size:10px}
.board[data-view=cards]{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;border:0;background:none}
.board[data-view=cards] .work-tile{border:1px solid var(--line)}
.board[data-view=cards] .work-tile.is-empty{display:none}
.board[data-view=cards] .tile-title{font-size:14px;min-height:52px}
.board[data-view=cards] .type-cover strong{font-size:17px}
/* Long pages keep comments in native disclosure elements, in the initial HTML. */
.compact-details .detail-list>li{display:block;padding:0}
.item-detail>summary{display:grid;grid-template-columns:28px 56px minmax(0,1fr) 22px;align-items:center;gap:16px;padding:16px 0;cursor:pointer;list-style:none}
.item-detail>summary::-webkit-details-marker{display:none}
.item-detail>summary:has(.detail-placeholder){grid-template-columns:28px minmax(0,1fr) 22px}
.item-detail .detail-cover{width:56px;height:76px}
.item-detail .detail-info h3{font-size:18px;margin:3px 0}
.item-detail .detail-info .author{font-size:12px}
.detail-expand{color:var(--red);font-size:22px}
.item-detail[open] .detail-expand{transform:rotate(45deg)}
.detail-body{padding:0 0 24px 116px}
.detail-body .reason{margin-top:5px}
.detail-check-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:18px}
.detail-check[aria-pressed=true]{color:var(--red);border-color:var(--red)}
.purchase-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.purchase-links .buy-button{display:inline-flex;align-items:center;gap:5px;border:1px solid #aaa;background:#fff;padding:9px 12px;min-height:44px;margin:0}
@media(max-width:760px){
  .media-options{gap:5px}.media-options button{font-size:12px;padding-inline:2px}
  .slot-picker{padding-top:10px}.editor-slots{gap:8px}.slot-actions button{min-height:44px;padding:0}
  .board[data-view=cards]{gap:8px}.board[data-view=cards] .tile-title{font-size:13px;min-height:50px}
  .board[data-view=cards] .type-cover strong{font-size:13px}
  .board .tile-title{font-size:11px;padding:5px;min-height:43px}
  .board .tile-detail{font-size:11px;padding:10px 2px;min-height:40px}
  .board.grid-9[data-view=board] .tile-top{padding:2px}.board.grid-9[data-view=board] .type-cover{padding:3px}.board.grid-9[data-view=board] .type-cover strong{font-size:8px}
  .item-detail>summary{grid-template-columns:22px 44px minmax(0,1fr) 18px;gap:9px;padding:13px 0}
  .item-detail>summary:has(.detail-placeholder){grid-template-columns:22px minmax(0,1fr) 18px}
  .item-detail .detail-cover{width:44px;height:60px}.item-detail .detail-info h3{font-size:15px}
  .detail-body{padding:0 0 22px}.detail-expand{font-size:18px}
  .purchase-links{gap:8px}.purchase-links .buy-button{font-size:12px;padding:9px}
}
.footer-disclosure{margin:24px 0 0;font-size:12px;line-height:1.9;color:var(--gray)}
.site-footer nav{flex-wrap:wrap;row-gap:12px}
.footer-api{font-size:12px;line-height:2;color:var(--gray);margin-top:8px}.footer-api a{text-underline-offset:3px}
