:root{--bg-primary:#0a0a0d;--bg-secondary:#121217;--bg-tertiary:#1a1a22;--bg-card:rgba(20,20,26,0.85);--bg-card-hover:rgba(28,28,36,0.95);--brand-red:#9e0616;--brand-red-hover:#b8091c;--brand-red-light:rgba(158,6,22,0.16);--brand-red-glow:rgba(158,6,22,0.35);--text-white:#ffffff;--text-primary:#f4f4f5;--text-muted:#a1a1aa;--text-dim:#71717a;--border-color:#27272f;--border-subtle:rgba(255,255,255,0.08);--border-hover:rgba(255,255,255,0.18);--border-focus:#9e0616;--status-success:#10b981;--status-success-bg:rgba(16,185,129,0.12);--status-warning:#f59e0b;--status-warning-bg:rgba(245,158,11,0.12);--status-danger:#ef4444;--status-danger-bg:rgba(239,68,68,0.12);--status-info:#38bdf8;--status-info-bg:rgba(56,189,248,0.12);--status-purple:#a855f7;--status-purple-bg:rgba(168,85,247,0.12);--shadow-sm:0 1px 2px rgba(0,0,0,0.4);--shadow-md:0 4px 12px rgba(0,0,0,0.5);--shadow-lg:0 8px 24px rgba(0,0,0,0.65);--shadow-glow-red:0 0 20px rgba(158,6,22,0.25);--shadow-glow-purple:0 0 20px rgba(168,85,247,0.25);--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-full:9999px;--sidebar-width:264px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body,html{max-width:100%;overflow-x:hidden}body{background-color:var(--bg-primary);color:var(--text-white);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;min-height:100vh;line-height:1.5;-webkit-text-size-adjust:100%}.ai-copy-page{display:flex;flex-direction:column;gap:1.5rem}.ai-copy-page-header h1{margin-top:.3rem;font-size:clamp(1.65rem,3vw,2.35rem);letter-spacing:-.04em}.ai-copy-card-heading p,.ai-copy-page-header p,.ai-copy-queue-heading p,.ai-copy-worker-header p{color:var(--text-muted);font-size:.88rem}.ai-copy-eyebrow{color:#f87171;font-size:.72rem;font-weight:800;letter-spacing:.16em}.ai-copy-layout{display:grid;grid-template-columns:minmax(320px,.85fr) minmax(380px,1.15fr);grid-gap:1.25rem;gap:1.25rem;align-items:start}.ai-copy-compose-card,.ai-copy-queue-card{border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow-md);overflow:hidden}.ai-copy-card-heading,.ai-copy-queue-heading,.ai-copy-worker-header{display:flex;align-items:center;justify-content:space-between;gap:.85rem;padding:1.1rem 1.2rem;border-bottom:1px solid var(--border-color)}.ai-copy-card-heading{justify-content:flex-start}.ai-copy-card-heading h2,.ai-copy-queue-heading h2{font-size:1.05rem}.ai-copy-heading-icon{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;flex-shrink:0;color:#fda4af;background:var(--brand-red-light);border:1px solid rgba(248,113,113,.25)}.ai-copy-form{display:flex;flex-direction:column;gap:1rem;padding:1.2rem}.ai-copy-form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:.85rem;gap:.85rem}.ai-copy-form label{display:flex;flex-direction:column;gap:.4rem;color:var(--text-primary);font-size:.8rem;font-weight:700}.ai-copy-form input,.ai-copy-form select,.ai-copy-form textarea{width:100%;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#0d0d12;color:var(--text-primary);padding:.7rem .75rem;font:inherit;font-weight:400;line-height:1.5;resize:vertical}.ai-copy-form input:focus,.ai-copy-form select:focus,.ai-copy-form textarea:focus{outline:2px solid rgba(248,113,113,.45);border-color:#f87171;outline-offset:1px}.ai-copy-form input::placeholder,.ai-copy-form textarea::placeholder{color:var(--text-dim)}.ai-copy-required{align-self:flex-start;color:#fda4af;font-size:.68rem}.ai-copy-safety-note{display:flex;align-items:flex-start;gap:.55rem;padding:.75rem;border:1px solid rgba(245,158,11,.25);border-radius:var(--radius-sm);color:#fcd34d;background:var(--status-warning-bg);font-size:.77rem;line-height:1.5}.ai-copy-safety-note svg{flex-shrink:0;margin-top:.12rem}.ai-copy-guideline-note{display:flex;align-items:center;gap:.55rem;padding:.75rem;border:1px solid rgba(56,189,248,.25);border-radius:var(--radius-sm);color:#bae6fd;background:var(--status-info-bg);font-size:.77rem;line-height:1.5}.ai-copy-guideline-note.empty{color:var(--text-muted);border-color:var(--border-color);background:rgba(113,113,122,.08)}.ai-copy-guideline-note svg{flex-shrink:0}.ai-copy-guideline-note span{flex:1 1}.ai-copy-guideline-note a{color:#7dd3fc;font-weight:800;white-space:nowrap}.ai-copy-guideline-note a:hover{text-decoration:underline}.ai-copy-pending-row button,.ai-copy-refresh,.ai-copy-result-heading button,.ai-copy-submit{border:0;border-radius:var(--radius-sm);cursor:pointer;font-weight:750}.ai-copy-submit{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;color:#fff;background:var(--brand-red)}.ai-copy-submit:hover:not(:disabled){background:var(--brand-red-hover)}.ai-copy-refresh:disabled,.ai-copy-submit:disabled{opacity:.55;cursor:not-allowed}.ai-copy-worker-header{color:var(--text-muted);background:rgba(255,255,255,.018)}.ai-copy-worker-state{display:flex;align-items:center;gap:.5rem;font-size:.84rem;font-weight:800}.ai-copy-worker-state.online{color:#34d399}.ai-copy-worker-state.offline{color:#f87171}.ai-copy-worker-dot{width:9px;height:9px;border-radius:50%;background:currentColor;box-shadow:0 0 10px currentColor}.ai-copy-refresh{padding:.5rem .7rem;color:var(--text-primary);background:var(--bg-tertiary);border:1px solid var(--border-color)}.ai-copy-message{margin:.9rem 1.2rem 0;padding:.7rem .8rem;border-radius:var(--radius-sm);display:flex;align-items:center;gap:.5rem;font-size:.8rem}.ai-copy-message.error{color:#fca5a5;background:var(--status-danger-bg)}.ai-copy-message.success{color:#6ee7b7;background:var(--status-success-bg)}.ai-copy-empty{min-height:180px;padding:2rem;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:.6rem;color:var(--text-muted);text-align:center;font-size:.86rem}.ai-copy-job-list{max-height:min(980px,calc(100dvh - 250px));overflow-y:auto;padding:1rem}.ai-copy-job{border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1rem;background:rgba(9,9,13,.62)}.ai-copy-job+.ai-copy-job{margin-top:.85rem}.ai-copy-job-topline,.ai-copy-pending-row,.ai-copy-result-heading{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.ai-copy-job-topline>div{display:flex;gap:.45rem;flex-wrap:wrap}.ai-copy-job-meta,.ai-copy-job-topline time{color:var(--text-dim);font-size:.7rem}.ai-copy-platform,.ai-copy-status{border-radius:999px;padding:.2rem .48rem;font-size:.66rem;font-weight:800}.ai-copy-platform{color:#c4b5fd;background:rgba(139,92,246,.14)}.ai-copy-status.queued{color:#fcd34d;background:var(--status-warning-bg)}.ai-copy-status.leased{color:#7dd3fc;background:var(--status-info-bg)}.ai-copy-status.succeeded{color:#6ee7b7;background:var(--status-success-bg)}.ai-copy-status.failed{color:#fca5a5;background:var(--status-danger-bg)}.ai-copy-status.cancelled{color:var(--text-muted);background:rgba(113,113,122,.15)}.ai-copy-job h3{margin-top:.75rem;font-size:.92rem;line-height:1.55}.ai-copy-job-meta{margin-top:.3rem}.ai-copy-job-error,.ai-copy-pending-row,.ai-copy-working{margin-top:.8rem;border-radius:var(--radius-sm);padding:.65rem .7rem;font-size:.76rem}.ai-copy-pending-row{color:#fde68a;background:var(--status-warning-bg)}.ai-copy-pending-row button{color:#fca5a5;background:transparent;padding:.3rem}.ai-copy-working{display:flex;align-items:center;gap:.45rem;color:#7dd3fc;background:var(--status-info-bg)}.ai-copy-job-error{color:#fca5a5;background:var(--status-danger-bg)}.ai-copy-results{display:flex;flex-direction:column;gap:.7rem;margin-top:.85rem}.ai-copy-result{border:1px solid rgba(52,211,153,.18);border-radius:var(--radius-sm);padding:.8rem;background:rgba(16,185,129,.045)}.ai-copy-result-heading strong{color:#6ee7b7;font-size:.75rem}.ai-copy-result-heading button{display:inline-flex;align-items:center;gap:.3rem;padding:.4rem .55rem;color:var(--text-primary);background:var(--bg-tertiary)}.ai-copy-result h4{margin-top:.65rem;font-size:.9rem}.ai-copy-result p{margin-top:.55rem;white-space:pre-wrap;color:var(--text-primary);font-size:.84rem;line-height:1.68}.ai-copy-hashtags{margin-top:.55rem;color:#7dd3fc;font-size:.76rem;word-break:break-word}.ai-copy-result-notes{color:var(--text-muted);font-size:.73rem}.ai-copy-spin{animation:ai-copy-spin .9s linear infinite}@keyframes ai-copy-spin{to{transform:rotate(1turn)}}@media (max-width:1180px){.ai-copy-layout{grid-template-columns:1fr}.ai-copy-job-list{max-height:none}}@media (max-width:640px){.ai-copy-form-row{grid-template-columns:1fr}.ai-copy-card-heading,.ai-copy-form,.ai-copy-queue-heading,.ai-copy-worker-header{padding-left:.9rem;padding-right:.9rem}.ai-copy-job-topline{align-items:flex-start}.ai-copy-guideline-note{align-items:flex-start;flex-wrap:wrap}}.brand-guideline-page{display:flex;flex-direction:column;gap:1.5rem}.brand-guideline-page-header h1{margin-top:.3rem;font-size:clamp(1.65rem,3vw,2.35rem);letter-spacing:-.04em}.brand-guideline-card-heading p,.brand-guideline-page-header p{color:var(--text-muted);font-size:.88rem}.brand-guideline-eyebrow{color:#7dd3fc;font-size:.72rem;font-weight:800;letter-spacing:.16em}.brand-guideline-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);grid-gap:1.25rem;gap:1.25rem;align-items:start}.brand-guideline-editor-card,.brand-guideline-history-card,.brand-guideline-loading,.brand-guideline-status-card{border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow-md)}.brand-guideline-editor-card{overflow:hidden}.brand-guideline-card-heading{display:flex;align-items:center;gap:.85rem;padding:1.1rem 1.2rem;border-bottom:1px solid var(--border-color)}.brand-guideline-card-heading>div:nth-child(2){flex:1 1;min-width:0}.brand-guideline-card-heading h2,.brand-guideline-history-card h2,.brand-guideline-status-card h2{font-size:1.05rem}.brand-guideline-heading-icon{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;flex-shrink:0;color:#7dd3fc;background:var(--status-info-bg);border:1px solid rgba(56,189,248,.25)}.brand-guideline-version{border-radius:999px;padding:.3rem .6rem;color:#6ee7b7;background:var(--status-success-bg);font-size:.72rem;font-weight:850}.brand-guideline-message,.brand-guideline-readonly{margin:.9rem 1.2rem 0;padding:.75rem .8rem;border-radius:var(--radius-sm);display:flex;align-items:center;gap:.5rem;font-size:.8rem}.brand-guideline-readonly{color:#fcd34d;background:var(--status-warning-bg)}.brand-guideline-message.error{color:#fca5a5;background:var(--status-danger-bg)}.brand-guideline-message.success{color:#6ee7b7;background:var(--status-success-bg)}.brand-guideline-form{padding:1.2rem}.brand-guideline-form fieldset{display:flex;flex-direction:column;gap:1rem;min-width:0;border:0}.brand-guideline-form label{display:flex;flex-direction:column;gap:.4rem;color:var(--text-primary);font-size:.8rem;font-weight:700}.brand-guideline-form label>span{color:#fda4af;font-size:.68rem}.brand-guideline-form textarea{width:100%;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#0d0d12;color:var(--text-primary);padding:.75rem;font:inherit;font-weight:400;line-height:1.55;resize:vertical}.brand-guideline-form textarea:focus{outline:2px solid rgba(56,189,248,.4);outline-offset:1px;border-color:#38bdf8}.brand-guideline-form textarea:disabled{opacity:.78;cursor:not-allowed}.brand-guideline-form textarea::placeholder{color:var(--text-dim)}.brand-guideline-actions{display:flex;align-items:center;justify-content:flex-end;gap:.65rem;margin-top:1.1rem;padding-top:1.1rem;border-top:1px solid var(--border-color)}.brand-guideline-reset,.brand-guideline-save{min-height:44px;border-radius:var(--radius-sm);padding:.65rem .85rem;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;cursor:pointer;font-weight:800}.brand-guideline-reset{color:var(--text-primary);border:1px solid var(--border-color);background:var(--bg-tertiary)}.brand-guideline-save{color:#fff;border:0;background:var(--brand-red)}.brand-guideline-save:hover:not(:disabled){background:var(--brand-red-hover)}.brand-guideline-reset:disabled,.brand-guideline-save:disabled{opacity:.55;cursor:not-allowed}.brand-guideline-side{display:flex;flex-direction:column;gap:1rem}.brand-guideline-status-card{display:flex;align-items:flex-start;gap:.8rem;padding:1rem;color:#bae6fd;border-color:rgba(56,189,248,.25);background:rgba(56,189,248,.065)}.brand-guideline-status-card svg{flex-shrink:0}.brand-guideline-status-card p{margin-top:.45rem;color:var(--text-muted);font-size:.78rem;line-height:1.6}.brand-guideline-status-card a{display:inline-block;margin-top:.7rem;color:#7dd3fc;font-size:.78rem;font-weight:800}.brand-guideline-status-card a:hover{text-decoration:underline}.brand-guideline-history-card{overflow:hidden}.brand-guideline-history-heading{display:flex;align-items:center;gap:.55rem;padding:1rem;border-bottom:1px solid var(--border-color)}.brand-guideline-history-list{list-style:none;padding:.75rem}.brand-guideline-history-list li{padding:.75rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:rgba(9,9,13,.55)}.brand-guideline-history-list li+li{margin-top:.6rem}.brand-guideline-history-list li.current{border-color:rgba(52,211,153,.28);background:rgba(16,185,129,.05)}.brand-guideline-history-list li>div{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.brand-guideline-history-list strong{color:#fff;font-size:.85rem}.brand-guideline-history-list span{color:#6ee7b7;font-size:.65rem;font-weight:800}.brand-guideline-history-list p{margin-top:.3rem;color:var(--text-muted);font-size:.72rem}.brand-guideline-history-list code{display:block;margin-top:.25rem;color:var(--text-dim);font-size:.66rem}.brand-guideline-history-empty{padding:2rem 1rem;color:var(--text-muted);text-align:center;font-size:.82rem}.brand-guideline-loading{min-height:220px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:.65rem;color:var(--text-muted);font-size:.86rem}@media (max-width:1180px){.brand-guideline-layout{grid-template-columns:1fr}.brand-guideline-side{display:grid;grid-template-columns:1fr 1fr}}@media (max-width:640px){.brand-guideline-card-heading{align-items:flex-start;padding:.95rem}.brand-guideline-form{padding:.95rem}.brand-guideline-message,.brand-guideline-readonly{margin-left:.95rem;margin-right:.95rem}.brand-guideline-side{display:flex}.brand-guideline-actions{align-items:stretch;flex-direction:column-reverse}.brand-guideline-reset,.brand-guideline-save{width:100%}}.raw-photo-page{display:flex;flex-direction:column;gap:1.5rem}.raw-photo-page-header h1{margin-top:.3rem;font-size:clamp(1.65rem,3vw,2.35rem);letter-spacing:-.04em}.raw-photo-card-heading p,.raw-photo-jobs-heading p,.raw-photo-page-header p{color:var(--text-muted);font-size:.88rem}.raw-photo-eyebrow{color:#fbbf24;font-size:.72rem;font-weight:800;letter-spacing:.16em}.raw-photo-layout{display:grid;grid-template-columns:minmax(310px,.72fr) minmax(470px,1.28fr);grid-gap:1.25rem;gap:1.25rem;align-items:start}.raw-photo-jobs-card,.raw-photo-upload-card{border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow-md);overflow:hidden}.raw-photo-card-heading{display:flex;align-items:center;gap:.85rem;padding:1.1rem 1.2rem;border-bottom:1px solid var(--border-color)}.raw-photo-card-heading h2,.raw-photo-jobs-heading h2{font-size:1.05rem}.raw-photo-heading-icon{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;color:#fcd34d;background:var(--status-warning-bg);border:1px solid rgba(245,158,11,.24);flex-shrink:0}.raw-photo-preset{margin:1rem 1.2rem 0;padding:.9rem;border:1px solid rgba(245,158,11,.23);border-radius:var(--radius-md);background:rgba(245,158,11,.055)}.raw-photo-preset>div{display:flex;align-items:center;gap:.5rem;color:#fde68a}.raw-photo-preset p{margin-top:.5rem;color:var(--text-primary);font-size:.79rem;line-height:1.55}.raw-photo-preset ul{margin:.65rem 0 0 1.1rem;color:var(--text-muted);font-size:.73rem;line-height:1.7}.raw-photo-picker{width:calc(100% - 2.4rem);margin:1rem 1.2rem 0;min-height:76px;display:flex;align-items:center;justify-content:center;gap:.8rem;border:1px dashed #52525b;border-radius:var(--radius-md);color:var(--text-primary);background:#0d0d12;cursor:pointer}.raw-photo-picker:hover:not(:disabled){border-color:#f59e0b;background:rgba(245,158,11,.04)}.raw-photo-picker span{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem}.raw-photo-picker small{color:var(--text-muted);font-size:.7rem}.raw-photo-selection{margin:.85rem 1.2rem 0;display:flex;flex-direction:column;gap:.45rem}.raw-photo-selection-summary{display:flex;justify-content:space-between;align-items:center;color:var(--text-muted);font-size:.75rem}.raw-photo-selection-summary button{border:0;color:#fca5a5;background:transparent;cursor:pointer;font:inherit}.raw-photo-file{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:.55rem;gap:.55rem;padding:.65rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:rgba(9,9,13,.65)}.raw-photo-file>div{min-width:0;display:flex;flex-direction:column}.raw-photo-file strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem}.raw-photo-file span{color:var(--text-muted);font-size:.68rem}.raw-photo-file em{margin-top:.2rem;color:#fca5a5;font-size:.68rem;font-style:normal}.raw-photo-file button{display:grid;place-items:center;border:0;color:var(--text-muted);background:transparent;cursor:pointer}.raw-photo-file.done>svg:last-child{color:#34d399}.raw-photo-file.error>svg:last-child,.raw-photo-file.invalid{color:#f87171;border-color:rgba(239,68,68,.3)}.raw-photo-progress{margin-top:.35rem;height:3px;overflow:hidden;border-radius:999px;background:#27272a}.raw-photo-progress i{display:block;height:100%;border-radius:inherit;background:#f59e0b;transition:width .16s ease}.raw-photo-validation{color:#fca5a5;font-size:.72rem}.raw-photo-submit{width:calc(100% - 2.4rem);min-height:46px;margin:1rem 1.2rem 1.2rem;display:flex;align-items:center;justify-content:center;gap:.45rem;border:0;border-radius:var(--radius-sm);color:#fff;background:var(--brand-red);cursor:pointer;font-weight:850}.raw-photo-submit:hover:not(:disabled){background:var(--brand-red-hover)}.raw-photo-picker:disabled,.raw-photo-submit:disabled{opacity:.5;cursor:not-allowed}.raw-photo-message{margin:-.4rem 1.2rem 1.2rem;padding:.7rem .8rem;border-radius:var(--radius-sm);font-size:.77rem}.raw-photo-message.error{color:#fca5a5;background:var(--status-danger-bg)}.raw-photo-message.success{color:#6ee7b7;background:var(--status-success-bg)}.raw-photo-worker{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.85rem 1.1rem;border-bottom:1px solid var(--border-color);background:rgba(9,9,13,.55)}.raw-photo-worker>div{display:flex;align-items:center;gap:.65rem}.raw-photo-worker>div>div{display:flex;flex-direction:column}.raw-photo-worker strong{font-size:.82rem}.raw-photo-worker span{color:var(--text-muted);font-size:.7rem}.raw-photo-worker>i{width:9px;height:9px;border-radius:50%}.raw-photo-worker>i.online{background:#34d399;box-shadow:0 0 10px rgba(52,211,153,.55)}.raw-photo-worker>i.offline{background:#f87171}.raw-photo-jobs-heading{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:1rem 1.1rem;border-bottom:1px solid var(--border-color)}.raw-photo-jobs-heading button{min-height:34px;display:flex;align-items:center;gap:.35rem;padding:.4rem .6rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);background:var(--bg-tertiary);cursor:pointer;font-size:.72rem}.raw-photo-empty{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;color:var(--text-muted);font-size:.8rem;text-align:center}.raw-photo-job-list{padding:.8rem;display:flex;flex-direction:column;gap:.8rem;max-height:calc(100vh - 280px);overflow-y:auto}.raw-photo-job{overflow:hidden;border:1px solid var(--border-color);border-radius:var(--radius-md);background:rgba(9,9,13,.72)}.raw-photo-job-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.8rem}.raw-photo-job-topline>div{min-width:0;display:flex;flex-direction:column}.raw-photo-job-topline strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.86rem}.raw-photo-job-topline span{color:var(--text-muted);font-size:.68rem}.raw-photo-status{flex-shrink:0;padding:.25rem .45rem;border-radius:999px;font-size:.65rem!important;font-weight:850}.raw-photo-status.queued{color:#fcd34d!important;background:var(--status-warning-bg)}.raw-photo-status.leased{color:#7dd3fc!important;background:var(--status-info-bg)}.raw-photo-status.succeeded{color:#6ee7b7!important;background:var(--status-success-bg)}.raw-photo-status.cancelled,.raw-photo-status.failed{color:#fca5a5!important;background:var(--status-danger-bg)}.raw-photo-compare{display:grid;grid-template-columns:1fr 1fr;grid-gap:2px;gap:2px;background:var(--border-color)}.raw-photo-compare figure{min-width:0;position:relative;background:#050505}.raw-photo-compare figcaption{position:absolute;z-index:1;top:.45rem;left:.45rem;padding:.25rem .4rem;border-radius:4px;color:#fff;background:rgba(0,0,0,.72);font-size:.62rem;font-weight:800}.raw-photo-compare img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}.raw-photo-result-meta{display:flex;flex-wrap:wrap;gap:.4rem;padding:.65rem .8rem 0;color:var(--text-muted);font-size:.66rem}.raw-photo-result-meta span{padding:.2rem .35rem;border-radius:4px;background:rgba(255,255,255,.05)}.raw-photo-actions{display:flex;flex-wrap:wrap;gap:.4rem;padding:.7rem .8rem}.raw-photo-actions a,.raw-photo-actions button{min-height:34px;display:inline-flex;align-items:center;justify-content:center;gap:.3rem;padding:.4rem .55rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);background:var(--bg-tertiary);cursor:pointer;font:inherit;font-size:.7rem;font-weight:750}.raw-photo-actions a.primary{color:#fff;border-color:var(--brand-red);background:var(--brand-red)}.raw-photo-actions button.approve{color:#6ee7b7;border-color:rgba(16,185,129,.28);background:var(--status-success-bg)}.raw-photo-actions button.reject{color:#fca5a5;border-color:rgba(239,68,68,.28);background:var(--status-danger-bg)}.raw-photo-approval{margin:0 .8rem .8rem;padding:.5rem .6rem;border-radius:var(--radius-sm);font-size:.68rem}.raw-photo-approval.pending{color:#fde68a;background:var(--status-warning-bg)}.raw-photo-approval.approved{color:#6ee7b7;background:var(--status-success-bg)}.raw-photo-approval.rejected{color:#fca5a5;background:var(--status-danger-bg)}.raw-photo-job-error,.raw-photo-job-working{margin:0 .8rem .8rem;padding:.7rem;display:flex;align-items:center;gap:.5rem;border-radius:var(--radius-sm);font-size:.75rem}.raw-photo-job-working{color:#bae6fd;background:var(--status-info-bg)}.raw-photo-job-error{color:#fca5a5;background:var(--status-danger-bg)}.raw-photo-spin{animation:raw-photo-spin .9s linear infinite}@keyframes raw-photo-spin{to{transform:rotate(1turn)}}@media (max-width:1180px){.raw-photo-layout{grid-template-columns:1fr}.raw-photo-job-list{max-height:none}}@media (max-width:640px){.raw-photo-card-heading,.raw-photo-jobs-heading{align-items:flex-start;padding:.9rem}.raw-photo-picker,.raw-photo-preset,.raw-photo-selection,.raw-photo-submit{margin-left:.9rem;margin-right:.9rem}.raw-photo-picker,.raw-photo-submit{width:calc(100% - 1.8rem)}.raw-photo-compare{grid-template-columns:1fr}.raw-photo-actions>*{flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 0.4rem)}}a{color:inherit;text-decoration:none}.draft-title-link:hover{color:#38bdf8!important;text-decoration:underline!important}.app-container{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);min-height:100vh;width:100%;max-width:100%;overflow-x:hidden}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;width:var(--sidebar-width);height:100vh;height:100dvh;min-height:0;display:flex;flex-direction:column;background:var(--bg-secondary);border-right:1px solid var(--border-color)}.main-content{max-width:1400px;width:100%;margin:0 auto;padding:2rem clamp(1.25rem,3vw,3rem);box-sizing:border-box;min-width:0}.banner-nas,.main-content{overflow-wrap:break-word;word-break:keep-all}.banner-nas{background:#2b1704;border-bottom:1px solid #78350f;color:#fde68a;font-size:.825rem;font-weight:600;padding:.5rem 1rem;text-align:center;display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap}.banner-icon{flex-shrink:0}.banner-text{max-width:100%;line-height:1.4}.banner-dev{background:#3b0764;border-bottom:1px solid #6b21a8;color:#f3e8ff;font-size:.825rem;font-weight:600;padding:.75rem;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:.65rem;flex-shrink:0}.banner-dev-info{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.dev-tag{background:#7e22ce;color:#fff;padding:.15rem .5rem;border-radius:4px;font-size:.7rem;font-weight:800;flex-shrink:0}.dev-desc{font-size:.8rem}.banner-dev-roles{display:grid;grid-template-columns:1fr 1fr;grid-gap:.35rem;gap:.35rem;align-items:stretch}.dev-role-label{grid-column:1/-1;font-size:.8rem;color:#d8b4fe}.dev-role-btn{background:#4c1d95;color:#fff;border:1px solid #5b21b6;border-radius:4px;padding:.35rem .4rem;font-size:.67rem;min-height:34px;cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;justify-content:center}.dev-role-btn:hover{background:#6b21a8}.dev-role-btn.active{background:#9333ea;border-color:#c084fc;font-weight:700}.navbar{background:var(--bg-secondary);padding:1rem .85rem .85rem;flex:1 1;min-height:0;flex-direction:column;justify-content:flex-start;position:relative;width:100%;box-sizing:border-box}.navbar,.navbar-brand{display:flex;align-items:stretch}.navbar-brand{font-weight:800;padding:.15rem .35rem 1rem;border-bottom:1px solid var(--border-color)}.brand-link{display:flex;align-items:center;gap:.7rem;width:100%;min-width:0;text-decoration:none;color:inherit}.brand-logo{height:24px;width:auto;flex-shrink:0}.mobile-drawer-logo{height:22px;width:auto;flex-shrink:0}.brand-copy{display:flex;min-width:0;flex:1 1;flex-direction:column;align-items:flex-start;gap:.2rem}.brand-title-full{color:#fff;font-weight:750;font-size:.9rem;white-space:nowrap;line-height:1.1}.brand-title-short{display:none;color:#fff;font-weight:800;font-size:.95rem;letter-spacing:.5px}.brand-badge{background:var(--brand-red-light);border:1px solid rgba(158,6,22,.38);color:#f87171;padding:.08rem .35rem;border-radius:var(--radius-full);font-size:.58rem;font-weight:800;line-height:1.25;text-transform:uppercase;white-space:nowrap}.nav-links{display:flex;flex:1 1;min-height:0;flex-direction:column;align-items:stretch;gap:.75rem;padding-top:.75rem}.sidebar-nav-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#3f3f46 transparent;padding-right:.15rem}.sidebar-nav-group+.sidebar-nav-group{margin-top:.8rem}.mobile-nav-group-label,.sidebar-nav-label{color:var(--text-dim);font-size:.67rem;font-weight:800;letter-spacing:.08em;padding:0 .65rem .35rem;text-transform:uppercase}.nav-link{color:var(--text-muted);font-size:.88rem;font-weight:600;min-height:42px;padding:.6rem .7rem;border-radius:var(--radius-sm);display:flex;align-items:center;gap:.7rem;transition:all .15s ease;white-space:nowrap;position:relative}.nav-link-icon{flex-shrink:0}.nav-link:hover{color:var(--text-white);background:var(--bg-tertiary)}.nav-link.active{color:#fff;background:linear-gradient(90deg,rgba(158,6,22,.26),rgba(158,6,22,.08));box-shadow:inset 3px 0 0 var(--brand-red)}.nav-link.active .nav-link-icon{color:#f87171}.sidebar-active-mark{width:5px;height:5px;margin-left:auto;border-radius:50%;background:#f87171;box-shadow:0 0 8px var(--brand-red-glow)}.desktop-user-profile{display:flex;align-items:center;gap:.65rem;margin-top:auto;border-top:1px solid var(--border-color);padding:.85rem .25rem 0}.sidebar-user-avatar{width:34px;height:34px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff;background:linear-gradient(135deg,var(--brand-red),#5f030d);border:1px solid rgba(255,255,255,.12);border-radius:10px}.user-info{font-size:.8rem;display:flex;flex:1 1;min-width:0;flex-direction:column;align-items:flex-start}.user-name{color:#ffffff;overflow:hidden;text-overflow:ellipsis;max-width:118px}.user-name,.user-role{font-weight:600;white-space:nowrap}.user-role{color:var(--text-dim);font-size:.7rem}.logout-btn{background:transparent;border:0;color:var(--text-dim);border-radius:var(--radius-sm);padding:0;display:flex;align-items:center;justify-content:center;cursor:pointer;width:34px;height:34px;flex-shrink:0;transition:all .15s ease}.logout-btn:hover{color:#ef4444;background:rgba(239,68,68,.1)}.mobile-menu-btn{display:none;align-items:center;justify-content:center;min-width:44px;min-height:44px;width:44px;height:44px;background:transparent;border:1px solid var(--border-color);border-radius:6px;color:var(--text-white);cursor:pointer;transition:all .15s ease;padding:0;flex-shrink:0}.mobile-menu-btn:hover{background:var(--bg-tertiary);border-color:#555}.mobile-nav-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.65);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);z-index:90;opacity:0;pointer-events:none;transition:opacity .2s ease-in-out}.mobile-nav-backdrop.open{opacity:1;pointer-events:auto}.mobile-nav-drawer{position:fixed;top:0;left:0;bottom:0;width:85%;max-width:320px;background:var(--bg-secondary);border-right:1px solid var(--border-color);z-index:100;transform:translateX(-100%);transition:transform .25s cubic-bezier(.16,1,.3,1),visibility .25s;display:flex;flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch;box-shadow:4px 0 24px rgba(0,0,0,.6);box-sizing:border-box;visibility:hidden;pointer-events:none}.mobile-nav-drawer.open{transform:translateX(0);visibility:visible;pointer-events:auto}.mobile-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1rem;border-bottom:1px solid var(--border-color);min-height:56px}.mobile-drawer-brand{display:flex;align-items:center;gap:.5rem}.mobile-drawer-close-btn{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;width:44px;height:44px;background:transparent;border:none;color:var(--text-muted);cursor:pointer;border-radius:6px;padding:0}.mobile-drawer-close-btn:hover{color:#fff;background:var(--bg-tertiary)}.mobile-user-card{margin:.75rem 1rem .25rem;padding:.75rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;display:flex;align-items:center;gap:.75rem}.mobile-user-card.guest{flex-direction:column;align-items:flex-start;gap:.2rem}.mobile-user-avatar{width:36px;height:36px;border-radius:50%;background:var(--brand-red);display:flex;align-items:center;justify-content:center;flex-shrink:0}.mobile-user-details{min-width:0;flex:1 1;overflow:hidden}.mobile-user-name{font-weight:700;font-size:.875rem;color:#fff}.mobile-user-email,.mobile-user-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-user-email{font-size:.75rem;color:var(--text-muted)}.mobile-user-role-badge{display:inline-block;margin-top:.2rem;font-size:.65rem;font-weight:800;background:rgba(158,6,22,.2);color:#ef4444;border:1px solid rgba(158,6,22,.4);padding:.1rem .4rem;border-radius:4px}.mobile-nav-links{display:flex;flex-direction:column;gap:.25rem;padding:.5rem .75rem;flex:1 1}.mobile-nav-group+.mobile-nav-group{margin-top:.6rem}.mobile-nav-group-label{padding-top:.35rem}.mobile-nav-link{display:flex;align-items:center;gap:.75rem;min-height:44px;padding:.65rem .85rem;border-radius:6px;color:var(--text-muted);text-decoration:none;font-size:.95rem;font-weight:500;transition:all .15s ease;position:relative;box-sizing:border-box}.mobile-nav-link.active,.mobile-nav-link:hover{color:var(--text-white);background:var(--bg-tertiary)}.mobile-nav-link.active{font-weight:700;color:#fff;background:var(--brand-red-light);border:1px solid rgba(158,6,22,.35);border-radius:var(--radius-sm)}.mobile-nav-icon{flex-shrink:0;color:var(--text-muted)}.mobile-nav-link.active .mobile-nav-icon{color:var(--brand-red)}.mobile-nav-label{flex:1 1}.mobile-nav-active-dot{width:6px;height:6px;border-radius:50%;background:var(--brand-red);flex-shrink:0}.mobile-drawer-footer{padding:.85rem 1rem;border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:.75rem;margin-top:auto}.mobile-logout-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;min-height:44px;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);color:#ef4444;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .15s ease;padding:0}.mobile-logout-btn:hover{background:rgba(239,68,68,.2)}.mobile-footer-info{display:flex;flex-direction:column;gap:.2rem;font-size:.7rem;color:#666;text-align:center}.card{background:var(--bg-card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:1.25rem;box-shadow:var(--shadow-sm);transition:all .2s cubic-bezier(.16,1,.3,1);box-sizing:border-box;max-width:100%;overflow-wrap:break-word;word-break:keep-all}.card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md)}.card-interactive{cursor:pointer}.card-interactive:hover{transform:translateY(-2px);border-color:var(--border-hover);box-shadow:0 8px 24px rgba(0,0,0,.45)}.card-interactive:active{transform:translateY(0) scale(.99)}.grid-cols-2{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:1.25rem;gap:1.25rem}.grid-cols-3{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1.25rem;gap:1.25rem}.grid-cols-4{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:1.25rem;gap:1.25rem}.bento-cockpit-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-gap:1.25rem;gap:1.25rem;width:100%}.bento-col-12{grid-column:span 12}.bento-col-8{grid-column:span 8}.bento-col-7{grid-column:span 7}.bento-col-6{grid-column:span 6}.bento-col-5{grid-column:span 5}.bento-col-4{grid-column:span 4}.bento-col-3{grid-column:span 3}@media (max-width:1024px){.bento-col-3,.bento-col-4,.bento-col-5,.bento-col-6,.bento-col-7,.bento-col-8{grid-column:span 12}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;border-radius:var(--radius-sm);cursor:pointer;border:1px solid transparent;transition:all .15s cubic-bezier(.16,1,.3,1);min-height:38px;box-sizing:border-box;white-space:nowrap}.btn:active{transform:scale(.98)}.btn-primary{background:var(--brand-red);color:white;box-shadow:0 2px 8px rgba(158,6,22,.3)}.btn-primary:hover{background:var(--brand-red-hover);box-shadow:0 4px 14px rgba(158,6,22,.45)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-subtle)}.btn-secondary:hover{background:rgba(255,255,255,.08);border-color:var(--border-hover);color:#fff}.btn-success{background:#059669;color:white}.btn-danger{background:#dc2626;color:white}.btn:disabled{opacity:.5;cursor:not-allowed}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .6rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.badge-approved,.badge-pass,.badge-ready{background:var(--status-success-bg);color:var(--status-success);border:1px solid rgba(16,185,129,.3)}.badge-pending,.badge-review{background:var(--status-warning-bg);color:var(--status-warning);border:1px solid rgba(245,158,11,.3)}.badge-blocked,.badge-fail,.badge-rejected{background:var(--status-danger-bg);color:var(--status-danger);border:1px solid rgba(239,68,68,.3)}.badge-draft{background:rgba(163,163,163,.15);color:var(--text-muted)}.badge-draft,.table-container{border:1px solid var(--border-color)}.table-container{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:8px;background:var(--bg-secondary)}table{width:100%;min-width:580px;border-collapse:collapse;text-align:left;font-size:.875rem}th{background:var(--bg-tertiary);color:var(--text-muted);font-weight:600}td,th{padding:.75rem 1rem;border-bottom:1px solid var(--border-color);white-space:nowrap}tr:last-child td{border-bottom:none}tr:hover td{background:rgba(255,255,255,.02)}.form-group{margin-bottom:1rem;width:100%}.form-label{display:block;font-size:.85rem;font-weight:600;margin-bottom:.35rem;color:var(--text-muted)}.form-input,.form-select,.form-textarea{width:100%;box-sizing:border-box;padding:.55rem .75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-white);font-size:.9rem;min-height:40px}.form-textarea{min-height:80px}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--brand-red)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #38bdf8;outline-offset:2px}.code-hash{font-family:monospace;background:#000;color:#4ade80;padding:.25rem .5rem;border-radius:4px;font-size:.8rem;word-break:break-all;display:inline-block}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.8);align-items:center;justify-content:center;z-index:100;padding:1rem}.modal-card,.modal-overlay{display:flex;overflow-y:auto;-webkit-overflow-scrolling:touch;box-sizing:border-box}.modal-card{max-width:550px;width:100%;max-height:90vh;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;padding:1.25rem;flex-direction:column}.redirect-type-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem;gap:.75rem}.modal-body-scroll{flex:1 1;overflow-y:auto;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;gap:1.25rem;min-height:0}.modal-footer-sticky{flex-shrink:0;border-top:1px solid var(--border-color);padding-top:.75rem;margin-top:.25rem}@media (max-width:1024px){.app-container{display:flex;flex-direction:column}.site-header{width:100%;height:auto;min-height:0;border-right:0;border-bottom:1px solid var(--border-color)}.navbar{min-height:60px;padding:.65rem 1.25rem;flex:none;flex-direction:row;align-items:center;justify-content:space-between}.navbar-brand{padding:0;border-bottom:0}.brand-link{width:auto}.brand-copy{flex-direction:row;align-items:center}.brand-logo{height:26px}.banner-dev{padding:.5rem 1rem;flex-direction:row;align-items:center;justify-content:space-between}.banner-dev-roles{display:flex;align-items:center;flex-wrap:wrap}.dev-role-label{grid-column:auto}.dev-role-btn{min-height:30px;padding:.25rem .5rem;font-size:.72rem}.nav-links{display:none!important}.mobile-menu-btn{display:flex!important}.brand-title-full{display:none!important}.brand-title-short{display:inline!important}.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.main-content{padding:1.25rem 1rem}.brand-badge{display:none!important}.banner-dev{flex-direction:column;align-items:flex-start;gap:.5rem}.banner-dev-roles{width:100%;justify-content:flex-start}}@media (max-width:640px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr;gap:1rem}.main-content{padding:1rem .75rem}.card{padding:1rem}.navbar{padding:.65rem 1rem}.btn{min-height:42px}}@media (max-width:480px){.modal-overlay{padding:0;align-items:flex-end}.modal-card{max-height:95vh;padding:1rem .85rem;border-radius:12px 12px 0 0;width:100%;max-width:100%}.redirect-type-grid{grid-template-columns:1fr}}@media (max-width:360px){.card,.main-content{padding:.75rem .5rem}.navbar{padding:.5rem .65rem}.banner-dev,.banner-nas{padding:.4rem .5rem;font-size:.72rem}.brand-logo{height:22px}.brand-title-short{font-size:.9rem}.mobile-menu-btn{width:44px;height:44px;min-width:44px;min-height:44px}}.tabs-container{display:flex;gap:.5rem;border-bottom:1px solid var(--border-color);padding-bottom:.5rem;overflow-x:auto;scrollbar-width:none}.tabs-container::-webkit-scrollbar{display:none}.tab-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .9rem;border-radius:6px;border:1px solid transparent;background:transparent;color:var(--text-muted);font-size:.875rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .15s ease}.tab-btn:hover{background:var(--bg-tertiary);color:var(--text-white)}.tab-btn.active{background:rgba(168,85,247,.15);border-color:#a855f7;color:#c084fc}.tab-badge{font-size:.75rem;padding:.1rem .45rem;border-radius:10px;background:var(--bg-tertiary);color:var(--text-muted)}.tab-btn.active .tab-badge{background:#a855f7;color:#ffffff}.pagination-container{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;padding:1rem 0;margin-top:.5rem;border-top:1px solid var(--border-color)}.pagination-controls{display:flex;align-items:center;gap:.35rem}.page-btn{min-width:34px;height:34px;padding:0 .5rem;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-white);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .15s ease}.page-btn:hover:not(:disabled){background:var(--bg-tertiary);border-color:#555}.page-btn.active{background:#a855f7;border-color:#a855f7;color:#ffffff;font-weight:700}.page-btn:disabled{opacity:.4;cursor:not-allowed}@media (max-width:640px){.tabs-container{gap:.25rem;padding-bottom:.4rem;-webkit-overflow-scrolling:touch}.tab-btn{padding:.4rem .6rem;font-size:.78rem}.tab-badge{font-size:.65rem;padding:.05rem .35rem}.pagination-container{flex-direction:column;gap:.5rem;align-items:center}.pagination-controls{flex-wrap:wrap;justify-content:center}}@media (max-width:480px){.tab-btn{padding:.35rem .5rem;font-size:.72rem;gap:.2rem}.tab-btn svg{display:none}}