:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-display:"SF Pro Display", "SF Pro Text", "Manrope", "Inter", "Segoe UI", sans-serif;--deep-navy:#222a29;--graphite:#3b4341;--steel-blue:#83a89c;--off-white:#f4f6f2;--canvas-bottom:#e9ede9;--light-stone:#e5e9e4;--precision-orange:#d2885c;--accent-primary:#007aff;--accent-primary-strong:#17324d;--accent-primary-tint:#007aff1a;--teal-signal:#76a397;--teal-soft:#d2dfd9;--shell-white:#fbfcf9;--panel-bg:#fbfcf9e0;--panel-border:#d4ddd8b8;--subtle-text:#798480;--shadow:0 12px 28px #222a290f;--shadow-soft:0 1px 1px #222a290a, 0 18px 34px #222a290f;--radius-xs:14px;--radius-sm:17px;--radius-md:20px;--radius-lg:28px;--radius-xl:30px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:20px;--space-xl:28px;--space-2xl:32px;font-family:SF Pro Text,SF Pro Display,Inter,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{color:var(--graphite);background:linear-gradient(180deg, var(--off-white) 0%, var(--canvas-bottom) 100%);margin:0;font-family:inherit}button,input,textarea,select{font:inherit}.app-shell{min-height:100vh;padding:20px 20px 112px;position:relative}.app-backdrop{pointer-events:none;background:linear-gradient(#fbfcf985,#fbfcf900);position:fixed;inset:0}.app-frame,.app-header,.workspace,.tab-rail,.tab-bar{z-index:1;position:relative}.app-frame{width:100%;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fbfcf99e;border:1px solid #d4ddd89e;border-radius:30px;margin:0 auto;padding:20px}.auth-frame{max-width:1520px;min-height:calc(100vh - 40px);padding:28px 34px 36px}.app-header{margin:0 0 12px}.app-header-inner{justify-content:space-between;align-items:center;gap:14px;display:flex}.app-brand-lockup{align-items:center;gap:12px;display:flex}.app-brand-lockup .eyebrow{margin:0 0 2px}.header-kicker{color:var(--subtle-text);margin:0;font-size:.84rem;line-height:1.3}.header-actions{align-items:center;gap:8px;display:flex}.header-action-button{border:1px solid var(--panel-border);border-radius:var(--radius-xs);width:36px;height:36px;color:var(--deep-navy);cursor:pointer;background:#fbfcf9db;justify-content:center;align-items:center;transition:background .12s,transform .12s;display:inline-flex}.header-action-button:hover{background:var(--shell-white);transform:translateY(-1px)}.header-action-button svg{width:18px;height:18px}.header-action-button.accent{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.header-action-button.accent:hover{background:#006bd6}.brand-lockup{align-items:center;gap:14px;display:flex}.compact-brand{margin-bottom:6px}.brand-icon{border-radius:var(--radius-xs);object-fit:cover;width:40px;height:40px;box-shadow:0 4px 12px #222a291a}.brand-icon.compact{border-radius:var(--radius-xs);width:40px;height:40px}.auth-brand-inline .brand-icon.compact,.auth-brand-inline .brand-icon{border-radius:26px;width:84px;height:84px}.brand-text{min-width:0}.header-meta{align-items:stretch;gap:10px;display:flex}.header-chip{background:#ffffffbd;border:1px solid #17324d14;border-radius:14px;flex-direction:column;gap:4px;min-width:128px;padding:10px 12px;display:flex}.header-chip span{color:var(--subtle-text);text-transform:uppercase;letter-spacing:0;font-size:.78rem;font-weight:600}.header-chip strong{color:var(--deep-navy);font-size:1rem}.eyebrow{color:var(--steel-blue);letter-spacing:0;text-transform:uppercase;margin:0 0 6px;font-size:.75rem;font-weight:700}.auth-brand-inline .eyebrow{letter-spacing:0;margin:0;font-size:1rem}.app-header h1{color:var(--deep-navy);font-family:var(--font-display);margin:0;font-size:clamp(1.5rem,2vw,2.1rem);line-height:1.08}.lede{max-width:74rem;color:var(--subtle-text);margin:0;font-size:clamp(1.2rem,2vw,1.65rem);line-height:1.45}.auth-welcome-screen{grid-template-columns:1fr;align-content:start;align-items:start;gap:26px;min-height:calc(100vh - 120px);display:grid}.auth-welcome-hero{align-content:start;gap:22px;min-width:0;max-width:1400px;padding:10px 2px 0;display:grid}.auth-brand-inline{align-items:center;gap:18px;display:flex}.auth-welcome-hero h2{color:var(--deep-navy);font-family:var(--font-display);letter-spacing:0;gap:6px;max-width:11ch;margin:0;font-size:clamp(4rem,7vw,6.8rem);line-height:.9;display:grid}.auth-welcome-hero h2 span{color:var(--deep-navy);font-weight:700}.auth-welcome-hero h2 strong{font-weight:800}.auth-start-button{width:fit-content;min-width:260px;min-height:74px;padding:16px 30px;font-size:1.05rem;font-weight:700}.auth-actions{flex-wrap:wrap;align-items:center}.auth-secondary-button{min-height:58px;padding-inline:24px}.auth-helper-copy,.auth-footnote{color:var(--subtle-text);margin:0;font-size:.92rem;line-height:1.55}.auth-footnote strong{color:var(--deep-navy)}.home-sections{flex-direction:column;gap:22px;display:flex}.home-section{flex-direction:column;gap:10px;display:flex}.home-section-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.home-section-title{color:var(--steel-blue);letter-spacing:0;text-transform:uppercase;margin:0;font-size:.8rem;font-weight:700}.home-section-caption{color:var(--subtle-text);text-align:right;font-size:.82rem;line-height:1.35}.testing-checklist{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.testing-step{border:1px solid var(--panel-border);border-radius:var(--radius-lg);background:var(--shell-white);min-height:104px;box-shadow:var(--shadow);color:inherit;cursor:pointer;font:inherit;text-align:left;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px;transition:border-color .12s,box-shadow .12s,transform .12s;display:flex}.testing-step:hover{box-shadow:var(--shadow-soft);border-color:#83a89c70;transform:translateY(-1px)}.testing-step>span:first-child{gap:5px;min-width:0;display:grid}.testing-step strong{color:var(--deep-navy);font-size:.95rem;line-height:1.25}.testing-step small{color:var(--subtle-text);font-size:.8rem;line-height:1.42}.home-content-card{border-radius:var(--radius-lg);background:var(--shell-white);border:1px solid var(--panel-border);box-shadow:var(--shadow);cursor:pointer;text-align:left;justify-content:space-between;align-items:center;gap:14px;width:100%;padding:18px 20px;transition:box-shadow .12s,transform .12s;display:flex}.home-content-card:hover{box-shadow:var(--shadow-soft);transform:translateY(-1px)}.home-card-body{flex:1;min-width:0}.home-card-title{color:var(--deep-navy);font-family:var(--font-display);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:1.02rem;font-weight:700;overflow:hidden}.home-card-subtitle{color:var(--steel-blue);white-space:nowrap;text-overflow:ellipsis;margin:3px 0 0;font-size:.88rem;line-height:1.35;overflow:hidden}.home-card-meta{color:var(--subtle-text);margin:2px 0 0;font-size:.8rem}.home-card-chevron{color:var(--steel-blue);opacity:.5;flex-shrink:0}.home-setup-card{border-radius:var(--radius-lg);background:#d2dfd957;border:1px solid #83a89c38;gap:10px;padding:16px 18px;display:grid}.home-setup-card p{color:var(--subtle-text);margin:0;font-size:.9rem;line-height:1.45}.layout-grid{grid-template-columns:228px minmax(0,1fr);gap:16px;display:grid}.tab-rail{border:1px solid var(--panel-border);background:var(--panel-bg);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:var(--radius-lg);flex-direction:column;gap:8px;height:fit-content;padding:12px;display:flex;position:sticky;top:20px}.tab-nav-group{gap:4px;display:grid}.tab-button{border-radius:var(--radius-md);width:100%;color:var(--deep-navy);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:12px 14px;transition:background .12s,transform .12s,color .12s;display:flex}.tab-button:hover{background:#d2dfd96b;transform:translateY(-1px)}.tab-button.active{background:var(--light-stone);color:var(--deep-navy)}.tab-subnav{border-left:1px solid #79848038;gap:4px;margin:-1px 0 4px 42px;padding-left:14px;display:grid}.tab-subitem{border-radius:var(--radius-sm);color:var(--subtle-text);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;padding:7px 8px;font-size:.78rem;font-weight:650;line-height:1.25}.tab-subitem:hover,.tab-subitem.active{color:var(--deep-navy);background:#e5e9e4e0}.tab-icon{border-radius:var(--radius-xs);background:#e5e9e4db;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.tab-icon svg{width:16px;height:16px}.workspace{min-width:0}.screen{flex-direction:column;gap:14px;display:flex}.report-sub-nav{border-radius:var(--radius-xl);border:1px solid var(--panel-border);background:var(--panel-bg);width:fit-content;max-width:100%;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);align-items:center;gap:6px;padding:6px;display:none;overflow-x:auto}.sub-nav-button{border-radius:var(--radius-md);color:var(--subtle-text);white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:10px 14px;font-size:.92rem;font-weight:600;line-height:1.2;transition:background .12s,color .12s,transform .12s,box-shadow .12s}.sub-nav-button:hover{color:var(--deep-navy);background:#d2dfd96b}.sub-nav-button:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.sub-nav-button.active{background:var(--light-stone);color:var(--deep-navy);box-shadow:inset 0 0 0 1px #d4ddd8c7}.screen-header h2{color:var(--deep-navy);font-family:var(--font-display);margin:0;font-size:1.45rem}.screen-header p{color:var(--subtle-text);max-width:54rem;margin:6px 0 0;line-height:1.45}.stack{flex-direction:column;gap:10px;display:flex}.content-grid{gap:12px;display:grid}.content-grid.two-up{grid-template-columns:repeat(2,minmax(0,1fr))}.panel,.list-card,.info-block{border:1px solid var(--panel-border);background:var(--panel-bg);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.panel{border-radius:var(--radius-lg);padding:18px}.analysis-workspace{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;display:grid}.settings-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:16px;display:grid}.settings-column{flex-direction:column;gap:16px;min-width:0;display:flex}.panel-title{font-family:var(--font-display);margin:0 0 10px;font-size:.98rem}.list-card{border-radius:var(--radius-lg);padding:16px}.list-row-header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.list-row-header h3,.info-block h4,.status-copy h4{margin:0;font-size:1rem}.list-row-header p,.info-block p,.status-copy p{color:var(--subtle-text);margin:4px 0 0;line-height:1.45}.info-block{border-radius:var(--radius-md);padding:14px}.gemini-primary-route{background:#eef8f3d1;border-color:#2d7d5a47}.advanced-ai-provider{border:1px solid var(--panel-border);border-radius:var(--radius-md);background:#ffffff80;overflow:hidden}.advanced-ai-provider summary{cursor:pointer;color:var(--accent-strong);padding:12px 14px;font-weight:700;list-style:none}.advanced-ai-provider summary::-webkit-details-marker{display:none}.advanced-ai-provider summary:after{content:"⌄";float:right;color:var(--subtle-text);transition:transform .12s}.advanced-ai-provider[open] summary:after{transform:rotate(180deg)}.advanced-ai-provider .info-block{box-shadow:none;margin:0 12px 12px}.compact-steps{color:var(--subtle-text);margin:10px 0 0;padding-left:1.2rem;line-height:1.45}.compact-steps li+li{margin-top:4px}.status-row{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.status-copy small,.panel-detail{color:var(--subtle-text);line-height:1.5}.panel-detail{margin:0}.meta-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px 16px;margin-top:12px;display:grid}.analysis-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.generate-flow{grid-template-columns:1fr}.assistant-panel{border:1px solid var(--panel-border);border-radius:var(--radius-lg);background:var(--panel-bg);box-shadow:var(--shadow);gap:12px;padding:16px;display:grid}.assistant-panel-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.assistant-panel-header h4{color:var(--deep-navy);font-family:var(--font-display);margin:0;font-size:1.02rem}.assistant-panel-header p{color:var(--subtle-text);margin:4px 0 0;font-size:.88rem;line-height:1.45}.assistant-compose-card{border-radius:var(--radius-lg);border:1px solid var(--panel-border);background:#f4f6f2b8;gap:12px;padding:16px;display:grid}.assistant-compose-intro{color:var(--graphite);margin:0;font-size:.9rem;line-height:1.5}.question-shortcuts{flex-wrap:wrap;gap:8px;display:flex}.question-shortcut{border:1px solid var(--panel-border);background:var(--shell-white);color:var(--accent-primary-strong);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:.84rem;transition:background .12s,border-color .12s}.question-shortcut:hover{background:#d2dfd980;border-color:#83a89c75}.assistant-thread{gap:10px;max-height:280px;padding-right:4px;display:grid;overflow:auto}.assistant-message{border-radius:var(--radius-md);border:1px solid var(--panel-border);max-width:92%;padding:12px 13px}.assistant-message p{color:var(--graphite);margin:0;line-height:1.5}.assistant-message-assistant{background:var(--shell-white);justify-self:start}.assistant-message-user{border-color:var(--panel-border);background:#e5e9e4db;justify-self:end}.assistant-message-thinking{opacity:.6}.assistant-message-thinking p{font-style:italic}.assistant-missing-info{border-radius:var(--radius-md);background:#d2dfd957;border:1px solid #83a89c47;gap:6px;padding:12px 13px;display:grid}.assistant-missing-info>span{color:var(--deep-navy);letter-spacing:0;text-transform:uppercase;font-size:.76rem;font-weight:700}.assistant-missing-info p,.ask-missing-info p{color:var(--subtle-text);margin:0;font-size:.86rem;line-height:1.45}.include-button{color:var(--steel-blue);letter-spacing:0;cursor:pointer;background:0 0;border:1px solid #1f3d5c38;border-radius:20px;margin-top:8px;padding:4px 10px;font-size:.76rem;font-weight:600;transition:background .12s,color .12s,border-color .12s;display:inline-block}.include-button:hover:not(:disabled){color:var(--deep-navy);background:#1f3d5c0f;border-color:#1f3d5c61}.include-button.included{color:#1a6632;background:#228b3c24;border-color:#228b3c61}.include-button:disabled{opacity:.38;cursor:not-allowed}.assistant-selection-summary{color:var(--accent-primary);margin:0;font-size:.84rem;font-weight:600}.field{flex-direction:column;gap:8px;display:flex}.field span{color:var(--deep-navy);font-size:.84rem;font-weight:600}.field select,.field input[type=text],.field textarea,.field input[type=file]{border:1px solid var(--panel-border);border-radius:var(--radius-md);background:var(--shell-white);width:100%;color:var(--graphite);padding:13px 14px}.field textarea{resize:vertical;min-height:140px;line-height:1.5}.field select:focus,.field input[type=text]:focus,.field input[type=password]:focus,.field textarea:focus,.field input[type=file]:focus{outline:3px solid var(--accent-primary-tint);outline-offset:1px}.field-hint{color:var(--subtle-text);font-size:.8rem;line-height:1.4}.setup-steps{gap:8px;display:grid}.setup-step{border:1px solid var(--panel-border);border-radius:var(--radius-md);background:#ffffff94;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:12px;display:grid}.setup-step p{color:var(--subtle-text);margin:3px 0 0;font-size:.86rem;line-height:1.42}.setup-step-index{background:var(--accent-primary);color:#fff;border-radius:999px;justify-content:center;align-items:center;width:24px;height:24px;font-size:.8rem;font-weight:800;display:inline-flex}.selected-files,.action-row{flex-wrap:wrap;gap:8px;display:flex}.subtle-action-row{justify-content:flex-end;display:flex}.status-banner{border-radius:var(--radius-md);padding:11px 12px;font-size:.92rem;line-height:1.45}.current-assessment-banner{gap:4px;display:grid}.current-assessment-banner strong{color:inherit;font-size:.94rem}.case-workbench{border-radius:var(--radius-lg);background:linear-gradient(135deg, #fbfcf9f0, #d2dfd970), var(--panel-bg);box-shadow:var(--shadow);border:1px solid #83a89c42;gap:14px;padding:16px;display:grid}.case-workbench-header{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.case-workbench-header h3{color:var(--deep-navy);font-family:var(--font-display);margin:4px 0 0;font-size:1.1rem;line-height:1.2}.workbench-flow{color:var(--subtle-text);align-items:center;gap:7px;font-size:.78rem;font-weight:700;display:flex}.workbench-flow span{align-items:center;gap:7px;display:inline-flex}.workbench-flow span+span:before{content:"";background:#7984806b;width:18px;height:1px}.workbench-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.workbench-step{border-radius:var(--radius-md);min-width:0;min-height:118px;color:var(--graphite);cursor:pointer;text-align:left;background:#fbfcf9b8;border:1px solid #d4ddd8db;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;padding:13px;transition:background .14s,border-color .14s,transform .14s;display:grid}.workbench-step:hover{background:var(--shell-white);border-color:#83a89c70;transform:translateY(-1px)}.workbench-step.active{background:#007aff14;border-color:#007aff52}.workbench-marker{background:var(--subtle-text);border-radius:999px;width:10px;height:10px;margin-top:4px;box-shadow:0 0 0 4px #7984801a}.workbench-marker.success{background:#266e4d;box-shadow:0 0 0 4px #266e4d1f}.workbench-marker.warning{background:var(--precision-orange);box-shadow:0 0 0 4px #d2885c29}.workbench-marker.info{background:var(--steel-blue);box-shadow:0 0 0 4px #83a89c29}.workbench-step-copy{gap:5px;min-width:0;display:grid}.workbench-step-copy strong{color:var(--deep-navy);font-size:.92rem}.workbench-step-copy span{color:var(--subtle-text);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.82rem;line-height:1.35;display:-webkit-box;overflow:hidden}.workbench-step-action{color:var(--accent-primary);grid-column:2;align-self:end;font-size:.82rem;font-weight:700}.status-banner.error{color:#8b3012;background:#8c30331f;border:1px solid #8c30332e}.status-banner.warning{color:#8b5634;background:#d2885c29;border:1px solid #d2885c33}.status-banner.info{color:var(--deep-navy);background:#83a89c24;border:1px solid #83a89c38}.status-banner.success{color:#266e4d;background:#266e4d1f;border:1px solid #266e4d2e}.draft-traceability-card{border-radius:var(--radius-sm);background:#1f3d5c0d;border:1px solid #1f3d5c1f;gap:12px;padding:13px 14px;display:grid}.draft-traceability-header{gap:4px;display:grid}.draft-traceability-label,.draft-traceability-item-label{letter-spacing:0;text-transform:uppercase;color:var(--deep-navy);margin:0;font-size:.72rem;font-weight:700}.draft-traceability-intro,.draft-traceability-item-body,.draft-traceability-detail,.draft-traceability-note{color:var(--graphite);margin:0;font-size:.9rem;line-height:1.45}.draft-traceability-grid{gap:10px;display:grid}.draft-traceability-item{background:#ffffffad;border:1px solid #17324d14;border-radius:12px;gap:4px;padding:10px 12px;display:grid}.draft-traceability-detail,.draft-traceability-note{border-top:1px solid #17324d14;padding-top:10px}.draft-revision-section{gap:12px;display:grid}.draft-revision-header{gap:4px;display:grid}.ai-value-note{border-radius:var(--radius-sm);background:#1f3d5c0f;border:1px solid #1f3d5c24;gap:3px;padding:12px 13px;display:grid}.ai-value-note strong{color:var(--deep-navy);font-size:.9rem}.ai-value-note span{color:var(--subtle-text);font-size:.84rem;line-height:1.45}.meta-row{grid-template-columns:108px 1fr;align-items:start;gap:12px;display:grid}.meta-row.compact{grid-template-columns:88px 1fr}.meta-row span{color:var(--subtle-text);font-size:.84rem}.meta-row strong{font-size:.95rem;font-weight:500}.status-pill{white-space:nowrap;border-radius:999px;align-items:center;padding:5px 10px;font-size:.76rem;font-weight:700;display:inline-flex}.status-pill.info{color:var(--deep-navy);background:#83a89c24}.status-pill.success{color:#266e4d;background:#266e4d1f}.status-pill.warning{color:#8b5634;background:#d2885c29}.status-pill.error{color:#8b3012;background:#8c303324}.selected-card{border-color:#83a89c61;border-left:3px solid var(--teal-signal);background:#e5e9e4ad;box-shadow:0 18px 40px #222a2912,0 0 0 1px #83a89c38}.report-type-card{position:relative;overflow:hidden}.report-type-card:before{content:"";background:var(--report-type-accent,var(--teal-signal));opacity:.82;width:6px;position:absolute;inset:0 auto 0 0}.report-type-card>*{position:relative}.report-type-card .meta-grid .meta-row:first-child strong{background:var(--report-type-chip-bg,#83a89c24);width:fit-content;max-width:100%;color:var(--report-type-text,var(--deep-navy));border-radius:999px;align-items:center;padding:4px 9px;font-weight:700;line-height:1.2;display:inline-flex}.report-type-card.selected-card{background:linear-gradient(90deg, var(--report-type-bg,#e5e9e4ad), #fbfcf9f0);border-color:var(--report-type-border,#83a89c61);border-left:0}.draft-folder-list{gap:10px;display:grid}.draft-folder{border:1px solid var(--panel-border);border-radius:var(--radius-md);background:#fbfcf9d1;overflow:hidden}.draft-folder-summary{cursor:pointer;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 14px;list-style:none;display:grid}.draft-folder-summary::-webkit-details-marker{display:none}.draft-folder-summary:after{content:"⌄";color:var(--subtle-text);grid-column:3;justify-self:center;font-weight:700;transition:transform .12s}.draft-folder[open] .draft-folder-summary:after{transform:rotate(180deg)}.draft-folder-summary strong{font-size:.98rem;display:block}.draft-folder-summary small{color:var(--subtle-text);margin-top:3px;line-height:1.35;display:block}.draft-folder-marker{background:var(--report-type-accent,var(--teal-signal));border-radius:999px;width:10px;height:28px}.saved-draft-list{gap:8px;padding:0 10px 10px;display:grid}.saved-draft-card{border:1px solid var(--panel-border);border-radius:var(--radius-md);background:var(--shell-white);position:relative;overflow:hidden}.saved-draft-card.selected-card{border-color:var(--report-type-border,#83a89c61);background:linear-gradient(90deg, var(--report-type-bg,#e5e9e480), #fbfcf9f5);border-left:0;box-shadow:0 12px 28px #222a290f}.saved-draft-main{grid-template-columns:minmax(180px,1.6fr) minmax(120px,.9fr) minmax(120px,.8fr) minmax(120px,.9fr) minmax(80px,.55fr) auto;align-items:center;gap:10px;padding:12px 12px 12px 18px;display:grid;position:relative}.saved-draft-title-block{min-width:0}.saved-draft-title-block h3{margin:0;font-size:.95rem;line-height:1.25}.saved-draft-title-block p,.saved-draft-meta{color:var(--subtle-text);margin:3px 0 0;font-size:.86rem;line-height:1.35}.saved-draft-actions{justify-content:flex-end;gap:7px;display:flex}.saved-draft-actions .primary-button,.saved-draft-actions .danger-button{padding:8px 11px;font-size:.86rem}.saved-draft-actions .danger-button{background:0 0}.report-type-survey{--report-type-accent:#76a397;--report-type-bg:#d2dfd966;--report-type-border:#76a3976b;--report-type-chip-bg:#d2dfd994;--report-type-text:#2e5c51}.report-type-scope{--report-type-accent:#83a89c;--report-type-bg:#e5e9e494;--report-type-border:#83a89c5c;--report-type-chip-bg:#e5e9e4db;--report-type-text:#3b5f58}.report-type-costs{--report-type-accent:#d2885c;--report-type-bg:#d2885c24;--report-type-border:#d2885c4d;--report-type-chip-bg:#d2885c2e;--report-type-text:#8b5634}.report-type-work-order{--report-type-accent:#007aff;--report-type-bg:#007aff14;--report-type-border:#007aff38;--report-type-chip-bg:#007aff1f;--report-type-text:#005eb8}.report-type-technical{--report-type-accent:#61706c;--report-type-bg:#61706c1a;--report-type-border:#61706c3d;--report-type-chip-bg:#61706c1f;--report-type-text:#3b4341}.report-type-specification{--report-type-accent:#5f7f91;--report-type-bg:#5f7f911a;--report-type-border:#5f7f913d;--report-type-chip-bg:#5f7f9121;--report-type-text:#335568}.report-type-defect{--report-type-accent:#8c3033;--report-type-bg:#8c303314;--report-type-border:#8c303338;--report-type-chip-bg:#8c30331f;--report-type-text:#7b292c}.primary-button,.secondary-button{border-radius:var(--radius-sm);cursor:pointer;padding:11px 16px;transition:transform .12s,background .12s,border-color .12s}.text-button{color:var(--subtle-text);cursor:pointer;text-underline-offset:.16em;background:0 0;border:0;padding:4px 0;font-size:.88rem;text-decoration:underline}.primary-button{border:1px solid var(--accent-primary);background:var(--accent-primary);color:#fff}.secondary-button{border:1px solid var(--panel-border);background:var(--shell-white);color:var(--deep-navy)}.external-action{align-items:center;text-decoration:none;display:inline-flex}.primary-button:hover,.secondary-button:hover{transform:translateY(-1px)}.primary-button:disabled,.secondary-button:disabled,.danger-button:disabled,.text-button:disabled{cursor:not-allowed;opacity:.48;transform:none}.primary-button:disabled{color:#222a298f;background:#79848038;border-color:#79848047}.danger-button{border-radius:var(--radius-sm);cursor:pointer;background:var(--shell-white);color:#8b3012;border:1px solid #8c303333;padding:11px 16px;transition:transform .12s,background .12s,border-color .12s}.danger-button:hover{background:#8c30330f;transform:translateY(-1px)}.assessment-card-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.assessment-card-delete{margin-left:auto}.evidence-next-copy{color:var(--subtle-text);font-size:.82rem;font-weight:600}.current-chip{white-space:nowrap;color:#1a6632;-webkit-user-select:none;user-select:none;pointer-events:none;background:#228b3c1f;border:1px solid #228b3c33;border-radius:999px;align-items:center;padding:5px 11px;font-size:.78rem;font-weight:700;display:inline-flex}.clickable-card{cursor:pointer;transition:background .14s,box-shadow .14s}.clickable-card:hover:not(.selected-card){background:#1f3d5c0a}.clickable-card:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}@keyframes assessment-highlight-pulse{0%{background:#ffffffc7;box-shadow:0 0 #1f3d5c00}20%{background:#1f3d5c12;box-shadow:0 0 0 3px #1f3d5c47}80%{background:#1f3d5c08;box-shadow:0 0 0 1px #1f3d5c1f}to{background:#ffffffc7;box-shadow:0 0 #1f3d5c00}}.highlighted-card{animation:1.8s assessment-highlight-pulse}.checklist{color:var(--graphite);margin:0;padding-left:20px;line-height:1.5}.checklist li+li{margin-top:8px}.evidence-checklist{flex-direction:column;gap:6px;display:flex}.evidence-check-row{cursor:pointer;align-items:center;gap:8px;padding:4px 0;display:flex}.evidence-check-row input[type=checkbox]{cursor:pointer;flex-shrink:0;width:16px;height:16px}.evidence-check-thumbnail{object-fit:cover;background:#17324d0d;border:1px solid #17324d1f;border-radius:4px;flex-shrink:0;width:36px;height:36px}.evidence-check-icon{letter-spacing:0;text-transform:uppercase;width:36px;height:36px;color:var(--deep-navy);background:#17324d0d;border:1px solid #17324d1a;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-size:.7rem;font-weight:800;display:flex}.evidence-check-icon-pdf{color:#1f3d5c;background:#1f3d5c1a}.evidence-check-icon-image{color:#1a6632;background:#228b3c1a}.evidence-check-icon-file{color:#8a5415;background:#e889231f}.evidence-check-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--graphite);flex:1;font-size:.875rem;overflow:hidden}.evidence-check-type{color:var(--subtle-text);letter-spacing:0;background:#17324d12;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:.75rem;font-weight:600}.evidence-library-header{align-items:flex-start;gap:12px;min-width:0;display:flex}.evidence-library-copy{flex:1;min-width:0}.evidence-library-copy h3{overflow-wrap:anywhere}.evidence-library-thumbnail,.evidence-library-icon{background:#17324d0d;border:1px solid #17324d1f;border-radius:12px;flex-shrink:0;width:52px;height:52px}.evidence-library-thumbnail{object-fit:cover}.output-type-fieldset{border:0;gap:10px;margin:0;padding:0;display:grid}.output-type-fieldset legend{color:var(--deep-navy);margin-bottom:8px;font-size:.84rem;font-weight:700}.output-type-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.output-type-option{border:1px solid var(--panel-border);border-radius:var(--radius-lg);background:var(--shell-white);cursor:pointer;align-items:flex-start;gap:9px;min-height:72px;padding:12px;transition:background .12s,border-color .12s,box-shadow .12s;display:flex}.output-type-option:hover,.output-type-option.selected{box-shadow:var(--shadow);background:#d2dfd957;border-color:#83a89c70}.output-type-option input{margin-top:3px}.output-type-option span{gap:3px;min-width:0;display:grid}.output-type-option strong{color:var(--deep-navy);font-size:.88rem;line-height:1.25}.output-type-option small{color:var(--subtle-text);font-size:.76rem;line-height:1.35}.evidence-library-icon{color:var(--deep-navy);letter-spacing:0;text-transform:uppercase;justify-content:center;align-items:center;font-size:.72rem;font-weight:800;display:inline-flex}.evidence-library-icon-pdf{color:#1f3d5c;background:#1f3d5c1a}.evidence-library-icon-image{color:#1a6632;background:#228b3c1a}.evidence-library-icon-document{color:#8a5415;background:#e889231f}.next-step-nudge{border-radius:var(--radius-lg);background:#d2dfd957;border:1px solid #83a89c3d;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.next-step-nudge-text{flex-direction:column;gap:2px;min-width:0;display:flex}.next-step-nudge-text strong{color:var(--deep-navy);font-size:.9rem}.next-step-nudge-text span{color:var(--subtle-text);font-size:.825rem;line-height:1.4}.empty-state{border-radius:var(--radius-md);background:#fbfcf994;border:1px dashed #79848047;padding:14px}.empty-state h4{color:var(--deep-navy);margin:0}.empty-state p{color:var(--subtle-text);margin:6px 0 0;line-height:1.45}.markdown-output{color:var(--graphite);line-height:1.65}.compact-markdown{font-size:.92rem}.markdown-output h1,.markdown-output h2,.markdown-output h3{color:var(--deep-navy);line-height:1.15}.markdown-output p,.markdown-output li{color:var(--graphite)}.markdown-output ul,.markdown-output ol{padding-left:22px}.markdown-output li{margin:7px 0;padding-left:2px}.markdown-output li::marker{color:var(--deep-navy);font-size:.9em}.markdown-output li strong{color:var(--deep-navy);font-weight:700}.report-reader-body h2,.report-reader-body h3{border-top:1px solid #17324d1a;margin-top:1.55em;padding-top:.85em}.report-reader-body h2:first-child,.report-reader-body h3:first-child{border-top:0;margin-top:0;padding-top:0}.markdown-output>:first-child{margin-top:0}.outputs-grid{align-items:start}.report-reader{flex-direction:column;gap:16px;display:flex}.report-document-preview{border-radius:var(--radius-md);background:linear-gradient(180deg, var(--shell-white), #fff);border:1px solid #d4ddd8e0;width:min(100%,920px);margin:0 auto;padding:clamp(22px,4vw,42px);position:relative;box-shadow:inset 0 1px #ffffffe6,0 20px 44px #222a291a}.report-document-preview:before{content:"";border-radius:var(--radius-xs);pointer-events:none;border:1px solid #d4ddd87a;position:absolute;inset:14px}.report-document-preview>*{position:relative}.home-report-summary{flex-direction:column;gap:8px;display:flex}.report-reader-title{color:var(--deep-navy);margin:0;font-size:1.15rem}.report-reader-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.report-header-copy{min-width:0}.report-reader-subtitle{color:var(--deep-navy);margin:6px 0 4px;font-size:.96rem;font-weight:600}.report-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.report-meta-summary{color:var(--subtle-text);border-top:1px solid #17324d14;flex-wrap:wrap;gap:8px 12px;padding:12px 0 0;font-size:.9rem;line-height:1.45;display:flex}.report-meta-summary strong{color:var(--deep-navy);font-weight:600}.report-document-meta{color:var(--steel-blue);letter-spacing:0;text-transform:uppercase;flex-wrap:wrap;gap:8px 12px;font-size:.78rem;font-weight:700;display:flex}.report-reader-body{border-top:1px solid #17324d14;padding:18px 0 0}@keyframes spinner-rotate{to{transform:rotate(360deg)}}.generation-indicator{background:#1f3d5c0d;border:1px solid #1f3d5c1a;border-radius:14px;align-items:center;gap:14px;padding:14px 18px;display:flex}.generation-spinner{width:22px;height:22px;color:var(--accent-primary);flex-shrink:0;animation:1s linear infinite spinner-rotate}.generation-spinner svg{width:22px;height:22px;display:block}.generation-copy{flex-direction:column;gap:3px;display:flex}.generation-copy strong{color:var(--deep-navy);font-size:.92rem;font-weight:600}.generation-copy span{color:var(--subtle-text);font-size:.84rem}.tab-bar{display:none}.ask-view{flex-direction:column;height:calc(100dvh - 360px);display:flex;overflow:hidden}.ask-thread-area{scroll-behavior:smooth;flex:1;padding:24px 28px 12px;overflow-y:auto}.ask-thread{flex-direction:column;gap:16px;max-width:760px;margin:0 auto;padding-bottom:8px;display:flex}.ask-thread .assistant-message p,.ask-thread .assistant-message li{font-size:1rem;line-height:1.65}.ask-missing-info{border-radius:var(--radius-md);color:var(--graphite);background:#d2dfd94d;border:1px solid #83a89c3d;padding:12px 14px;font-size:.88rem}.ask-missing-info span{color:var(--deep-navy);margin-bottom:6px;font-weight:700;display:block}.ask-suggested-brief{border-radius:var(--radius-md);border:1px solid var(--panel-border);background:var(--shell-white);color:var(--graphite);padding:12px 14px;font-size:.88rem}.ask-suggested-brief strong{color:var(--deep-navy);margin-bottom:4px;display:block}.ask-evidence-zone{border-top:1px solid var(--panel-border);background:#f4f6f2f5;flex-shrink:0}.ask-evidence-bar{cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:10px 20px;font-family:inherit;transition:background .12s;display:flex}.ask-evidence-bar:hover{background:#d2dfd96b}.ask-evidence-label{letter-spacing:0;text-transform:uppercase;color:var(--subtle-text);flex-shrink:0;font-size:11px;font-weight:700}.ask-evidence-chips{flex:1;gap:6px;min-width:0;display:flex;overflow:hidden}.ask-evidence-chip{background:var(--shell-white);border:1px solid var(--panel-border);color:var(--graphite);white-space:nowrap;cursor:pointer;text-overflow:ellipsis;border-radius:20px;align-items:center;max-width:160px;padding:3px 10px;font-family:inherit;font-size:12px;font-weight:600;transition:background .12s;display:inline-flex;overflow:hidden}.ask-evidence-chip.selected{color:var(--deep-navy);background:#d2dfd98a;border-color:#83a89c70}.ask-evidence-chip:hover{background:#d2dfd975}.ask-evidence-count{color:var(--subtle-text);flex-shrink:0;font-size:12px;font-weight:600}.ask-evidence-toggle{color:var(--subtle-text);flex-shrink:0;font-size:11px}.ask-evidence-panel{border-top:1px solid var(--panel-border);background:#f4f6f2f5;flex-direction:column;gap:8px;max-height:200px;padding:12px 20px;display:flex;overflow-y:auto}.ask-input-bar{border-top:1px solid var(--panel-border);background:linear-gradient(#e5e9e4b8,#fbfcf9fa);flex-direction:column;flex-shrink:0;gap:10px;padding:12px 20px 16px;display:flex;box-shadow:0 -14px 28px #222a290f}.ask-ai-callout{justify-content:space-between;align-items:baseline;gap:14px;padding:4px 0 2px;display:flex}.ask-ai-callout strong{color:var(--deep-navy);font-size:.96rem}.ask-ai-callout span{color:var(--subtle-text);text-align:right;max-width:620px;font-size:.82rem;line-height:1.4}.ask-input-row{align-items:flex-end;gap:10px;display:flex}.ask-input-field{border-radius:var(--radius-md);border:1.5px solid var(--panel-border);background:var(--shell-white);min-height:44px;max-height:120px;color:var(--deep-navy);resize:none;flex:1;padding:10px 14px;font-family:inherit;font-size:.95rem;line-height:1.5;transition:border-color .14s}.ask-input-field::placeholder{color:var(--subtle-text)}.ask-input-field:focus{background:#fff;border-color:#007aff8c;outline:none}.ask-input-actions{flex-shrink:0;align-items:flex-end;gap:8px;display:flex}@media (width<=960px){.app-shell{padding:20px 16px 104px}.app-frame{border-radius:22px;padding:14px}.auth-frame{max-width:860px;min-height:auto;padding:18px}.app-header{margin-bottom:10px}.auth-welcome-screen{grid-template-columns:1fr;gap:18px;min-height:auto}.auth-welcome-hero{gap:16px;max-width:100%}.auth-welcome-hero h2{max-width:9ch;font-size:clamp(2.4rem,9vw,4rem)}.lede{max-width:100%;font-size:1rem}.auth-brand-inline .brand-icon.compact,.auth-brand-inline .brand-icon{border-radius:16px;width:64px;height:64px}.auth-brand-inline .eyebrow{letter-spacing:0;font-size:.84rem}.auth-start-button{min-width:220px;min-height:64px;padding:14px 22px}.header-meta{flex-wrap:wrap}.layout-grid{grid-template-columns:1fr}.tab-rail{display:none}.content-grid.two-up,.testing-checklist{grid-template-columns:1fr}.home-section-heading{flex-direction:column;align-items:flex-start;gap:4px}.home-section-caption{text-align:left}.report-sub-nav{width:100%;display:inline-flex}.sub-nav-button{text-align:center;flex:1 1 0;justify-content:center}.analysis-workspace,.analysis-grid,.settings-layout{grid-template-columns:1fr}.case-workbench{padding:14px}.case-workbench-header{flex-direction:column;align-items:flex-start;gap:10px}.workbench-flow{justify-content:space-between;width:100%}.workbench-grid{grid-template-columns:1fr 1fr}.workbench-step{min-height:112px;padding:12px}.report-reader-header{flex-direction:column}.report-actions{justify-content:flex-start}.saved-draft-main{grid-template-columns:minmax(0,1fr) auto}.saved-draft-title-block,.saved-draft-meta{grid-column:1/-1}.saved-draft-actions{grid-column:1/-1;justify-content:flex-start}.tab-bar{z-index:2;border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffe0;border-radius:20px;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:8px;display:grid;position:fixed;bottom:12px;left:12px;right:12px;box-shadow:0 24px 40px #17324d29}.tab-button.mobile{text-align:center;white-space:normal;text-wrap:balance;letter-spacing:0;flex-direction:column;justify-content:center;gap:4px;min-height:58px;padding:8px 2px;font-size:.68rem;font-weight:500;line-height:1.2}.tab-button.mobile.active{color:var(--accent-primary);background:0 0;font-weight:700;transform:none}.tab-button.mobile .tab-icon{background:0 0;border-radius:6px;width:24px;height:24px}.tab-button.mobile .tab-icon svg{width:18px;height:18px}.tab-button.mobile.active .tab-icon{background:var(--accent-primary-tint)}.ask-view{height:auto;min-height:0;overflow:visible}.ask-thread-area{flex:none;padding:16px 20px 10px;overflow:visible}.ask-thread{gap:12px}.ask-evidence-zone,.ask-input-bar{flex-shrink:0}.ask-input-bar{padding:14px 20px calc(22px + env(safe-area-inset-bottom))}.ask-ai-callout{flex-direction:column;align-items:flex-start;gap:6px}.ask-ai-callout span{text-align:left;max-width:none}.ask-input-row{align-items:stretch}.ask-input-field{min-height:52px}.ask-input-actions .primary-button{min-height:52px;padding-inline:18px}}@media (width<=560px){.workbench-grid{grid-template-columns:1fr 1fr}.workbench-step{grid-template-columns:auto minmax(0,1fr);min-height:104px;padding:11px}.workbench-step-action{white-space:nowrap;grid-column:2;align-self:end}.workbench-flow{display:none}}.drop-zone{border-radius:var(--radius-sm);cursor:pointer;text-align:center;-webkit-user-select:none;user-select:none;background:#ffffffb8;border:1.5px dashed #1f3d5c38;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:130px;padding:22px 16px;transition:background .12s,border-color .12s;display:flex}.drop-zone:hover,.drop-zone.drag-over{background:#1f3d5c0d;border-color:#1f3d5c66}.drop-zone-icon{color:var(--steel-blue);opacity:.7}.drop-zone-icon svg{width:28px;height:28px}.drop-zone-label{color:var(--deep-navy);margin:0;font-size:.9rem;font-weight:600;line-height:1.4}.drop-zone-hint{color:var(--subtle-text);margin:0;font-size:.78rem;line-height:1.35}@media (width<=640px){.auth-frame{padding:14px}.auth-welcome-hero h2{font-size:clamp(2rem,11vw,3.1rem)}.auth-helper-copy,.auth-footnote{font-size:.84rem}.meta-row,.meta-row.compact{grid-template-columns:1fr;gap:4px}.status-row,.list-row-header{flex-direction:column}.next-step-nudge{flex-direction:column;align-items:flex-start}.ask-ai-callout{flex-direction:column;align-items:flex-start;gap:4px}.ask-ai-callout span{text-align:left;max-width:none}.output-type-options{grid-template-columns:1fr}}.pricing-line{color:var(--deep-navy);margin:0;font-size:1rem}
