@font-face{font-family:YekanBakhFaNum;src:url(/fonts/woff2/YekanBakhFaNum-Regular.woff2) format("woff2");font-display:swap;font-weight:400}@font-face{font-family:YekanBakhFaNum;src:url(/fonts/woff2/YekanBakhFaNum-SemiBold.woff2) format("woff2");font-display:swap;font-weight:600}@font-face{font-family:YekanBakhFaNum;src:url(/fonts/woff2/YekanBakhFaNum-Bold.woff2) format("woff2");font-display:swap;font-weight:700}:root{--color-primary: #0f766e;--color-secondary: #2563eb;--color-accent: #f59e0b;--color-background: #f7faf9;--color-surface: #ffffff;--color-text: #17201f;--color-muted: #6b7280;--color-border: #d7e3df;--color-success: #16a34a;--color-warning: #f59e0b;--color-danger: #dc2626;--radius-card: 8px;--radius-button: 8px;--font-family: YekanBakhFaNum, Tahoma, system-ui, sans-serif}*{box-sizing:border-box}html{overflow-x:hidden}body{margin:0;min-height:100vh;overflow-x:hidden;color:var(--color-text);background:var(--color-background);font-family:var(--font-family);letter-spacing:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.screen-center{display:grid;min-height:100vh;place-items:center}.app-shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;display:flex;height:100vh;flex-direction:column;gap:24px;border-left:1px solid var(--color-border);background:var(--color-surface);padding:24px}.mobile-menu-toggle,.sidebar-close,.sidebar-backdrop{display:none}.brand-block{display:flex;align-items:center;gap:12px}.brand-block img,.brand-mark{width:44px;height:44px;flex:0 0 44px;border-radius:8px;object-fit:contain}.brand-mark{display:grid;place-items:center;background:var(--color-primary);color:#fff;font-weight:800}.brand-block strong,.brand-block span{display:block}.brand-block strong{font-size:14px;line-height:1.7}.brand-block span{color:var(--color-muted);font-size:12px}.nav-list{display:grid;gap:8px}.nav-item{display:flex;min-height:44px;align-items:center;gap:10px;border-radius:var(--radius-button);color:var(--color-muted);padding:10px 12px}.nav-item.active,.nav-item:hover{background:color-mix(in srgb,var(--color-primary) 12%,white);color:var(--color-primary)}.sidebar-logout{margin-top:auto}.main-area{display:flex;min-width:0;flex-direction:column;gap:22px;padding:28px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.topbar h1{margin:4px 0 0;font-size:26px}.eyebrow{color:var(--color-primary);font-size:13px;font-weight:700}.profile-pill{display:flex;align-items:center;gap:10px;min-width:0;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);color:var(--color-muted);padding:8px 12px}.profile-pill div{display:grid;min-width:0;gap:2px}.profile-pill span,.profile-pill small{overflow:hidden;max-width:260px;text-overflow:ellipsis;white-space:nowrap}.profile-pill small{color:var(--color-muted);font-size:12px}.profile-pill strong{flex:0 0 auto;color:var(--color-primary)}.grid-4,.grid-3,.grid-2{display:grid;gap:16px}.grid-4>*,.grid-3>*,.grid-2>*{min-width:0}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.panel,.stat-card,.empty-state,.start-card{min-width:0;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:0 12px 30px #14302c0f}.panel{padding:18px}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.panel-header h2,.empty-state h2{margin:0;font-size:18px}.panel-header p,.empty-state p{margin:6px 0 0;color:var(--color-muted);line-height:1.8}.stat-card{display:flex;align-items:center;gap:14px;min-height:112px;padding:18px}.stat-card span,.stat-card small{display:block;color:var(--color-muted)}.stat-card strong{display:block;margin:6px 0;font-size:26px}.stat-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:8px;background:color-mix(in srgb,var(--color-secondary) 12%,white);color:var(--color-secondary)}.primary-button,.secondary-button,.ghost-button,.danger-button{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:8px;border:0;border-radius:var(--radius-button);padding:10px 14px;font-weight:700}.mini-button{min-height:34px;padding:7px 10px;font-size:13px}.icon-button{width:36px;min-height:36px;padding:0}.primary-button{background:var(--color-primary);color:#fff}.secondary-button{background:var(--color-secondary);color:#fff}.ghost-button{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text)}.danger-button{background:var(--color-danger);color:#fff}.risk-badge{display:inline-flex;min-width:72px;align-items:center;justify-content:center;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800}.risk-low{background:color-mix(in srgb,var(--color-success) 16%,white);color:var(--color-success)}.risk-medium{background:color-mix(in srgb,var(--color-warning) 18%,white);color:#9a5b00}.risk-high{background:color-mix(in srgb,var(--color-danger) 15%,white);color:var(--color-danger)}.risk-critical{background:#7f1d1d;color:#fff}.risk-unknown{background:#e5e7eb;color:#4b5563}.table-wrap{max-width:100%;overflow:auto}table{width:100%;min-width:860px;border-collapse:collapse}th,td{border-bottom:1px solid var(--color-border);padding:12px;text-align:right;vertical-align:top}th{color:var(--color-muted);font-size:13px}.field-row{display:grid;gap:8px}.field-label{display:flex;align-items:center;gap:6px;font-weight:700}.field-label b,.field-warning{color:var(--color-danger)}.field-row input,.field-row select,.field-row textarea{width:100%;border:1px solid var(--color-border);border-radius:var(--radius-button);background:#fff;padding:11px 12px}.compact-field{gap:6px}.compact-field .field-label{color:color-mix(in srgb,var(--color-text) 86%,var(--color-muted));font-size:13px}.compact-field input,.compact-field select,.compact-field textarea{min-height:40px;padding:9px 10px}.compact-field textarea{min-height:96px}.field-row input[type=checkbox]{width:18px;height:18px;flex:0 0 18px;padding:0;accent-color:var(--color-primary)}.field-row small,.field-row em{color:var(--color-muted);font-size:12px;font-style:normal;line-height:1.7}.disclaimer-check{display:flex;align-items:flex-start;margin-top:14px;border:1px solid color-mix(in srgb,var(--color-warning) 40%,white);border-radius:var(--radius-card);background:color-mix(in srgb,var(--color-warning) 8%,white);color:var(--color-text);cursor:pointer;line-height:1.8;padding:12px 14px}.disclaimer-check .field-label{align-items:flex-start;gap:10px;font-weight:700}.disclaimer-check input[type=checkbox]{width:18px;height:18px;flex:0 0 18px;margin-top:5px;accent-color:var(--color-primary)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.compact-grid{gap:12px}.form-grid .full{grid-column:1 / -1}.check-row{display:inline-flex;align-items:center;gap:8px;color:var(--color-text);font-weight:700;line-height:1.8}.check-row input[type=checkbox]{width:18px;height:18px;flex:0 0 18px;accent-color:var(--color-primary)}.admin-search,.admin-filters{display:flex;align-items:center;gap:8px}.admin-search{min-width:min(340px,100%);border:1px solid var(--color-border);border-radius:var(--radius-button);background:#fff;color:var(--color-muted);padding:0 10px}.admin-search input{width:100%;min-height:42px;border:0;outline:0}.admin-filters{flex-wrap:wrap;justify-content:flex-end}.admin-filters select,td select{min-height:38px;border:1px solid var(--color-border);border-radius:var(--radius-button);background:#fff;color:var(--color-text);padding:7px 10px}.user-cell{display:flex;align-items:center;gap:10px;min-width:220px}.user-cell div{display:grid;min-width:0;gap:3px}.user-cell span,.muted-text{color:var(--color-muted)}.user-cell span{overflow:hidden;max-width:260px;text-overflow:ellipsis;white-space:nowrap}.table-action{min-height:36px;padding:8px 10px}.admin-list{display:grid;gap:14px}.admin-list-item{border:1px solid var(--color-border);border-radius:var(--radius-card);background:#fffc;padding:14px}.admin-list-item.compact{display:grid;gap:12px}.admin-list-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.admin-list-head strong,.admin-list-head span{display:block}.admin-list-head span{margin-top:4px;color:var(--color-muted);font-size:13px}.row-actions{display:flex;flex-wrap:wrap;gap:8px}.row-actions .ghost-button,.row-actions .danger-button{min-height:34px;padding:7px 10px}.color-chip{display:inline-block;width:22px;height:22px;border:1px solid var(--color-border);border-radius:999px;vertical-align:middle}.success-notice{border-color:color-mix(in srgb,var(--color-success) 40%,white);background:color-mix(in srgb,var(--color-success) 9%,white);color:#166534;margin-bottom:14px}.error-cell{max-width:280px;color:var(--color-danger);font-size:12px;line-height:1.7}.wizard-progress{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px}.wizard-step{position:relative;display:inline-flex;min-width:118px;align-items:center;gap:7px;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);color:var(--color-muted);padding:8px 10px}.wizard-step span{display:grid;width:22px;height:22px;flex:0 0 22px;place-items:center;border-radius:999px;background:#e5e7eb;font-size:11px;font-weight:800}.wizard-step strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.wizard-step.active{border-color:color-mix(in srgb,var(--color-primary) 34%,var(--color-border));color:var(--color-primary)}.wizard-step.active span{background:color-mix(in srgb,var(--color-primary) 14%,white);color:var(--color-primary)}.wizard-step.current{background:color-mix(in srgb,var(--color-primary) 7%,var(--color-surface));box-shadow:inset 0 -2px 0 var(--color-primary)}.wizard-step.current span{background:var(--color-primary);color:#fff}.chart-panel{min-width:0}.chart-body{width:100%;min-width:0;height:280px;min-height:260px}.empty-state{display:grid;justify-items:center;gap:10px;padding:44px;text-align:center}.footer{margin-top:auto;color:var(--color-muted);font-size:13px;text-align:center}.footer img{height:24px;vertical-align:middle}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-background);padding:clamp(24px,5vw,72px)}.auth-layout{display:grid;width:min(1180px,100%);min-width:0;grid-template-columns:minmax(0,.94fr) minmax(380px,1.06fr);align-items:center;gap:42px}.auth-intro{display:flex;width:100%;min-width:0;flex-direction:column;justify-content:center;gap:24px}.auth-brand{display:flex;align-items:center;gap:14px;color:var(--color-primary);font-weight:800}.auth-brand img{width:min(190px,44vw);max-height:56px;object-fit:contain}.auth-copy{max-width:760px}.auth-copy h1{max-width:720px;margin:10px 0 14px;font-size:48px;line-height:1.32}.auth-copy p{max-width:680px;margin:0;color:var(--color-muted);font-size:17px;line-height:2.05}.auth-actions{display:flex;flex-wrap:wrap;gap:12px}.safety-ribbon{display:flex;max-width:760px;align-items:flex-start;gap:10px;border:1px solid color-mix(in srgb,var(--color-warning) 40%,white);border-radius:var(--radius-card);background:color-mix(in srgb,var(--color-warning) 10%,white);color:#6f4300;line-height:1.9;padding:14px 16px}.auth-feature-list{display:grid;max-width:860px;grid-template-columns:1fr;gap:10px}.auth-feature-list>div{min-height:0;display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px;align-items:start;border:1px solid var(--color-border);border-radius:var(--radius-card);background:#ffffffb8;padding:14px}.auth-feature-list svg{grid-row:span 2;margin-top:2px;color:var(--color-secondary)}.auth-feature-list strong,.auth-feature-list span{display:block}.auth-feature-list strong{margin:0 0 4px;font-size:15px}.auth-feature-list span{color:var(--color-muted);font-size:13px;line-height:1.9}.login-box{width:100%;max-width:420px;align-self:center;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:0 18px 45px #14302c14;padding:24px}.auth-modal{width:min(460px,100%)}.auth-visual{display:grid;min-width:0;align-items:end}.auth-hero-image{width:100%;aspect-ratio:16 / 10;border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:0 28px 70px #0f363229;object-fit:cover}.risk-preview{position:relative;z-index:1;width:min(520px,calc(100% - 44px));margin:-76px auto 0;border:1px solid rgba(215,227,223,.92);border-radius:var(--radius-card);background:#fffffff0;box-shadow:0 22px 58px #0f36322e;padding:18px}.risk-preview-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.risk-preview-header span{color:var(--color-muted);font-size:13px}.risk-preview-header strong{color:var(--color-primary);font-size:14px}.risk-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.risk-preview-grid>div{min-height:94px;display:grid;align-content:center;gap:6px;border:1px solid var(--color-border);border-radius:var(--radius-card);background:#fff;padding:12px}.risk-preview-grid svg{color:var(--color-secondary)}.risk-preview-grid span{color:var(--color-muted);font-size:12px}.risk-preview-grid strong{font-size:19px}.risk-preview-grid>div:first-child strong{color:var(--color-danger)}.risk-preview-note{display:flex;align-items:center;gap:9px;margin-top:10px;border-radius:var(--radius-card);background:color-mix(in srgb,var(--color-warning) 12%,white);color:#744200;font-size:13px;line-height:1.7;padding:10px 12px}.login-box .panel-header{align-items:flex-start;margin-bottom:22px}.login-box h2{margin:6px 0 0;font-size:22px}.login-box p{margin-top:8px}.login-form{display:grid;gap:16px}.full-width{width:100%}.signup-inline{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:18px;color:var(--color-muted);font-size:14px}.signup-inline button{border:0;background:transparent;color:var(--color-primary);font-weight:800}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;overflow:auto;background:#0b16147a;padding:22px}.modal-dialog{position:relative;width:min(760px,100%);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:0 24px 70px #091e1b42;padding:24px}.modal-close{position:absolute;top:16px;left:16px;display:grid;width:38px;height:38px;place-items:center;border:1px solid var(--color-border);border-radius:var(--radius-button);background:#fff;color:var(--color-muted)}.modal-heading{max-width:560px;margin-bottom:20px}.modal-heading h2{margin:6px 0;font-size:24px}.modal-heading p{margin:0;color:var(--color-muted);line-height:1.9}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.hint-card{border:1px solid var(--color-border);border-radius:var(--radius-card);background:#ffffffd1;padding:16px}.hint-card h3{margin:0 0 8px;font-size:16px}.hint-card p{margin:0;color:var(--color-muted);line-height:1.8}.item-block,.form-section{border-top:1px solid var(--color-border);padding-top:18px}.item-block+.item-block,.form-section+.form-section{margin-top:18px}.wizard-panel{display:grid;gap:16px;padding:16px}.wizard-stage-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid var(--color-border);padding-bottom:14px}.wizard-stage-title{min-width:0}.wizard-kicker{display:inline-flex;margin-bottom:4px;color:var(--color-primary);font-size:12px;font-weight:800}.wizard-stage-title h2{margin:0;font-size:20px;line-height:1.5}.wizard-stage-title p{max-width:720px;margin:4px 0 0;color:var(--color-muted);font-size:13px;line-height:1.8}.wizard-meta-strip,.wizard-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.wizard-meta-strip span,.wizard-toolbar span{display:inline-flex;min-height:30px;align-items:center;border:1px solid var(--color-border);border-radius:999px;background:color-mix(in srgb,var(--color-primary) 5%,var(--color-surface));color:var(--color-muted);font-size:12px;font-weight:700;padding:5px 10px}.wizard-section{display:grid;gap:14px}.material-list{display:grid;gap:12px}.material-card,.review-card{min-width:0;border:1px solid var(--color-border);border-radius:var(--radius-card);background:#ffffffd6;padding:14px}.material-card-head,.review-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.material-title{display:flex;min-width:0;align-items:center;gap:10px}.material-title>span{display:grid;width:30px;height:30px;flex:0 0 30px;place-items:center;border-radius:999px;background:color-mix(in srgb,var(--color-primary) 11%,white);color:var(--color-primary);font-size:12px;font-weight:800}.material-title div{min-width:0}.material-title h3,.review-card-head strong{overflow:hidden;margin:0;font-size:15px;line-height:1.6;text-overflow:ellipsis;white-space:nowrap}.material-title small{display:block;overflow:hidden;color:var(--color-muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.review-card{display:grid;gap:8px}.review-card-head{margin-bottom:2px}.review-row{display:flex;justify-content:space-between;gap:12px;border-top:1px solid color-mix(in srgb,var(--color-border) 70%,transparent);color:var(--color-muted);font-size:13px;padding-top:8px}.review-row b{color:var(--color-text);font-weight:700;text-align:left}.compact-notice{font-size:13px;padding:10px 12px}.compact-disclaimer{margin-top:0;padding:10px 12px}.wizard-error{margin:0}.wizard-actions{justify-content:flex-end;margin-top:0;border-top:1px solid var(--color-border);padding-top:14px}.metric-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-border)}.metric-strip>div{background:var(--color-surface);padding:14px}.metric-strip h3,.metric-strip p{margin:0}.metric-strip h3{color:var(--color-muted);font-size:13px}.metric-strip p{margin-top:6px;font-size:20px;font-weight:800}.report-hero .panel-header{align-items:flex-start}.report-hero-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.status-pill{display:inline-flex;min-height:30px;align-items:center;border-radius:999px;background:#eef2f7;color:#44505c;font-size:12px;font-weight:800;padding:6px 10px}.status-processing{background:color-mix(in srgb,var(--color-secondary) 12%,white);color:var(--color-secondary)}.status-completed{background:color-mix(in srgb,var(--color-success) 14%,white);color:var(--color-success)}.status-needs_review{background:color-mix(in srgb,var(--color-warning) 16%,white);color:#935600}.status-failed{background:color-mix(in srgb,var(--color-danger) 14%,white);color:var(--color-danger)}.processing-box{display:flex;align-items:center;gap:16px;border:1px solid color-mix(in srgb,var(--color-secondary) 24%,white);border-radius:var(--radius-card);background:color-mix(in srgb,var(--color-secondary) 7%,white);padding:18px}.processing-box h3,.processing-box p{margin:0}.processing-box p{margin-top:6px;color:var(--color-muted);line-height:1.8}.spin-icon{color:var(--color-secondary);animation:spin 1.1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.report-visual-grid{display:grid;grid-template-columns:1.05fr 1fr .85fr;gap:14px;align-items:stretch}.risk-gauge-card,.metric-chart-card,.report-status-card{border:1px solid var(--color-border);border-radius:var(--radius-card);background:#fff}.risk-gauge-card{position:relative;display:grid;align-content:center;min-height:260px;padding:12px}.risk-gauge-label{display:grid;justify-items:center;gap:4px;margin-top:-72px;text-align:center}.risk-gauge-label span,.risk-gauge-label small,.report-status-card span,.detail-card small,.muted-text{color:var(--color-muted)}.risk-gauge-label strong{font-size:32px}.risk-gauge-label small{max-width:300px;line-height:1.8}.metric-chart-card{min-height:260px;padding:14px}.report-status-card{display:grid;gap:1px;overflow:hidden;background:var(--color-border)}.report-status-card>div{display:grid;align-content:center;gap:6px;min-height:86px;background:#fff;padding:14px}.report-status-card svg{color:var(--color-secondary)}.report-status-card strong{font-size:18px}.report-lead{font-size:17px;font-weight:700;line-height:2}.detail-card-list{display:grid;gap:12px}.detail-card{border:1px solid var(--color-border);border-radius:var(--radius-card);background:#ffffffd1;padding:14px}.detail-card-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px}.detail-card p{margin:0 0 8px;line-height:1.9}.detail-card small{line-height:1.8}.detail-list{display:grid;gap:8px;margin:0;padding:0 18px 0 0;line-height:1.9}.subsection-title{margin:18px 0 8px;font-size:15px}.technical-mini{margin-top:14px;border-top:1px solid var(--color-border);padding-top:14px}.report-disclaimer,.inline-notice{display:flex;align-items:flex-start;gap:10px}.inline-notice{width:auto;margin:0}.actions-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.notice{border:1px solid color-mix(in srgb,var(--color-warning) 50%,white);border-radius:var(--radius-card);background:color-mix(in srgb,var(--color-warning) 12%,white);color:#744200;line-height:1.8;padding:12px}.error-text{color:var(--color-danger);font-weight:700}.toolbar-actions,.formulation-actions,.evidence-strip,.modal-result-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.toolbar-actions{justify-content:flex-end}.credit-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid color-mix(in srgb,var(--color-primary) 30%,white);border-radius:var(--radius-button);background:color-mix(in srgb,var(--color-primary) 10%,white);color:var(--color-primary);font-weight:800;padding:9px 12px}.formulation-hero .notice{margin-top:10px}.compact-history{gap:8px}.history-row{display:flex;width:100%;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--color-border);border-radius:var(--radius-card);background:#fff;color:var(--color-text);padding:12px;text-align:right}.history-row span{display:grid;gap:3px}.history-row small{color:var(--color-muted);font-size:12px}.status-badge,.source-badge{display:inline-flex;min-height:24px;align-items:center;justify-content:center;border-radius:999px;font-size:12px;font-weight:800;padding:3px 9px;white-space:nowrap}.status-badge.completed,.status-badge.paid{background:color-mix(in srgb,var(--color-success) 14%,white);color:var(--color-success)}.status-badge.processing,.status-badge.pending_payment{background:color-mix(in srgb,var(--color-warning) 16%,white);color:#a16207}.status-badge.failed,.status-badge.blocked{background:color-mix(in srgb,var(--color-danger) 12%,white);color:var(--color-danger)}.result-metrics{display:grid;gap:8px;min-width:180px}.result-metrics span{display:flex;justify-content:space-between;gap:12px;border:1px solid var(--color-border);border-radius:var(--radius-button);padding:8px 10px}.formulation-actions{justify-content:space-between;margin-bottom:14px}.product-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 16px}.product-profile-grid div{display:grid;gap:5px;min-width:0;border:1px solid var(--color-border);border-radius:var(--radius-card);background:color-mix(in srgb,var(--color-primary) 4%,white);padding:11px}.product-profile-grid span{color:var(--color-muted);font-size:12px}.product-profile-grid strong{overflow-wrap:anywhere;font-size:13px}.ingredient-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ingredient-card{display:grid;gap:10px;border:1px solid var(--color-border);border-radius:var(--radius-card);background:#fff;padding:14px}.ingredient-card.selected{border-color:color-mix(in srgb,var(--color-primary) 45%,white);background:color-mix(in srgb,var(--color-primary) 6%,white)}.ingredient-select{display:flex;align-items:flex-start;gap:9px;font-weight:800}.ingredient-select input,.modal-ingredient-row input{width:18px;height:18px;flex:0 0 18px;margin-top:4px;accent-color:var(--color-primary)}.ingredient-card small,.ingredient-meta,.mini-warning,.evidence-strip{color:var(--color-muted);font-size:12px}.ingredient-card p{margin:0;line-height:1.8}.ingredient-tags,.ingredient-meta{display:flex;flex-wrap:wrap;gap:8px}.source-badge.ai_inference{background:color-mix(in srgb,var(--color-secondary) 12%,white);color:var(--color-secondary)}.source-badge.internal_db,.source-badge.pubchem{background:color-mix(in srgb,var(--color-success) 12%,white);color:var(--color-success)}.source-badge.common_knowledge{background:color-mix(in srgb,var(--color-warning) 14%,white);color:#a16207}.source-badge.ai_estimated_unresolved{background:#f1f5f9;color:#64748b}.mini-warning{display:flex;align-items:flex-start;gap:6px;border-radius:var(--radius-button);background:color-mix(in srgb,var(--color-warning) 10%,white);color:#744200;padding:8px}.evidence-strip{justify-content:space-between;margin-top:16px;border-top:1px solid var(--color-border);padding-top:14px}.evidence-strip div{display:flex;align-items:center;gap:8px}.formulation-modal .modal-heading{padding-left:42px}.formulation-modal-result{display:grid;gap:12px;margin-top:16px;border-top:1px solid var(--color-border);padding-top:14px}.modal-result-head{justify-content:space-between}.modal-result-head strong,.modal-result-head span{display:block}.modal-result-head span{color:var(--color-muted);font-size:12px;margin-top:3px}.modal-ingredient-list{display:grid;max-height:360px;overflow:auto;gap:8px;padding-left:4px}.modal-ingredient-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:10px;border:1px solid var(--color-border);border-radius:var(--radius-card);background:#fff;padding:10px}.modal-ingredient-row span{display:grid;gap:3px}.modal-ingredient-row small{color:var(--color-muted);font-size:12px}.modal-ingredient-row b{color:var(--color-primary);font-size:12px}.modal-error{margin:12px 0 0}.admin-formulation-grid{align-items:start}@media(max-width:1100px){.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3,.grid-2,.report-visual-grid{grid-template-columns:1fr}.evidence-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-status-card{grid-template-columns:repeat(3,minmax(0,1fr))}.auth-copy,.auth-copy h1,.auth-copy p,.safety-ribbon,.auth-feature-list{max-width:none}.auth-copy h1{font-size:38px}.login-box{max-width:none}}@media(max-width:900px){.auth-layout{grid-template-columns:1fr}}@media(max-width:800px){.app-shell{grid-template-columns:1fr}.mobile-menu-toggle{position:fixed;top:14px;right:14px;z-index:45;display:grid;width:42px;height:42px;place-items:center;border:1px solid var(--color-border);border-radius:var(--radius-button);background:var(--color-surface);color:var(--color-text);box-shadow:0 12px 28px #14302c24}.sidebar{position:fixed;inset:0 0 0 auto;z-index:60;width:min(320px,86vw);height:100vh;transform:translate(105%);transition:transform .18s ease;border-left:1px solid var(--color-border);box-shadow:-18px 0 44px #14302c2e}.menu-open .sidebar{transform:translate(0)}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;background:#0a141261}.menu-open .sidebar-backdrop,.sidebar-close{display:block}.sidebar-close{position:absolute;top:12px;left:12px;display:grid;width:36px;height:36px;place-items:center;border:1px solid var(--color-border);border-radius:var(--radius-button);background:#fff;color:var(--color-muted)}.topbar,.profile-pill{align-items:flex-start}.topbar{flex-direction:column;padding-right:54px}.panel-header{align-items:flex-start;flex-direction:column}.admin-search,.admin-filters,.admin-filters select,.admin-filters .ghost-button{width:100%}.admin-filters{align-items:stretch}.admin-list-head{flex-direction:column}.row-actions{width:100%}.row-actions>*{flex:1 1 auto}.profile-pill{width:100%;flex-direction:row;justify-content:space-between}.profile-pill span,.profile-pill small{max-width:calc(100vw - 150px)}.main-area{padding:18px}.form-grid,.grid-4{grid-template-columns:1fr}.wizard-progress{margin-inline:-18px;padding-inline:18px}.wizard-step{min-width:96px}.wizard-stage-header,.material-card-head,.review-card-head{align-items:stretch;flex-direction:column}.wizard-meta-strip,.wizard-toolbar,.wizard-actions{justify-content:stretch}.wizard-meta-strip span,.wizard-toolbar span,.wizard-toolbar button,.wizard-actions button,.wizard-actions a{width:100%}.toolbar-actions,.formulation-actions,.evidence-strip,.modal-result-head{width:100%;align-items:stretch;flex-direction:column}.ingredient-grid,.product-profile-grid{grid-template-columns:1fr}.modal-ingredient-row{grid-template-columns:auto minmax(0,1fr)}.modal-ingredient-row b{grid-column:2}.result-metrics{width:100%}.review-grid,.metric-strip{grid-template-columns:1fr}.auth-page{align-items:flex-start;padding:22px}.auth-brand{align-items:flex-start;flex-direction:column}.auth-copy h1{font-size:32px}.auth-copy p{font-size:15px}.auth-actions,.modal-actions{flex-direction:column}.auth-actions>*,.modal-actions>*{width:100%}.modal-dialog{padding:20px}.risk-preview{width:100%;margin:12px 0 0}.risk-preview-grid{grid-template-columns:1fr}.report-hero .panel-header,.report-hero-actions,.processing-box,.detail-card-head{align-items:flex-start;flex-direction:column}.report-status-card{grid-template-columns:1fr}}.field-with-suggestions{position:relative;min-width:0}.field-with-suggestions .field-row{margin:0}.chemical-suggestions{position:absolute;inset-inline:0;top:calc(100% + 6px);z-index:25;display:grid;gap:6px;padding:8px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface);box-shadow:0 18px 40px #0f172a24}.compact-suggestions{max-height:280px;overflow:auto}.chemical-suggestions button{display:grid;gap:3px;width:100%;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:var(--color-text);text-align:right;cursor:pointer}.compact-suggestions button{padding:7px 9px}.compact-suggestions strong{font-size:13px}.chemical-suggestions button:hover{background:color-mix(in srgb,var(--color-primary) 10%,transparent)}.chemical-suggestions small,.suggestion-loading{color:var(--color-muted);font-size:12px}.suggestion-loading{display:inline-flex;align-items:center;gap:6px;padding:6px 8px}.identity-tools{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:7px}.identity-pill{display:inline-flex;min-height:26px;align-items:center;justify-content:center;gap:6px;border-radius:999px;font-size:12px;font-weight:800;line-height:1.5;padding:4px 9px}.identity-resolved,.identity-user_provided{background:color-mix(in srgb,var(--color-success) 14%,white);color:var(--color-success)}.identity-ambiguous{background:color-mix(in srgb,var(--color-warning) 18%,white);color:#925500}.identity-unresolved{background:#e5e7eb;color:#4b5563}.sds-upload-row input[type=file]{border-style:dashed;background:color-mix(in srgb,var(--color-secondary) 4%,white)}.sds-upload-row em,.field-success{display:inline-flex;align-items:center;gap:6px;color:var(--color-muted);font-size:12px;line-height:1.8}.field-success{color:var(--color-success);font-weight:700}.table-mini-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;color:var(--color-muted);font-size:12px}.evidence-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.evidence-card{min-width:0;border:1px solid var(--color-border);border-radius:var(--radius-card);background:color-mix(in srgb,var(--color-primary) 3%,var(--color-surface));padding:14px}.evidence-card .detail-list{font-size:13px}.quality-item-list,.sds-facts-grid{display:grid;gap:12px}.quality-item-card{border:1px solid var(--color-border);border-radius:var(--radius-card);background:#ffffffd1;padding:14px}.quality-item-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.quality-item-head span{display:inline-flex;min-width:52px;justify-content:center;border-radius:999px;background:color-mix(in srgb,var(--color-primary) 10%,white);color:var(--color-primary);font-weight:800;padding:5px 9px}.criterion-grid{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 12px}.criterion-chip{display:inline-grid;gap:2px;min-width:92px;border-radius:8px;font-size:12px;line-height:1.5;padding:7px 9px}.criterion-chip b{font-size:11px}.criterion-good{background:color-mix(in srgb,var(--color-success) 10%,white);color:#116b33}.criterion-bad{background:color-mix(in srgb,var(--color-danger) 9%,white);color:#9a1b1b}.sds-facts-grid{margin-top:14px}.quality-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;margin-bottom:14px;border:1px solid var(--color-border);border-radius:10px;background:color-mix(in srgb,var(--color-primary) 7%,var(--color-surface))}.quality-summary strong{font-size:32px;color:var(--color-primary)}.quality-summary span{color:var(--color-muted);font-weight:700}.brand-block-redesigned{align-items:center;justify-content:center;flex-direction:column;gap:10px;padding:14px 10px;border:1px solid var(--color-border);border-radius:var(--radius-card);background:color-mix(in srgb,var(--color-primary) 5%,var(--color-surface))}.brand-block-redesigned img,.brand-block-redesigned .brand-mark{width:min(160px,100%);height:78px;flex-basis:auto;object-fit:contain}.brand-sidebar-caption{text-align:center}.topbar-redesigned{align-items:flex-start}.topbar-brand-title{min-width:0}.topbar-brand-title h1{max-width:760px;line-height:1.45}.topbar-brand-title p{max-width:760px;margin:6px 0 0;color:var(--color-muted);line-height:1.8}.avatar-dot{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;border-radius:999px;background:color-mix(in srgb,var(--color-primary) 14%,white);color:var(--color-primary);font-weight:800}.small-modal{width:min(520px,100%)}.large-modal{width:min(920px,100%)}.error-notice{border-color:color-mix(in srgb,var(--color-danger) 44%,white);background:color-mix(in srgb,var(--color-danger) 9%,white);color:var(--color-danger);margin-bottom:14px}.package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.package-card{display:grid;gap:12px;min-width:0;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:0 12px 30px #14302c0f;padding:18px}.package-card h3,.package-card p{margin:0}.package-card strong{font-size:28px}.package-card p{min-height:54px;color:var(--color-muted);line-height:1.8}.package-icon{display:grid;width:46px;height:46px;place-items:center;border-radius:8px;background:color-mix(in srgb,var(--color-secondary) 12%,white);color:var(--color-secondary)}.package-price{border-top:1px solid var(--color-border);padding-top:12px;color:var(--color-primary);font-size:22px;font-weight:800}.invoice-page .table-wrap{margin-top:12px}.invoice-totals{display:grid;width:min(420px,100%);gap:8px;margin:18px 0 0 auto;border:1px solid var(--color-border);border-radius:var(--radius-card);padding:14px}.invoice-totals div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--color-border);padding-bottom:8px}.invoice-totals div:last-child{border-bottom:0;padding-bottom:0}.payment-result{display:grid;justify-items:center;gap:12px;text-align:center;padding:38px}.payment-result svg{color:var(--color-primary)}.status-paid{background:color-mix(in srgb,var(--color-success) 14%,white);color:var(--color-success)}.status-pending_payment,.status-draft{background:color-mix(in srgb,var(--color-warning) 16%,white);color:#935600}.status-canceled,.status-expired{background:#e5e7eb;color:#4b5563}@media(max-width:1100px){.package-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:800px){.brand-block-redesigned img,.brand-block-redesigned .brand-mark{height:70px}.topbar-brand-title h1{font-size:21px}.package-grid{grid-template-columns:1fr}.package-card p{min-height:0}.evidence-grid{grid-template-columns:1fr}.criterion-chip{min-width:calc(50% - 4px)}}
