:root{color-scheme:dark;font:16px/1.5 Segoe UI,system-ui,sans-serif;--background: #101114;--surface: #1b1e22;--rule: #3a4146;--text: #f0f2f0;--muted: #acb6b1;--accent: #bde8c8;--danger: #ffbbb5;color:var(--text);background:var(--background)}*{box-sizing:border-box}body{margin:0;min-width:280px}h1,h2,p{margin:0}button,input,select,textarea{font:inherit}button,.button,input,select,textarea{min-height:44px;color:var(--text);background:var(--surface);border:1px solid var(--rule);border-radius:6px;padding:8px 14px}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;text-decoration:none;cursor:pointer}button:disabled,button[aria-disabled=true]{opacity:.55;cursor:default}button:hover:enabled:not([aria-disabled=true]),.button:hover,select:hover{border-color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button[aria-pressed=true]{color:var(--accent);border-color:var(--accent)}.quiet{background:transparent}.primary{background:var(--accent);color:#14221a;border-color:var(--accent);font-weight:650}.primary:hover:enabled{background:#dbf3e0}.masthead{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:72px;padding:12px clamp(16px,4vw,56px);border-bottom:1px solid var(--rule)}.brand,.account,.filters,.lightbox-tools{display:flex;align-items:center;gap:10px}.brand{font-size:1.1rem;font-weight:700}.brand img{flex-shrink:0}.account span{color:var(--muted);overflow-wrap:anywhere}.update-notice{position:fixed;z-index:2;inset:auto max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) auto;display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;max-width:calc(100% - 24px);padding:12px 14px;background:var(--surface);border:1px solid var(--accent);border-radius:8px;box-shadow:0 8px 30px #0007}.auth{width:min(100% - 32px,420px);margin:clamp(48px,13vh,136px) auto 48px}.plate{display:block;margin-bottom:24px}h1{font:400 clamp(2.1rem,5.2vw,3.6rem)/1.08 Georgia,serif}.auth p{margin-top:12px;color:var(--muted)}.auth form{display:grid;gap:14px;margin:24px 0 10px}.auth>button{width:100%}.auth label,.version-field{display:grid;gap:6px}.auth input{width:100%;letter-spacing:.09em}.auth .notice{color:var(--accent)}.error,.auth .error{color:var(--danger)}.shell{width:min(100% - clamp(32px,8vw,112px),1640px);margin:28px auto 64px}.heading{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.filters{flex-wrap:wrap}.gallery-search{display:flex;align-items:center;gap:8px;width:min(100%,420px);padding-inline-start:14px;color:var(--muted);border:1px solid var(--rule);border-radius:6px;background:var(--surface)}.gallery-search svg{flex-shrink:0}.gallery-search input{width:100%;min-width:0;padding-inline-start:4px;border:0}.gallery-search:focus-within{outline:2px solid var(--accent);outline-offset:3px}.gallery-search input:focus-visible{outline:none}.combo{position:relative;min-width:0}.combo-trigger{max-width:min(240px,100%);justify-content:flex-start}.combo-trigger svg{flex-shrink:0;color:var(--muted)}.combo-trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.combo-chevron{margin-inline-start:auto}.combo-clearable{display:flex;border-radius:6px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--rule)}.combo-clearable:hover,.combo-clearable:has(.combo-trigger[aria-expanded=true]){box-shadow:inset 0 0 0 1px var(--accent)}.combo-clearable>button{border:0;background:transparent}.combo-clearable>button:focus-visible{outline-offset:-3px}.combo-clearable .combo-trigger{border-start-end-radius:0;border-end-end-radius:0}.combo-clear{position:relative;flex:0 0 44px;padding:0;border-start-start-radius:0;border-end-start-radius:0;color:var(--muted)}.combo-clear:before{content:"";position:absolute;inset-block:1px;inset-inline-start:0;width:1px;background:var(--rule)}.combo-clear:hover:enabled{color:var(--text)}.combo-trigger[aria-expanded=true]{border-color:var(--accent)}.combo-trigger[aria-expanded=true] .combo-chevron{transform:rotate(180deg)}.combo-panel{position:absolute;z-index:1;inset:calc(100% + 6px) auto auto 0;width:min(300px,calc(100dvw - 24px));padding:7px;background:var(--surface);border:1px solid var(--rule);border-radius:9px;box-shadow:0 12px 32px #0009}.combo-panel[data-side=above]{top:auto;bottom:calc(100% + 6px)}.combo-search{display:flex;align-items:center;gap:8px;padding-inline:10px;margin:2px 2px 7px;background:var(--background);border:1px solid var(--rule);border-radius:6px;color:var(--muted)}.combo-search:focus-within{outline:2px solid var(--accent);outline-offset:1px}.combo-search svg{flex-shrink:0}.combo-search input{width:100%;min-width:0;padding-inline:0;border:0;background:transparent}.combo-search input:focus-visible{outline:none}.combo-options{list-style:none;margin:0;padding:0;max-height:288px;overflow:auto}.combo-options li{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;padding:8px 10px;border:1px solid transparent;border-radius:6px;overflow-wrap:anywhere;cursor:pointer}.combo-options li[aria-selected=true]{color:var(--accent)}.combo-options li.active,.combo-options li:hover:not([aria-disabled=true]){background:var(--background);border-color:var(--rule)}.combo-options li[aria-disabled=true]{color:var(--muted);opacity:.65;cursor:default}.combo-options svg{flex-shrink:0}.combo-empty{padding:8px 10px;color:var(--muted)}.gallery-message{margin-bottom:16px}.contact-sheet{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr));gap:clamp(10px,1.4vw,20px)}.print{display:grid;justify-content:stretch;gap:0;overflow:hidden;text-align:left;padding:0}.print img{display:block;width:100%;aspect-ratio:4 / 5;object-fit:cover;background:var(--background)}.print span{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px;overflow-wrap:anywhere}.print svg{flex-shrink:0;color:var(--accent)}.feed-status{display:grid;justify-items:center;gap:12px;padding:36px 12px;color:var(--muted);text-align:center}.lightbox{margin:auto;padding:0;width:100%;max-width:100%;height:100dvh;max-height:100dvh;border:0;color:var(--text);background:var(--background)}.lightbox[open]{display:grid;grid-template-rows:auto minmax(120px,1fr) auto}.lightbox-bar,.lightbox-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:10px clamp(12px,3vw,32px);background:var(--surface)}.lightbox h2{font-size:clamp(1.05rem,2vw,1.5rem);overflow-wrap:anywhere}.icon{width:44px;padding:8px;background:transparent}.icon.danger:hover:not([aria-disabled=true]){color:var(--danger);border-color:var(--danger)}.lightbox-stage{min-height:0;display:grid;grid-template-columns:minmax(0,1fr);gap:8px;padding:8px}.lightbox-stage.compare{grid-template-columns:repeat(2,minmax(0,1fr))}.lightbox-stage img{min-height:0;width:100%;height:100%;object-fit:contain}.version-selects{display:flex;flex-wrap:wrap;align-items:end;gap:8px}.version-field{width:min(240px,100%)}.version-field .combo-trigger{width:100%}.lightbox-footer p{color:var(--muted)}.photo-tags summary{min-height:44px;padding:9px 12px;border:1px solid var(--rule);border-radius:6px;cursor:pointer}.photo-tags[open]{flex-basis:100%}.photo-tags ul{display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:8px 0 0;list-style:none}.photo-tags li{padding:3px 10px;border:1px solid var(--rule);border-radius:6px;overflow-wrap:anywhere}.app-dialog{width:min(100% - 24px,560px);max-height:calc(100dvh - 24px);padding:clamp(16px,4vw,24px);color:var(--text);background:var(--surface);border:1px solid var(--rule);border-radius:12px;box-shadow:0 18px 54px #0009}.app-dialog::backdrop{background:#08090bd9}.app-dialog h2{font-size:1.35rem}.generation-header,.generation-actions,.generation-job-header,.generation-queue-error{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.generation-form,.generation-queue{display:grid;gap:12px;margin-top:14px}.generation-form textarea{width:100%;resize:vertical;min-height:110px;background:var(--background)}.generation-hint{font-size:.9rem;color:var(--muted)}.character-suggestions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(116px,100%),1fr));gap:6px;padding:0;margin:0;list-style:none}.character-suggestions li{min-height:44px;padding:9px 10px;border:1px solid var(--rule);border-radius:6px;cursor:pointer;overflow-wrap:anywhere}.character-suggestions li[aria-selected=true],.character-suggestions li:hover{border-color:var(--accent);color:var(--accent)}.reference-field{display:grid;gap:8px;min-width:0;margin:0;padding:8px 12px 12px;border:1px solid var(--rule);border-radius:6px}.reference-field legend{padding-inline:5px}.reference-field legend span{margin-left:5px;color:var(--muted)}.reference-actions{display:flex;flex-wrap:wrap;gap:8px}.reference-attachments,.reference-options{margin:0;padding:0;list-style:none}.reference-attachments li,.reference-option{display:flex;min-height:46px;align-items:center;gap:8px;padding:4px 0;overflow-wrap:anywhere}.reference-attachments .icon{margin-inline-start:auto;flex-shrink:0}.reference-attachments img,.reference-options img{width:36px;height:36px;object-fit:cover;border-radius:4px;flex-shrink:0}.reference-picker{display:grid;gap:6px}.reference-options{max-height:min(200px,32dvh);overflow:auto}.reference-filter{display:flex;align-items:center;gap:8px}.reference-filter input,.reference-option input{min-height:auto;accent-color:var(--accent)}.reference-option{cursor:pointer}.generator-choice{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.generation-actions span,.generation-job-header time,.generation-source-title{color:var(--muted)}.generation-source,.delete-preview{display:flex;align-items:center;gap:12px;padding:10px;border-radius:6px;background:var(--background);overflow-wrap:anywhere}.generation-source img,.delete-preview img{width:56px;height:56px;flex-shrink:0;object-fit:cover;border-radius:4px}.generation-source strong{display:block}.generation-notice{color:var(--accent);margin-top:12px}.generation-jobs{list-style:none;margin:0;padding:0}.generation-jobs li{padding:12px 0;border-top:1px solid var(--rule);overflow-wrap:anywhere}.generation-comment{white-space:pre-wrap}.generation-jobs a{display:inline-flex;align-items:center;min-height:44px;color:var(--accent)}.delete-dialog{width:min(100% - 24px,420px)}.delete-heading{display:flex;align-items:center;gap:12px;margin-bottom:16px}.delete-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:8px;background:#472724;color:var(--danger)}.delete-dialog>p{color:var(--muted);margin:12px 0 20px}.delete-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.destructive{color:#351310;background:var(--danger);border-color:var(--danger);font-weight:650}.destructive:hover:enabled:not([aria-disabled=true]){background:#ffd0cc;border-color:#ffd0cc}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(max-width:530px){.masthead{min-height:64px}.account span{display:none}.contact-sheet{grid-template-columns:repeat(2,minmax(0,1fr))}.lightbox-tools{gap:5px}.version-field{flex:1 1 120px;min-width:0}}
