@import"https://fonts.googleapis.com/css2?family=Hanken+Grotesk:wght@300;400;500;600;700;800&display=swap";@font-face{font-family:Lama Sans;src:url(/samawy/fonts/LamaSans-Thin.ttf) format("truetype");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:Lama Sans;src:url(/samawy/fonts/LamaSans-ExtraLight.ttf) format("truetype");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:Lama Sans;src:url(/samawy/fonts/LamaSans-Light.ttf) format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Lama Sans;src:url(/samawy/fonts/LamaSans-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Lama Sans;src:url(/samawy/fonts/LamaSans-Medium.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Lama Sans;src:url(/samawy/fonts/LamaSans-SemiBold.ttf) format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Lama Sans;src:url(/samawy/fonts/LamaSans-Bold.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Lama Sans;src:url(/samawy/fonts/LamaSans-ExtraBold.ttf) format("truetype");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:Lama Sans;src:url(/samawy/fonts/LamaSans-Black.ttf) format("truetype");font-weight:900;font-style:normal;font-display:swap}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--brand: #0B80FF;--brand-hover: #0066D6;--cyan: #0BC0F1;--sky: #A9DDF7;--lime: #B5D77A;--sun: #F9E866;--ink: #1A2340;--ink-2: #2D3A5C;--sidebar-bg: #FFFFFF;--sidebar-border: #E8EBF0;--sidebar-nav-text: #5C6B8A;--sidebar-nav-text-hover: #1A2340;--sidebar-nav-active-bg: #EAF3FF;--sidebar-nav-active-text: #0B80FF;--sidebar-nav-icon-active: #0B80FF;--sidebar-logo-area-bg: #FFFFFF;--blue-50: #EAF3FF;--blue-100: #CEE6FF;--blue-200: #9DCFFF;--blue-300: #5FAFFF;--blue-400: #2F93FF;--blue-500: #0B80FF;--blue-600: #0066D6;--blue-700: #0052AE;--blue-800: #003D83;--blue-900: #002355;--neutral-0: #FFFFFF;--neutral-50: #F7F8FA;--neutral-100: #EEEEEE;--neutral-200: #E0E0E0;--neutral-300: #C6C6C6;--neutral-400: #737373;--neutral-500: #757575;--neutral-600: #424242;--neutral-700: #212121;--neutral-900: #1A2340;--success: #4CAF50;--success-soft: #E7F6E8;--success-fg: #2e7d32;--warning: #F9B233;--warning-soft: #FFF4DE;--warning-fg: #a86a00;--danger: #E31F1F;--danger-soft: #FDE5E5;--danger-fg: #c01919;--info: #0BC0F1;--info-soft: #E6F8FD;--info-fg: #0a7ea4;--fg-1: #1A2340;--fg-2: #5C6B8A;--fg-3: #64748B;--fg-inverse: #FFFFFF;--fg-brand: #0B80FF;--bg-1: #FFFFFF;--bg-2: #F5F7FA;--bg-3: #ECEEF3;--bg-inverse: #1A2340;--bg-brand-soft: #EAF3FF;--border-1: #E8EBF0;--border-2: #D1D5E0;--border-brand: #0B80FF;--card-bg: #FFFFFF;--card-border: #E8EBF0;--card-radius: 16px;--card-padding: 24px;--font-display: "Lama Sans", "Hanken Grotesk", system-ui, sans-serif;--font-ui: "Lama Sans", "Hanken Grotesk", system-ui, -apple-system, sans-serif;--font-mono: ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-16:64px;--r-xs:4px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-pill:999px;--shadow-xs: 0 1px 2px rgba(1,11,38,.04);--shadow-sm: 0 1px 2px rgba(1,11,38,.06);--shadow-md: 0 6px 14px rgba(1,11,38,.08);--shadow-lg: 0 14px 32px rgba(1,11,38,.12);--shadow-brand: 0 1px 2px rgba(11,128,255,.3);--ring-brand: 0 0 0 4px rgba(11,128,255,.15);--ease: cubic-bezier(.2,.7,.3,1);--dur-fast: .12s;--dur-base: .2s;--primary: var(--brand);--primary-dark: var(--brand-hover);--primary-light: var(--blue-50);--primary-muted: var(--blue-400);--text: var(--fg-1);--text-soft: var(--fg-2);--text-muted: var(--fg-3);--border: var(--border-1);--border-strong: var(--border-2);--bg: var(--bg-2);--card: var(--bg-1)}html{min-height:100%;background:var(--bg-2)}body{font-family:var(--font-ui);font-size:14px;color:var(--fg-1);background:var(--bg-2);line-height:1.6;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}h1,h2,h3,h4{font-family:var(--font-display);color:var(--ink);letter-spacing:-.01em}strong{color:var(--ink)}code{font-family:var(--font-mono);font-size:12.5px;font-weight:500;padding:2px 6px;border-radius:var(--r-xs);background:var(--bg-2);color:var(--fg-1);border:1px solid var(--border-1)}hr{border:none;border-top:1px solid var(--border-1);margin:16px 0}a:focus-visible,button:focus-visible,[role=button]:focus-visible,.nav-link:focus-visible,.nav-link-sub:focus-visible,.tabs .tab:focus-visible,.workspace-tabs button:focus-visible{outline:none;box-shadow:var(--ring-brand);border-radius:var(--r-sm)}.sidebar a:focus-visible,.sidebar button:focus-visible{box-shadow:var(--ring-brand)}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--neutral-300);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--neutral-400)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{transition:none!important;animation:none!important}}.app-shell{display:flex;min-height:100vh}.sidebar{width:248px;flex-shrink:0;display:flex;flex-direction:column;background:var(--sidebar-bg);border-inline-end:1px solid var(--sidebar-border);position:sticky;top:0;height:100vh;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:var(--border-1) transparent;transition:width var(--dur-base) var(--ease);z-index:20}.sidebar::-webkit-scrollbar-thumb{background:var(--border-1)}.app-shell.sidebar-collapsed .sidebar{width:0;overflow:hidden}.sidebar-brand{display:flex;align-items:center;gap:10px;padding:24px 16px 20px;flex-shrink:0;min-height:72px;cursor:pointer;color:var(--ink);white-space:nowrap;letter-spacing:-.02em}.sidebar-brand img{width:32px;height:32px;object-fit:contain;flex-shrink:0;display:block}.sidebar-brand-text span{display:block;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3);white-space:nowrap;margin-top:2px}.sidebar-nav{flex:1;padding:8px 0 24px;display:flex;flex-direction:column;overflow-x:hidden}.nav-section-label{padding:18px 16px 6px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3);white-space:nowrap;-webkit-user-select:none;user-select:none}.nav-section-label:first-child{padding-top:10px}.nav-link{display:flex;align-items:center;gap:10px;padding:8px 12px;margin:1px 8px;border-radius:var(--r-sm);color:var(--sidebar-nav-text);font-size:13.5px;font-weight:400;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease);white-space:nowrap;min-height:40px}.nav-icon{width:18px;text-align:center;flex-shrink:0;font-size:14px;font-style:normal;opacity:.7}.nav-link:hover{background:#f0f4ff;color:var(--sidebar-nav-text-hover)}.nav-link:hover .nav-icon{opacity:1}.nav-link.active{background:var(--sidebar-nav-active-bg);color:var(--sidebar-nav-active-text);font-weight:700}.nav-link.active .nav-icon{opacity:1;color:var(--sidebar-nav-icon-active)}.nav-link-sub{display:flex;align-items:center;gap:10px;padding:7px 12px 7px 38px;margin:1px 8px;border-radius:var(--r-sm);color:var(--fg-3);font-size:13px;font-weight:400;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease);white-space:nowrap;min-height:36px}.nav-link-sub:hover{background:#f0f4ff;color:var(--sidebar-nav-text-hover)}.nav-link-sub.active{background:var(--sidebar-nav-active-bg);color:var(--sidebar-nav-active-text);font-weight:600}.topbar{display:flex;align-items:center;justify-content:space-between;padding:0 36px;height:64px;background:var(--bg-1);border-bottom:1px solid var(--border-1);position:sticky;top:0;z-index:10;flex-shrink:0;box-shadow:var(--shadow-xs)}.topbar-left{display:flex;align-items:center;gap:14px}.topbar-right{display:flex;align-items:center;gap:10px}.sidebar-toggle{display:flex;flex-direction:column;justify-content:center;gap:4px;width:40px;height:40px;padding:8px;background:transparent;border:none;cursor:pointer;border-radius:var(--r-sm);transition:background var(--dur-fast) var(--ease)}.sidebar-toggle:hover{background:var(--bg-2)}.sidebar-toggle span{display:block;height:1.5px;background:var(--neutral-400);border-radius:99px}.sidebar-toggle:hover span{background:var(--ink)}.topbar-title-block{display:flex;flex-direction:column}.topbar-page-title{font-family:var(--font-display);font-size:24px;font-weight:800;color:var(--fg-1);margin:0;letter-spacing:-.01em;text-transform:capitalize}.user-menu{position:relative}.user-menu-trigger{display:flex;align-items:center;gap:8px;padding:5px 10px 5px 5px;background:var(--bg-2);border:1px solid var(--border-1);border-radius:var(--r-sm);cursor:pointer;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease);font-family:inherit;color:inherit}.user-menu-trigger:hover{background:var(--neutral-100);border-color:var(--border-2)}.user-avatar{width:32px;height:32px;border-radius:50%;background:var(--ink);color:#fff;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.user-menu-info{display:flex;flex-direction:column;align-items:flex-start}.user-menu-email{font-size:12.5px;font-weight:600;color:var(--fg-1);max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-role{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--blue-600)}.user-menu-dropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:200px;background:var(--bg-1);border:1px solid var(--border-1);border-radius:var(--r-md);padding:6px;box-shadow:var(--shadow-md);z-index:100}.user-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 12px;background:transparent;border:none;border-radius:var(--r-sm);color:var(--fg-2);font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;text-align:start;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease);min-height:40px}.user-menu-item:hover{background:var(--bg-2);color:var(--fg-1)}.user-menu-item.danger{color:var(--danger-fg)}.user-menu-item.danger:hover{background:var(--danger-soft);color:var(--danger-fg)}.user-menu-divider{height:1px;background:var(--border-1);margin:5px 0}.main-content{flex:1;min-width:0;display:flex;flex-direction:column;overflow-x:auto;background:var(--bg-2)}.page{padding:32px 36px 64px;max-width:1440px;width:100%;margin:0 auto}.page-header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:28px}.page-header h1{font-family:var(--font-display);font-size:24px;font-weight:800;color:var(--ink);letter-spacing:-.01em;margin-bottom:3px}.page-header .muted{font-size:13px;color:var(--fg-3);margin-top:2px}.page-header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.card{background:var(--card-bg, #FFFFFF);border:1px solid var(--card-border, #E8EBF0);border-radius:var(--card-radius, 16px);padding:var(--card-padding, 24px);margin-bottom:16px;overflow-x:auto;box-shadow:var(--shadow-sm)}.card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}.card h2{font-family:var(--font-ui);font-size:16px;font-weight:700;color:var(--ink);margin-bottom:0}.card h3{font-family:var(--font-ui);font-size:11px;font-weight:700;color:var(--fg-3);text-transform:uppercase;letter-spacing:.1em;margin-bottom:10px}.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin-bottom:20px}.metric-grid.compact{margin-bottom:0}.metric-card{background:var(--bg-1);border:1px solid var(--border-1);border-radius:var(--r-lg);padding:24px;display:flex;flex-direction:column;gap:8px;position:relative;overflow:hidden;text-decoration:none;transition:border-color var(--dur-base) var(--ease),box-shadow var(--dur-base) var(--ease),transform var(--dur-fast) var(--ease);box-shadow:var(--shadow-xs)}.metric-card .metric-icon{width:32px;height:32px;border-radius:var(--r-sm);background:var(--primary-light);color:var(--blue-600);display:flex;align-items:center;justify-content:center;font-size:16px;line-height:1;flex-shrink:0}.metric-card>span,.metric-card .metric-label{font-size:12px;font-weight:500;color:var(--fg-2);text-transform:uppercase;letter-spacing:.05em}.metric-card strong,.metric-card .metric-value{font-family:var(--font-display);font-size:34px;font-weight:800;color:var(--ink);line-height:1}.metric-card small,.metric-card a,.metric-card .metric-link{font-size:12px;font-weight:600;color:var(--success-fg);display:flex;align-items:center;gap:3px}.metric-delta{display:inline-flex;align-items:center;gap:3px;font-size:12px;font-weight:700}.metric-delta.up{color:var(--success-fg)}.metric-delta.down{color:var(--danger-fg)}.metric-card.as-button{cursor:pointer;font:inherit;text-align:inherit;border:none;background:var(--bg-1)}.metric-card.as-button:hover,.metric-card:hover{border-color:var(--border-brand);box-shadow:var(--shadow-md);transform:translateY(-1px)}.table-shell{border-radius:var(--r-lg);overflow-x:auto;border:1px solid var(--border-1);background:var(--bg-1);box-shadow:var(--shadow-xs)}.data-table{width:100%;min-width:640px;border-collapse:collapse;background:transparent}.data-table th{padding:12px 16px;text-align:start;font-size:11px;font-weight:600;color:var(--fg-2);text-transform:uppercase;letter-spacing:.06em;background:var(--bg-2);border-bottom:1px solid var(--border-1);white-space:nowrap}.data-table td{padding:14px 16px;border-bottom:1px solid var(--neutral-100);font-size:13.5px;color:var(--fg-1);vertical-align:middle;overflow-wrap:anywhere;background:transparent}.data-table td.nowrap{white-space:nowrap}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr{transition:background var(--dur-fast) var(--ease)}.data-table tbody tr:hover td{background:#f5f7ff}.data-table tbody tr.selected td{background:#f5f9ff}.data-table a{color:var(--blue-600);font-weight:500}.data-table a:hover{color:var(--blue-700)}.data-table.compact td{padding:8px 16px}.btn{display:inline-flex;align-items:center;gap:6px;padding:9.5px 20px;border-radius:10px;border:1.5px solid transparent;font-family:var(--font-ui);font-size:14px;font-weight:600;cursor:pointer;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease),opacity var(--dur-fast) var(--ease);white-space:nowrap;text-align:center;justify-content:center;min-height:40px}.btn:disabled{opacity:.38;cursor:not-allowed}.btn:focus-visible{outline:none;box-shadow:var(--ring-brand)}.btn-primary{background:var(--brand);color:#fff;border-color:var(--brand);box-shadow:var(--shadow-brand)}.btn-primary:hover:not(:disabled){background:var(--brand-hover);border-color:var(--brand-hover)}.btn-secondary{background:#fff;color:var(--ink);border-color:var(--border-2)}.btn-secondary:hover:not(:disabled){border-color:var(--brand);color:var(--brand)}.btn-ghost{background:transparent;color:var(--blue-600);border-color:transparent}.btn-ghost:hover:not(:disabled){background:var(--blue-50)}.btn-danger{background:var(--danger);color:#fff;border-color:var(--danger)}.btn-danger:hover:not(:disabled){background:var(--danger-fg);border-color:var(--danger-fg)}.btn-danger-soft{background:var(--danger-soft);color:var(--danger-fg);border-color:transparent}.btn-danger-soft:hover:not(:disabled){background:#f8c9c9}.btn-success{background:var(--success-soft);color:var(--success-fg);border-color:transparent}.btn-success:hover:not(:disabled){background:#c8edca}.btn-sm{padding:7px 14px;font-size:13px;border-radius:var(--r-sm);min-height:36px}.btn-xs{padding:4px 10px;font-size:12px;border-radius:7px;min-height:30px}.btn-icon{padding:0;width:40px;height:40px;border-radius:10px}.btn-icon.btn-sm{width:36px;height:36px}.badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:var(--r-pill);font-family:var(--font-ui);font-size:13px;font-weight:600;white-space:nowrap}.badge-draft,.badge-books_selected{background:var(--neutral-100);color:var(--neutral-600)}.badge-files_processing,.badge-files_validated,.badge-metadata_validated,.badge-metadata_generated,.badge-staged{background:var(--blue-50);color:var(--blue-600)}.badge-files_processed,.badge-submitted,.badge-active,.badge-success,.badge-ready,.badge-recovered,.badge-acquisition{background:var(--success-soft);color:var(--success-fg)}.badge-cancelled,.badge-failed,.badge-not_ready,.badge-rejected,.badge-delivery_failed,.badge-danger{background:var(--danger-soft);color:var(--danger-fg)}.badge-blocked,.badge-rework,.badge-retrying,.badge-held,.badge-medium{background:var(--warning-soft);color:var(--warning-fg)}.badge-pending,.badge-low{background:var(--bg-2);color:var(--fg-2)}.badge-info{background:var(--info-soft);color:var(--info-fg)}.badge-high{background:var(--danger-soft);color:var(--danger-fg)}.badge-queued{background:var(--info-soft);color:var(--info-fg)}.badge-operator{background:var(--blue-50);color:var(--blue-600)}.badge-admin,.badge-pdf_ebook,.badge-ingram{background:var(--ink-2);color:#fff}.badge-print{background:var(--blue-50);color:var(--blue-600)}.badge-audio,.badge-overdrive{background:var(--info-soft);color:var(--info-fg)}.workspace-tabs,.tabs{display:flex;gap:0;border-bottom:1px solid var(--border-1);margin:0 0 20px;overflow-x:auto;scrollbar-width:none}.workspace-tabs::-webkit-scrollbar,.tabs::-webkit-scrollbar{display:none}.workspace-tabs button,.tabs .tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;border-bottom:2px solid transparent;color:var(--fg-3);cursor:pointer;font-family:var(--font-ui);font-size:13.5px;font-weight:600;padding:12px 18px;min-height:44px;white-space:nowrap;transition:color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease);margin-bottom:-1px}.workspace-tabs button:hover,.tabs .tab:hover{color:var(--fg-1)}.workspace-tabs button.active,.tabs .tab.active{color:var(--blue-600);border-bottom-color:var(--brand)}.workspace-tabs.pills{gap:6px;border-bottom:none;padding:4px;background:var(--bg-2);border:1px solid var(--border-1);border-radius:var(--r-pill);width:fit-content;max-width:100%}.workspace-tabs.pills button{border:0;border-bottom:0;border-radius:var(--r-pill);padding:9px 16px;min-height:38px;margin-bottom:0;color:var(--fg-2)}.workspace-tabs.pills button:hover{color:var(--fg-1);background:var(--bg-1)}.workspace-tabs.pills button.active{background:var(--primary-light);color:var(--primary);border-bottom-color:transparent}.form-card{max-width:560px}.form-row{margin-bottom:14px}.form-row label{display:block;font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--neutral-600);margin-bottom:7px}.form-row input,.form-row select,.form-row textarea{width:100%;padding:11px 14px;border:1.5px solid var(--border-1);border-radius:10px;font-family:var(--font-ui);font-size:14px;background:var(--bg-1);color:var(--fg-1);transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.form-row input::placeholder,.form-row textarea::placeholder{color:var(--fg-3)}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{outline:none;border-color:var(--brand);box-shadow:var(--ring-brand)}.form-row select option{background:var(--bg-1);color:var(--fg-1)}.checkbox-group{display:flex;gap:12px;flex-wrap:wrap}.checkbox-label{display:flex;align-items:center;gap:6px;font-size:14px;cursor:pointer;color:var(--fg-1)}.checkbox-label input{width:auto}.form-actions{display:flex;gap:8px;margin-top:18px}select,input[type=text],input[type=number],input[type=email],input[type=search]{background:var(--bg-1);border:1.5px solid var(--border-1);border-radius:10px;color:var(--fg-1);font-family:var(--font-ui);font-size:14px;padding:8px 12px;transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease);min-height:40px}select option{background:var(--bg-1);color:var(--fg-1)}select:focus,input:focus{outline:none;border-color:var(--brand);box-shadow:var(--ring-brand)}.error{padding:10px 14px;background:var(--danger-soft);border:1px solid rgba(227,31,31,.2);border-radius:var(--r-sm);color:var(--danger-fg);font-size:13.5px;margin-bottom:12px}.success-msg{padding:10px 14px;background:var(--success-soft);border:1px solid rgba(76,175,80,.22);border-radius:var(--r-sm);color:var(--success-fg);font-size:13.5px;margin-bottom:12px}.session-alert{margin:12px 28px 0;padding:10px 16px;border-radius:var(--r-sm);background:var(--warning-soft);border:1px solid rgba(249,178,51,.28);color:var(--warning-fg);font-size:13px;display:flex;align-items:center;gap:12px}.muted{color:var(--fg-3);font-size:12px}.loading{padding:56px;text-align:center;color:var(--fg-3);font-size:13px}.toast-container{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;gap:8px;z-index:9999;pointer-events:none}.toast{background:var(--bg-1);border:1px solid var(--border-1);color:var(--fg-1);border-radius:var(--r-md);padding:12px 16px;font-size:13.5px;font-weight:500;box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:10px;pointer-events:all;min-width:240px;max-width:360px;animation:toast-in .22s var(--ease)}.toast-success{border-inline-start:3px solid var(--success)}.toast-error{border-inline-start:3px solid var(--danger)}.toast-info{border-inline-start:3px solid var(--brand)}.toast-close{margin-inline-start:auto;background:transparent;border:none;color:var(--fg-3);cursor:pointer;font-size:15px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:var(--r-sm);padding:0;line-height:1;transition:color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.toast-close:hover{background:var(--bg-2)}.toast-close:hover{color:var(--fg-1)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.75)}}@keyframes progress-indeterminate{0%{transform:translate(-100%)}to{transform:translate(2000%)}}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:16px;height:16px;border:2px solid var(--border-1);border-top-color:var(--brand);border-radius:50%;animation:spin .7s linear infinite;display:inline-block}.toolbar-card{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:14px;padding:10px 16px;background:var(--bg-1);border:1px solid var(--border-1);border-radius:var(--r-lg);box-shadow:var(--shadow-xs);min-height:52px}.section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;flex-wrap:wrap}.section-heading h2{margin-bottom:2px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 860px){.two-col{grid-template-columns:1fr}}.action-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.quick-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.alert-strip{display:flex;align-items:center;gap:10px;padding:12px 16px;margin-bottom:20px;border-radius:var(--r-md);background:var(--danger-soft);border:1px solid rgba(227,31,31,.2);color:var(--danger-fg);font-size:13.5px;font-weight:600;text-decoration:none;transition:background var(--dur-fast) var(--ease)}.alert-strip:hover{background:#f8d4d4}.alert-strip .alert-strip-cta{margin-inline-start:auto;font-weight:700}.exception-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}.exception-card{background:var(--bg-1);border:1px solid var(--border-1);border-inline-start:3px solid var(--danger);border-radius:var(--r-md);padding:16px;display:flex;flex-direction:column;gap:10px;box-shadow:var(--shadow-xs)}.exception-card h2{font-size:14px;color:var(--ink);margin:0}.exception-card-top,.exception-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.exception-meta{color:var(--fg-2);font-size:12px;display:flex;flex-direction:column;gap:2px}.batch-meta{display:flex;gap:24px;flex-wrap:wrap;margin-bottom:16px}.batch-meta-item{display:flex;flex-direction:column;gap:2px}.batch-meta-item .label{font-size:11px;font-weight:700;color:var(--fg-3);text-transform:uppercase;letter-spacing:.1em}.batch-meta-item .value{font-size:14px;font-weight:600;color:var(--ink)}.manifest-add-form{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-end;margin-top:14px;padding-top:14px;border-top:1px solid var(--border-1)}.manifest-add-form .form-row{margin-bottom:0;flex:1;min-width:120px}.validation-row{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;border-bottom:1px solid var(--neutral-100);gap:16px}.validation-row:last-child{border-bottom:none}.validation-issues{font-size:12px;color:var(--fg-2);margin-top:2px}.blocker-list{margin-top:10px;padding:10px 14px;background:var(--warning-soft);border:1px solid rgba(249,178,51,.22);border-radius:var(--r-sm)}.blocker-list li{font-size:12px;color:var(--warning-fg);margin-top:4px;list-style:disc;margin-inline-start:16px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:56px 24px;text-align:center;gap:8px}.empty-state-icon{font-size:32px;opacity:.3;margin-bottom:4px}.empty-state h3{font-size:16px;font-weight:700;color:var(--ink)}.empty-state p{font-size:13.5px;color:var(--fg-2);max-width:320px}.auth-shell{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--bg-2)}.auth-card{background:var(--bg-1);border:1px solid var(--border-1);border-radius:var(--r-lg);padding:44px 48px;max-width:420px;width:100%;text-align:center;box-shadow:var(--shadow-lg)}.auth-brand{margin-bottom:28px}.auth-brand img{height:32px;width:auto;margin:0 auto}.auth-title{font-family:var(--font-display);font-size:22px;font-weight:800;margin-bottom:10px;color:var(--ink)}.auth-email{font-size:13px;font-weight:500;color:var(--fg-2);background:var(--bg-2);border:1px solid var(--border-1);border-radius:var(--r-sm);padding:4px 12px;display:inline-block;margin-bottom:14px}.auth-body{font-size:13px;color:var(--fg-2);line-height:1.65;margin-bottom:8px}.auth-hint{font-size:12px;color:var(--fg-3);margin-bottom:20px}.auth-icon{font-size:34px;margin-bottom:12px}.auth-refresh{width:100%}.delivery-checklist{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin-bottom:12px}.delivery-checklist>div,.confirm-panel{border:1px solid var(--border-1);border-radius:var(--r-sm);padding:10px 12px;background:var(--bg-2)}.delivery-checklist span{color:var(--fg-3);display:block;font-size:12px;margin-top:2px}.confirm-panel{background:var(--blue-50);border-color:var(--border-1);display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.attention-list{display:grid;gap:8px}.attention-list>div{border:1px solid var(--border-1);border-radius:var(--r-sm);padding:10px 12px;background:var(--bg-2);gap:3px;display:grid}.attention-list span{color:var(--fg-3);font-size:12px}.settings-link-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}.settings-link-grid a{border:1px solid var(--border-1);border-radius:var(--r-sm);color:var(--blue-600);padding:10px 12px;font-size:13px;font-weight:500;background:var(--bg-2);transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.settings-link-grid a:hover{background:var(--blue-50);border-color:var(--border-brand)}.danger-zone{border-color:#e31f1f40!important}.user-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--r-pill);background:var(--bg-2);border:1px solid var(--border-1);color:var(--fg-2);font-size:12px;font-weight:500}.topbar-title{font-size:14px;font-weight:600;color:var(--ink)}.topbar-subtitle{font-size:12px;color:var(--fg-3);margin-top:1px}.topbar-actions{display:flex;align-items:center;gap:8px}.access-denied{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:10px}.access-denied h1{font-size:20px;color:var(--ink)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#010b2666;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:200;display:flex;align-items:center;justify-content:center;padding:24px;overflow-y:auto;animation:modal-in .18s var(--ease)}@keyframes modal-in{0%{opacity:0}to{opacity:1}}.modal{background:var(--bg-1);border:1px solid var(--border-1);border-radius:var(--r-lg);width:100%;max-width:720px;box-shadow:var(--shadow-lg);animation:modal-slide-in .22s var(--ease);position:relative;overflow:hidden}@keyframes modal-slide-in{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:22px 28px 18px;border-bottom:1px solid var(--border-1)}.modal-header h2{font-family:var(--font-ui);font-size:16px;font-weight:700;color:var(--ink);margin:0}.modal-close{width:40px;height:40px;border-radius:var(--r-sm);background:var(--bg-2);border:1px solid var(--border-1);color:var(--fg-3);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease);font-family:inherit}.modal-close:hover{background:var(--neutral-100);color:var(--fg-1)}.modal-body{padding:24px 28px}.modal-footer{padding:16px 28px 22px;display:flex;gap:10px;justify-content:flex-end;border-top:1px solid var(--border-1)}.format-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.format-card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 12px;border:1.5px solid var(--border-1);border-radius:var(--r-md);background:var(--bg-2);cursor:pointer;transition:border-color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease);font-family:inherit;color:var(--fg-3);font-size:12px;font-weight:600}.format-card:hover{border-color:var(--border-2);background:var(--neutral-100);color:var(--fg-1)}.format-card.selected{border-color:var(--brand);background:var(--blue-50);color:var(--blue-600)}.format-card-icon{font-size:22px}.tier-control{display:flex;border:1px solid var(--border-1);border-radius:var(--r-sm);overflow:hidden;background:var(--bg-2);width:fit-content}.tier-control button{padding:7px 20px;border:none;background:transparent;font-size:12.5px;font-weight:600;font-family:inherit;color:var(--fg-3);cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease);border-inline-end:1px solid var(--border-1);white-space:nowrap;min-height:36px}.tier-control button:last-child{border-inline-end:none}.tier-control button:hover{background:var(--neutral-100);color:var(--fg-1)}.tier-control button.tier-high.selected{background:var(--danger-soft);color:var(--danger-fg)}.tier-control button.tier-medium.selected{background:var(--warning-soft);color:var(--warning-fg)}.tier-control button.tier-low.selected{background:var(--blue-50);color:var(--blue-600)}.publisher-combobox{position:relative}.publisher-combobox-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--bg-1);border:1px solid var(--border-1);border-radius:var(--r-md);box-shadow:var(--shadow-md);z-index:300;max-height:240px;overflow-y:auto;padding:4px}.publisher-combobox-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:9px 12px;border:none;background:transparent;border-radius:var(--r-xs);cursor:pointer;font-family:inherit;font-size:13.5px;color:var(--fg-1);text-align:start;transition:background var(--dur-fast) var(--ease);min-height:40px}.publisher-combobox-item:hover{background:var(--blue-50);color:var(--blue-600)}.publisher-combobox-item .pub-id{font-family:var(--font-mono);font-size:11.5px;color:var(--fg-3)}.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.form-section-label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3);padding:18px 0 10px;border-top:1px solid var(--border-1);margin-top:6px}.form-section-label:first-child{border-top:none;padding-top:0}.publisher-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;background:var(--blue-50);border:1px solid var(--border-1);border-radius:var(--r-sm);font-size:13px;font-weight:600;color:var(--blue-600)}.publisher-chip-id{font-family:var(--font-mono);font-size:11px;color:var(--fg-3);font-weight:400}.publisher-chip-clear{background:none;border:none;color:var(--fg-3);cursor:pointer;font-size:14px;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-xs);padding:0;line-height:1;transition:color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.publisher-chip-clear:hover{background:var(--blue-100)}.publisher-chip-clear:hover{color:var(--danger-fg)}
