:root{color-scheme:light;--bg: #f2efe8;--bg-accent: #e7e3da;--ink: #17202d;--ink-muted: #596476;--brand: #25549b;--brand-strong: #173868;--brand-soft: #e8eef7;--accent: #b6532c;--accent-strong: #8e3d1f;--card: #fffefa;--surface: #f8f6f0;--line: #d2cabc;--line-strong: #a99f90;--ok: #276247;--warn: #825c19;--danger: #8b2e2e;--focus: #0d72cc;--shadow: 0 10px 30px rgba(27, 38, 54, .08);--shadow-raised: 0 14px 38px rgba(27, 38, 54, .14);--radius: 10px;--radius-small: 7px;--font-sans: "Heebo", "Segoe UI", sans-serif;--font-display: "Source Serif 4", "Times New Roman", serif}*{box-sizing:border-box}html,body,#root{min-height:100%}html{background:var(--bg);scroll-padding-block-start:7rem}body{margin:0;color:var(--ink);font-family:var(--font-sans);font-size:16px;line-height:1.5;background:linear-gradient(rgba(37,84,155,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(37,84,155,.025) 1px,transparent 1px),radial-gradient(circle at 10% 0%,#fffaf0 0%,transparent 38%),linear-gradient(180deg,var(--bg),var(--bg-accent));background-size:28px 28px,28px 28px,auto,auto}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus);outline:3px solid color-mix(in srgb,var(--focus) 70%,white);outline-offset:3px}::selection{color:#fff;background:var(--brand)}[dir=rtl] input,[dir=rtl] select,[dir=rtl] textarea{direction:rtl;text-align:right}[dir=ltr] input,[dir=ltr] select,[dir=ltr] textarea{direction:ltr;text-align:left}[dir=rtl] input::placeholder,[dir=rtl] textarea::placeholder{direction:rtl;text-align:right;opacity:.75}[dir=ltr] input::placeholder,[dir=ltr] textarea::placeholder{direction:ltr;text-align:left;opacity:.75}.app-shell{min-height:100vh;min-height:100dvh;display:grid;grid-template-rows:auto 1fr}.topbar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.5rem 1.5rem;width:100%;min-height:76px;padding:.65rem clamp(1rem,2.5vw,2.5rem);border-bottom:1px solid var(--line);background:#fffefaf0;-webkit-backdrop-filter:blur(14px) saturate(120%);backdrop-filter:blur(14px) saturate(120%);position:sticky;top:0;z-index:10;box-shadow:0 3px 18px #1a24320a}.topbar .brand{flex-shrink:0}.topbar .nav-main{min-inline-size:0}.topbar .nav-actions{justify-content:flex-end}.brand{display:flex;flex-direction:row;align-items:center;gap:.75rem}.brand-logo{height:48px;max-width:140px;width:auto;object-fit:contain;display:block}.brand-mark{width:44px;height:44px;object-fit:contain;flex-shrink:0;border-radius:8px;background:#fff}.brand-text{display:flex;flex-direction:column;gap:.15rem}.brand strong{font-family:var(--font-display);font-size:1.35rem;color:var(--brand);letter-spacing:.02em}.brand span{color:var(--ink-muted);font-size:.85rem}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.nav{display:flex;flex-wrap:wrap;gap:.2rem;align-items:center}.nav a,.nav button,.btn{border:1px solid transparent;background:transparent;color:var(--ink);min-height:42px;padding:.55rem .85rem;border-radius:var(--radius-small);cursor:pointer;font-weight:600;line-height:1.2;transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease}.nav-main a{flex:0 0 auto;position:relative;color:var(--ink-muted);white-space:nowrap}.nav-main a:after{content:"";position:absolute;inset-inline:.8rem;inset-block-end:.25rem;height:2px;background:var(--brand);transform:scaleX(0);transform-origin:center;transition:transform .15s ease}.nav-main a.active{color:var(--brand-strong);background:var(--brand-soft)}.nav-main a.active:after{transform:scaleX(1)}@media (hover: hover){.nav a:hover,.nav button:hover,.btn:hover{background:var(--brand-soft);border-color:var(--line);border-color:color-mix(in srgb,var(--brand) 25%,transparent);color:var(--brand-strong)}}.btn-primary{background:var(--brand);color:#fff;box-shadow:0 4px 12px #25549b2e}.btn-primary:hover{background:var(--brand-strong);color:#fff}.btn-accent{background:var(--accent);color:#fff}.btn-accent:hover{background:var(--accent-strong);color:#fff}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:color-mix(in srgb,var(--danger) 86%,black);color:#fff}.nav a:active,.nav button:active,.btn:active{filter:brightness(.92);transform:translateY(1px)}.btn:disabled,button:disabled{cursor:not-allowed;opacity:.55;box-shadow:none;transform:none}.main{padding:clamp(1.5rem,3vw,2.75rem) clamp(1rem,3vw,3rem) 4rem;width:min(1480px,100%);margin:0 auto}.page-title{font-family:var(--font-display);font-size:clamp(1.6rem,2vw,2.1rem);margin:0;color:var(--brand-strong)}.stack{display:grid;gap:1.35rem}.stack>.btn{width:max-content;justify-self:start;padding-inline:1.35rem}.stack>h1,.row>h1{font-family:var(--font-display);font-size:clamp(1.5rem,2vw,2rem);color:var(--brand-strong);margin:0}.row{display:flex;flex-wrap:wrap;gap:.85rem;align-items:center}.row>h1,.row>h2,.row>h3{text-wrap:balance}.table-actions{display:inline-flex;flex-wrap:wrap;gap:.35rem;align-items:center}.table-actions .btn{padding:.3rem .65rem;font-size:.88rem}@media (max-width: 980px){.topbar{grid-template-columns:auto 1fr}.topbar .nav-main{grid-column:1 / -1;grid-row:2;overflow-x:auto;flex-wrap:nowrap;padding-block-start:.25rem;overscroll-behavior-inline:contain;scrollbar-width:thin}.topbar .nav-actions{grid-column:2;grid-row:1}}@media (max-width: 640px){html{scroll-padding-block-start:9rem}.topbar{min-height:auto;padding:.55rem .75rem;gap:.35rem .6rem}.brand-logo{height:40px;max-width:92px}.nav a,.nav button,.btn{min-height:44px}.nav-actions{flex-wrap:nowrap;gap:.15rem}.nav-actions button{min-height:38px;max-inline-size:9.5rem;padding:.4rem .55rem;font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.main{padding:1.25rem .85rem 3rem}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.grid-form{display:grid;gap:1rem 1.15rem;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}.grid-form label{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem;color:var(--ink-muted)}.field{display:flex;flex-direction:column;gap:.4rem;font-size:.92rem;font-weight:600;color:var(--ink-muted);min-width:0;width:100%}.field input,.field select,.field textarea{width:100%;min-width:0;box-sizing:border-box}.grid-form input,.grid-form select,.grid-form textarea,.field input,.field select,.field textarea{min-height:46px;border:1px solid var(--line-strong);border-radius:var(--radius-small);padding:.65rem .8rem;background:#fff;color:var(--ink)}.board,.grid-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:1rem;padding:.15rem 0 1rem;overflow:visible;counter-reset:pipeline-stage}.column{background:var(--card);border:1px solid var(--line);border:1px solid color-mix(in srgb,var(--line) 82%,white);border-block-start:3px solid var(--brand);border-radius:var(--radius);min-height:unset;width:100%;display:flex;flex-direction:column;gap:.75rem;padding:.95rem;box-shadow:0 5px 18px #1b26360e;counter-increment:pipeline-stage}.column h3{margin:0;padding-bottom:.65rem;border-bottom:1px solid var(--line);font-size:.98rem;font-weight:700;color:var(--brand-strong);line-height:1.4}.column h3:before{content:counter(pipeline-stage,decimal-leading-zero);display:inline-grid;place-items:center;width:2rem;height:1.55rem;margin-inline-end:.55rem;border-radius:4px;color:#fff;background:var(--brand);font-size:.72rem;font-variant-numeric:tabular-nums;letter-spacing:.04em}.column-projects{display:grid;grid-template-columns:1fr;gap:.55rem}.column-header{padding:.75rem .85rem;border-bottom:1px solid var(--line);font-weight:600;font-size:.92rem;color:var(--brand)}.column-body{padding:.65rem;display:flex;flex-direction:column;gap:.55rem;flex:1}.card-link,.project-card{display:block;background:#fff;border:1px solid var(--line);border-radius:var(--radius-small);padding:.75rem .8rem;border-inline-start:3px solid transparent;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,background-color .15s ease}.project-card{margin:0}@media (hover: hover){.card-link:hover,.project-card:hover{transform:translateY(-2px);border-inline-start-color:var(--accent);background:#fffdf7;box-shadow:var(--shadow)}}.card-link:active,.project-card:active{border-inline-start-color:var(--accent);background:var(--brand-soft);filter:brightness(.96)}.card-link h3,.project-card strong{display:block;margin:0 0 .4rem;font-size:.98rem}.project-card .muted{margin-top:.25rem}.card,.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(1.1rem,2.5vw,1.65rem)}.card{overflow-x:auto}.panel label{display:flex;flex-direction:column;gap:.55rem;font-size:.9rem;color:var(--ink-muted);margin:0}.panel label>input,.panel label>select,.panel label>textarea{min-height:46px;border:1px solid var(--line-strong);border-radius:var(--radius-small);padding:.65rem .8rem;background:#fff;color:var(--ink);width:100%;box-sizing:border-box;margin-block-start:.15rem}.panel .row{gap:1rem;align-items:flex-end}.tabs{display:flex;gap:.25rem;flex-wrap:wrap;padding:.2rem;border:1px solid var(--line);border-radius:var(--radius);background:#fffefab3}.tabs .btn.active,.btn.active{background:var(--brand);color:#fff}.muted{color:var(--ink-muted);font-size:.85rem;line-height:1.45}.error-box{background:#8b2e2e14;border:1px solid rgba(139,46,46,.25);color:var(--danger);border-radius:var(--radius-small);padding:.85rem 1rem}.meta{color:var(--ink-muted);font-size:.82rem}.table{width:100%;border-collapse:collapse}.table thead{background:var(--surface)}.table th{color:var(--ink-muted);font-size:.8rem;font-weight:700;letter-spacing:.02em}.table th,.table td{text-align:start;padding:.85rem .65rem;border-bottom:1px solid var(--line);vertical-align:middle}.table tbody tr{transition:background-color .14s ease}@media (hover: hover){.table tbody tr:hover{background:var(--brand-soft)}}.badge{display:inline-flex;align-items:center;padding:.15rem .55rem;border-radius:4px;background:#c45c261f;color:var(--accent);font-size:.78rem}.warn-list{background:#9a6b1f1a;border:1px solid rgba(154,107,31,.25);border-radius:12px;padding:.75rem 1rem}.warn-field{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem;color:var(--ink)}.warn-field-reason{color:var(--ink-muted);font-weight:400}.warn-field input{border:1px solid var(--line);border-radius:10px;padding:.55rem .7rem;background:#fff;color:var(--ink);width:100%;max-width:28rem}.panel-inset{background:var(--surface);border-inline-start:3px solid var(--line-strong);border-radius:var(--radius-small);padding:1rem 1.15rem}.panel-inset>h3{margin:0 0 .35rem}.panel-inset .row{gap:1rem 1.25rem;margin-block:.35rem .75rem}.radio-row{display:inline-flex;align-items:center;gap:.45rem;font-size:.95rem;color:var(--ink);margin:0}input[type=radio],input[type=checkbox]{accent-color:var(--brand)}.form-actions{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:flex-start;padding-top:.25rem}.form-actions .btn{width:auto;justify-self:start}.stack-compact{gap:.65rem}.entity-actions{padding-top:.15rem}.field-feedback{margin:0;font-size:.84rem;line-height:1.45}.field-feedback.is-error{color:var(--danger)}.field-feedback.is-success{color:var(--brand-strong)}.required-label{display:inline-flex;align-items:baseline;gap:.22rem}.required-mark{color:var(--danger);font-weight:800}.required-fields-note{margin:0;color:var(--ink-muted);font-size:.82rem;line-height:1.45}.grid-form>.required-fields-note{grid-column:1 / -1}.form-status{margin:0;border-radius:var(--radius-small);padding:.7rem .85rem;font-size:.9rem;line-height:1.45}.form-status.is-error{color:var(--danger);background:color-mix(in srgb,var(--danger) 8%,white);border-inline-start:3px solid var(--danger)}.form-status.is-success{color:var(--brand-strong);background:color-mix(in srgb,var(--brand) 8%,white);border-inline-start:3px solid var(--brand)}.field-error{margin:0;color:var(--danger);font-size:.82rem;font-weight:500}[aria-invalid=true]{border-color:var(--danger)!important;background:color-mix(in srgb,var(--danger) 5%,white)!important}.offer-type-picker{display:grid;grid-template-columns:minmax(18rem,1fr) auto;gap:1rem;align-items:end}.offer-context-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.15rem}.offer-context-flow{display:grid;gap:1rem}.offer-context-flow>.offer-entity-panel{inline-size:100%}.offer-step-hint{margin:0;color:var(--ink-muted);line-height:1.55}.offer-entity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:start}.offer-entity-panel{min-width:0;margin:0;padding:1rem 1.1rem 1.15rem;border:0;border-inline-start:3px solid var(--line-strong);border-radius:var(--radius-small);background:var(--surface)}.offer-entity-panel:focus-within{border-inline-start-color:var(--brand)}.offer-entity-panel>legend{padding:0 .25rem;color:var(--ink);font-size:1.05rem;font-weight:700}.entity-mode-row{display:flex;flex-wrap:wrap;gap:.55rem 1.1rem;margin-block:.35rem .9rem}.offer-new-customer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.offer-invoice-name{grid-column:1 / -1}.offer-context-field{display:grid;align-content:start;gap:.4rem;min-width:0}.offer-context-hint{margin:0;padding:.9rem 1rem;border-inline-start:3px solid var(--brand);background:color-mix(in srgb,var(--brand) 7%,white);color:var(--ink-muted);line-height:1.5}.searchable-select-field{position:relative;display:grid;gap:.55rem;min-width:0;width:100%}.searchable-select-label{color:var(--ink-muted);font-size:.9rem;font-weight:600}.searchable-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;min-height:46px;padding:.65rem .8rem;border:1px solid var(--line-strong);border-radius:var(--radius-small);background:#fff;color:var(--ink);font:inherit;text-align:start;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.searchable-select-trigger[aria-expanded=true]{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--focus) 22%,transparent)}.searchable-select-trigger:disabled{cursor:not-allowed}.searchable-select-chevron{flex:0 0 auto;width:.75rem;height:.5rem;color:var(--brand);fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .15s ease}.searchable-select-trigger[aria-expanded=true] .searchable-select-chevron{transform:rotate(180deg)}@media (hover: hover){.searchable-select-trigger:not(:disabled):hover{border-color:var(--brand);background:var(--brand-soft)}}.searchable-select-trigger:not(:disabled):active{background:color-mix(in srgb,var(--brand-soft) 75%,var(--brand))}.searchable-select-menu{position:absolute;z-index:30;inset-inline:0;inset-block-start:calc(100% + .4rem);display:grid;gap:.45rem;padding:.55rem;border:1px solid var(--line-strong);border-radius:var(--radius-small);background:var(--card);box-shadow:var(--shadow-raised)}.searchable-select-search{width:100%;min-height:44px;box-sizing:border-box;border:1px solid var(--line-strong);border-radius:5px;padding:.6rem .75rem;background:#fff;color:var(--ink)}.searchable-select-list{display:grid;gap:.15rem;max-height:min(19rem,48vh);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.searchable-select-option{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;min-height:42px;padding:.6rem .7rem;border:0;border-inline-start:3px solid transparent;border-radius:5px;background:transparent;color:var(--ink);font:inherit;text-align:start;cursor:pointer}.searchable-select-option[aria-selected=true]{border-inline-start-color:var(--brand);background:var(--brand-soft);color:var(--brand-strong);font-weight:700}@media (hover: hover){.searchable-select-option:hover{background:color-mix(in srgb,var(--brand-soft) 72%,white)}}.searchable-select-option:focus-visible{position:relative;z-index:1}.searchable-select-option:active{background:color-mix(in srgb,var(--brand-soft) 70%,var(--brand))}.searchable-select-empty{margin:0;padding:.85rem .7rem;color:var(--ink-muted);text-align:center}@media (max-width: 640px){.offer-entity-grid,.offer-context-grid,.offer-new-customer-grid{grid-template-columns:1fr}.offer-invoice-name{grid-column:auto}.offer-type-picker{grid-template-columns:1fr}.offer-type-picker .form-actions,.offer-type-picker .btn-primary{width:100%}.ingest-summary-row{grid-template-columns:1fr;gap:.4rem}}@media (min-width: 641px) and (max-width: 980px){.offer-entity-grid{grid-template-columns:1fr}}@media (pointer: coarse){.grid-form input,.grid-form select,.grid-form textarea,.field input,.field select,.field textarea,.panel label>input,.panel label>select,.panel label>textarea{min-height:48px;font-size:1rem}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;align-items:center;justify-content:center;padding:1.25rem;background:#161c2685;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-dialog{display:flex;flex-direction:column;width:min(860px,100%);max-height:min(92vh,960px);overflow:hidden;background:#fff;border:1px solid rgba(213,205,192,.9);border-radius:16px;box-shadow:0 24px 64px #161c2647}.modal-dialog-wide{width:min(1100px,100%);max-height:min(94vh,980px)}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--line);background:#fff}.modal-heading{min-width:0;flex:1}.modal-title{margin:0;font-size:1.2rem;font-weight:650;letter-spacing:-.01em}.modal-filename{margin:.3rem 0 0;color:var(--ink-muted);font-size:.86rem;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.modal-close{flex-shrink:0;border-radius:999px;padding-inline:.95rem}.modal-warnings{margin:0;padding:.65rem 1.25rem;background:#f8f4ec;border-bottom:1px solid var(--line);color:var(--ink-muted);font-size:.86rem}.modal-warnings ul{margin:0;padding-inline-start:1.1rem}.modal-warnings li+li{margin-top:.2rem}.modal-status{margin:0;padding:.75rem 1.25rem}.modal-error-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem}.modal-error-actions p{margin:0}.modal-error{color:var(--danger)}.confirm-dialog{width:min(31rem,calc(100% - 2rem));margin:auto;padding:0;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 24px 64px #161c264d}.confirm-dialog::backdrop{background:#161c268c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.confirm-dialog-content{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.9rem;align-items:start;padding:1.35rem 1.4rem 1rem}.confirm-dialog-mark{display:grid;place-items:center;width:2.1rem;height:2.1rem;border-radius:50%;color:var(--danger);background:color-mix(in srgb,var(--danger) 10%,white);border:1px solid color-mix(in srgb,var(--danger) 30%,white);font-weight:800}.confirm-dialog-title{margin:0;font-size:1.15rem}.confirm-dialog-description{margin:.45rem 0 0;color:var(--ink-muted);line-height:1.55}.confirm-dialog-actions{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:flex-start;padding:1rem 1.4rem 1.25rem;border-top:1px solid var(--line)}.modal-body{flex:1;overflow:auto;background:#ebe6dc}.modal-body-native{background:#5b6573;display:flex;min-height:0}.document-preview-host{min-height:320px}.native-host{flex:1;display:flex;flex-direction:column;min-height:min(70vh,780px);background:#5b6573}.native-preview-frame{flex:1;width:100%;min-height:min(70vh,780px);border:0;background:#fff}.native-preview-pdf{display:flex;flex:1;flex-direction:column;align-items:center;gap:1rem;overflow:auto;padding:1rem;background:#3f4650}.native-preview-pdf-page{display:block;max-width:100%;height:auto!important;background:#fff;box-shadow:0 8px 24px #00000042}.native-preview-image{display:block;max-width:100%;max-height:min(70vh,780px);margin:1rem auto;object-fit:contain;background:#fff;border-radius:4px}.native-preview-docx{flex:1;overflow:auto;background:#e8e8e8;padding:1rem}.native-preview-docx .docx-wrapper{background:transparent;padding:0}.native-preview-docx .docx-wrapper>section.docx{margin:0 auto 1rem;box-shadow:0 8px 24px #0000002e}@media (max-width: 640px){.modal-overlay{padding:.5rem}.modal-dialog{max-height:96vh;border-radius:12px}.modal-header{padding:.85rem 1rem}}.auth-page{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:clamp(1rem,4vw,3rem);position:relative;overflow:hidden}.auth-page:before,.auth-page:after{content:"";position:fixed;pointer-events:none;border:1px solid rgba(37,84,155,.12);transform:rotate(-12deg)}.auth-page:before{width:min(46vw,680px);aspect-ratio:1;inset-inline-start:-12vw;inset-block-start:-24vw}.auth-page:after{width:min(30vw,460px);aspect-ratio:1;inset-inline-end:-8vw;inset-block-end:-14vw}.auth-card{width:min(440px,100%);background:var(--card);border:1px solid var(--line);border-block-start:4px solid var(--brand);border-radius:var(--radius);box-shadow:var(--shadow-raised);padding:clamp(1.5rem,5vw,2.35rem);display:grid;gap:1.15rem}.auth-brand{display:grid;gap:.65rem;justify-items:center;text-align:center;margin-bottom:.35rem}.auth-logo{width:min(220px,82%);height:auto;object-fit:contain}.auth-card .field{display:flex;flex-direction:column;gap:.4rem;font-size:.9rem;color:var(--ink-muted);min-width:0}.auth-card .field input{width:100%;min-width:0}.auth-actions{display:flex;flex-direction:column;align-items:center;gap:.85rem;margin-top:.35rem}.auth-card .btn-primary{width:auto;min-width:9.5rem;padding:.55rem 1.6rem;border-radius:var(--radius-small);font-weight:600}.auth-alt{color:var(--brand);font-size:.95rem;text-decoration:underline;text-underline-offset:.18em}.auth-alt:hover{color:var(--brand-strong)}.auth-card h1{margin:0;font-family:var(--font-display);color:var(--brand)}.ingest-upload{display:grid;gap:1rem}.file-drop-zone{position:relative;min-height:10rem;border:2px dashed var(--line-strong);border-radius:var(--radius);background:var(--surface);transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.file-drop-input{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.file-drop-input:disabled+.file-drop-content{cursor:not-allowed;opacity:.58}.file-drop-content{display:grid!important;place-items:center;align-content:center;gap:.35rem!important;min-height:10rem;padding:1.25rem;color:var(--ink)!important;text-align:center;cursor:pointer}.file-drop-icon{width:2rem;height:2rem;margin-block-end:.15rem;fill:none;stroke:var(--brand);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.file-drop-title{max-width:min(42rem,90%);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--brand-strong);font-size:1rem}.file-drop-hint{color:var(--ink-muted);font-size:.86rem;font-weight:400}.file-drop-browse{color:var(--brand);font-size:.9rem;font-weight:700;text-decoration:underline;text-underline-offset:.18em}.file-drop-zone.is-dragging,.file-drop-zone:has(.file-drop-input:focus-visible){border-color:var(--brand);background:var(--brand-soft);box-shadow:0 0 0 3px color-mix(in srgb,var(--focus) 28%,transparent)}@media (hover: hover){.file-drop-zone:hover{border-color:var(--brand);background:color-mix(in srgb,var(--brand-soft) 65%,white)}}.file-drop-zone.has-file{border-style:solid;border-color:color-mix(in srgb,var(--brand) 55%,var(--line));background:color-mix(in srgb,var(--brand-soft) 42%,white)}.file-drop-zone.is-compact,.file-drop-zone.is-compact .file-drop-content{min-height:8rem}.file-drop-zone.is-compact .file-drop-content{padding:.85rem 1rem}.file-drop-zone.is-compact .file-drop-icon{width:1.65rem;height:1.65rem;margin-block-end:0}.file-drop-zone.is-compact .file-drop-title{max-width:90%;font-size:.94rem}.file-drop-zone.is-compact .file-drop-hint,.file-drop-zone.is-compact .file-drop-browse{font-size:.82rem}.file-picker{display:flex;flex:1 1 280px;align-items:center;gap:.75rem;min-width:0;padding:.45rem .55rem;border:1px solid var(--line);border-radius:var(--radius-small);background:#fff}.file-picker-input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;clip-path:inset(50%)}.file-picker-trigger{flex-shrink:0;border:1px solid var(--line)!important;background:#2c57a414;color:var(--brand-strong)}.file-picker-input:focus-visible+.file-picker-trigger{outline:3px solid var(--focus);outline:3px solid color-mix(in srgb,var(--focus) 70%,white);outline-offset:3px}.file-picker-trigger:hover{background:#2c57a424}.file-picker-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-muted);font-size:.92rem}@media (max-width: 640px){.ingest-upload .form-actions,.ingest-upload .btn-primary{width:100%}}.ingest-summary-block{padding:.25rem .15rem .5rem}.ingest-summary{display:grid;gap:0;border:1px solid var(--line);border-radius:var(--radius-small);background:#fff;overflow:hidden}.ingest-summary-row{display:grid;grid-template-columns:minmax(9.5rem,11.5rem) minmax(0,1fr);gap:1rem;align-items:center;padding:.75rem 1rem;border-bottom:1px solid rgba(213,205,192,.55)}.ingest-summary-row:last-child{border-bottom:none}.ingest-summary-label{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.9rem;color:var(--ink-muted);line-height:1.35}.ingest-summary-value{min-width:0;width:100%}.ingest-summary-value select,.ingest-summary-value input,.ingest-summary-text{display:block;width:100%;max-width:none;box-sizing:border-box;border:1px solid var(--line-strong);border-radius:var(--radius-small);padding:.65rem .8rem;background:#fff;color:var(--ink);font:inherit;line-height:1.4;min-height:2.5rem}.ingest-summary-text{white-space:pre-wrap;word-break:break-word;background:#fffdf8e6}.confirm-banner{background:var(--brand-soft);border-inline-start:4px solid var(--brand);border-radius:var(--radius-small);padding:.95rem 1.15rem}.confirm-banner ul{margin:.4rem 0 0;padding-inline-start:1.2rem}.draft-status{margin:-.15rem 0 0;padding:.65rem .8rem;border-radius:var(--radius-small);background:color-mix(in srgb,var(--brand) 7%,white);color:var(--ink-muted);font-size:.84rem}.draft-status.is-error{color:var(--danger);background:color-mix(in srgb,var(--danger) 8%,white)}@media (max-width: 640px){.ingest-summary-row{grid-template-columns:1fr;gap:.4rem}}@media (max-width: 720px){.column-projects{grid-template-columns:1fr}}.preview{white-space:pre-wrap;font-family:var(--font-sans);line-height:1.55;max-height:480px;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:12px;padding:1rem}.empty{color:var(--ink-muted);font-size:.9rem;padding:.5rem}.stage-form{display:grid;gap:1rem 1.25rem;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.stage-form>label,.stage-attach{display:flex;flex-direction:column;gap:.55rem;min-width:0}.stage-attach-label{font-size:.9rem;color:var(--ink-muted)}.panel .stage-note textarea{min-height:8rem;resize:vertical}@media (max-width: 900px){.stage-form{grid-template-columns:1fr}}.panel>h2{margin:0}html select:not([multiple]){-moz-appearance:none;appearance:none;-webkit-appearance:none;min-height:46px;border:1px solid var(--line-strong);border-radius:var(--radius-small);padding-block:.55rem;padding-inline-start:.8rem;padding-inline-end:2.35rem;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%23596476' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:.75rem .5rem;color:var(--ink);line-height:1.2;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}html[dir=rtl] select:not([multiple]){background-position:left .85rem center}html[dir=ltr] select:not([multiple]){background-position:right .85rem center}html select:not([multiple]):hover:not(:disabled){border-color:var(--brand);background-color:color-mix(in srgb,var(--brand-soft) 30%,white)}html select:not([multiple]):active:not(:disabled){background-color:var(--brand-soft)}html select:not([multiple]):disabled{cursor:not-allowed;opacity:.58}
