:root{--bg:#f4f1ea;--panel:#fffdf8;--panel-strong:#f0ebdf;--text:#231f1a;--muted:#6e655a;--border:#d8cebf;--accent:#1e1b18;--accent-contrast:#f6f3eb;--danger:#8a2f2f;--success:#2d6a4f;--shadow:0 10px 30px rgba(32,24,14,0.08);font-family:Georgia,Times New Roman,serif}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:radial-gradient(circle at top left,rgba(219,206,180,.45),transparent 30%),linear-gradient(180deg,#efe8db,#f7f4ee);color:var(--text)}body{min-height:100vh}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.page-shell{min-height:100vh;padding:28px}.center-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.card{background:var(--panel);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow)}.login-card{width:min(480px,100%);padding:40px}.eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.heading{margin:8px 0 0;font-size:clamp(2rem,3vw,3rem)}.subtle{color:var(--muted)}.form-stack{display:grid;grid-gap:16px;gap:16px;margin-top:24px}.field{display:grid;grid-gap:8px;gap:8px}.field label{font-size:14px;font-weight:600}.field input,.field select,.field textarea{width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--border);background:#fff}.field textarea{min-height:220px;resize:vertical}.danger-button,.ghost-button,.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;border:1px solid transparent;padding:11px 18px;transition:transform .12s ease,opacity .12s ease,background .12s ease}.danger-button:disabled,.ghost-button:disabled,.primary-button:disabled,.secondary-button:disabled{opacity:.5;cursor:not-allowed}.primary-button{background:var(--accent);color:var(--accent-contrast)}.icon-button{min-width:42px;min-height:42px;padding:10px}.icon-button svg{flex:0 0 auto}.secondary-button{background:var(--panel-strong);color:var(--text);border-color:var(--border)}.ghost-button{background:transparent;color:var(--muted);border-color:var(--border)}.danger-button{background:var(--danger);color:white}.app-shell{display:grid;grid-template-columns:260px minmax(0,1fr);grid-gap:24px;gap:24px}.sidebar{padding:24px;display:flex;flex-direction:column;gap:24px;min-height:calc(100vh - 56px)}.sidebar nav{display:grid;grid-gap:8px;gap:8px}.sidebar-link{border-radius:12px;padding:10px 12px;border:1px solid transparent;color:var(--muted)}.sidebar-link-icon{display:flex;align-items:center;gap:10px}.sidebar-link-icon svg{width:18px;height:18px;flex:0 0 auto}.sidebar-link.active{border-color:var(--border);background:var(--panel-strong);color:var(--text)}.sidebar-footer{margin-top:auto;display:grid;grid-gap:10px;gap:10px;font-size:14px}.workflow-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);grid-gap:24px;gap:24px}.settings-grid{display:grid;grid-template-columns:220px minmax(0,1fr);grid-gap:24px;gap:24px}.settings-nav,.settings-panel{padding:24px}.settings-content,.settings-stack{display:grid;grid-gap:24px;gap:24px}.admin-create-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(220px,.8fr) 140px 140px;grid-gap:16px;gap:16px;align-items:end;margin-top:24px}.checkbox-field{display:inline-flex;align-items:center;gap:10px;min-height:46px;font-size:14px;font-weight:600}.checkbox-field input{width:18px;height:18px}.checkbox-compact{min-height:auto;font-weight:500}.users-table{display:grid;grid-gap:12px;gap:12px}.users-row{display:grid;grid-template-columns:minmax(220px,1.5fr) 110px 120px minmax(180px,1fr) minmax(180px,.8fr);grid-gap:12px;gap:12px;align-items:center;border:1px solid var(--border);border-radius:14px;padding:14px;background:#fff}.users-head{background:var(--panel-strong);font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.user-name,.users-head{font-weight:700}.users-row input{width:100%;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:#fff}.row-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.workflow-panel{padding:24px}.renders-panel{min-width:0}.panel-title{margin:0;font-size:1.8rem}.panel-copy{margin-top:6px;color:var(--muted)}.uploader{border:1px dashed var(--border);background:var(--panel-strong);border-radius:18px;min-height:180px;display:grid;place-items:center;text-align:center;overflow:hidden}.input-preview{min-height:96px;max-width:360px;place-items:stretch;position:relative}.input-preview img{height:100%;object-fit:cover}.input-preview>div{display:grid;place-items:center;padding:16px}.input-source-actions{display:flex;gap:10px;flex-wrap:wrap}.preview-button{width:100%;padding:0;background:var(--panel-strong);-moz-user-select:none;user-select:none;-webkit-user-select:none}.preview-button.is-clickable{cursor:crosshair}.mask-rectangle-overlay{position:absolute;border:2px solid rgba(255,255,255,.96);background:rgba(255,255,255,.28);box-shadow:0 0 0 9999px rgba(20,14,8,.46);pointer-events:none}.result-card img,.uploader img{display:block;width:100%;height:auto}.image-editor-modal{width:min(900px,calc(100vw - 48px));padding:24px}.mask-editor-surface{position:relative;overflow:hidden;border-radius:18px;background:#1f1a14;margin-top:18px;touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none;cursor:crosshair}.mask-editor-surface img{display:block;width:100%;height:auto;max-height:calc(100vh - 280px);object-fit:contain}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.controls-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px}.helper-text{font-size:13px;color:var(--muted)}.error-text{color:var(--danger);font-size:14px}.success-text{color:var(--success);font-size:14px}.status-chip{display:inline-flex;align-items:center;gap:8px;border-radius:999px;border:1px solid var(--border);padding:8px 12px;font-size:13px;color:var(--muted)}.result-grid{display:grid;grid-gap:16px;gap:16px}.renders-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:16px;gap:16px}.render-tile{border:1px solid var(--border);background:#fff;border-radius:18px;overflow:hidden;padding:0;text-align:left}.render-tile img,.render-tile-media img{width:100%;height:100%;background:var(--panel-strong);object-fit:cover}.render-tile-meta{display:grid;grid-gap:4px;gap:4px;padding:12px 14px}.render-tile-meta span{font-size:13px;color:var(--muted)}.result-card{position:relative;overflow:hidden;border-radius:18px;border:1px solid var(--border);background:var(--panel-strong)}.result-actions{display:flex;align-items:center;gap:8px;margin-top:12px;flex-wrap:wrap}.feedback-row{display:flex;gap:12px;margin-top:16px}.feedback-row-compact{margin-top:0}.lightbox-action-button,.thumb-button{width:44px;height:44px;display:inline-grid;place-items:center;border-radius:999px;border:1px solid var(--border);background:#fff}.lightbox-action-button.active,.thumb-button.active{background:var(--panel-strong);border-color:var(--text)}.modal-backdrop{position:fixed;inset:0;background:rgba(25,22,18,.45);display:grid;place-items:center;padding:24px;z-index:1000}.modal-card{width:min(680px,100%);padding:24px}.gallery-modal{width:min(980px,100%);max-height:calc(100vh - 48px);display:grid;grid-template-rows:auto minmax(0,1fr);grid-gap:18px;gap:18px;overflow:hidden}.gallery-modal-body{min-height:0;overflow:auto;padding-right:6px}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:16px;gap:16px}.gallery-tile{display:block;width:100%;border:1px solid var(--border);background:#fff;border-radius:18px;overflow:hidden;padding:0;text-align:left}.gallery-tile-media,.render-tile-media{position:relative;aspect-ratio:1/1;background:var(--panel-strong)}.gallery-tile img{display:block;width:100%;aspect-ratio:1/1;height:auto;object-fit:cover;background:var(--panel-strong)}.gallery-tile-meta{display:grid;grid-gap:4px;gap:4px;padding:12px 14px}.gallery-tile-meta span{font-size:13px;color:var(--muted)}.gallery-tile-meta span,.gallery-tile-meta strong{overflow-wrap:anywhere}.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}.image-modal{width:min(900px,calc(100vw - 48px));max-height:calc(100vh - 48px);padding:12px;background:var(--panel);border-radius:22px;display:flex;align-items:center;justify-content:center;overflow:hidden}.image-modal img{display:block;max-width:100%;max-height:calc(100vh - 72px);width:auto;height:auto;object-fit:contain}.lightbox-card{width:min(1120px,100%);max-height:calc(100vh - 48px);padding:22px;background:var(--panel);border-radius:24px;display:grid;grid-template-rows:minmax(0,1fr) auto;grid-gap:16px;gap:16px}.lightbox-card,.lightbox-media{position:relative;overflow:hidden}.lightbox-media{min-height:0;display:flex;align-items:center;justify-content:center;border-radius:18px;background:var(--panel-strong)}.lightbox-media img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.lightbox-footer{display:flex;justify-content:space-between;align-items:center;gap:16px}.lightbox-footer-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.lightbox-arrow,.lightbox-close,.toggle-chip{border:1px solid var(--border);background:#fff;color:var(--text)}.lightbox-close{top:16px;right:16px;width:42px;height:42px;font-size:28px}.lightbox-arrow,.lightbox-close{position:absolute;border-radius:999px;line-height:1;z-index:2}.lightbox-arrow{top:50%;transform:translateY(-50%);width:48px;height:48px;font-size:34px;display:grid;place-items:center}.lightbox-arrow-left{left:16px}.lightbox-arrow-right{right:16px}.toggle-group{display:inline-flex;gap:8px;flex-wrap:wrap}.renders-filter-controls{display:inline-flex;align-items:center;gap:12px;flex-wrap:wrap}.renders-rating-filter,.renders-workflow-filter{border:1px solid var(--border);background:#fff;color:var(--text);border-radius:999px;padding:10px 16px;font:inherit}.toggle-chip{border-radius:999px;padding:10px 16px}.toggle-chip.active{background:var(--accent);color:var(--accent-contrast);border-color:var(--accent)}.full-prompt-toggle-row{display:flex;justify-content:flex-end;margin-top:16px}.full-prompt-toggle{padding:7px 12px;font-size:12px;line-height:1.2;min-height:34px}.full-prompt-preview{display:grid;grid-gap:16px;gap:16px;margin-top:16px;max-height:320px;overflow:auto;padding:16px;border:1px solid var(--border);border-radius:18px;background:#f3ede2;color:var(--muted)}.full-prompt-section{display:grid;grid-gap:8px;gap:8px}.full-prompt-label{display:inline-flex;align-self:start;width:-moz-fit-content;width:fit-content;border-radius:999px;padding:4px 10px;background:rgba(30,27,24,.1);color:var(--text);font-size:12px;font-weight:700;letter-spacing:.02em}.full-prompt-text{margin:0;white-space:pre-wrap;word-break:break-word;font-size:12.5px;line-height:1.45;color:var(--text)}.renders-empty{min-height:320px}.page-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.jobs-dashboard-panel{padding:24px}.jobs-dashboard-header{align-items:start}.jobs-dashboard-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:16px;gap:16px;margin-bottom:24px}.dashboard-kpi-card{padding:18px;display:grid;grid-gap:8px;gap:8px}.kpi-value{font-size:2rem;line-height:1}.jobs-dashboard-main{grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr);align-items:start}.job-detail-stack,.jobs-dashboard-main,.jobs-dashboard-primary,.jobs-dashboard-side{display:grid;grid-gap:24px;gap:24px}.jobs-dashboard-side{align-content:start;grid-auto-rows:max-content}.dashboard-card{padding:20px}.dashboard-card-head{display:flex;justify-content:space-between;gap:16px;margin-bottom:18px}.dashboard-card-title{margin:0;font-size:1.2rem}.negative-queue,.workflow-health-chart{display:grid;grid-gap:12px;gap:12px}.workflow-health-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,2fr) auto;grid-gap:14px;gap:14px;align-items:center}.workflow-health-meta{display:grid;grid-gap:4px;gap:4px}.workflow-health-rates{display:flex;gap:12px;justify-content:flex-end;font-weight:700}.workflow-health-bar{display:flex;height:14px;border-radius:999px;overflow:hidden;background:var(--panel-strong);border:1px solid var(--border)}.workflow-health-positive{background:var(--success)}.workflow-health-negative{background:var(--danger)}.workflow-health-neutral{background:#d5cec1}.theme-tag-list{display:flex;flex-wrap:wrap;gap:10px}.theme-tag{border-radius:999px;padding:8px 12px;border:1px solid rgba(138,47,47,.18);background:rgba(138,47,47,.08);color:var(--danger);font-size:13px}.dashboard-filter-row{display:grid;grid-template-columns:minmax(220px,1.6fr) repeat(3,minmax(150px,.8fr));grid-gap:12px;gap:12px;margin-bottom:16px}.dashboard-filter-row input,.dashboard-filter-row select{width:100%;padding:11px 13px;border-radius:12px;border:1px solid var(--border);background:#fff}.jobs-table-shell{display:grid;grid-gap:10px;gap:10px}.jobs-table{display:grid;grid-template-columns:52px minmax(104px,.7fr) minmax(168px,1fr) minmax(0,1.45fr) 56px minmax(130px,.9fr) 92px;grid-column-gap:16px;column-gap:16px;grid-row-gap:6px;row-gap:6px;align-items:center}.jobs-table>span{min-width:0}.jobs-table-head{padding:0 14px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.jobs-table-row{width:100%;padding:14px;border:1px solid var(--border);border-radius:14px;background:#fff;text-align:left}.jobs-table-row.active{border-color:var(--accent);background:#fbf7ef}.job-id-cell{font-weight:700}.job-comment-cell,.job-prompt-cell,.job-user-cell,.job-workflow-cell{line-height:1.25;overflow-wrap:anywhere}.job-comment-cell,.job-prompt-cell{overflow:hidden}.job-feedback-cell,.job-feedback-head{justify-self:center}.job-date-cell{display:grid;grid-gap:2px;gap:2px;line-height:1.15;white-space:nowrap}.job-date-time{color:var(--muted);font-size:13px}.feedback-badge{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:999px;padding:0;font-size:12px;font-weight:700;border:1px solid transparent}.feedback-up{color:var(--success);background:rgba(45,106,79,.12);border-color:rgba(45,106,79,.18)}.feedback-down{color:var(--danger);background:rgba(138,47,47,.1);border-color:rgba(138,47,47,.18)}.feedback-none{color:var(--muted);background:var(--panel-strong);border-color:var(--border)}.negative-queue-item{width:100%;display:grid;grid-gap:4px;gap:4px;padding:14px;border-radius:14px;border:1px solid rgba(138,47,47,.14);background:rgba(138,47,47,.06);text-align:left}.negative-queue-item.active{border-color:var(--danger)}.job-detail-media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.job-image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));grid-gap:10px;gap:10px;margin-top:8px}.job-image-button{width:100%;padding:0;border:0;background:transparent;border-radius:14px;cursor:pointer}.job-image-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.job-image-grid img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:14px;border:1px solid var(--border);background:var(--panel-strong)}.job-detail-block{display:grid;grid-gap:6px;gap:6px}.job-detail-block p{margin:0;white-space:pre-wrap}.job-detail-metadata{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.dashboard-empty-state{min-height:120px;border-radius:14px;border:1px dashed var(--border);background:var(--panel-strong);color:var(--muted);display:grid;place-items:center;text-align:center;padding:16px}.dashboard-empty-state.compact{min-height:88px}@media (max-width:1400px){.jobs-dashboard-main{grid-template-columns:1fr}}@media (max-width:1100px){.app-shell{grid-template-columns:1fr}.sidebar{min-height:auto}.settings-grid,.workflow-grid{grid-template-columns:1fr}.renders-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.admin-create-grid,.dashboard-filter-row,.dashboard-kpi-grid,.job-detail-media-grid,.job-detail-metadata,.jobs-dashboard-main,.jobs-table,.users-row,.workflow-health-row{grid-template-columns:1fr}.jobs-table-head,.users-head{display:none}.lightbox-card{padding:18px}.lightbox-arrow{width:42px;height:42px;font-size:28px}.lightbox-footer{flex-direction:column;align-items:stretch}}.star-button.active{color:#e8b203;border-color:#e8b203}.lightbox-favourite-badge{position:absolute;right:16px;bottom:16px;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:999px;background:rgba(0,0,0,.55);color:#e8b203;pointer-events:none}.job-image-button-wrapper{display:inline-block}.job-image-favourite-badge{position:absolute;right:6px;bottom:6px;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:rgba(0,0,0,.55);color:#e8b203;pointer-events:none}.processing-status{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.processing-progress{font-size:12px;opacity:.7}.processing-dots:after{content:"";display:inline-block;animation:processing-dots 1.2s steps(3) infinite;min-width:1.5ch}@keyframes processing-dots{0%{content:"."}33%{content:".."}66%{content:"..."}}