@charset "UTF-8";
:root{color-scheme:dark;--bg:#0d0f10;--surface:#171a1c;--line:#343a3c;--ink:#eeece6;--muted:#b2b5b7;--accent:#d6e5aa;--space:24px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.65}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{color:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}button,a,input,summary{touch-action:manipulation}button{border:0}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:600}img{max-width:100%;display:block}[hidden]{display:none!important}
.skip-link{position:fixed;left:16px;top:-80px;z-index:100;background:var(--accent);color:var(--bg);padding:12px}.skip-link:focus{top:12px}
.site-header,.site-footer{max-width:1680px;margin:auto;padding:25px 40px;display:flex;align-items:center;justify-content:space-between;gap:24px}.site-header{border-bottom:1px solid var(--line)}.wordmark{font-size:16px;letter-spacing:.03em;display:flex;align-items:center;gap:20px;min-height:44px}.wordmark span,.site-caption{font-size:11px;color:var(--muted);letter-spacing:.08em}.site-footer{font-size:12px;color:var(--muted);padding-top:36px;padding-bottom:36px;border-top:1px solid var(--line);margin-top:72px}.site-footer a{min-height:44px;display:flex;align-items:center}.site-footer a:hover{text-decoration:underline}
main{max-width:1680px;margin:auto;padding:44px 40px 0}.gallery-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:36px}.eyebrow{font-size:10px;letter-spacing:.17em;color:var(--muted);margin-bottom:12px}.gallery-heading h1{font-size:34px;line-height:1.4;letter-spacing:.04em}.intro{font-size:14px;color:var(--muted);margin-top:12px}.index-note{text-align:right;display:flex;align-items:baseline;gap:16px}.index-note strong{font-size:38px;line-height:1;font-weight:400;font-variant-numeric:tabular-nums}.index-note span{font-size:11px;color:var(--muted)}
.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 24px}.style-entry{display:block;min-width:0}.image-frame{aspect-ratio:1;background:var(--surface);overflow:hidden;position:relative;display:grid;place-items:center}.image-frame img{width:100%;height:100%;object-fit:contain}.is-missing{border:1px solid #2a3032;background:linear-gradient(135deg,#191d1e,#141718)}.registration-mark{position:absolute;inset:16px;border:1px solid #282e30}.registration-mark:before,.registration-mark:after{content:"";position:absolute;background:#363d3e;left:50%;top:50%;transform:translate(-50%,-50%)}.registration-mark:before{height:1px;width:24px}.registration-mark:after{width:1px;height:24px}.image-status{align-self:end;margin:0 8px 28px;font-size:11px;letter-spacing:.08em;color:var(--muted);z-index:1}.placeholder-label{position:absolute;left:12px;top:12px;background:var(--bg);padding:4px 8px;font-size:12px}.image-error{padding:20px;text-align:center;font-size:13px;color:var(--muted)}.image-error span{display:block}.entry-caption{display:grid;grid-template-columns:27px 1fr 18px;gap:8px;align-items:baseline;padding-top:13px;min-height:68px}.entry-number{font-variant-numeric:tabular-nums;font-size:11px;color:var(--muted)}.entry-caption h2{font-size:16px;line-height:1.55;overflow-wrap:anywhere;font-weight:500}.entry-arrow{font-size:17px;color:var(--muted);transition:color .15s,transform .15s}.style-entry:hover .entry-arrow{color:var(--accent);transform:translate(2px,-2px)}.style-entry:hover .entry-caption h2{color:var(--accent)}
.text-button{background:none;padding:10px 0;min-height:44px;text-decoration:underline;text-underline-offset:4px;font-size:13px}.development-notice{color:var(--muted);background:#1a2019;border-bottom:1px solid #343d2c;font-size:12px;padding:10px 40px;text-align:center}.loading-message{padding:80px 0;color:var(--muted)}
@media(min-width:1680px){.gallery-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:1199px){main{padding:36px 32px 0}.site-header,.site-footer{padding-left:32px;padding-right:32px}.gallery-grid{gap:30px 20px}.index-note{display:block}.index-note span{display:block;margin-top:10px}}
@media(max-width:899px){main{padding:28px 24px 0}.site-header,.site-footer{padding-left:24px;padding-right:24px}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 16px}.site-caption{display:none}.gallery-heading h1{font-size:28px}.index-note{display:none}.site-footer{align-items:flex-start;flex-direction:column;gap:8px}}
@media(max-width:599px){main{padding:26px 16px 0}.site-header,.site-footer{padding-left:16px;padding-right:16px}.site-header{padding-top:14px;padding-bottom:14px}.wordmark{font-size:14px;justify-content:space-between;width:100%;gap:8px}.wordmark span{font-size:9px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 12px}.entry-caption{grid-template-columns:20px 1fr;gap:6px}.entry-caption h2{font-size:14px}.entry-arrow{display:none}.gallery-heading{margin-bottom:26px}.gallery-heading h1{font-size:26px}.intro{font-size:13px}.image-status{font-size:10px;margin-bottom:20px}.registration-mark{inset:12px}.eyebrow{margin-bottom:8px}.development-notice{padding:8px 16px;text-align:left}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.detail-heading{margin-bottom:30px}.back-button{min-height:44px;background:none;padding:8px 0;color:var(--muted);font-size:14px}.back-button:hover{color:var(--ink)}.detail-title{margin-top:20px}.detail-title h1{font-size:30px;letter-spacing:.03em;line-height:1.45}.detail-title .eyebrow{margin-bottom:8px}.sample-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.sample-card{min-width:0}.sample-card figcaption{display:flex;align-items:center;gap:14px;font-size:14px;padding:10px 0}.sample-index{font-size:10px;color:var(--muted);letter-spacing:.08em}.expand-button{background:none;color:var(--muted);min-height:44px;margin-left:auto;font-size:12px;padding:8px}.sample-note{font-size:12px;color:var(--muted);margin:12px 0 40px}.theme-tabs{display:none}.detail-body{display:grid;grid-template-columns:minmax(0,36fr) minmax(0,64fr);gap:56px;padding-top:40px;border-top:1px solid var(--line)}.detail-body h2,.section-title{font-size:21px;font-weight:500;line-height:1.6}.style-source{white-space:pre-wrap;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:16px;line-height:1.9;color:var(--ink);margin:24px 0;padding:0 24px 0 0}.muted{color:var(--muted)}.small{font-size:13px}.additions{padding:0;margin:0;border:0;min-width:0}.additions legend{padding:0;display:block;width:100%}.additions legend span{display:block}.additions legend .eyebrow{margin-bottom:8px}.selection-summary{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--muted);margin-top:12px;padding:10px 0;border-bottom:1px solid var(--line)}.addition-row{padding:15px 0;border-bottom:1px solid var(--line)}.addition-label{display:flex;align-items:flex-start;gap:15px;cursor:pointer;min-height:44px}.addition-label input{width:19px;height:19px;flex-shrink:0;margin:5px 0 0;accent-color:var(--accent)}.addition-name{display:block;font-size:16px}.addition-help{display:block;color:var(--muted);font-size:12px;margin-top:3px}.addition-original{padding-left:34px;font-size:12px;color:var(--muted);margin-top:5px}.addition-original summary{cursor:pointer;min-height:36px;padding:8px 0;width:fit-content}.addition-original pre{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.8;padding:12px 16px;background:var(--surface);margin:8px 0}.preview-section{margin-top:40px}.preview-section h2{margin-bottom:8px}.prompt-preview{display:block;width:100%;margin-top:24px;border:1px solid var(--line);background:#131617;color:var(--ink);border-radius:0;resize:none;overflow:hidden;white-space:pre-wrap;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:16px;line-height:1.9;padding:24px;min-height:160px}.copy-slot{margin-top:18px;min-height:64px}.copy-bar{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.copy-description{font-size:12px;color:var(--muted);margin-right:auto}.primary-button{min-height:48px;padding:12px 26px;background:var(--accent);color:#171d11;font-weight:600;font-size:14px}.primary-button:hover{background:#e3edc5}.copy-notice{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);max-width:calc(100vw - 32px);width:max-content;padding:14px 24px;background:var(--ink);color:var(--bg);font-size:14px;z-index:40;visibility:hidden;box-shadow:0 8px 32px #0005}.copy-notice.is-visible{visibility:visible}.inline-error{margin-top:20px;padding:20px;border:1px solid #745c40;color:#f1d9b9}
@media(min-width:1200px){body:has(.detail-heading) main{max-width:1520px}}
@media(max-width:1199px){.detail-body{grid-template-columns:1fr;gap:40px}.style-source{padding:0;max-width:80ch}.sample-grid{gap:20px}}
@media(max-width:899px){.detail-heading{margin-bottom:22px}.detail-title{margin-top:14px}.detail-title h1{font-size:26px}.theme-tabs{display:flex;margin-bottom:16px;border-bottom:1px solid var(--line)}.theme-tabs button{background:none;padding:12px 20px;min-height:48px;color:var(--muted);border-bottom:2px solid transparent;flex:1}.theme-tabs button[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--accent)}.sample-grid{display:block}.sample-card[data-active="false"]{display:none}.sample-note{margin:12px 0 28px}.detail-body{padding-top:28px;gap:32px}.style-source{margin:18px 0}.prompt-preview{padding:18px}.copy-slot{min-height:calc(72px + env(safe-area-inset-bottom))}.copy-slot.is-fixed .copy-bar{position:fixed;bottom:0;left:0;right:0;padding:12px 24px calc(12px + env(safe-area-inset-bottom));background:#15191af5;backdrop-filter:blur(12px);border-top:1px solid var(--line);z-index:30}.copy-notice{bottom:calc(92px + env(safe-area-inset-bottom))}.copy-slot.is-fixed .copy-description{font-size:11px}.copy-slot.is-fixed #select-prompt{flex-basis:100%;text-align:right}}
@media(max-width:599px){.sample-card figcaption{font-size:13px}.detail-title h1{font-size:24px}.copy-slot.is-fixed .copy-bar{padding-left:16px;padding-right:16px}.primary-button{padding-left:20px;padding-right:20px}.detail-body h2,.section-title{font-size:20px}.copy-description{font-size:11px}.style-source,.prompt-preview{font-size:16px}.copy-bar{gap:12px}.detail-heading{margin-bottom:18px}}
dialog{border:1px solid var(--line);padding:0;background:var(--bg);color:var(--ink);width:calc(100vw - 48px);max-width:1800px;max-height:calc(100dvh - 48px);overflow:hidden}dialog::backdrop{background:#050607ed}.viewer-controls{display:flex;align-items:center;gap:20px;padding:14px 24px;border-bottom:1px solid var(--line)}.viewer-controls h2{font-size:16px;font-weight:500;margin-right:auto}.viewer-close,.viewer-zoom{background:none;min-height:44px;color:var(--ink);font-size:13px;padding:8px;white-space:nowrap}.viewer-zoom{color:var(--accent)}.viewer-stage{height:calc(100dvh - 160px);overflow:auto;display:flex;align-items:flex-start;padding:16px;gap:12px}.viewer-stage img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;margin:auto}.viewer-stage.is-native img{max-width:none;max-height:none;flex-shrink:0}.viewer-stage p{margin:auto;color:var(--muted)}.empty-state{padding:80px 0}.empty-state h1{font-size:26px;margin-bottom:20px}.empty-state p{margin:20px 0}.empty-state button{margin-top:20px}
@media(max-width:599px){dialog{width:100vw;max-width:100vw;max-height:100dvh;height:100dvh;margin:0;border:0}.viewer-controls{flex-wrap:wrap;gap:8px;padding:10px 16px}.viewer-controls h2{flex-basis:100%;font-size:15px}.viewer-close{margin-left:auto}.viewer-stage{height:calc(100dvh - 130px);padding:8px}}
