:root{--font-family: "Segoe UI", "Inter", system-ui, sans-serif;--bg: #f2f6f2;--panel: #ffffff;--panel-strong: #eef6ef;--border: #c6d9c8;--border-strong: #8bae8d;--text: #1f2a20;--muted: #5e6d61;--accent: #2e7d32;--accent-strong: #205a24;--danger: #c63f3f;--danger-soft: #ffe1e1;--success-soft: #def6df;--neutral-soft: #eceff1;--shadow: 0 20px 60px rgba(40, 70, 40, .1);--page-max-width: 1320px}:root[data-theme=dark]{--bg: #0d1510;--panel: #152019;--panel-strong: #122217;--border: #294332;--border-strong: #4f7759;--text: #edf7ee;--muted: #a6b8aa;--accent: #49a34e;--accent-strong: #68bf6d;--danger: #ff8080;--danger-soft: #442222;--success-soft: #17311d;--neutral-soft: #223028;--shadow: 0 20px 60px rgba(0, 0, 0, .35)}html,body{margin:0;min-height:100%;background:radial-gradient(circle at top left,rgba(73,163,78,.12),transparent 30%),linear-gradient(180deg,var(--bg) 0%,color-mix(in srgb,var(--bg) 94%,black) 100%);color:var(--text);font-family:var(--font-family)}body{min-height:100vh;overflow-x:hidden}a{color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}.page-shell{box-sizing:border-box;max-width:var(--page-max-width);margin:0 auto;padding:1.5rem}.login-shell{min-height:100vh;display:grid;align-items:center}.login-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,520px);gap:1.5rem}.login-panel{padding:2rem;display:grid;gap:1rem}.hero-panel{gap:1.4rem;align-content:center;justify-items:center}.auth-panel{align-content:start;min-width:0}.metrics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.login-brand{display:flex;width:100%;align-items:center;justify-content:center}.auth-logo{width:clamp(96px,12vw,136px);height:auto;display:block}.login-title{font-size:clamp(1.9rem,3.6vw,3.15rem);line-height:1.05;margin:0;width:100%;max-width:none;text-wrap:balance;text-align:center}.eu-panel{padding:1.1rem 1.2rem;display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;align-items:center;gap:.8rem;width:fit-content;max-width:100%;justify-self:center;text-align:center}.eu-flag{width:66px;height:auto;flex:0 0 auto;border-radius:.55rem;border:1px solid color-mix(in srgb,var(--border) 80%,transparent);box-shadow:0 10px 24px #00145024}.eu-copy{margin:0;font-size:1.05rem;font-weight:600;line-height:1.45;max-width:22ch}.panel{box-sizing:border-box;background:var(--panel);border:1px solid var(--border);border-radius:1rem;box-shadow:var(--shadow)}.panel-soft{box-sizing:border-box;background:var(--panel-strong);border:1px solid var(--border);border-radius:1rem}.panel>*,.panel-soft>*{min-width:0}.button{display:inline-flex;box-sizing:border-box;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border-radius:.75rem;border:1px solid transparent;background:var(--accent);color:#fff;font-weight:600;text-decoration:none;transition:background-color .12s ease,transform .12s ease}.button:hover{background:var(--accent-strong)}.button:disabled{cursor:not-allowed;opacity:.6}.button.secondary{background:var(--panel);border-color:var(--border);color:var(--text)}.button.secondary:hover{background:var(--panel-strong)}.button.danger{background:var(--danger)}.button.danger:hover{filter:brightness(.95)}.field{display:grid;gap:.45rem;min-width:0}.field label{font-weight:600}.field .hint{font-size:.9rem;color:var(--muted)}.input,.select,.textarea{width:100%;box-sizing:border-box;padding:.8rem .95rem;border-radius:.8rem;border:1px solid var(--border);background:var(--panel);color:var(--text)}.input:focus,.select:focus,.textarea:focus{outline:2px solid color-mix(in srgb,var(--accent) 35%,transparent);border-color:var(--border-strong)}.muted{color:var(--muted)}.form-error{padding:.9rem 1rem;background:var(--danger-soft);border-color:color-mix(in srgb,var(--danger) 35%,var(--border))}.form-error-copy{margin-top:.25rem;overflow-wrap:anywhere;word-break:break-word}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:.85rem .9rem;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.table thead th{background:var(--panel-strong);font-weight:700}.badge{display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .6rem;border-radius:999px;font-size:.82rem;font-weight:700}.badge.success{background:var(--success-soft);color:var(--text)}.badge.danger{background:var(--danger-soft);color:var(--text)}.badge.neutral{background:var(--neutral-soft);color:var(--text)}.status-approved{background:var(--success-soft)}.status-deviation{background:var(--danger-soft)}.status-na{background:var(--neutral-soft)}.topbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;min-width:0}.settings-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;margin-bottom:1rem}.settings-title{font-weight:800;font-size:1.35rem}.settings-nav{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.app-title-block{min-width:0}.app-title{font-weight:800;font-size:1.15rem}.app-subtitle{font-size:.9rem;overflow-wrap:anywhere}.app-nav{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.projects-panel{padding:1.2rem;display:grid;gap:1rem}.projects-actions{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}.analysis-controls{padding:1rem 1.2rem;display:grid;gap:.9rem}.analysis-controls-grid{display:grid;grid-template-columns:minmax(190px,1.1fr) minmax(150px,.85fr) minmax(150px,.85fr) minmax(150px,.85fr) minmax(170px,.8fr);gap:1rem;align-items:end}.document-filter-field{position:relative;min-width:0}.document-filter{position:relative}.document-filter-button{display:flex;align-items:center;justify-content:space-between;gap:1rem;text-align:left}.document-filter-button span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-filter-menu{position:absolute;left:0;top:calc(100% + .45rem);z-index:25;width:min(100%,360px);padding:.85rem;border-radius:.9rem;border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow);display:grid;gap:.8rem}.document-filter-list{display:grid;gap:.55rem;max-height:16rem;overflow:auto;padding-right:.2rem}.document-filter-option{display:flex;align-items:center;gap:.6rem;cursor:pointer}.analysis-bulk-stack{display:grid;gap:.75rem;align-content:start;justify-items:stretch}.analysis-bulk-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;align-items:start;max-width:100%}.analysis-bulk-actions>*{min-width:0}.analysis-bulk-actions .button{width:100%;padding:.65rem .8rem;line-height:1.2}.analysis-bulk-actions .button.secondary,.analysis-bulk-actions .button.danger{white-space:normal}.projects-table-card{padding:.5rem}.table-actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;padding:.75rem}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#050d07a6;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:30}.dialog{box-sizing:border-box;width:min(1080px,calc(100vw - 2rem));max-height:calc(100vh - 2rem);overflow:auto;background:var(--panel);border-radius:1rem;border:1px solid var(--border);box-shadow:var(--shadow)}.dialog.narrow{width:min(680px,calc(100vw - 2rem))}.dialog.results-dialog{width:min(1280px,calc(100vw - 1.25rem))}.dialog-section{padding:1rem 1.2rem}.dialog-header{border-bottom:1px solid var(--border)}.modal-topbar{align-items:flex-start}.modal-form{display:grid;gap:.9rem}.analysis-layout{padding:1.2rem;display:grid;gap:1rem}.analysis-toolbar{padding:1rem 1.2rem;display:grid;gap:1rem}.analysis-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.analysis-field-group{display:grid;gap:.45rem;min-width:0}.analysis-checklist-actions{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}.analysis-details-button{align-self:end;white-space:nowrap}.analysis-actions{display:flex;gap:.6rem;flex-wrap:wrap}.analysis-actions .retry-hidden{display:none}.analysis-status{padding:1rem;display:grid;gap:.75rem}.analysis-status-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.analysis-spinner{width:1rem;height:1rem;border-radius:999px;border:2px solid color-mix(in srgb,var(--accent) 25%,var(--border));border-top-color:var(--accent);animation:analysis-spin .8s linear infinite;flex:0 0 auto}@keyframes analysis-spin{to{transform:rotate(360deg)}}.settings-dialog{width:min(920px,calc(100vw - 2rem))}.settings-dialog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.table-wrap{max-width:100%}.privacy-copy{display:grid;gap:.95rem}.privacy-copy h3,.privacy-copy p,.privacy-copy ul{margin:0}.privacy-copy ul{padding-left:1.25rem;display:grid;gap:.35rem}.privacy-copy a{color:var(--accent-strong);text-decoration-thickness:1px}.results-layout{padding:1rem 1.2rem;display:grid;gap:1rem}.results-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr);gap:1rem}.results-save{width:fit-content;align-self:start;justify-self:start;padding-inline:.85rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}@media(max-width:900px){.page-shell{padding:1rem}.login-layout,.metrics-grid{grid-template-columns:minmax(0,1fr)}.login-panel{padding:1.35rem}.eu-panel{align-items:center}.table-wrap{overflow-x:auto}.analysis-controls-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analysis-bulk-stack{grid-column:1 / -1}}@media(max-width:640px){.page-shell{padding:.75rem}.projects-panel{padding:1rem}.projects-actions,.table-actions,.app-nav{display:grid;grid-template-columns:minmax(0,1fr);width:100%}.projects-actions>*,.table-actions>*,.app-nav>*{width:100%}.modal-topbar{display:grid;grid-template-columns:minmax(0,1fr)}.dialog-section{padding:1rem}.eu-panel{display:grid;grid-template-columns:56px minmax(0,1fr);padding:1rem}.eu-flag{width:56px}.login-title{max-width:none}.analysis-grid,.results-grid,.analysis-controls-grid{grid-template-columns:minmax(0,1fr)}.document-filter-menu{width:min(100%,100%)}.analysis-bulk-actions{grid-template-columns:minmax(0,1fr)}.analysis-details-button,.results-save{justify-self:start}.settings-dialog-grid{grid-template-columns:minmax(0,1fr)}}
