:root{color:#101828;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--surface:#ffffffb8;--surface-strong:#ffffffe0;--surface-soft:#f5f9ffbf;--surface-tint:#e8f2ffbf;--line:#0f172a1f;--line-strong:#0f172a33;--muted:#667085;--header-blue:#dbeafe;--blue:#2563eb;--blue-soft:#dbeafed9;--green:#047857;--red:#b42318;--shadow:0 24px 48px #0f172a1f;--shadow-soft:0 12px 28px #0f172a14;background:#eef2f7;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-weight:400;line-height:1.45}*{box-sizing:border-box}html,body,#root{min-height:100%}body{min-width:320px;color:inherit;background:radial-gradient(circle at 0 0,#6366f138,#0000 24%),radial-gradient(circle at 100% 0,#0ea5e929,#0000 28%),linear-gradient(#eef2f8 0%,#f7f9fc 100%);margin:0}button,input,select{font:inherit}button{cursor:pointer}h1,h2,h3,p,pre,table{margin:0}.app-shell{min-height:100vh;padding:1.5rem}.window-shell{-webkit-backdrop-filter:blur(28px)saturate(160%);backdrop-filter:blur(28px)saturate(160%);max-width:1540px;box-shadow:var(--shadow);background:#ffffff61;border:1px solid #ffffff94;border-radius:1.75rem;margin:0 auto;overflow:hidden}.window-bar{border-bottom:1px solid var(--line);background:linear-gradient(#ffffffb8,#ffffff85);grid-template-columns:1fr auto;align-items:center;gap:1rem;padding:.85rem 1.15rem;display:grid}.window-title,.window-caption{color:var(--muted);font-size:.9rem}.window-title{color:#1f2937;justify-self:start;font-weight:700}.app-header{gap:.75rem;margin-bottom:.5rem;padding:1.35rem 1.35rem 0;display:grid}.app-header__copy{max-width:60rem;color:var(--muted);margin-top:.4rem}.app-main{padding:0 1.35rem 1.35rem;display:grid}.panel{background:var(--surface);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(24px)saturate(150%);backdrop-filter:blur(24px)saturate(150%);border:1px solid #ffffffa8;border-radius:1.5rem;gap:1rem;display:grid}.panel--table,.panel--detail{padding:1rem}.panel--detail{animation:.18s component-enter}@keyframes component-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.panel__header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.panel__header--detail{align-items:center}.panel__copy{color:var(--muted);max-width:60rem;margin-top:.45rem}.header-pills{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;display:flex}.pill{color:#334155;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffb8;border:1px solid #ffffffb8;border-radius:999px;align-items:center;min-height:2rem;padding:.35rem .8rem;font-size:.82rem;font-weight:600;display:inline-flex}.pill--accent{color:#1d4ed8;background:#2563eb1f;border-color:#2563eb2e}.eyebrow{color:#64748b;letter-spacing:.08em;text-transform:uppercase;font-size:.74rem;font-weight:700}.table-shell{overflow:auto}.company-table{border-collapse:separate;border-spacing:0;border:1px solid var(--line);background:#fff9;border-radius:1.1rem;width:100%;min-width:780px;overflow:hidden}.company-table thead th{z-index:1;background:linear-gradient(180deg, #eef6ff 0%, var(--header-blue) 100%);position:sticky;top:0}.company-table th,.company-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #0f172a14;padding:.72rem .8rem}.company-table tbody tr{transition:background .14s,transform .14s}.company-table tbody tr:hover{background:#ffffff94}.table-button,.primary-button,.back-button,.secondary-button{border-radius:999px;min-height:2.45rem;padding:.58rem 1rem;font-weight:700;transition:transform .14s,box-shadow .14s,background .14s}.table-button{background:linear-gradient(#fffffff5,#f1f5f9e0);border:1px solid #2563eb26;width:100%;box-shadow:inset 0 1px #ffffffd1,0 4px 14px #0f172a0f}.table-button--secondary{background:linear-gradient(#eff6fffa,#dbeafec7)}.table-button:hover,.primary-button:hover,.back-button:hover,.secondary-button:hover{transform:translateY(-1px);box-shadow:0 12px 22px #0f172a1f}.detail-actions{flex-wrap:wrap;justify-content:flex-end;gap:.75rem;display:flex}.back-button{background:#ffffffd1;border:1px solid #0f172a1f}.secondary-button{color:#1d4ed8;background:linear-gradient(#fffffff0,#e7f0ffe0);border:1px solid #2563eb24}.primary-button{color:#fff;background:linear-gradient(#4f8dff 0%,#2563eb 100%);border:1px solid #2563eb33}.primary-button:disabled{opacity:.6;cursor:not-allowed}.scheduler-list{gap:1rem;display:grid}.client-topbar{flex-wrap:nowrap;gap:.45rem;padding-bottom:.2rem;display:flex;overflow-x:auto}.client-topbar__item{color:#475569;white-space:nowrap;background:#ffffffc2;border:1px solid #0f172a1a;border-radius:999px;min-height:2.15rem;padding:.35rem .72rem;font-size:.82rem;font-weight:600;transition:background .14s,color .14s,box-shadow .14s}.client-topbar__item:hover{color:#1f2937;box-shadow:0 12px 22px #0f172a14}.client-topbar__item--active{color:#1d4ed8;background:linear-gradient(#eff6fffa,#dbeafec7);border-color:#2563eb29}.summary-strip{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.summary-card{box-shadow:var(--shadow-soft);background:linear-gradient(#ffffffc2,#edf5ffa8);border:1px solid #ffffffb8;border-radius:1.25rem;gap:.3rem;padding:1rem 1.1rem;display:grid}.summary-card__label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.76rem;font-weight:700}.summary-card strong{font-size:1.08rem}.summary-card p{color:var(--muted)}.endpoint-card__hint{color:var(--muted);background:#ffffff9e;border:1px solid #0f172a0f;border-radius:1rem;padding:.8rem .9rem;font-size:.9rem;line-height:1.5}.scheduler-row{box-shadow:var(--shadow-soft);background:linear-gradient(#ffffffe6,#f2f7ffc2);border:1px solid #ffffffb8;border-radius:1.35rem;gap:.9rem;padding:1rem;display:grid}.client-section-panel{min-height:260px}.client-section-panel--drag-active{background:linear-gradient(#fffffff5,#e8f4ffeb);border-color:#1d4ed847;box-shadow:0 0 0 3px #3b82f624}.document-upload-button{cursor:pointer;position:relative;overflow:hidden}.document-upload-controls{flex-wrap:wrap;align-items:end;gap:.85rem;display:flex}.document-date-field{min-width:180px}.document-upload-button input{opacity:0;cursor:pointer;position:absolute;inset:0}.document-upload-button--disabled{opacity:.7;pointer-events:none}.document-empty-state{background:#ffffffad;border:1px dashed #0f172a29;border-radius:1rem;gap:.45rem;padding:1rem 1.1rem;display:grid}.document-empty-state p{color:var(--muted)}.document-list{gap:.85rem;display:grid}.document-card{background:#ffffffd1;border:1px solid #0f172a14;border-radius:1rem;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.1rem;display:flex}.document-card__info{min-width:0}.document-card__info strong{overflow-wrap:anywhere;display:block}.document-card__info p{color:var(--muted);margin-top:.3rem}.document-card__actions{align-items:center;gap:.65rem;display:flex}.document-action-link,.document-delete-button{width:auto}.document-action-link{text-decoration:none}.scheduler-row__top{justify-content:space-between;align-items:start;gap:1rem;display:flex}.scheduler-row__description{color:var(--muted);margin-top:.35rem}.outlook-event{background:#ffffffb3;border:1px solid #0f172a14;border-radius:1rem;grid-template-columns:100px minmax(0,1fr);align-items:start;gap:1rem;padding:1rem;display:grid}.outlook-event__left-action{justify-content:center;display:flex}.endpoint-row__actions{gap:.6rem;display:grid}.outlook-event__content{gap:.9rem;display:grid}.outlook-title-row{display:grid}.outlook-title-field .input{min-height:2.85rem;font-size:1rem}.outlook-time-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:.85rem;display:grid}.outlook-time-row{grid-template-columns:minmax(190px,1fr) 160px;gap:.6rem;display:grid}.outlook-repeat-box{grid-column:1/-1;justify-content:flex-start;align-items:end;display:flex}.outlook-repeat-button{width:auto}.recurrence-editor{gap:1rem;display:grid}.recurrence-editor__main,.recurrence-range{background:#ffffffd1;border:1px solid #0f172a14;border-radius:1rem;gap:0;display:grid;overflow:hidden}.recurrence-editor__main{grid-template-columns:190px minmax(0,1fr)}.recurrence-nav{background:#f6f8fccc;border-right:1px solid #0f172a14;gap:.6rem;padding:1rem;display:grid}.recurrence-nav__option,.recurrence-checkbox,.recurrence-inline-option{align-items:center;gap:.5rem;display:inline-flex}.recurrence-content{display:grid}.recurrence-content__header{color:#475569;text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid #0f172a14;padding:.9rem 1rem;font-size:.85rem;font-weight:700}.recurrence-content__body{gap:.9rem;padding:1rem;display:grid}.recurrence-number{background:#fffffff5;border:1px solid #0f172a1f;border-radius:.75rem;width:5.75rem;min-height:2.4rem;padding:.5rem .65rem}.recurrence-select,.recurrence-date{min-width:7.5rem}.outlook-time-row .input[type=text]{text-align:center;min-width:0}.outlook-time-row .input[type=date]{min-width:190px}.recurrence-weekdays{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.recurrence-range__grid{gap:1rem;padding:1rem;display:grid}.recurrence-range__options{gap:.75rem;display:grid}.recurrence-inline-option--stack-mobile,.recurrence-inline-option--compact{flex-wrap:wrap}.toggle{background:#ffffffb8;border:1px solid #0f172a14;border-radius:999px;align-items:center;gap:.45rem;padding:.4rem .65rem;display:inline-flex}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;display:grid}.field{gap:.35rem;display:grid}.field span{color:var(--muted);font-size:.86rem;font-weight:600}.input{background:#ffffffe0;border:1px solid #0f172a1f;border-radius:.95rem;width:100%;min-height:2.5rem;padding:.6rem .78rem;box-shadow:inset 0 1px #ffffffa8}.input:focus{border-color:#2563eb6b;outline:none;box-shadow:0 0 0 4px #2563eb1f}.success-text{color:var(--green);font-weight:700}.error-text{color:var(--red);font-weight:700}@media (width<=900px){.app-shell{padding:1rem}.panel__header,.panel__header--detail{flex-direction:column;align-items:start}.header-pills,.detail-actions{justify-content:start}.summary-strip,.form-grid,.outlook-time-grid,.recurrence-weekdays,.outlook-event,.recurrence-editor__main,.outlook-time-row{grid-template-columns:1fr}.outlook-event__left-action{justify-content:start}.document-card{flex-direction:column;align-items:stretch}.document-card__actions{justify-content:flex-start}.recurrence-nav{border-bottom:1px solid #0f172a14;border-right:none}}.window-body{min-height:0;display:flex}.sidebar{border-right:1px solid var(--line);background:linear-gradient(#ffffff7a,#f5f9ff61);flex-direction:column;justify-content:space-between;width:200px;min-width:200px;padding:.75rem .5rem;display:flex}.sidebar__items{flex-direction:column;gap:.2rem;display:flex}.sidebar__item{all:unset;cursor:pointer;color:#475569;border-radius:.85rem;align-items:center;min-height:2.4rem;padding:.4rem .8rem;font-size:.88rem;font-weight:500;transition:background .14s,color .14s;display:flex}.sidebar__item:hover{color:#1f2937;background:#ffffffb8}.sidebar__item--active{color:#1d4ed8;background:#ffffffd6;font-weight:600;box-shadow:inset 0 1px #ffffffd1,0 4px 14px #0f172a0f}.content-area{flex-direction:column;flex:1;min-width:0;display:flex}.placeholder-panel{padding:1rem}.dataindsamling-layout{align-items:start;gap:1rem;display:flex}.dataindsamling-layout__main{flex:1;min-width:0}.endpoint-panel{width:300px;min-width:300px;box-shadow:var(--shadow-soft);background:#ffffffeb;border:1px solid #ffffffa8;border-radius:1.5rem;flex-direction:column;display:flex;overflow:hidden}.endpoint-panel__header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:.5rem;padding:.85rem 1rem;display:flex}.endpoint-panel__list{flex-direction:column;gap:.35rem;max-height:540px;padding:.75rem;display:flex;overflow-y:auto}.endpoint-panel__item{color:#111827;background:#fff;border:1px solid #0f172a0f;border-radius:.6rem;padding:.5rem .8rem;font-size:1rem;font-weight:500}.endpoint-panel__item--active{color:#047857;background:#0478571a;border-color:#04785726;font-weight:700}.add-company-bar{justify-content:flex-end;padding:0 0 .5rem;display:flex}.add-company-form{border:1px solid var(--line);background:#fff9;border-radius:1.25rem;align-items:end;gap:.85rem;margin-bottom:.75rem;padding:.75rem 1rem;display:flex}.add-company-form .field{flex:1}.add-company-form__actions{flex-shrink:0;gap:.5rem;display:flex}.table-actions{gap:.4rem;display:flex}.delete-button{color:#b91c1c;background:#fef2f2cc;border:1px solid #dc262626;border-radius:999px;min-height:2.45rem;padding:.58rem .8rem;font-size:.82rem;font-weight:700;transition:transform .14s,box-shadow .14s,background .14s}.delete-button:hover{background:#fecacacc;transform:translateY(-1px);box-shadow:0 12px 22px #0f172a1f}.login-page{place-items:center;min-height:100vh;padding:1.5rem;display:grid}.login-card{-webkit-backdrop-filter:blur(28px)saturate(160%);backdrop-filter:blur(28px)saturate(160%);width:100%;max-width:400px;box-shadow:var(--shadow);text-align:center;background:#ffffffb8;border:1px solid #ffffff94;border-radius:1.75rem;gap:1.25rem;padding:2.5rem 2rem;display:grid}.login-card h1{font-size:1.5rem;font-weight:700}.login-card__desc,.login-card__loading{color:var(--muted)}.login-card__button{color:#fff;background:linear-gradient(#4f8dff 0%,#2563eb 100%);border:1px solid #2563eb33;border-radius:999px;justify-content:center;align-items:center;min-height:2.75rem;padding:.7rem 1.5rem;font-weight:700;transition:transform .14s,box-shadow .14s;display:inline-flex}.login-card__button:hover{transform:translateY(-1px);box-shadow:0 12px 22px #0f172a1f}.logout-button{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:.25rem .5rem;font-size:.82rem;text-decoration:underline}.logout-button:hover{color:#1f2937}.window-caption{color:var(--muted);align-items:center;gap:.5rem;font-size:.9rem;display:flex}.run-history-panel{margin-top:1rem;padding:1rem}.run-history-table{border-collapse:separate;border-spacing:0;border:1px solid var(--line);background:#fff9;border-radius:1.1rem;width:100%;overflow:hidden}.run-history-table thead th{background:linear-gradient(180deg, #eef6ff 0%, var(--header-blue) 100%)}.run-history-table th,.run-history-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #0f172a14;padding:.6rem .8rem;font-size:.85rem}.run-history-table tbody tr:hover{background:#ffffff94}.run-history-table .error-cell{color:var(--red);text-overflow:ellipsis;white-space:nowrap;max-width:300px;overflow:hidden}.status-badge{border-radius:999px;padding:.15rem .5rem;font-size:.78rem;font-weight:700;display:inline-block}.status-success{color:#047857;background:#0478571f}.status-failed{color:#b42318;background:#b423181f}.status-running{color:#1d4ed8;background:#2563eb1f}.fetched-files-filters{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:flex-end;gap:1rem;padding:1rem 1.5rem;display:flex}.fetched-files-filters .field{flex-direction:column;gap:.25rem;display:flex}.fetched-files-filters .field span{color:var(--muted);font-size:.78rem;font-weight:600}.fetched-files-filters .input,.fetched-files-filters select.input{min-width:160px}.fetched-files-filter-actions{align-items:flex-end;gap:.5rem;padding-bottom:.1rem;display:flex}.modal-overlay{z-index:1000;background:#00000073;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.modal-content{box-shadow:var(--shadow);background:#fff;border-radius:12px;flex-direction:column;max-width:90vw;max-height:85vh;display:flex;overflow:hidden}.modal-content--wide{width:90vw}.modal-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:1rem 1.25rem;font-size:1rem;display:flex}.csv-preview-scroll{flex:1;overflow:auto}.csv-table{border-collapse:collapse;width:100%;font-size:.78rem}.csv-table th,.csv-table td{border:1px solid var(--line);text-align:left;white-space:nowrap;text-overflow:ellipsis;max-width:300px;padding:.35rem .6rem;overflow:hidden}.csv-table th{background:var(--blue-soft);font-weight:600;position:sticky;top:0}.csv-table tbody tr:nth-child(2n){background:var(--surface-soft)}.csv-table tbody tr:hover{background:var(--surface-tint)}
