:root{font-family:Inter,Segoe UI,Microsoft YaHei UI,system-ui,sans-serif;color:#161615;background:#fbfbf9;font-synthesis:none;--paper:#fbfbf9;--surface:#fff;--field:#f2f2ef;--ink:#161615;--muted:#6f6f68;--line:rgba(20,20,18,.08);--accent:#2c5be0;--card-gap:18px}*{box-sizing:border-box}body{margin:0;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}a{color:var(--ink)}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ant-btn:active{transform:none!important}.ant-btn{box-shadow:none}.ant-btn-icon{display:inline-flex}.skip{position:fixed;top:-100px;left:16px;z-index:3000;background:var(--ink);color:#fff;padding:10px}.skip:focus{top:10px}.anticon svg{width:1em;height:1em}.boot-state{height:100dvh;display:grid;place-content:center}.topbar{height:72px;padding:0 32px;display:flex;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:15px;font-weight:500}.brand-mark{position:relative;width:11px;height:11px;border-radius:50%;background:var(--ink)}.brand-mark:after{content:"";position:absolute;right:-2px;top:-2px;width:4px;height:4px;border-radius:50%;background:var(--accent)}.save-status{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:12px}.save-status i{height:5px;width:5px;border-radius:50%;background:#17784f}.top-actions{margin-left:auto}.settings-panel{width:268px;padding:4px}.setting-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:10px 0}.ant-popover .ant-popover-inner{border:1px solid var(--line);border-radius:16px;padding:14px}.ant-switch-checked{background:var(--ink)!important}.workspace{--left:190px;--right:330px;display:grid;grid-template-columns:var(--left) minmax(0,1fr) var(--right);gap:20px;height:calc(100dvh - 72px);padding:12px 24px 24px;transition:grid-template-columns .26s cubic-bezier(.2,.7,.2,1)}.workspace.left-collapsed{--left:30px}.workspace.right-collapsed{--right:30px}.side-shell{position:relative;min-width:0;min-height:0}.side-panel{height:100%;width:100%;background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;opacity:1;transition:opacity .16s,transform .26s;transform:translate(0)}.sidebar{min-width:190px}.composer{min-width:330px}.collapsed .side-panel{opacity:0;pointer-events:none}.left-shell.collapsed .side-panel{transform:translate(-24px)}.right-shell.collapsed .side-panel{transform:translate(24px)}.side-shell.collapsed{overflow:hidden}.panel-top{height:44px;flex:none;display:flex;align-items:center;justify-content:space-between;padding:6px 8px 0 18px;color:var(--muted);font-size:11px}.composer .panel-top{justify-content:flex-end;padding-left:8px}.panel-top .ant-btn{width:32px;height:32px;color:var(--muted)}.panel-restore.ant-btn{position:absolute;top:0;left:0;width:30px;height:44px;border:1px solid var(--line);border-radius:10px;background:#fff;opacity:0;visibility:hidden;transition:opacity .18s}.collapsed .panel-restore.ant-btn{opacity:1;visibility:visible}.side-scroll{overflow:auto;padding:10px 8px 18px;scrollbar-width:none}.side-scroll::-webkit-scrollbar{display:none}.side-caption{font-size:10px;letter-spacing:.12em;color:var(--muted);padding:28px 14px 10px}.nav-btn.ant-btn{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;height:auto;min-height:38px;padding:7px 12px;border-left:2px solid transparent;border-radius:6px;color:#57574f;text-align:left;font-size:13px;white-space:normal}.nav-btn.ant-btn>span:first-child:not(.count){min-width:0;flex:1;text-align:left}.nav-btn .count{flex:none;font-size:11px;font-family:Consolas,monospace;color:var(--muted);font-variant-numeric:tabular-nums}.nav-btn.ant-btn.active{background:var(--field);color:var(--ink);border-left-color:var(--accent);font-weight:500}.nav-group{margin:3px 0}.subnav{padding:4px 0 8px 12px;margin-left:12px}.subnav .nav-btn{font-size:12px;min-height:32px;padding:5px 8px}.quick-nav{display:flex;flex-direction:column;gap:2px}.catalog{min-width:0;min-height:0;display:flex;flex-direction:column;gap:20px}.catalog-tools{flex:none;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.catalog-tools .ant-input-affix-wrapper{border-color:#dfdfda;background:var(--paper);font-size:13px;min-height:42px}.catalog-tools kbd{font:11px Consolas,monospace;color:var(--muted);padding:0 6px;border:1px solid #dfdfda;border-radius:4px}.filters{display:flex;align-items:center;gap:10px;margin-top:8px;flex-wrap:wrap}.filters .ant-select{width:132px;flex-shrink:0}.filters .ant-checkbox-wrapper{font-size:12px;color:#57574f;margin:0}.filters .sort{margin-left:auto}.card-scroll{flex:1;min-height:0;overflow:auto;scrollbar-width:thin;padding:0 6px 20px 0;overflow-anchor:none;scrollbar-gutter:stable}.masonry-host{width:100%;min-height:0}.virtual-canvas{position:relative;margin-inline:auto}.virtual-card{position:absolute;left:0;top:0;contain:layout style}.tag-card.ant-card{height:100%;border-radius:16px;border:1px solid var(--line);background:#fff;overflow:hidden;transition:box-shadow .15s,border-color .15s}.tag-card.ant-card:hover{box-shadow:0 4px 16px #1414120d;border-color:#14141229}.tag-card.chosen{border-color:#9c9c94}.tag-card .card-visual.ant-btn{width:100%;height:auto;display:block;padding:0;border:0;background:var(--field);border-radius:10px;overflow:hidden;line-height:0}.card-visual img{width:100%;height:100%;object-fit:contain;display:block}.no-image{width:100%;height:100%;display:flex;flex-direction:column;gap:10px;align-items:center;justify-content:center;background:var(--field);color:var(--muted);font-size:11px}.no-image>.anticon{font-size:26px}.card-badges{position:absolute;top:14px;left:14px;display:flex;gap:4px;pointer-events:none}.card-badges .ant-tag{font-size:10px;line-height:20px;border-radius:999px;margin:0;padding:0 6px;background:#fff}.tag-card .card-action.ant-btn.ant-btn-circle{position:absolute;right:13px;top:13px;display:grid;place-items:center;width:28px;min-width:28px;max-width:28px;height:28px;min-height:28px;max-height:28px;padding:0;aspect-ratio:1;border-radius:50%;background:#fff;color:#57574f}.tag-card .card-action.danbooru-link.ant-btn{top:47px}.card-action .ant-btn-icon{display:flex;align-items:center;justify-content:center;width:16px;height:16px;flex:none}.card-action .anticon{font-size:16px;line-height:1}.favorite.ant-btn[aria-pressed=true]{color:var(--ink)}.tag-card .card-info.ant-btn{height:100px;min-height:100px;max-height:100px;overflow:hidden;width:100%;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;text-align:left;white-space:normal;padding:10px 6px 6px;border-radius:6px}.card-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;font-size:13px;font-weight:500;line-height:1.55}.card-title .anticon{font-size:11px;margin-left:6px}.card-en{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;font:11px/1.6 Consolas,Microsoft YaHei UI,monospace;color:#57574f;margin-top:4px;min-height:18px}.card-info.ant-btn:disabled{opacity:1;color:var(--muted)}.card-info[aria-pressed=true]{background:var(--field)}.pagination{justify-content:center;margin:26px 0 10px}.card-scroll>.ant-empty{margin-top:100px}.composer-scroll{padding:10px 18px 20px;overflow:auto;scrollbar-width:thin}.composer-scroll .ant-segmented{padding:3px;border:1px solid var(--line)}.selection-header,.notes-heading,.preview-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:20px 0 10px;font-size:12px;color:var(--muted)}.selection-header .ant-btn,.notes-heading .ant-btn{font-size:12px;color:#57574f;padding:0 4px}.selected-empty{padding:24px 10px;text-align:center;font-size:12px;color:var(--muted);border:1px dashed #dfdfda;border-radius:10px;background:var(--paper)}#selected-list{max-height:310px;overflow:auto;scrollbar-width:thin}.selected-row{border:1px solid var(--line);border-radius:10px;background:var(--paper);padding:8px;margin-bottom:8px}.selected-row>.ant-input{font-size:12px;padding:5px 8px}.selected-tools{display:flex;align-items:center;gap:2px;margin-top:6px}.selected-tools .ant-input-number{width:66px;margin-right:auto}.selected-tools .ant-btn{width:28px;height:28px;min-width:0;padding:0}.custom-form{margin-top:12px}.custom-form .ant-input{font-size:12px}.composer textarea.ant-input{font-size:12px;line-height:1.8;background:var(--field)}#preview{font-family:Consolas,Microsoft YaHei UI,monospace;color:#57574f}.preview-head span{font:11px Consolas,monospace}.copy-button{margin-top:16px;height:40px}.paused-notice{font-size:11px;color:#946200;margin:10px 0}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;margin-top:24px;align-items:start}.detail-media{min-height:250px;border-radius:14px;overflow:hidden;background:var(--field);display:flex;align-items:center;justify-content:center}.detail-media img{width:100%;max-height:65vh;object-fit:contain}.detail-layout .ant-form-item{margin-bottom:14px}.detail-description{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;color:var(--muted)}.detail-extra{margin-top:14px;font-size:12px;color:#57574f;overflow-wrap:anywhere}.detail-extra pre{white-space:pre-wrap;max-height:200px;overflow:auto}.detail-origins{margin-top:14px}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:24px}.oc-item.ant-btn{height:auto;display:block;text-align:left;white-space:normal;width:100%;margin-top:10px;padding:16px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}.oc-item small{display:block;font-size:11px;line-height:1.6;color:var(--muted);margin-top:6px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}@media(min-width:1600px){.workspace{--right:350px;gap:24px;padding:12px 32px 24px}.composer{min-width:350px}.workspace.right-collapsed{--right:30px}}@media(max-width:1190px){.workspace{--left:170px;--right:290px;gap:14px;padding:8px 16px 20px}.sidebar{min-width:170px}.composer{min-width:290px}.composer-scroll{padding:10px 12px 16px}.filters{gap:4px}.filters .sort{margin-left:0}}@media(max-width:960px){.workspace{--left:164px;--right:290px;gap:12px;padding:8px 12px 16px}.sidebar{min-width:164px}.right-shell:not(.collapsed){position:fixed;right:12px;top:80px;bottom:16px;width:290px;z-index:20;box-shadow:0 16px 40px #0002;border-radius:16px}.workspace:not(.right-collapsed){grid-template-columns:var(--left) minmax(0,1fr) 30px}.save-status{display:none}.topbar{height:64px;padding:0 20px}.workspace{height:calc(100dvh - 64px)}}@media(max-width:600px){.workspace{--left:30px;--right:30px;gap:8px;padding:4px 8px 12px}.left-shell:not(.collapsed){position:fixed;left:8px;top:72px;bottom:12px;width:190px;z-index:20;box-shadow:0 16px 40px #0002;border-radius:16px}.sidebar{min-width:190px}.catalog-tools{padding:10px}.filters .ant-checkbox-wrapper{font-size:11px}.filters .ant-select{width:116px}.filters .ant-select-selector{font-size:11px}.catalog{gap:12px}.detail-layout{grid-template-columns:1fr}.detail-media{max-height:30vh;min-height:140px}.detail-media img{max-height:30vh}.catalog-tools kbd{display:none}.card-title{font-size:12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.nav-btn.ant-btn.ancestor-active{background:#eaf0ff;color:#2448a2;border-left-color:#8aa5ee;font-weight:500}.subnav .nav-btn.ant-btn.active{background:#ecece6;border-left-color:#58584e;color:#161615}.ant-select-dropdown{border:1px solid var(--line)}.ant-select-dropdown .ant-select-item-option{border-radius:6px}.ant-select-item-option-content,.ant-modal-title{overflow-wrap:anywhere}.card-info:focus-visible{outline-offset:-2px}.management-help{color:var(--muted);font-size:12px;line-height:1.7;margin-bottom:0}.version-list{max-height:240px;overflow:auto;margin-top:12px}.version-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.version-row>span{min-width:0;overflow-wrap:anywhere}.version-row small{display:block;color:var(--muted);margin-top:4px}.detail-image-section{min-width:0}.detail-media.import-image.ant-btn{width:100%;height:250px;padding:0;border:0;white-space:normal;cursor:pointer}.import-image:focus-visible{outline-offset:3px}.image-tools{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.image-error{margin-top:10px}.touch-copy-tag.ant-btn{display:none}.panel-scrim{position:fixed;top:64px;right:0;bottom:0;left:0;z-index:18;border:0;background:#16161538;cursor:pointer}.mobile-copy-count{font-size:11px;opacity:.75;margin-left:6px}@media(max-width:960px){:root{--mobile-dock-height:116px;--mobile-bottom:env(safe-area-inset-bottom,0px)}button,a,.ant-segmented-item{touch-action:manipulation}.workspace{height:calc(100dvh - 64px - var(--mobile-dock-height) - var(--mobile-bottom))}.mobile-dock{position:fixed;z-index:25;left:0;right:0;bottom:0;padding:8px max(12px,env(safe-area-inset-right,0px)) calc(12px + var(--mobile-bottom)) max(12px,env(safe-area-inset-left,0px));background:var(--surface);border-top:1px solid var(--line);display:flex;flex-direction:column;gap:8px}.mobile-dock-row{display:flex;gap:8px;align-items:center}.mobile-dock-row>.ant-btn{height:44px;width:44px;flex:none}.mobile-dock-row>.ant-segmented{flex:1;min-width:0}.mobile-dock .ant-segmented-item-label{min-height:40px;display:flex;align-items:center;justify-content:center}#mobile-copy-prompt{height:44px}.mobile-save-error{position:fixed;bottom:calc(var(--mobile-dock-height) + var(--mobile-bottom) + 8px);left:12px;right:12px;z-index:30}.right-shell:not(.collapsed){bottom:calc(var(--mobile-dock-height) + var(--mobile-bottom) + 12px)}.nav-btn.ant-btn{min-height:44px}.panel-top .ant-btn{min-width:40px;height:40px}.panel-top{height:48px}.tag-card .card-action.ant-btn.ant-btn-circle{width:36px;min-width:36px;max-width:36px;height:36px;min-height:36px;max-height:36px}.tag-card .card-action.danbooru-link.ant-btn{top:57px}.selected-tools .ant-btn{width:40px;min-width:40px;height:40px}.selected-tools{gap:4px}.selected-tools .ant-input-number{width:64px;flex:none}.composer{min-width:0}.composer input.ant-input,.composer textarea.ant-input,.detail-dialog input.ant-input,.detail-dialog textarea.ant-input{font-size:16px}.touch-copy-tag.ant-btn{display:inline-flex}.image-tools .ant-btn{height:40px}.dialog-actions .ant-btn{min-height:44px}.detail-dialog .ant-modal-body{max-height:calc(100dvh - 160px);overflow-y:auto;overscroll-behavior:contain;padding:0 2px 4px}.detail-dialog .ant-modal-close{width:44px;height:44px;top:6px;right:6px}}@media(max-width:600px){.workspace,.workspace:not(.right-collapsed){display:grid;grid-template-columns:minmax(0,1fr);gap:0;padding:4px 8px 12px}.side-shell.collapsed{position:absolute;width:0;height:0;overflow:hidden}.panel-restore.ant-btn{display:none}.left-shell:not(.collapsed){width:min(280px,calc(100vw - 24px));bottom:calc(var(--mobile-dock-height) + var(--mobile-bottom) + 12px)}.right-shell:not(.collapsed){width:min(380px,calc(100vw - 24px));top:72px;right:12px}.sidebar{min-width:0}.filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.filters .ant-select{width:100%}.filters .sort{grid-column:2;grid-row:1}.filters .ant-checkbox-wrapper{min-height:36px;display:flex;align-items:center}.catalog-tools input.ant-input{font-size:16px}.detail-dialog{top:12px;margin:0 auto;padding-bottom:0;max-width:calc(100vw - 16px)}.detail-dialog .ant-modal-content{padding:18px 16px}.detail-layout{gap:16px;margin-top:18px}.detail-media.import-image.ant-btn{height:180px}.detail-media img{max-height:30dvh}.dialog-actions{position:sticky;bottom:-4px;background:var(--surface);padding:12px 0 4px;border-top:1px solid var(--line);z-index:1}.composer-scroll{padding-inline:12px}}.top-actions{display:flex;align-items:center;gap:14px}.quick-import-button.ant-btn{color:#dc4b63}.quick-import-button.ant-btn:hover{color:#c73752!important;background:#fff0f3!important}.detail-information{min-width:0}.detail-prompt{margin-bottom:18px}.detail-field-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;font-size:13px}.detail-field-heading .ant-btn{color:var(--muted)}.detail-prompt textarea[readonly]{background:var(--paper);color:var(--ink);cursor:text;border-color:var(--line)}.generation-parameters{margin:8px 0 20px}.generation-parameters .ant-descriptions-item-content{overflow-wrap:anywhere}.entry-editor{margin-top:20px}.quick-file-button{margin-bottom:8px}.selected-row textarea.ant-input{resize:none}.entry-editor textarea.ant-input{line-height:1.7}@media(max-width:960px){.top-actions .ant-btn{width:44px;height:44px}.top-actions{gap:8px}.detail-field-heading .ant-btn{width:40px;height:40px}.entry-editor input.ant-input,.entry-editor textarea.ant-input{font-size:16px}}.sort-tools{display:flex;align-items:center;gap:6px;margin-left:auto}.sort-tools .sort{margin-left:0}.sort-tools #shuffle{width:36px;height:36px;padding:0;flex:none;color:var(--muted);font-size:19px}.sort-tools #shuffle[aria-pressed=true]{color:var(--accent);background:#eaf0ff}.tag-card .card-action.mark-r18g.ant-btn{top:81px}.mark-r18g.ant-btn[aria-pressed=true]{color:#a0385c;background:#fff0f5}.detail-image-actions{display:flex;gap:10px;align-items:center}.detail-image-actions .card-action.ant-btn{position:static;display:grid;place-items:center;width:40px;min-width:40px;height:40px;padding:0;border:1px solid var(--line);background:var(--paper)}.detail-image-actions .card-action .anticon{font-size:18px}.image-tools{align-items:center}.image-picker-tools:has(.ant-btn){display:flex;justify-content:flex-start;margin-bottom:12px}.detail-dialog{top:36px;padding-bottom:24px}.detail-dialog .ant-modal-body{max-height:calc(100dvh - 140px);overflow-y:auto;overscroll-behavior:contain}.detail-layout{min-height:min(580px,calc(100dvh - 200px))}.detail-media img{max-height:62dvh}.detail-information{padding-bottom:16px}@media(max-width:1190px){.sort-tools{margin-left:0}}@media(max-width:960px){.sort-tools #shuffle{width:40px;height:40px}.tag-card .card-action.mark-r18g.ant-btn{top:101px}.detail-image-actions .card-action.ant-btn{width:44px;height:44px;min-width:44px}.image-picker-tools .ant-btn{height:40px}.detail-dialog{top:12px}.detail-layout{min-height:0}}@media(max-width:600px){.filters .sort-tools{grid-column:2;grid-row:1;margin-left:0;min-width:0;gap:2px}.filters .sort-tools .ant-select{width:auto;flex:1;min-width:0}.sort-tools #shuffle{width:32px;min-width:32px}.detail-media,.detail-media img{max-height:42dvh}.detail-dialog .ant-modal-body{max-height:calc(100dvh - 120px)}}
