:root{--navy:#172033;--blue:#244766;--gold:#b6893f;--bg:#f5f6f8;--txt:#172033;--muted:#5f6b7a;--line:#dde3ea;--panel:#fff}*{box-sizing:border-box}body{margin:0;font-family:system-ui,Segoe UI,Arial;background:var(--bg);color:var(--txt);line-height:1.45}header{background:var(--navy);color:white;padding:18px 32px;display:flex;gap:20px;align-items:center;flex-wrap:wrap}.brand{font-size:26px;font-weight:800;color:white;text-decoration:none;letter-spacing:0}.user-nav{margin-left:auto;display:flex;gap:14px;align-items:center;font-weight:700}.user-nav a{color:white;text-decoration:none;border:1px solid rgba(255,255,255,.35);border-radius:8px;padding:8px 12px}.case-module-nav{display:flex;gap:6px;align-items:center;flex-wrap:wrap;min-width:260px;max-width:720px}.case-module-nav a{color:white;text-decoration:none;border:1px solid rgba(255,255,255,.24);border-radius:8px;padding:8px 10px;font-weight:800;font-size:14px;line-height:1;background:rgba(255,255,255,.05)}.case-module-nav a:hover{background:rgba(255,255,255,.14)}.case-module-nav a.active{background:white;color:var(--navy);border-color:white}main{max-width:1180px;margin:0 auto;padding:28px}footer{background:var(--navy);color:white;padding:18px 32px;margin-top:40px}.hero,.card,.tile,.doc{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:22px;margin-bottom:18px}.hero{background:var(--panel);color:var(--txt)}button,.button{background:var(--blue);color:white;border:0;border-radius:8px;padding:11px 16px;text-decoration:none;display:inline-block;font-weight:700;cursor:pointer}.button.secondary{background:#eef2f6;color:var(--txt);border:1px solid var(--line)}.case-back{display:flex;justify-content:flex-end;width:100%;margin-bottom:18px}.case-back-row{text-align:right;width:100%;margin-bottom:18px}.login-panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;max-width:440px;margin:40px auto;padding:26px}.source-preview-link{display:block;position:relative;color:inherit;text-decoration:none}.source-preview-frame{width:100%;height:70vh;min-height:520px;border:1px solid var(--line);border-radius:8px;background:#f8fafc;pointer-events:none}.source-preview-overlay{position:absolute;inset:0;display:flex;align-items:flex-start;justify-content:flex-end;padding:14px;background:linear-gradient(180deg,rgba(23,32,51,.18),rgba(23,32,51,0) 34%);border-radius:8px}.source-preview-overlay span{background:var(--blue);color:white;border-radius:8px;padding:10px 14px;font-weight:800}.source-preview-image{display:block;max-width:100%;max-height:75vh;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.source-preview-text{max-height:70vh}.ocr-summary{margin:0 0 12px}input,textarea,select{width:100%;padding:12px;border:1px solid #cbd4df;border-radius:8px;margin:8px 0;background:white}textarea{min-height:90px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}.tile,.doc{display:block;text-decoration:none;color:inherit}.tile small,.doc small{display:block;color:var(--muted);margin-top:6px}.columns{display:grid;grid-template-columns:1fr 1fr;gap:22px}.modules{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:20px 0}.modules span{background:#eef2f6;color:var(--txt);border:1px solid var(--line);border-radius:8px;padding:12px;text-align:center;font-weight:700}pre{white-space:pre-wrap;max-height:520px;overflow:auto;background:#f0f3f7;padding:16px;border-radius:8px}dl{display:grid;grid-template-columns:minmax(150px,220px) 1fr;gap:8px 14px}dt{font-weight:700;color:#334}dd{margin:0;overflow-wrap:anywhere}

.alert{padding:12px 14px;border-radius:12px;margin:14px 0;font-weight:700}.alert.error{background:#ffe8e8;color:#7a1111}.alert.ok{background:#e7f7ec;color:#155b2a}

.case-header{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:24px;margin-bottom:18px;display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.case-header h1{margin:0 0 8px}.case-header p{margin:0;color:var(--muted);max-width:760px}.status-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.status-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:18px}.status-card small{display:block;color:var(--muted);font-weight:700;margin-bottom:8px}.status-card b{font-size:24px}.tabs{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:8px;display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.tabs a{color:var(--txt);text-decoration:none;padding:10px 12px;border-radius:6px;font-weight:700}.tabs a:hover{background:#eef2f6}.action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.action-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:8px}.action-row form{margin:0}.inline-form{margin:10px 0 0}.notice{border:1px solid #d8c28d;background:#fff9e8;border-radius:8px;padding:16px;margin-top:16px}.notice h3{margin-top:0}.empty{background:#f8fafc;border:1px dashed #cbd4df;border-radius:8px;color:var(--muted);padding:18px}.diagnostics summary{cursor:pointer;font-weight:800}.doc-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.job{border:1px solid #e0e6ef;border-radius:8px;padding:12px;margin:10px 0}.job small{display:block;color:#667;margin-top:4px}.muted{color:var(--muted)}.hidden-file{position:absolute;inline-size:1px;block-size:1px;opacity:0;pointer-events:none}.drop-zone{border:2px dashed #b7c2ce;border-radius:8px;background:#f8fafc;padding:30px;text-align:center;margin-bottom:16px}.drop-zone.drag-over{border-color:var(--blue);background:#edf4fa}.summary-grid{background:#f8fafc;border:1px solid var(--line);border-radius:8px;padding:14px;margin:14px 0}.progress-wrap{height:28px;background:#e7edf4;border-radius:8px;overflow:hidden;margin:12px 0}.progress-bar{height:100%;min-width:42px;background:var(--blue);color:white;font-weight:800;text-align:center;line-height:28px;transition:width .15s ease}.progress-list{display:grid;gap:12px}.progress-row{display:grid;grid-template-columns:150px 1fr;gap:14px;align-items:center}.progress-row .progress-wrap{margin:0}

table{width:100%;border-collapse:collapse;background:white;border-radius:12px;overflow:hidden;margin:14px 0}th,td{padding:10px;border-bottom:1px solid #e5ebf3;text-align:left;vertical-align:top}th{background:#eef3f8}.modules a.button{text-align:center}

@media(max-width:900px){.status-grid{grid-template-columns:repeat(2,1fr)}.case-header{display:block}.case-header form{margin-top:16px}}
@media(max-width:800px){.columns{grid-template-columns:1fr}main{padding:14px}dl{grid-template-columns:1fr}}
@media(max-width:560px){.status-grid{grid-template-columns:1fr}.tabs a,.button,button{width:100%;text-align:center}}

.hidden{display:none!important}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid label{display:block}.wizard-steps{list-style:none;padding:0;margin:16px 0 22px;display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.wizard-steps li{border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:12px;min-height:74px}.wizard-steps li.active{border-color:var(--blue);background:#edf4fa}.wizard-steps b,.wizard-steps span{display:block}.wizard-steps span{color:var(--muted);font-size:14px;margin-top:4px}.workflow-heading{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.workflow-heading h2{margin:0 0 6px}.status-pill{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:7px 12px;background:#eef2f6;color:var(--txt);font-weight:800}.status-pill.status-running{background:#fff7df;color:#6b4a00;border-color:#e6c76c}.status-pill.status-completed{background:#e7f7ec;color:#155b2a;border-color:#a7d8b4}.status-pill.status-failed{background:#ffe8e8;color:#7a1111;border-color:#efb0b0}.workflow-counts{grid-template-columns:repeat(5,minmax(120px,1fr));gap:10px}.workflow-counts dt{font-size:13px;color:var(--muted)}.workflow-counts dd{font-size:22px;font-weight:800}.workflow-steps{list-style:none;padding:0;margin:16px 0;display:grid;gap:10px}.workflow-step{display:grid;grid-template-columns:1.4fr 120px 1.7fr auto;gap:12px;align-items:center;border:1px solid var(--line);border-left-width:6px;border-radius:8px;background:#fff;padding:12px}.workflow-label{font-weight:800}.workflow-status{font-weight:800}.workflow-error{color:#7a1111}.workflow-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.workflow-actions form{margin:0}.workflow-actions a{font-weight:800;color:var(--blue)}.workflow-step.status-gotowe{border-left-color:#2f8f4e}.workflow-step.status-w-toku{border-left-color:#b6893f;background:#fffaf0}.workflow-step.status-blad{border-left-color:#b3261e;background:#fff6f6}.workflow-step.status-oczekuje{border-left-color:#9aa7b5;background:#f8fafc}
.workflow-controls{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.workflow-monitor-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.readiness-list{list-style:none;padding:0;margin:14px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.readiness-list li{border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:10px 12px;font-weight:800}.readiness-list li span{display:inline-block;width:24px}.readiness-list li.done{background:#e7f7ec;color:#155b2a;border-color:#a7d8b4}.readiness-list li.pending{color:#5f6b7a}.strategy-steps{display:grid;gap:16px}.strategy-steps article small{display:block;color:var(--muted);font-weight:800;text-transform:uppercase}.diagnostics{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:16px;margin-bottom:18px}.diagnostics>summary{cursor:pointer;font-weight:800}.action-grid form{margin:0}.action-grid button{width:100%}

.defense-hero{align-items:center}.defense-hero form{margin:0}.defense-dashboard{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;margin-bottom:18px}.defense-dashboard article{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:14px}.defense-dashboard small{display:block;color:var(--muted);font-weight:800}.defense-dashboard b{font-size:26px}.defense-flow{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:10px;display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:18px}.defense-flow a{display:flex;gap:8px;align-items:center;color:var(--txt);text-decoration:none;background:#f8fafc;border:1px solid var(--line);border-radius:8px;padding:10px;font-weight:800}.defense-flow span{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;border-radius:999px;background:var(--blue);color:#fff}.section-heading{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:14px}.section-heading h2{margin:0}.section-heading small,.defense-section small,.charge-card small{display:block;color:var(--muted);font-weight:800;text-transform:uppercase}.charge-list{display:grid;gap:14px}.charge-summary{border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:16px;display:grid;grid-template-columns:1.1fr 1fr;gap:16px}.charge-summary h3{margin:4px 0 8px}.charge-summary dl,.charge-card dl,.evidence-card dl{font-size:14px}.charge-summary details{grid-column:1/-1}.badge{display:inline-flex;align-items:center;border-radius:999px;background:#eef2f6;border:1px solid var(--line);padding:4px 9px;font-size:13px;font-weight:800}.mini{padding:7px 10px;font-size:13px}.defense-subsection{border-top:1px solid var(--line);padding-top:18px;margin-top:18px}.defense-subsection h3{margin-top:0}.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.split-grid>div{background:#f8fafc;border:1px solid var(--line);border-radius:8px;padding:14px}.analysis-table{overflow:auto}.analysis-table table{min-width:900px}.evidence-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.evidence-card{border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:14px}.evidence-card h4{margin:6px 0 8px}.source-box{border:1px solid var(--line);border-radius:8px;background:white;padding:12px;margin:10px 0}.source-box blockquote{border-left:4px solid var(--gold);margin:10px 0;padding:8px 12px;background:#fffaf0;color:#39404a}.timeline-list{display:grid;gap:10px}.timeline-list article{border-left:5px solid var(--blue);background:#f8fafc;border-radius:8px;padding:12px}.direction-list{display:grid;gap:10px}.direction-list details,.report-grid details{border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:12px}.direction-list summary,.report-grid summary{cursor:pointer;font-weight:800}.direction-list summary span{float:right;color:var(--muted)}.question-list li{margin-bottom:8px}.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.report-grid article{border:1px solid var(--line);border-radius:8px;background:#fff;padding:16px}.defense-warning h2{margin-top:0}
.checkbox-line{display:flex!important;gap:10px;align-items:center;background:#f8fafc;border:1px solid var(--line);border-radius:8px;padding:12px;margin-top:8px}.checkbox-line input{width:auto;margin:0}.key-documents-panel .notice,.key-readiness .notice{margin:8px 0}.inline-form button{padding:8px 10px;margin-top:6px}.key-readiness h2{text-transform:uppercase}

@media(max-width:1000px){.defense-dashboard{grid-template-columns:repeat(3,1fr)}.defense-flow{grid-template-columns:repeat(2,1fr)}.charge-summary,.split-grid,.report-grid{grid-template-columns:1fr}}
@media(max-width:900px){.wizard-steps{grid-template-columns:repeat(3,1fr)}.form-grid{grid-template-columns:1fr}.workflow-counts{grid-template-columns:1fr 1fr}.workflow-monitor-grid{grid-template-columns:1fr}.workflow-step{grid-template-columns:1fr}.workflow-actions,.workflow-actions form,.workflow-actions button{width:100%}}
@media(max-width:560px){.wizard-steps{grid-template-columns:1fr}.workflow-heading{display:block}.workflow-counts{grid-template-columns:1fr}.defense-dashboard,.defense-flow{grid-template-columns:1fr}.section-heading{display:block}}

.workflow-guide{border-left:6px solid var(--blue)}.workflow-guide .workflow-progress>.progress-wrap{margin:8px 0 12px}.workflow-guide>.workflow-progress{background:#f8fafc;border:1px solid var(--line);border-radius:8px;padding:14px}.workflow-progress>div:not(.progress-wrap){height:100%;min-height:30px;border-radius:8px;background:var(--blue);color:#fff;font-weight:800;text-align:center;line-height:30px}.workflow-next-action{font-weight:800;color:var(--txt);margin:8px 0}.workflow-step-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin-bottom:18px}.workflow-step-card{background:var(--panel);border:1px solid var(--line);border-left:6px solid #9aa7b5;border-radius:8px;padding:18px}.workflow-step-card.recommended{box-shadow:0 0 0 3px rgba(36,71,102,.12)}.workflow-step-heading{display:flex;gap:12px;align-items:flex-start}.workflow-step-heading>span{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;border-radius:999px;background:#eef2f6;border:1px solid var(--line);font-weight:900}.workflow-step-heading h2{margin:0}.workflow-step-heading small{display:block;color:var(--muted);font-weight:800;text-transform:uppercase}.workflow-step-done{border-left-color:#2f8f4e}.workflow-step-ready{border-left-color:#244766}.workflow-step-warning{border-left-color:#b6893f;background:#fffdf6}.workflow-step-blocked{border-left-color:#b3261e;background:#fff8f8}.workflow-step-pending{border-left-color:#9aa7b5;background:#f8fafc}.workflow-step-unavailable{border-left-color:#64748b;background:#f1f5f9}.workflow-bar{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:12px 14px;margin-bottom:18px}.workflow-bar summary{display:flex;gap:12px;align-items:center;cursor:pointer;font-weight:800}.workflow-bar summary small{color:var(--muted);font-weight:700}.workflow-bar summary b{margin-left:auto;background:#eef2f6;border:1px solid var(--line);border-radius:999px;padding:4px 10px}.workflow-bar-grid{display:grid;grid-template-columns:repeat(12,minmax(72px,1fr));gap:8px;margin-top:12px}.workflow-bar-step{display:grid;gap:3px;text-decoration:none;color:var(--txt);border:1px solid var(--line);border-top:5px solid #9aa7b5;border-radius:8px;background:#f8fafc;padding:8px;min-height:76px}.workflow-bar-step span{font-size:13px;font-weight:900;color:var(--muted)}.workflow-bar-step b{font-size:13px;line-height:1.2}.workflow-bar-step small{font-size:12px;color:var(--muted)}.workflow-bar-step.recommended{outline:3px solid rgba(36,71,102,.16)}.workflow-bar-step.workflow-step-done{border-top-color:#2f8f4e;background:#effaf2}.workflow-bar-step.workflow-step-ready{border-top-color:#244766;background:#f3f7fb}.workflow-bar-step.workflow-step-warning{border-top-color:#b6893f;background:#fff9e8}.workflow-bar-step.workflow-step-blocked{border-top-color:#b3261e;background:#fff0f0}.workflow-bar-step.workflow-step-pending{border-top-color:#9aa7b5}.workflow-bar-step.workflow-step-unavailable{border-top-color:#64748b}
.workflow-overview{list-style:none;padding:0;margin:16px 0 0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.workflow-overview li{border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:10px;min-height:72px;display:flex;flex-direction:column;gap:4px}.workflow-overview li b{font-size:18px;line-height:1}.workflow-overview li span{font-weight:800}.workflow-overview li.done{background:#e7f7ec;border-color:#a7d8b4}.workflow-overview li.ready{background:#f3f7fb;border-color:#cbd7e5}.workflow-overview li.pending{background:#f8fafc;border-color:#dde3ea;color:var(--muted)}.workflow-overview li.warning{background:#fff9e8;border-color:#e6c76c}.workflow-overview li.blocked{background:#fff0f0;border-color:#efb0b0}

@media(max-width:1100px){.workflow-bar-grid{grid-template-columns:repeat(6,1fr)}}@media(max-width:700px){.workflow-bar summary{display:block}.workflow-bar summary b{display:inline-block;margin:8px 0}.workflow-bar-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:420px){.workflow-bar-grid{grid-template-columns:1fr}}
@media(max-width:900px){.workflow-overview{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.workflow-overview{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){.workflow-overview{grid-template-columns:1fr}}

.case-workspace-header{align-items:stretch}.case-module-header{margin-bottom:16px}.case-module-body{display:grid;gap:16px}.module-title-row{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:0}.module-title-row h2{margin:0 0 4px}.module-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.module-grid .card{margin-bottom:0}.eyebrow{font-weight:900;text-transform:uppercase;color:var(--blue)!important;font-size:13px;margin-bottom:6px!important}.case-status-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:14px;color:var(--muted);font-weight:700}.primary-actions{display:grid;gap:10px;min-width:220px;align-content:start}.primary-actions form{margin:0}.primary-actions button,.primary-actions .button{width:100%;text-align:center}.case-tabs{position:sticky;top:0;z-index:5}.case-overview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.case-overview-grid .status-card{min-height:104px}.case-overview-grid .status-card:first-child{grid-column:span 2}.status-card b{line-height:1.15}.workflow-bar-grid{grid-template-columns:repeat(5,minmax(120px,1fr))}.workflow-overview{grid-template-columns:repeat(5,minmax(0,1fr))}.report-generate-form{display:grid;grid-template-columns:minmax(180px,260px) auto;gap:10px;align-items:center;margin:16px 0}.report-generate-form select{margin:0}
@media(max-width:900px){.case-overview-grid{grid-template-columns:repeat(2,1fr)}.case-overview-grid .status-card:first-child{grid-column:auto}.primary-actions{margin-top:16px}.workflow-bar-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.workflow-bar-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.module-grid{grid-template-columns:1fr}.module-title-row{display:block}}
@media(max-width:760px){header{align-items:flex-start}.case-module-nav{order:3;width:100%;max-width:none}.case-module-nav a{flex:1 1 140px;text-align:center}.user-nav{margin-left:0}}
@media(max-width:560px){.case-overview-grid{grid-template-columns:1fr}.workflow-overview{grid-template-columns:1fr}.report-generate-form{grid-template-columns:1fr}.case-module-nav{display:grid;grid-template-columns:1fr 1fr;width:100%}.case-module-nav a{width:100%}}

.document-library-card{overflow:visible}.document-filter-bar{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.document-filter-bar a{border:1px solid var(--line);border-radius:999px;background:#f8fafc;color:var(--txt);text-decoration:none;font-weight:800;padding:8px 12px}.document-filter-bar a.active{background:var(--blue);color:#fff;border-color:var(--blue)}.document-workspace{display:grid;grid-template-columns:minmax(230px,300px) minmax(360px,1fr) minmax(260px,330px);gap:14px;align-items:start}.document-list,.document-preview-pane,.document-info-pane{border:1px solid var(--line);border-radius:8px;background:#fff;padding:12px;min-height:620px}.document-list{display:grid;gap:8px;max-height:78vh;overflow:auto}.document-list-item{display:grid;gap:5px;text-decoration:none;color:var(--txt);border:1px solid var(--line);border-left:5px solid #9aa7b5;border-radius:8px;background:#f8fafc;padding:10px}.document-list-item.active{border-left-color:var(--blue);background:#edf4fa}.document-list-item b{line-height:1.2;overflow-wrap:anywhere}.document-list-item span{font-size:14px}.doc-badges{display:flex!important;gap:5px;flex-wrap:wrap}.doc-badges em{font-style:normal;border:1px solid var(--line);border-radius:999px;background:white;padding:3px 7px;font-size:12px;font-weight:800;color:var(--muted)}.doc-badges em.role-favorable{background:#e7f7ec;color:#155b2a;border-color:#a7d8b4}.doc-badges em.role-adverse{background:#ffe8e8;color:#7a1111;border-color:#efb0b0}.doc-badges em.role-procedural,.doc-badges em.role-deadline{background:#fff9e8;color:#6b4a00;border-color:#e6c76c}.document-pane-heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}.document-pane-heading h3,.document-info-pane h3{margin:0 0 6px}.document-search{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;margin:12px 0}.document-search input{margin:0}.document-view{border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:10px}.document-preview-frame{width:100%;height:66vh;min-height:520px;border:1px solid var(--line);border-radius:8px;background:#fff}.document-page-controls{display:grid;grid-template-columns:auto 90px auto;gap:8px;align-items:center;margin-bottom:10px}.document-page-controls input{margin:0}.document-ocr-text{max-height:66vh;min-height:520px;background:#fff;line-height:1.6;font-size:15px}.document-ocr-text mark{background:#fff09a;color:#111;padding:1px 2px}.document-info-pane{max-height:78vh;overflow:auto}.document-info-pane h4{margin:16px 0 8px}.document-info-pane ul{padding-left:20px}.document-actions{display:grid;grid-template-columns:1fr;gap:8px}.document-actions form{margin:0}.document-actions button,.document-note-form button{width:100%}.document-note-form{margin-top:14px}.document-note-form textarea{min-height:110px}
@media(max-width:1100px){.document-workspace{grid-template-columns:280px 1fr}.document-info-pane{grid-column:1/-1;max-height:none;min-height:0}}
@media(max-width:760px){.document-workspace{grid-template-columns:1fr}.document-list,.document-preview-pane,.document-info-pane{min-height:0;max-height:none}.document-pane-heading{display:block}.document-search{grid-template-columns:1fr}.document-page-controls{grid-template-columns:1fr}.document-preview-frame,.document-ocr-text{min-height:420px;height:55vh}}

.analysis-sections{display:grid;grid-template-columns:1fr;gap:14px;margin-bottom:16px}.analysis-sections>article,.strategy-grid>article,.report-mode-grid>article{border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:16px}.analysis-sections h3,.strategy-grid h3,.report-mode-grid h3{margin-top:0}.strategy-grid,.report-mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px}.report-mode-grid details{border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px;margin-bottom:8px}.report-mode-grid summary{cursor:pointer;font-weight:800}
@media(max-width:900px){.strategy-grid,.report-mode-grid{grid-template-columns:1fr}}

.app-header-sticky{position:sticky;top:0;z-index:1000;background:var(--navy);box-shadow:0 2px 12px rgba(0,0,0,.18);border-bottom:1px solid rgba(255,255,255,.14)}
.case-module-header,.case-module-body,.document-library-card,.document-preview-pane,.document-info-pane{scroll-margin-top:112px}
.document-card{display:grid;gap:14px}
.document-actions-panel{background:#f3f7fb;border:1px solid #cbd7e5;border-radius:8px;padding:14px}
.document-actions-panel h3,.document-section h3{margin:0 0 10px}
.document-badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.document-badge{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);padding:4px 9px;font-size:12px;font-weight:900;line-height:1.2}
.document-badge.role-favorable{background:#e7f7ec;color:#155b2a;border-color:#a7d8b4}
.document-badge.role-adverse{background:#ffe8e8;color:#7a1111;border-color:#efb0b0}
.document-badge.role-procedural,.document-badge.role-deadline{background:#fff9e8;color:#6b4a00;border-color:#e6c76c}
.document-badge.role-neutral{background:#eef2f6;color:#334155;border-color:#cbd4df}
.document-badge.is-key{background:#edf4fa;color:var(--blue);border-color:#b9cbe0}
.document-badge.needs-review{background:#fff9e8;color:#6b4a00;border-color:#e6c76c}
.document-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.document-action-grid form{margin:0}
.document-action-grid button{width:100%;height:100%;padding:9px 10px;font-size:13px;text-align:center}
.document-note-form{display:grid;gap:8px;margin:0}
.document-note-form textarea{min-height:120px;max-height:240px;margin:0;resize:vertical}
.document-note-form button{width:100%}
.document-section{border:1px solid var(--line);border-radius:8px;background:#fff;padding:14px}
.document-section p{margin-top:0}
.document-section ul{margin:0;padding-left:20px}
.document-section li{margin-bottom:8px}
.document-section details{border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:10px}
.document-section summary{cursor:pointer;font-weight:800}
.document-meta-grid{display:grid;grid-template-columns:minmax(110px,150px) minmax(0,1fr);gap:7px 10px;background:#f8fafc;border:1px solid var(--line);border-radius:8px;padding:12px;margin:0;font-size:14px}
.document-meta-grid dt{color:var(--muted)}
.document-meta-grid dd{min-width:0;overflow-wrap:anywhere}
.document-summary-panel p{max-height:220px;overflow:auto;padding-right:4px}
.document-fragments-panel details ul{max-height:300px;overflow:auto;padding-right:4px}
.technical-import-form{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;margin:12px 0 18px}
.technical-import-form input{margin:0}
.documents-control-panel{display:grid;gap:12px;margin-bottom:14px}
.documents-upload-panel{display:grid;grid-template-columns:1.2fr 1fr;gap:16px;align-items:end;background:#f3f7fb;border:1px solid #cbd7e5;border-radius:8px;padding:16px}
.documents-upload-panel h3,.documents-filter-panel h3{margin:0 0 6px}
.documents-upload-panel .eyebrow{margin-bottom:4px!important}
.document-upload-hint{margin:0 0 6px;color:var(--txt);max-width:760px}
.document-upload-form{margin:0}
.document-upload-actions{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:center}
.document-upload-actions .button,.document-upload-actions button{width:100%;text-align:center;min-height:42px}
.documents-filter-panel{background:#fff;border:1px solid var(--line);border-radius:8px;padding:14px}
.document-library-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}
.document-filter-tabs{display:flex;flex-wrap:wrap;gap:8px}
.document-filter-tabs a{border:1px solid var(--line);border-radius:999px;background:#f8fafc;color:var(--txt);text-decoration:none;font-weight:800;padding:8px 12px;line-height:1.2}
.document-filter-tabs a:hover{background:#eef2f6}
.document-filter-tabs a.active{background:var(--blue);color:#fff;border-color:var(--blue)}
.documents-unified-panel{display:grid;gap:12px;padding:18px;border:1px solid var(--line);background:#fff}
.documents-case-strip{display:flex;align-items:center;gap:8px 10px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:10px}
.documents-case-eyebrow{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}
.documents-case-name{font-size:16px;line-height:1.2}
.documents-case-notice{color:var(--muted);font-size:13px;font-weight:700}
.status-badge{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;background:#eef2f6;color:var(--txt);padding:4px 9px;font-size:12px;font-weight:900;line-height:1.2}
.button.small{padding:7px 10px;font-size:13px;line-height:1.2}
.documents-panel-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:10px}
.documents-panel-header h2{margin:0 0 4px;font-size:22px;line-height:1.2}
.documents-panel-header p{margin:0}
.documents-panel-description{margin:0;color:var(--muted);font-size:14px;max-width:780px}
.documents-upload-compact{display:grid;grid-template-columns:minmax(220px,1fr) minmax(420px,auto);gap:12px;align-items:center;background:#f8fafc;border:1px solid var(--line);border-radius:8px;padding:10px 12px}
.documents-upload-compact .document-upload-hint{margin:0;color:var(--muted);font-size:14px}
.documents-unified-panel .document-filter-tabs{padding-bottom:10px;border-bottom:1px solid var(--line)}
.documents-unified-panel .document-workspace{margin-top:2px}

@media(max-width:900px){.documents-upload-panel{grid-template-columns:1fr}.documents-panel-header,.documents-upload-compact{grid-template-columns:1fr}.document-upload-actions{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:760px){.app-header-sticky{align-items:flex-start}.case-module-header,.case-module-body,.document-library-card,.document-preview-pane,.document-info-pane{scroll-margin-top:180px}.document-action-grid{grid-template-columns:1fr 1fr}.document-upload-actions{grid-template-columns:1fr}.document-library-header,.documents-panel-header{display:block}.documents-case-strip .button{flex:1 1 150px;text-align:center}}
@media(max-width:480px){.document-action-grid{grid-template-columns:1fr}.document-meta-grid{grid-template-columns:1fr}.technical-import-form{grid-template-columns:1fr}}

.documents-unified-panel .document-workspace{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(420px,1.5fr) minmax(320px,1fr);gap:16px;align-items:stretch;height:calc(100vh - 220px);min-height:620px}
.document-list.document-list-pane,.document-preview-pane,.document-info-pane{height:100%;min-height:0;max-height:none;overflow:hidden;display:flex;flex-direction:column}
.document-list.document-list-pane{display:grid;align-content:start;gap:8px;overflow-y:auto}
.document-preview-pane .document-pane-heading{flex:0 0 auto}
.document-preview-pane .notice,.document-preview-pane .document-search{flex:0 0 auto}
.document-preview-pane .document-view{flex:1 1 auto;min-height:0;overflow:auto;display:flex;flex-direction:column}
.document-preview-frame{flex:1 1 auto;height:100%;min-height:0}
.document-ocr-text{flex:1 1 auto;min-height:0;max-height:none;height:100%;overflow:auto}
.document-info-pane .document-card{min-height:0;overflow-y:auto;padding-right:2px}
.document-meta-section .document-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;background:transparent;border:0;border-radius:0;padding:0;margin:0;font-size:14px}
.document-meta-item{border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px 12px;min-width:0}
.document-meta-wide{grid-column:1/-1}
.document-meta-label{display:block;font-size:12px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.02em;margin-bottom:4px}
.document-meta-value{display:block;overflow-wrap:anywhere;white-space:normal;line-height:1.45}
.document-summary-panel p,.document-fragments-panel li,.document-deadlines-panel li{line-height:1.55;overflow-wrap:anywhere}
.document-preview-tools{margin:8px 0 0}
.document-preview-pane .document-page-controls{margin:10px 0 0;flex:0 0 auto}
.document-actions-panel .document-action-grid{margin-top:8px}
.document-actions-panel .document-note-form{margin-top:12px}

@media(max-width:900px){.documents-unified-panel .document-workspace{grid-template-columns:1fr;height:auto;min-height:0}.document-list.document-list-pane,.document-preview-pane,.document-info-pane{height:auto;max-height:none;overflow:visible}.document-list.document-list-pane{overflow-y:visible}.document-preview-pane .document-view,.document-info-pane .document-card{overflow:visible}.document-preview-frame,.document-ocr-text{min-height:420px;height:55vh}}
@media(max-width:700px){.document-meta-section .document-meta-grid{grid-template-columns:1fr}}

.landing-page{margin:-28px calc(50% - 50vw) -28px;background:#101827;color:#f7fafc;overflow:hidden}.landing-inner{max-width:1180px;margin:0 auto;padding:0 28px}.landing-hero{position:relative;min-height:clamp(540px,calc(100vh - 150px),760px);display:flex;align-items:center;border-bottom:1px solid rgba(255,255,255,.14)}.landing-hero-media{position:absolute;inset:0;background-image:url('/static/bastion-hero.png');background-size:cover;background-position:center right;transform:scale(1.01)}.landing-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,16,27,.96) 0%,rgba(10,16,27,.82) 35%,rgba(10,16,27,.45) 68%,rgba(10,16,27,.72) 100%),linear-gradient(180deg,rgba(10,16,27,.12),rgba(10,16,27,.72))}.landing-hero-content{position:relative;width:100%;padding-top:72px;padding-bottom:72px}.landing-kicker{margin:0 0 12px;color:#d8ad64;font-weight:900;text-transform:uppercase;font-size:13px}.landing-hero h1{font-size:clamp(48px,8vw,104px);line-height:.92;margin:0 0 22px;max-width:900px}.landing-lead{font-size:clamp(19px,2vw,25px);line-height:1.45;max-width:800px;margin:0 0 18px;color:#eef3f8}.landing-slogan{font-size:clamp(20px,2.4vw,34px);font-weight:900;color:#f2c27a;margin:0 0 28px}.landing-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.landing-button{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;padding:13px 18px;min-height:48px;text-decoration:none;font-weight:900;border:1px solid transparent}.landing-button.primary{background:#d8a24d;color:#111827;box-shadow:0 12px 30px rgba(216,162,77,.22)}.landing-button.secondary{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.28)}.landing-disclaimer{max-width:700px;color:#c8d2df;margin:22px 0 0;font-size:14px}.landing-section{padding:76px 0;border-bottom:1px solid rgba(255,255,255,.09)}.landing-section h2,.landing-final-cta h2,.landing-app-heading h2{font-size:clamp(30px,4vw,52px);line-height:1.05;margin:0 0 24px;max-width:900px}.landing-two-col{display:grid;grid-template-columns:.95fr 1.05fr;gap:48px;align-items:start}.landing-text-stack{display:grid;gap:16px;color:#dbe4ef;font-size:18px}.landing-text-stack p{margin:0}.landing-problem{background:#141f31}.landing-muted-section{background:#f4f0e8;color:#151d2d}.landing-muted-section .landing-kicker{color:#8a5f24}.landing-muted-section h2{color:#151d2d}.landing-pillars,.landing-feature-grid,.landing-audience-grid{display:grid;gap:14px}.landing-pillars{grid-template-columns:repeat(3,1fr)}.landing-pillars article,.landing-feature-grid article,.landing-audience-grid article,.landing-process li{border:1px solid rgba(255,255,255,.14);border-radius:8px;background:rgba(255,255,255,.055);padding:20px}.landing-pillars span{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:999px;background:#d8a24d;color:#111827;font-weight:900;margin-bottom:18px}.landing-pillars h3{margin:0 0 10px;font-size:23px}.landing-pillars p{margin:0;color:#d4deea}.landing-feature-grid{grid-template-columns:repeat(3,1fr)}.landing-feature-grid article{background:#fff;color:#172033;border-color:#ddd2bd;font-weight:850;min-height:94px;display:flex;align-items:flex-end}.landing-audience-grid{grid-template-columns:repeat(3,1fr)}.landing-audience-grid article{font-weight:850;color:#f3f7fb}.landing-institutions{background:#111b2c}.landing-section-heading{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:18px}.landing-section-heading h2{margin-bottom:0}.landing-chip-grid{display:flex;flex-wrap:wrap;gap:10px}.landing-chip-grid span{border:1px solid rgba(216,162,77,.34);border-radius:999px;background:rgba(216,162,77,.1);color:#f5d39d;padding:9px 13px;font-weight:850}.landing-process{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.landing-process li{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;font-weight:850;color:#f5f7fa}.landing-process span{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;background:#d8a24d;color:#111827;font-weight:900}.landing-legal{border:1px solid rgba(216,162,77,.42);border-left:6px solid #d8a24d;border-radius:8px;background:#f6f0e4;color:#172033;padding:24px}.landing-legal p:last-child{font-size:19px;line-height:1.55;margin:0}.landing-final-cta{padding:78px 0;background:#0d1422;text-align:center;border-bottom:1px solid rgba(255,255,255,.1)}.landing-final-cta h2{margin-left:auto;margin-right:auto}.landing-app-shell{background:#f5f6f8;color:var(--txt);padding:68px 0 92px}.landing-app-heading{margin-bottom:22px}.landing-app-heading p:last-child{max-width:760px;color:var(--muted);font-size:17px}.landing-app-shell .landing-kicker{color:var(--blue)}.landing-app-shell .card,.landing-app-shell .tile{box-shadow:0 14px 40px rgba(15,23,42,.06)}.landing-app-shell details.card summary{cursor:pointer;font-size:18px}.landing-app-shell h2{color:var(--txt)}
@media(max-width:900px){.landing-inner{padding:0 18px}.landing-hero{min-height:clamp(560px,calc(100vh - 120px),720px)}.landing-hero-shade{background:linear-gradient(90deg,rgba(10,16,27,.96),rgba(10,16,27,.72)),linear-gradient(180deg,rgba(10,16,27,.18),rgba(10,16,27,.8))}.landing-two-col,.landing-pillars,.landing-feature-grid,.landing-audience-grid{grid-template-columns:1fr}.landing-section{padding:54px 0}.landing-process{grid-template-columns:repeat(2,1fr)}.landing-section-heading{display:block}.landing-feature-grid article{min-height:76px}.landing-actions .landing-button{flex:1 1 220px}}
@media(max-width:560px){.landing-page{margin:-14px calc(50% - 50vw) -14px}.landing-hero-content{padding-top:54px;padding-bottom:54px}.landing-hero-media{background-position:center}.landing-process{grid-template-columns:1fr}.landing-actions{display:grid}.landing-button{width:100%;text-align:center}.landing-disclaimer{font-size:13px}.landing-app-shell{padding:52px 0 68px}.landing-legal p:last-child{font-size:16px}}

.landing-actions-centered{justify-content:center}
.app-dashboard-header{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:24px;margin-bottom:18px}
.app-dashboard-header h1{margin:0 0 8px}
.app-dashboard-header p:last-child{max-width:760px;margin-bottom:0}

.brand{display:flex;align-items:center;gap:10px;font-size:21px;line-height:1.1}
.brand-logo{width:42px;height:42px;object-fit:contain;border-radius:8px;background:#fff;box-shadow:0 6px 18px rgba(0,0,0,.18)}
.landing-nav{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-left:auto}
.landing-nav a{color:#eef7f7;text-decoration:none;font-weight:800;border-radius:8px;padding:8px 10px}
.landing-nav a:hover{background:rgba(255,255,255,.1)}
.user-nav .header-cta{background:#d8a24d;color:#111827;border-color:#d8a24d}
header:has(.landing-nav) .user-nav{margin-left:0}

.landing-page{margin:-28px calc(50% - 50vw) -28px;background:#111827;color:#f7fafc;overflow:hidden}
.landing-inner{max-width:1180px;margin:0 auto;padding:0 28px}
.landing-hero{position:relative;min-height:0;display:block;padding:clamp(58px,8vh,86px) 0 clamp(46px,7vh,74px);border-bottom:1px solid rgba(255,255,255,.12)}
.landing-hero-media{position:absolute;inset:0;background-image:url('/static/bastion-hero.png');background-size:cover;background-position:center right;transform:none;opacity:.45}
.landing-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,24,39,.98) 0%,rgba(17,24,39,.87) 48%,rgba(17,24,39,.58) 100%),linear-gradient(180deg,rgba(0,154,147,.08),rgba(216,162,77,.13))}
.landing-hero-content{position:relative;width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,360px);gap:42px;align-items:center;padding-top:0;padding-bottom:0}
.landing-hero-copy{max-width:820px}
.landing-hero-logo{width:clamp(132px,16vw,220px);height:auto;display:block;margin:0 0 22px;border-radius:8px;background:#fff;box-shadow:0 18px 50px rgba(0,0,0,.28)}
.landing-kicker{margin:0 0 12px;color:#56c7bd;font-weight:900;text-transform:uppercase;font-size:13px;letter-spacing:.04em}
.landing-hero h1{font-size:clamp(44px,7vw,88px);line-height:.95;margin:0 0 20px;max-width:900px;letter-spacing:0}
.landing-lead{font-size:clamp(18px,1.7vw,23px);line-height:1.5;max-width:800px;margin:0 0 28px;color:#edf4f5}
.landing-command-panel{display:grid;gap:12px}
.landing-command-panel div{border:1px solid rgba(255,255,255,.14);border-left:5px solid #56c7bd;border-radius:8px;background:rgba(255,255,255,.08);padding:18px;backdrop-filter:blur(10px)}
.landing-command-panel span{display:block;color:#cdd7df;font-weight:800;text-transform:uppercase;font-size:12px;margin-bottom:5px}
.landing-command-panel strong{font-size:24px;line-height:1.1}
.landing-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.landing-button{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;padding:13px 18px;min-height:48px;text-decoration:none;font-weight:900;border:1px solid transparent}
.landing-button.primary{background:#d8a24d;color:#111827;box-shadow:0 12px 30px rgba(216,162,77,.22)}
.landing-button.secondary{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.28)}
.landing-disclaimer{max-width:720px;color:#c8d2df;margin:22px auto 0;font-size:14px}
.landing-section{padding:72px 0;border-bottom:1px solid rgba(255,255,255,.09)}
.landing-section h2,.landing-final-cta h2,.landing-app-heading h2{font-size:clamp(30px,4vw,50px);line-height:1.08;margin:0 0 24px;max-width:930px;letter-spacing:0}
.landing-two-col{display:grid;grid-template-columns:.88fr 1.12fr;gap:48px;align-items:start}
.landing-pillars-section{background:#f5f7f8;color:#141b28}
.landing-pillars-section .landing-kicker,.landing-audience-section .landing-kicker{color:#08766f}
.landing-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.landing-pillars article{border:1px solid #d9e3e5;border-radius:8px;background:#fff;padding:22px;box-shadow:0 14px 36px rgba(15,23,42,.06)}
.landing-pillars span{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:999px;background:#08766f;color:#fff;font-weight:900;margin-bottom:18px}
.landing-pillars h3{margin:0 0 10px;font-size:24px}
.landing-pillars p{margin:0;color:#44515f}
.landing-modules-section{background:#121c2c}
.landing-section-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:34px;align-items:end;margin-bottom:24px}
.landing-section-heading h2{margin-bottom:0}
.landing-section-heading p:last-child{color:#c9d4df;font-size:17px;line-height:1.55;margin:0}
.landing-module-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.landing-module-card{min-width:0;border:1px solid rgba(255,255,255,.13);border-radius:8px;background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.045));padding:18px;display:grid;gap:16px;box-shadow:0 20px 60px rgba(0,0,0,.16)}
.landing-module-icon{width:82px;height:82px;object-fit:contain;border-radius:8px;background:#fff;border:1px solid rgba(255,255,255,.22);box-shadow:0 10px 24px rgba(0,0,0,.18)}
.landing-module-name{margin:0 0 8px;color:#65d1c7;font-weight:900;text-transform:uppercase;font-size:12px;letter-spacing:.04em}
.landing-module-card h3{margin:0 0 10px;font-size:20px;line-height:1.15}
.landing-module-card p:last-child{margin:0;color:#d4dde7;line-height:1.55}
.landing-audience-section{background:#eef3f3;color:#141b28}
.landing-audience-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.landing-audience-grid article{border:1px solid #d2dcdf;border-radius:8px;background:#fff;color:#162033;font-weight:850;padding:16px 18px;box-shadow:0 10px 30px rgba(15,23,42,.05)}
.landing-security-section{background:#0f1724}
.landing-security-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.landing-security-grid article{border:1px solid rgba(255,255,255,.12);border-top:4px solid #d8a24d;border-radius:8px;background:rgba(255,255,255,.055);padding:20px}
.landing-security-grid h3{margin:0 0 10px;font-size:21px}
.landing-security-grid p{margin:0;color:#d7e1ea}
.landing-institutions{background:#f6f1e7;color:#151d2d}
.landing-institutions .landing-kicker{color:#8a5f24}
.landing-institutions .landing-section-heading p:last-child{color:#45505d}
.landing-chip-grid{display:flex;flex-wrap:wrap;gap:10px}
.landing-chip-grid span{border:1px solid #d8c293;border-radius:999px;background:#fff;color:#263243;padding:9px 13px;font-weight:850}
.landing-final-cta{padding:70px 0;background:#111827;text-align:center;border-bottom:1px solid rgba(255,255,255,.1)}
.landing-final-cta h2{margin-left:auto;margin-right:auto}
.landing-cta-logo{width:116px;height:auto;border-radius:8px;background:#fff;margin:0 auto 20px;box-shadow:0 16px 42px rgba(0,0,0,.24)}
.landing-actions-centered{justify-content:center}
.landing-footer{background:#0b1220;color:#f7fafc;padding:34px 32px 24px;margin-top:0}
.landing-footer-inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:minmax(260px,.9fr) minmax(0,1.1fr);gap:32px;align-items:start}
.landing-footer-brand{display:grid;grid-template-columns:76px minmax(0,1fr);gap:16px;align-items:center}
.landing-footer-logo{width:76px;height:auto;border-radius:8px;background:#fff}
.landing-footer-brand p{margin:0;color:#d6e0e7;line-height:1.55}
.landing-footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.landing-footer-links a{color:#eaf2f4;text-decoration:none;border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:9px 11px;font-weight:800;background:rgba(255,255,255,.04)}
.landing-footer-note{max-width:1180px;margin:24px auto 0;color:#aeb9c5;font-size:13px;line-height:1.5}

@media(max-width:1100px){.landing-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-security-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.landing-inner{padding:0 18px}.landing-hero-content,.landing-two-col,.landing-section-heading,.landing-pillars{grid-template-columns:1fr}.landing-hero{padding:46px 0 42px}.landing-command-panel{grid-template-columns:repeat(3,1fr)}.landing-section{padding:54px 0}.landing-actions .landing-button{flex:1 1 220px}.landing-footer-inner{grid-template-columns:1fr}.landing-nav{order:3;width:100%;margin-left:0}.landing-nav a{flex:1 1 120px;text-align:center}.landing-footer-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.brand span{font-size:18px}.brand-logo{width:36px;height:36px}header:has(.landing-nav) .user-nav{width:100%}.landing-hero h1{font-size:42px}.landing-command-panel,.landing-module-grid,.landing-audience-grid,.landing-security-grid,.landing-footer-links{grid-template-columns:1fr}.landing-module-card{grid-template-columns:82px 1fr;align-items:start}.landing-footer-brand{grid-template-columns:1fr}.landing-footer-logo{width:92px}.landing-actions{display:grid}.landing-button{width:100%;text-align:center}.landing-disclaimer{font-size:13px}.landing-page{margin:-14px calc(50% - 50vw) -14px}}
@media(max-width:420px){.landing-module-card{grid-template-columns:1fr}.landing-module-icon{width:76px;height:76px}}

.app-section-kicker{margin:0 0 6px;color:#08766f!important;font-size:12px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.app-dashboard-header{display:grid;grid-template-columns:minmax(0,1fr) 96px;gap:22px;align-items:center;border-left:6px solid #08766f}
.app-dashboard-header h1{font-size:clamp(30px,4vw,46px);line-height:1.05}
.app-dashboard-logo{width:96px;height:96px;object-fit:contain;border-radius:8px;background:#fff;border:1px solid var(--line)}
.app-promise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}
.app-command-center{border-left:6px solid #d8a24d}
.app-module-card{border:1px solid var(--line);border-radius:8px;background:#fff;padding:18px;display:grid;grid-template-columns:58px minmax(0,1fr);gap:14px;align-items:start;box-shadow:0 12px 34px rgba(15,23,42,.06);min-width:0}
.app-module-card h3{margin:0 0 6px;font-size:20px;line-height:1.2}
.app-module-card p{margin:0;color:var(--muted);line-height:1.5}
.app-module-icon{width:58px;height:58px;object-fit:contain;border-radius:8px;background:#fff;border:1px solid #d9e3e5;box-shadow:0 8px 20px rgba(15,23,42,.08);flex:0 0 auto}
.case-module-title{display:flex;gap:16px;align-items:flex-start;min-width:0}
.case-module-title>div{min-width:0}
.case-module-title h1{margin-top:0}
.case-module-title-icon{width:64px;height:64px}
.documents-case-icon{width:42px;height:42px}
.case-module-nav a{display:flex;align-items:center;gap:7px}
.case-module-nav-icon{width:24px;height:24px;object-fit:contain;border-radius:6px;background:#fff}
.case-module-nav a.active .case-module-nav-icon{border:1px solid rgba(23,32,51,.16)}
.status-card small{letter-spacing:.02em;text-transform:uppercase}

@media(max-width:900px){.app-promise-grid{grid-template-columns:1fr}.app-dashboard-header{grid-template-columns:1fr}.app-dashboard-logo{width:82px;height:82px}.case-module-title{display:grid;grid-template-columns:56px minmax(0,1fr)}.case-module-title-icon{width:56px;height:56px}}
@media(max-width:560px){.app-module-card{grid-template-columns:48px minmax(0,1fr);padding:14px}.app-module-icon{width:48px;height:48px}.case-module-title{grid-template-columns:1fr}.case-module-nav-icon{width:22px;height:22px}}

/* Wspólna stopka, strony prawne i panel zgód */
.site-footer{background:#0b1220;color:#f7fafc;padding:42px 32px 24px;margin-top:40px}
.landing-page+.site-footer{margin-top:0}
.site-footer-inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(220px,.7fr) minmax(210px,.55fr);gap:36px;align-items:start}
.site-footer h2{font-size:17px;line-height:1.35;margin:0 0 14px;color:#fff}
.site-footer h3{font-size:14px;margin:20px 0 4px;color:#d7e0eb;text-transform:uppercase;letter-spacing:.04em}
.site-footer p,.site-footer address{margin:0;color:#d6e0e7;line-height:1.6;font-style:normal}
.site-footer a,.footer-link-button{color:#f4cf91;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.site-footer a:hover,.footer-link-button:hover{color:#fff}
.site-footer-register{display:grid;grid-template-columns:1fr;gap:7px;margin:18px 0 0}
.site-footer-register>div{display:grid;grid-template-columns:140px minmax(0,1fr);gap:12px}
.site-footer-register dt{color:#aeb9c5;font-weight:700}
.site-footer-register dd{margin:0;color:#eef3f8}
.site-footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.footer-link-button{appearance:none;border:0;background:transparent;padding:0;font:inherit;cursor:pointer;text-align:left}
.site-footer-disclaimer,.site-footer-copyright{max-width:1180px;margin:28px auto 0!important;color:#aeb9c5!important;font-size:13px;line-height:1.55!important}
.site-footer-copyright{margin-top:12px!important}

.legal-page{max-width:960px;margin:0 auto}
.legal-page-header{background:#172033;color:#fff;border-radius:12px;padding:clamp(26px,5vw,52px);margin-bottom:24px}
.legal-page-header h1{font-size:clamp(34px,5vw,56px);line-height:1.05;margin:0 0 14px}
.legal-page-header p:last-child{margin:0;color:#d6e0e7}
.legal-kicker{margin:0 0 8px!important;color:#b6893f!important;font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.legal-page>section,.legal-toc,.contact-grid>section{background:#fff;border:1px solid var(--line);border-radius:10px;padding:clamp(20px,4vw,32px);margin-bottom:18px;scroll-margin-top:24px}
.legal-page>section h2,.contact-grid h2{margin:0 0 14px;font-size:24px}
.legal-page>section p:last-child,.legal-page>section ul:last-child{margin-bottom:0}
.legal-page li+li{margin-top:8px}
.legal-toc{display:flex;flex-wrap:wrap;gap:8px}
.legal-toc a{background:#eef3f8;border-radius:999px;color:var(--blue);font-weight:800;padding:8px 12px;text-decoration:none}
.legal-table-wrap{overflow-x:auto;margin:14px 0}
.legal-table-wrap table{min-width:640px;margin:0}
.legal-definitions{display:grid;grid-template-columns:1fr;gap:12px}
.legal-definitions>div{display:grid;grid-template-columns:minmax(120px,180px) 1fr;gap:16px;padding:14px;border:1px solid var(--line);border-radius:8px}
.legal-definitions dt{color:var(--txt)}
.legal-definitions dd{margin:0}
.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
.contact-grid>section{margin:0}
.contact-grid address{font-style:normal;line-height:1.7}
.contact-link{font-size:18px;font-weight:800}

.cookie-banner{position:fixed;z-index:1000;left:18px;right:18px;bottom:18px;max-width:1180px;margin:0 auto;background:#fff;color:var(--txt);border:1px solid #cbd4df;border-top:5px solid var(--gold);border-radius:12px;box-shadow:0 20px 60px rgba(8,15,30,.28);padding:20px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center}
.cookie-banner[hidden]{display:none}
.cookie-banner h2{font-size:20px;margin:0 0 6px}
.cookie-banner p{margin:0;max-width:760px}
.cookie-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.cookie-button{border:1px solid var(--blue);border-radius:8px;padding:10px 13px;font:inherit;font-weight:800;cursor:pointer}
.cookie-button.primary{background:var(--blue);color:#fff}
.cookie-button.secondary{background:#fff;color:var(--blue)}
.cookie-dialog{width:min(680px,calc(100% - 28px));max-height:calc(100vh - 40px);overflow:auto;border:0;border-radius:12px;padding:26px;color:var(--txt);box-shadow:0 24px 80px rgba(8,15,30,.4)}
.cookie-dialog::backdrop{background:rgba(7,13,25,.68)}
.cookie-dialog-heading{display:flex;justify-content:space-between;gap:18px;align-items:start}
.cookie-dialog-heading h2{margin:0}
.cookie-dialog-close{width:42px;height:42px;padding:0;border-radius:999px;background:#eef2f6;color:var(--txt);font-size:28px;line-height:1}
.cookie-category{display:flex;justify-content:space-between;gap:18px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:16px;margin-top:12px;background:#f8fafc}
.cookie-category h3,.cookie-category p{margin:0}
.cookie-category strong{display:block;font-size:17px;margin-bottom:4px}
.cookie-category small{display:block;color:var(--muted);line-height:1.45}
.cookie-category input{width:24px;height:24px;margin:0;flex:0 0 auto}
.cookie-always-on{font-size:13px;font-weight:900;color:#155b2a;white-space:nowrap}
.cookie-dialog-actions{margin-top:20px}

a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #e1ad55;outline-offset:3px}

@media(max-width:900px){.site-footer-inner{grid-template-columns:1fr 1fr}.site-footer-company{grid-column:1/-1}.cookie-banner{grid-template-columns:1fr}.cookie-actions{justify-content:flex-start}}
@media(max-width:620px){.site-footer{padding:32px 18px 22px}.site-footer-inner{grid-template-columns:1fr;gap:28px}.site-footer-company{grid-column:auto}.site-footer-register>div{grid-template-columns:1fr;gap:2px}.legal-page-header{border-radius:8px}.legal-page>section,.legal-toc,.contact-grid>section{padding:18px}.legal-definitions>div{grid-template-columns:1fr;gap:5px}.cookie-banner{left:10px;right:10px;bottom:10px;padding:16px;max-height:calc(100vh - 20px);overflow:auto}.cookie-actions,.cookie-actions .cookie-button{width:100%}.cookie-actions .cookie-button{text-align:center}.cookie-dialog{padding:20px}.cookie-category{align-items:flex-start}.cookie-dialog-actions{display:grid}.cookie-dialog-actions .cookie-button{width:100%}}
