@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap);*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }
/* ! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com */*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:Inter,system-ui,sans-serif;font-variation-settings:normal;line-height:1.5;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:JetBrains Mono,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.flex{display:flex}.table{display:table}.grow{flex-grow:1}.pl-1{padding-left:.25rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pl-5{padding-left:1.25rem}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#f0f9ff}::-webkit-scrollbar-thumb{background:#bae6fd;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#7dd3fc}::selection{background:#0ea5e933;color:#075985}*{box-sizing:border-box;margin:0;padding:0}:root{--sky-50:#f0f9ff;--sky-100:#e0f2fe;--sky-200:#bae6fd;--sky-300:#7dd3fc;--sky-400:#38bdf8;--sky-500:#0ea5e9;--sky-600:#0284c7;--sky-700:#0369a1;--sky-800:#075985;--primary:var(--sky-500);--primary-dark:var(--sky-700);--bg-app:#f8fbff;--bg-panel:#fff;--bg-subtle:#f3f8fd;--text-900:#0f172a;--text-700:#334155;--text-500:#64748b;--text-400:#94a3b8;--text-300:#cbd5e1;--border:#e2e8f0;--border-soft:#eef2f7;--success:#10b981;--success-bg:#ecfdf5;--warn:#f59e0b;--warn-bg:#fffbeb;--danger:#ef4444;--danger-bg:#fef2f2;--sidebar-width:260px;--sidebar-collapsed:72px;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--font-mono:"JetBrains Mono",monospace;--shadow-xs:0 1px 2px #0f172a0a;--shadow-sm:0 2px 6px #0f172a0d;--shadow:0 6px 18px #0ea5e914;--shadow-md:0 10px 25px #0ea5e91a;--radius-sm:8px;--radius:12px;--radius-lg:16px;--radius-xl:20px;--transition:180ms cubic-bezier(0.4,0,0.2,1)}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(1200px 600px at 80% -20%,#e0f2fe 0,#0000 60%),radial-gradient(900px 500px at -10% 100%,#f0f9ff 0,#0000 70%),#f8fbff;background:radial-gradient(1200px 600px at 80% -20%,var(--sky-100) 0,#0000 60%),radial-gradient(900px 500px at -10% 100%,var(--sky-50) 0,#0000 70%),var(--bg-app);color:#0f172a;color:var(--text-900);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-sans);font-size:14px;line-height:1.55}.app,body{min-height:100vh}.app{display:flex}.main-content{flex:1 1;margin-left:260px;margin-left:var(--sidebar-width);min-height:100vh;transition:margin-left .18s cubic-bezier(.4,0,.2,1);transition:margin-left var(--transition)}.main-content.sidebar-closed{margin-left:72px;margin-left:var(--sidebar-collapsed)}.navigation{background:#fff;background:var(--bg-panel);border-right:1px solid #e2e8f0;border-right:1px solid var(--border);bottom:0;display:flex;flex-direction:column;left:0;overflow:hidden;position:fixed;top:0;transition:width .18s cubic-bezier(.4,0,.2,1);transition:width var(--transition);width:260px;width:var(--sidebar-width);z-index:100}.navigation.collapsed{width:72px;width:var(--sidebar-collapsed)}.nav-header{border-bottom:1px solid #eef2f7;border-bottom:1px solid var(--border-soft);gap:.5rem;justify-content:space-between;padding:1rem}.nav-brand,.nav-header{align-items:center;display:flex}.nav-brand{gap:.625rem;min-width:0}.brand-icon-wrapper{align-items:center;background:linear-gradient(135deg,#38bdf8,#0284c7);background:linear-gradient(135deg,var(--sky-400),var(--sky-600));border-radius:10px;box-shadow:0 6px 14px #0ea5e959;color:#fff;display:flex;flex-shrink:0;height:34px;justify-content:center;width:34px}.brand-icon-wrapper.large{height:48px;width:48px}.nav-brand h1{color:#0f172a;color:var(--text-900);font-size:1.05rem;font-weight:700;letter-spacing:.04em;line-height:1.1}.nav-brand p{font-size:.7rem;margin-top:2px}.nav-brand p,.nav-toggle{color:#64748b;color:var(--text-500)}.nav-toggle{align-items:center;background:#f3f8fd;background:var(--bg-subtle);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;cursor:pointer;display:flex;height:28px;justify-content:center;transition:all .18s cubic-bezier(.4,0,.2,1);transition:all var(--transition);width:28px}.nav-toggle:hover{background:#f0f9ff;background:var(--sky-50);border-color:#bae6fd;border-color:var(--sky-200);color:#0284c7;color:var(--sky-600)}.nav-user{border-bottom:1px solid #eef2f7;border-bottom:1px solid var(--border-soft);gap:.625rem;padding:.75rem 1rem}.nav-user,.user-avatar{align-items:center;display:flex}.user-avatar{background:linear-gradient(135deg,#e0f2fe,#7dd3fc);background:linear-gradient(135deg,var(--sky-100),var(--sky-300));border-radius:50%;color:#0369a1;color:var(--sky-700);flex-shrink:0;font-size:.8rem;font-weight:600;height:36px;justify-content:center;width:36px}.user-info{min-width:0}.user-name{color:#0f172a;color:var(--text-900);font-size:.82rem;font-weight:600}.user-role{color:#64748b;color:var(--text-500);font-size:.7rem}.nav-menu{flex:1 1;list-style:none;overflow-y:auto;padding:.5rem .5rem 1rem}.nav-section{color:#94a3b8;color:var(--text-400);font-size:.64rem;font-weight:700;letter-spacing:.08em;padding:.75rem .75rem .3rem;text-transform:uppercase}.nav-link{align-items:center;border-radius:10px;color:#334155;color:var(--text-700);display:flex;font-size:.82rem;font-weight:500;gap:.625rem;margin:1px 0;padding:.55rem .75rem;text-decoration:none;transition:all .18s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.nav-link:hover{background:#f0f9ff;background:var(--sky-50)}.nav-link.active,.nav-link:hover{color:#0369a1;color:var(--sky-700)}.nav-link.active{background:linear-gradient(90deg,#e0f2fe,#f0f9ff);background:linear-gradient(90deg,var(--sky-100),var(--sky-50));box-shadow:inset 2px 0 0 #0ea5e9;box-shadow:inset 2px 0 0 var(--sky-500)}.nav-footer{border-top:1px solid #eef2f7;border-top:1px solid var(--border-soft);padding:.75rem 1rem}.nav-logout{align-items:center;background:#0000;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;color:#64748b;color:var(--text-500);cursor:pointer;display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-sans);font-size:.8rem;font-weight:500;gap:.5rem;padding:.55rem .75rem;transition:all .18s cubic-bezier(.4,0,.2,1);transition:all var(--transition);width:100%}.nav-logout:hover{background:#fef2f2;background:var(--danger-bg);border-color:#fecaca;color:#ef4444;color:var(--danger)}.page-container{max-width:1500px;padding:1.75rem 2rem}.page-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.page-title{color:#0f172a;color:var(--text-900);font-size:1.55rem;font-weight:700;letter-spacing:-.01em}.page-subtitle{color:#64748b;color:var(--text-500);font-size:.9rem;margin-top:.25rem}.header-date{background:#fff;background:var(--bg-panel);gap:.5rem;padding:.45rem .85rem}.back-link,.header-date{align-items:center;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:999px;color:#64748b;color:var(--text-500);display:inline-flex;font-size:.78rem}.back-link{background:#0000;cursor:pointer;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-sans);gap:.4rem;margin-bottom:1rem;padding:.4rem .75rem;transition:all .18s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.back-link:hover{background:#f0f9ff;background:var(--sky-50);border-color:#bae6fd;border-color:var(--sky-200);color:#0369a1;color:var(--sky-700)}.page-title-row{align-items:center;display:flex;gap:.85rem}.page-icon-wrapper{align-items:center;background:linear-gradient(135deg,#e0f2fe,#f0f9ff);background:linear-gradient(135deg,var(--sky-100),var(--sky-50));border-radius:14px;box-shadow:0 4px 10px #0ea5e91f;color:#0284c7;color:var(--sky-600);display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.page-actions{flex-wrap:wrap;gap:.5rem}.empty-state,.page-actions{align-items:center;display:flex}.empty-state{color:#64748b;color:var(--text-500);flex-direction:column;gap:.6rem;justify-content:center;padding:2.5rem 1rem;text-align:center}.empty-state svg{color:#7dd3fc;color:var(--sky-300)}.empty-state p{font-size:.88rem}.empty-state.compact{padding:1.25rem .5rem}.btn-ghost,.btn-link,.btn-primary{align-items:center;border-radius:10px;cursor:pointer;display:inline-flex;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-sans);font-weight:500;gap:.4rem;transition:all .18s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.btn-primary{background:linear-gradient(135deg,#0ea5e9,#0284c7);background:linear-gradient(135deg,var(--sky-500),var(--sky-600));border:none;box-shadow:0 6px 14px #0ea5e940;color:#fff;font-size:.85rem;font-weight:600;padding:.55rem 1rem}.btn-primary:hover{box-shadow:0 10px 22px #0ea5e94d;filter:brightness(1.05)}.btn-primary.btn-large{font-size:.9rem;justify-content:center;margin-top:.5rem;padding:.75rem 1rem;width:100%}.btn-primary.btn-small{font-size:.75rem;padding:.35rem .75rem}.btn-ghost{background:#fff;background:var(--bg-panel);border:1px solid #e2e8f0;border:1px solid var(--border);color:#334155;color:var(--text-700);font-size:.8rem;padding:.5rem .85rem}.btn-ghost:hover{background:#f0f9ff;background:var(--sky-50);border-color:#bae6fd;border-color:var(--sky-200);color:#0369a1;color:var(--sky-700)}.btn-ghost.btn-large{font-size:.85rem;justify-content:center;margin-top:.6rem;padding:.7rem;width:100%}.btn-ghost.btn-small{font-size:.72rem;padding:.3rem .65rem}.btn-link{background:none;border:none;color:#0284c7;color:var(--sky-600);font-size:.8rem;padding:.2rem}.btn-link:hover{color:#0369a1;color:var(--sky-700);text-decoration:underline}.card{background:#fff;background:var(--bg-panel);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 1px 2px #0f172a0a;box-shadow:var(--shadow-xs);overflow:hidden}.card-header{border-bottom:1px solid #eef2f7;border-bottom:1px solid var(--border-soft);flex-wrap:wrap;gap:.75rem;justify-content:space-between;padding:.9rem 1.2rem}.card-header,.card-title{align-items:center;display:flex}.card-title{gap:.5rem}.card-title h2{color:#0f172a;color:var(--text-900);font-size:.95rem;font-weight:600}.card-title svg{color:#0ea5e9;color:var(--sky-500)}.card-body{padding:1rem 1.2rem 1.2rem}.meta-id,.meta-line{color:#64748b;color:var(--text-500);font-size:.78rem}.kpi-grid{grid-gap:1rem;display:grid;gap:1rem;margin-bottom:1.25rem}.kpi-grid-4{grid-template-columns:repeat(4,1fr)}.kpi-card{align-items:center;background:#fff;background:var(--bg-panel);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 1px 2px #0f172a0a;box-shadow:var(--shadow-xs);cursor:pointer;display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-sans);gap:.85rem;padding:1rem 1.15rem;text-align:left;transition:all .18s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.kpi-card:hover{border-color:#bae6fd;border-color:var(--sky-200);box-shadow:0 6px 18px #0ea5e914;box-shadow:var(--shadow);transform:translateY(-1px)}.kpi-icon{align-items:center;background:linear-gradient(135deg,#e0f2fe,#f0f9ff);background:linear-gradient(135deg,var(--sky-100),var(--sky-50));border-radius:12px;color:#0284c7;color:var(--sky-600);display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.kpi-card.kpi-amber .kpi-icon{background:linear-gradient(135deg,#fef3c7,#fffbeb);color:#b45309}.kpi-body{display:flex;flex:1 1;flex-direction:column;min-width:0}.kpi-label{color:#64748b;color:var(--text-500);font-size:.78rem;font-weight:500}.kpi-value{color:#0f172a;color:var(--text-900);font-size:1.5rem;font-weight:700;letter-spacing:-.01em}.kpi-arrow{color:#94a3b8;color:var(--text-400)}.alert-banner{align-items:center;background:#fffbeb;background:var(--warn-bg);border:1px solid #fde68a;border-radius:16px;border-radius:var(--radius-lg);display:flex;gap:1rem;margin-bottom:1.25rem;padding:.9rem 1.2rem}.alert-banner-icon{align-items:center;background:#fff;border-radius:10px;color:#b45309;display:flex;flex-shrink:0;height:38px;justify-content:center;width:38px}.alert-banner-body{flex:1 1}.alert-banner-body h3{color:#78350f;font-size:.92rem;margin-bottom:.15rem}.alert-banner-body p{color:#92400e;font-size:.8rem}.info-banner{align-items:flex-start;background:#f0f9ff;background:var(--sky-50);border:1px solid #e0f2fe;border:1px solid var(--sky-100);border-radius:16px;border-radius:var(--radius-lg);color:#075985;color:var(--sky-800);display:flex;font-size:.85rem;gap:.75rem;margin-bottom:1.25rem;padding:.85rem 1rem}.info-banner svg{color:#0284c7;color:var(--sky-600);flex-shrink:0;margin-top:2px}.dashboard-grid,.grid-2{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(2,1fr)}.grid-3{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(3,1fr)}.info-grid{grid-gap:.85rem 1.25rem;display:grid;gap:.85rem 1.25rem;grid-template-columns:repeat(2,1fr)}.info-grid>div{display:flex;flex-direction:column;gap:.25rem}.info-label{align-items:center;color:#64748b;color:var(--text-500);display:inline-flex;font-size:.7rem;gap:.3rem;letter-spacing:.04em;text-transform:uppercase}.info-value{color:#0f172a;color:var(--text-900);font-size:.9rem;font-weight:500}.info-value.strong{color:#0369a1;color:var(--sky-700);font-weight:700}.pipeline{display:flex;flex-direction:column;gap:.5rem;list-style:none}.pipeline-item{background:#f3f8fd;background:var(--bg-subtle);border:1px solid #eef2f7;border:1px solid var(--border-soft);border-radius:10px;gap:.75rem;padding:.75rem}.pipeline-index,.pipeline-item{align-items:center;display:flex}.pipeline-index{background:#fff;border:1px solid #bae6fd;border:1px solid var(--sky-200);border-radius:8px;color:#0284c7;color:var(--sky-600);flex-shrink:0;font-size:.8rem;font-weight:700;height:28px;justify-content:center;width:28px}.pipeline-body{display:flex;flex:1 1;flex-direction:column}.pipeline-body strong{color:#0f172a;color:var(--text-900);font-size:.85rem}.pipeline-body span{color:#64748b;color:var(--text-500);font-size:.75rem}.pipeline-count{background:#e0f2fe;background:var(--sky-100);border-radius:999px;color:#0369a1;color:var(--sky-700);font-size:.8rem;font-weight:700;padding:.2rem .6rem}.entrepot-row{border-bottom:1px dashed #eef2f7;border-bottom:1px dashed var(--border-soft);display:flex;flex-direction:column;gap:.4rem;padding:.6rem 0}.entrepot-row:last-child{border-bottom:none}.entrepot-row-head{align-items:center;display:flex;justify-content:space-between}.entrepot-name{color:#0f172a;color:var(--text-900);font-size:.88rem;font-weight:600}.entrepot-sub{color:#64748b;color:var(--text-500);font-size:.75rem}.entrepot-count{color:#0369a1;color:var(--sky-700);font-family:JetBrains Mono,monospace;font-family:var(--font-mono);font-size:.82rem;font-weight:600}.progress{background:#f3f8fd;background:var(--bg-subtle);border-radius:999px;height:6px;overflow:hidden;width:100%}.progress-bar{background:linear-gradient(90deg,#38bdf8,#0284c7);background:linear-gradient(90deg,var(--sky-400),var(--sky-600));border-radius:999px;height:100%;transition:width .18s cubic-bezier(.4,0,.2,1);transition:width var(--transition)}.data-table{border-collapse:initial;border-spacing:0;width:100%}.data-table thead th{background:#f3f8fd;background:var(--bg-subtle);border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);color:#64748b;color:var(--text-500);font-size:.7rem;font-weight:600;letter-spacing:.05em;padding:.6rem .9rem;text-align:left;text-transform:uppercase;white-space:nowrap}.data-table tbody td{border-bottom:1px solid #eef2f7;border-bottom:1px solid var(--border-soft);color:#334155;color:var(--text-700);font-size:.85rem;padding:.7rem .9rem;vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr.hoverable:hover{background:#f0f9ff;background:var(--sky-50)}.data-table.clickable tbody tr.clickable{cursor:pointer}.data-table.clickable tbody tr.clickable:hover{background:#f0f9ff;background:var(--sky-50)}.data-table tfoot td{background:#f3f8fd;background:var(--bg-subtle);border-top:1px solid #e2e8f0;border-top:1px solid var(--border);font-size:.85rem;padding:.7rem .9rem}.cell-strong{align-items:center;display:flex;gap:.6rem}.cell-strong p{color:#0f172a;color:var(--text-900);font-weight:600}.cell-icon{color:#0ea5e9;color:var(--sky-500);flex-shrink:0}.mono{color:#334155;color:var(--text-700);font-family:JetBrains Mono,monospace;font-family:var(--font-mono);font-size:.82em}.strong{color:#0f172a;color:var(--text-900);font-weight:700}.badge{align-items:center;border:1px solid #0000;border-radius:999px;display:inline-flex;font-size:.72rem;font-weight:600;gap:.25rem;padding:.18rem .55rem;white-space:nowrap}.badge-ok{background:#ecfdf5;background:var(--success-bg);border-color:#a7f3d0;color:#065f46}.badge-info{background:#f0f9ff;background:var(--sky-50);color:#0369a1;color:var(--sky-700)}.badge-info,.badge-sky{border-color:#bae6fd;border-color:var(--sky-200)}.badge-sky{background:#e0f2fe;background:var(--sky-100);color:#075985;color:var(--sky-800)}.badge-warn{background:#fffbeb;background:var(--warn-bg);border-color:#fde68a;color:#92400e}.badge-danger{background:#fef2f2;background:var(--danger-bg);border-color:#fecaca;color:#991b1b}.badge-neutral{border-color:#e2e8f0;border-color:var(--border);color:#64748b;color:var(--text-500)}.badge-neutral,.chip{background:#f3f8fd;background:var(--bg-subtle)}.chip{align-items:center;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:999px;color:#334155;color:var(--text-700);display:inline-flex;font-size:.72rem;gap:.25rem;margin-bottom:.2rem;margin-right:.25rem;padding:.15rem .55rem}.chip-sky{background:#f0f9ff;background:var(--sky-50);border-color:#bae6fd;border-color:var(--sky-200);color:#0369a1;color:var(--sky-700)}.toolbar{flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.search-input,.toolbar{align-items:center;display:flex}.search-input{background:#fff;background:var(--bg-panel);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;gap:.5rem;min-width:260px;padding:.5rem .75rem}.search-input svg{color:#94a3b8;color:var(--text-400);flex-shrink:0}.search-input input{background:#0000;border:none;color:#0f172a;color:var(--text-900);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-sans);font-size:.85rem;outline:none;width:100%}.search-input input::placeholder{color:#94a3b8;color:var(--text-400)}.search-input.grow{flex:1 1}.seg-control{background:#fff;background:var(--bg-panel);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;display:inline-flex;gap:2px;padding:3px}.seg-control button{align-items:center;background:#0000;border:none;border-radius:8px;color:#64748b;color:var(--text-500);cursor:pointer;display:inline-flex;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-sans);font-size:.78rem;font-weight:500;gap:.3rem;padding:.4rem .85rem;transition:all .18s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.seg-control button:hover{color:#0369a1;color:var(--sky-700)}.seg-control button.active{background:#0ea5e9;background:var(--sky-500);box-shadow:0 2px 6px #0ea5e94d;color:#fff}.tabs{background:#fff;background:var(--bg-panel);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;display:inline-flex;gap:.3rem;margin-bottom:1rem;padding:.25rem}.tab{background:#0000;border:none;border-radius:8px;color:#64748b;color:var(--text-500);cursor:pointer;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-sans);font-size:.82rem;font-weight:500;padding:.45rem .95rem}.tab.active,.tab:hover{color:#0369a1;color:var(--sky-700)}.tab.active{background:#e0f2fe;background:var(--sky-100)}.split-layout{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:300px 1fr}.split-list{background:#fff;background:var(--bg-panel);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:16px;border-radius:var(--radius-lg);height:-webkit-fit-content;height:fit-content;padding:.85rem;position:-webkit-sticky;position:sticky;top:1rem}.split-list .search-input{margin-bottom:.75rem;min-width:0;width:100%}.split-detail{min-width:0}.list{display:flex;flex-direction:column;gap:.25rem;list-style:none}.list-item{align-items:center;background:#0000;border:1px solid #0000;border-radius:10px;cursor:pointer;display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-sans);gap:.6rem;padding:.55rem .6rem;text-align:left;transition:all .18s cubic-bezier(.4,0,.2,1);transition:all var(--transition);width:100%}.list-item.active,.list-item:hover{background:#f0f9ff;background:var(--sky-50)}.list-item.active{border-color:#bae6fd;border-color:var(--sky-200)}.list-item-icon{align-items:center;background:#e0f2fe;background:var(--sky-100);border-radius:8px;color:#0284c7;color:var(--sky-600);display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.list-item-body{display:flex;flex:1 1;flex-direction:column;min-width:0}.list-item-body strong{color:#0f172a;color:var(--text-900);font-size:.82rem}.list-item-body span,.list-item-body strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-item-body span{color:#64748b;color:var(--text-500);font-size:.73rem}.list-item-count{background:#e0f2fe;background:var(--sky-100);border-radius:999px;color:#0369a1;color:var(--sky-700);font-size:.7rem;font-weight:600;padding:.12rem .45rem}.cmd-row{align-items:center;border-bottom:1px solid #eef2f7;border-bottom:1px solid var(--border-soft);cursor:pointer;display:flex;justify-content:space-between;padding:.6rem .1rem;transition:background .18s cubic-bezier(.4,0,.2,1);transition:background var(--transition)}.cmd-row:hover{background:#f0f9ff;background:var(--sky-50)}.cmd-row:last-child{border-bottom:none}.cmd-row-id{color:#0f172a;color:var(--text-900);font-family:JetBrains Mono,monospace;font-family:var(--font-mono);font-size:.82rem;font-weight:600}.cmd-row-sub{color:#64748b;color:var(--text-500);font-size:.75rem}.cmd-row-right{align-items:center;display:flex;gap:.75rem}.stepper{align-items:stretch;background:#f3f8fd;background:var(--bg-subtle);border:1px solid #eef2f7;border:1px solid var(--border-soft);border-radius:12px;margin-top:1.2rem;overflow-x:auto;padding:.85rem}.step,.stepper{display:flex;gap:.5rem}.step{align-items:center;background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;flex:1 1;min-width:180px;opacity:.7;padding:.5rem}.step.done{background:#f0fdf4;border-color:#a7f3d0;opacity:1}.step.active{background:#f0f9ff;background:var(--sky-50);border-color:#7dd3fc;border-color:var(--sky-300);box-shadow:0 0 0 3px #0ea5e914;opacity:1}.step-bubble{align-items:center;background:#f3f8fd;background:var(--bg-subtle);border-radius:50%;color:#64748b;color:var(--text-500);display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.step.done .step-bubble{background:#10b981;background:var(--success);color:#fff}.step.active .step-bubble{background:#0ea5e9;background:var(--sky-500);color:#fff}.step-body{display:flex;flex-direction:column;min-width:0}.step-body strong{color:#0f172a;color:var(--text-900);font-size:.82rem}.step-body span{color:#64748b;color:var(--text-500);font-size:.7rem}.step-arrow{color:#cbd5e1;color:var(--text-300);flex-shrink:0}.hover-tooltip,.plan-tooltip{background:#fff;background:var(--bg-panel);border:1px solid #bae6fd;border:1px solid var(--sky-200);border-radius:10px;box-shadow:0 10px 25px #0ea5e91a;box-shadow:var(--shadow-md);font-size:.78rem;min-width:240px;padding:.7rem .85rem;position:absolute;z-index:50}.hover-tooltip{margin-top:.5rem}.plan-tooltip{left:28px;top:-8px}.tooltip-title{color:#0369a1;color:var(--sky-700);font-size:.85rem;font-weight:700;margin-bottom:.4rem}.tooltip-row{display:flex;gap:.75rem;justify-content:space-between;padding:.18rem 0}.tooltip-key{align-items:center;color:#64748b;color:var(--text-500);display:inline-flex;gap:.3rem}.confidentiel-mark{color:#f59e0b;color:var(--warn)}.tooltip-sep{background:#eef2f7;background:var(--border-soft);height:1px;margin:.35rem 0}.plan-canvas{background:repeating-linear-gradient(0deg,#fff,#fff 24px,#f0f9ff 0,#f0f9ff 25px),repeating-linear-gradient(90deg,#0000,#0000 24px,#f0f9ff 0,#f0f9ff 25px);background:repeating-linear-gradient(0deg,var(--bg-panel),var(--bg-panel) 24px,var(--sky-50) 24px,var(--sky-50) 25px),repeating-linear-gradient(90deg,#0000,#0000 24px,var(--sky-50) 24px,var(--sky-50) 25px);border:1px dashed #bae6fd;border:1px dashed var(--sky-200);border-radius:12px;height:420px;overflow:hidden;position:relative}.plan-canvas-tablet{border:10px solid #1e293b;border-radius:22px;margin:0 auto;max-width:760px}.plan-grid{background-image:linear-gradient(#e0f2fe 1px,#0000 0),linear-gradient(90deg,#e0f2fe 1px,#0000 0);background-image:linear-gradient(var(--sky-100) 1px,#0000 1px),linear-gradient(90deg,var(--sky-100) 1px,#0000 1px);background-size:40px 40px;inset:0;opacity:.35;pointer-events:none;position:absolute}.plan-marker{cursor:pointer;position:absolute;transform:translate(-50%,-50%)}.plan-marker-dot{align-items:center;background:#fff;border:2px solid #0ea5e9;border:2px solid var(--sky-500);border-radius:50%;box-shadow:0 2px 6px #0f172a0d;box-shadow:var(--shadow-sm);color:#0369a1;color:var(--sky-700);display:flex;font-size:.75rem;font-weight:700;height:28px;justify-content:center;transition:all .18s cubic-bezier(.4,0,.2,1);transition:all var(--transition);width:28px}.plan-marker.active .plan-marker-dot,.plan-marker:hover .plan-marker-dot{background:#0ea5e9;background:var(--sky-500);color:#fff;transform:scale(1.1)}.plan-marker-label{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:4px;color:#334155;color:var(--text-700);display:block;font-size:.7rem;margin-top:6px;padding:2px 6px;white-space:nowrap}.tablet-form{gap:.75rem;margin:0 auto;max-width:520px}.tablet-form,.tablet-form-row{display:flex;flex-direction:column}.tablet-form-row{gap:.3rem}.tablet-form-row label{color:#64748b;color:var(--text-500);font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.tablet-form-row input,.tablet-form-row select,.tablet-form-row textarea{background:#fff;background:var(--bg-panel);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;color:#0f172a;color:var(--text-900);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-sans);font-size:.85rem;outline:none;padding:.55rem .75rem;transition:border-color .18s cubic-bezier(.4,0,.2,1);transition:border-color var(--transition)}.tablet-form-row input:focus,.tablet-form-row select:focus,.tablet-form-row textarea:focus{border-color:#38bdf8;border-color:var(--sky-400);box-shadow:0 0 0 3px #38bdf833}.tablet-form-serie{align-items:center;display:flex;gap:.5rem}.tablet-form-serie input{flex:1 1}.steps-grid{grid-gap:.85rem;display:grid;gap:.85rem;grid-template-columns:repeat(4,1fr)}.step-card{background:linear-gradient(180deg,#f0f9ff,#fff);background:linear-gradient(180deg,var(--sky-50),#fff);border:1px solid #e0f2fe;border:1px solid var(--sky-100);border-radius:12px;display:flex;flex-direction:column;gap:.4rem;padding:.85rem}.step-card-head{align-items:center;display:flex;justify-content:space-between}.step-card-index{color:#0369a1;color:var(--sky-700);font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.step-card strong{color:#0f172a;color:var(--text-900);font-size:.9rem}.step-card p{color:#64748b;color:var(--text-500);font-size:.78rem;line-height:1.4}.cable-row{border-bottom:1px dashed #eef2f7;border-bottom:1px dashed var(--border-soft);padding:.75rem 0}.cable-row:last-child{border-bottom:none}.cable-row-head{align-items:center;display:flex;gap:.75rem;margin-bottom:.5rem}.cable-swatch{border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #e2e8f0;box-shadow:0 0 0 1px var(--border);flex-shrink:0;height:24px;width:24px}.cable-row-head strong{color:#0f172a;color:var(--text-900);font-size:.9rem}.cable-fils{display:flex;flex-wrap:wrap;gap:.4rem}.cable-fil{align-items:center;background:#f3f8fd;background:var(--bg-subtle);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:999px;color:#334155;color:var(--text-700);display:inline-flex;font-size:.72rem;gap:.3rem;padding:.15rem .55rem}.cable-fil-index{color:#0369a1;color:var(--sky-700);font-family:JetBrains Mono,monospace;font-family:var(--font-mono);font-size:.7rem;font-weight:700}.cable-fil-color{border:1px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #e2e8f0;box-shadow:0 0 0 1px var(--border);height:10px;width:10px}.arch-canvas{background:#f0f9ff;background:var(--sky-50);border:1px dashed #bae6fd;border:1px dashed var(--sky-200);border-radius:12px;height:320px;overflow:hidden;position:relative}.arch-wires{height:100%;inset:0;pointer-events:none;position:absolute;width:100%}.arch-node{align-items:center;background:#fff;border:2px solid #7dd3fc;border:2px solid var(--sky-300);border-radius:10px;box-shadow:0 2px 6px #0f172a0d;box-shadow:var(--shadow-sm);color:#0f172a;color:var(--text-900);display:flex;font-size:.78rem;font-weight:600;gap:.4rem;padding:.5rem .75rem;position:absolute;transform:translate(-50%,-50%);z-index:2}.arch-node.amont{background:#f0f9ff;background:var(--sky-50);border-color:#0ea5e9;border-color:var(--sky-500)}.arch-node.aval{background:#f0fdf4;border-color:#10b981;border-color:var(--success)}.arch-node.middle{background:#fff;border-color:#0284c7;border-color:var(--sky-600)}.node-letters{background:#0ea5e9;background:var(--sky-500);border-radius:4px;color:#fff;font-size:.65rem;font-weight:700;padding:2px 6px}.arch-legend{background:#fffc;border:1px solid #bae6fd;border:1px solid var(--sky-200);border-radius:999px;bottom:10px;color:#0369a1;color:var(--sky-700);font-size:.75rem;left:14px;padding:4px 10px;position:absolute}.arrow-muted{color:#94a3b8;color:var(--text-400)}.toggle{align-items:center;cursor:pointer;display:inline-flex;gap:.5rem;-webkit-user-select:none;user-select:none}.toggle input{display:none}.toggle-slider{background:#e2e8f0;background:var(--border);border-radius:999px;height:20px;position:relative;transition:background .18s cubic-bezier(.4,0,.2,1);transition:background var(--transition);width:36px}.toggle-slider:after{background:#fff;border-radius:50%;box-shadow:0 1px 2px #0f172a0a;box-shadow:var(--shadow-xs);content:"";height:16px;left:2px;position:absolute;top:2px;transition:transform .18s cubic-bezier(.4,0,.2,1);transition:transform var(--transition);width:16px}.toggle input:checked+.toggle-slider{background:#0ea5e9;background:var(--sky-500)}.toggle input:checked+.toggle-slider:after{transform:translateX(16px)}.toggle-label{color:#334155;color:var(--text-700);font-size:.8rem}.login-page{background:radial-gradient(900px 600px at 0 0,#e0f2fe 0,#0000 70%),radial-gradient(900px 600px at 100% 100%,#bae6fd 0,#0000 70%),#f8fbff;background:radial-gradient(900px 600px at 0 0,var(--sky-100) 0,#0000 70%),radial-gradient(900px 600px at 100% 100%,var(--sky-200) 0,#0000 70%),var(--bg-app);display:grid;grid-template-columns:1fr 1fr;min-height:100vh}.login-illustration{align-items:center;background:linear-gradient(135deg,#0ea5e9,#0369a1);background:linear-gradient(135deg,var(--sky-500),var(--sky-700));color:#fff;display:flex;justify-content:center;overflow:hidden;padding:3rem;position:relative}.login-illustration:before{background:radial-gradient(circle at 20% 30%,#ffffff1f 0,#0000 40%),radial-gradient(circle at 80% 70%,#ffffff14 0,#0000 40%);content:"";inset:0;position:absolute}.login-illustration-content{max-width:420px;position:relative;z-index:1}.login-brand{align-items:center;display:flex;gap:.9rem;margin-bottom:1.25rem}.login-brand .brand-icon-wrapper{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3}.login-brand h2{font-size:1.8rem;font-weight:700;letter-spacing:.06em}.login-brand p{color:#ffffffd9;font-size:.85rem}.login-separator{background:#fff6;border-radius:999px;height:2px;margin:1.25rem 0;width:60px}.login-description{color:#ffffffeb;font-size:.95rem;line-height:1.6}.login-features{display:flex;flex-direction:column;gap:.6rem;list-style:none;margin-top:1.25rem}.login-features li{align-items:flex-start;color:#ffffffeb;display:flex;font-size:.85rem;gap:.6rem}.login-features .dot{background:#ffffffe6;border-radius:50%;flex-shrink:0;height:6px;margin-top:7px;width:6px}.login-form-wrapper{align-items:center;display:flex;justify-content:center;padding:3rem}.login-form{max-width:380px;width:100%}.login-form h1{color:#0f172a;color:var(--text-900);font-size:1.75rem}.login-form>p{color:#64748b;color:var(--text-500);font-size:.9rem;margin:.25rem 0 1.5rem}.form-group{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem}.form-group label{color:#334155;color:var(--text-700);font-size:.78rem;font-weight:600}.input-wrapper{align-items:center;background:#fff;background:var(--bg-panel);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;display:flex;gap:.5rem;padding:.6rem .85rem;position:relative;transition:border-color .18s cubic-bezier(.4,0,.2,1);transition:border-color var(--transition)}.input-wrapper:focus-within{border-color:#38bdf8;border-color:var(--sky-400);box-shadow:0 0 0 3px #38bdf833}.input-wrapper svg{color:#94a3b8;color:var(--text-400);flex-shrink:0}.input-wrapper input{background:#0000;border:none;color:#0f172a;color:var(--text-900);flex:1 1;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-sans);font-size:.9rem;outline:none}.input-wrapper input::placeholder,.password-toggle{color:#94a3b8;color:var(--text-400)}.password-toggle{background:none;border:none;cursor:pointer;padding:2px}.password-toggle:hover{color:#0284c7;color:var(--sky-600)}@media (max-width:1280px){.grid-3,.kpi-grid-4,.steps-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:1024px){.dashboard-grid,.grid-2,.split-layout{grid-template-columns:1fr}.split-list{position:static}}@media (max-width:768px){.page-container{padding:1.25rem}.grid-3,.kpi-grid-4,.login-page,.steps-grid{grid-template-columns:1fr}.login-illustration{display:none}}
/*# sourceMappingURL=main.9c558c67.css.map*/