@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{--cc-brand-600: #0f766e;--cc-brand-700: #115e59;--cc-brand-100: #d9f4ef;--cc-text-900: #0f172a;--cc-text-700: #334155;--cc-bg-canvas: #f3f7fc;--cc-bg-surface: #ffffff;--cc-border: #dbe5ef;--cc-danger: #b42336;--cc-warning: #b7791f;--cc-success: #0f766e;--cc-focus: #0891b2;--cc-info: #0b6cae;--cc-radius-8: 10px;--cc-radius-12: 12px;--cc-radius-16: 18px;--cc-space-1: .5rem;--cc-space-2: 1rem;--cc-space-3: 1.5rem;--cc-space-4: 2rem;--cc-space-5: 2.5rem;--cc-shadow-1: 0 6px 16px rgba(15, 23, 42, .05);--cc-shadow-2: 0 20px 42px rgba(15, 23, 42, .1);--cc-fs-12: .75rem;--cc-fs-14: .875rem;--cc-fs-16: 1rem;--cc-fs-20: 1.25rem;--cc-fs-24: 1.5rem;--cc-fs-32: 2rem;--cc-transition: .17s cubic-bezier(.2, .8, .2, 1);font-family:Inter,Segoe UI,Helvetica Neue,sans-serif;color:var(--cc-text-900);color-scheme:light}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:Inter,Segoe UI,Helvetica Neue,sans-serif;font-size:var(--cc-fs-16);line-height:1.45;letter-spacing:-.01em;color:var(--cc-text-900);background:radial-gradient(circle at 0% 0%,rgba(15,118,110,.12),transparent 38%),radial-gradient(circle at 100% 18%,rgba(8,145,178,.12),transparent 30%),radial-gradient(circle at 100% 100%,rgba(15,23,42,.05),transparent 45%),var(--cc-bg-canvas)}a{color:var(--cc-brand-700);text-underline-offset:.15rem}a:hover{color:var(--cc-brand-600)}button,input,textarea,select{font:inherit;color:inherit}h1,h2,h3,h4,p{margin:0}h1{font-size:var(--cc-fs-24);line-height:1.2;letter-spacing:-.02em;font-weight:700}h2{font-size:var(--cc-fs-20);line-height:1.25;letter-spacing:-.015em;font-weight:650}h3{font-size:var(--cc-fs-16);line-height:1.3;font-weight:600}p{color:var(--cc-text-700)}:focus-visible{outline:2px solid color-mix(in srgb,var(--cc-focus) 70%,white 30%);outline-offset:2px}::selection{background:color-mix(in srgb,var(--cc-brand-100) 60%,white 40%)}textarea{min-height:96px;resize:vertical}pre{margin:0;background:var(--cc-brand-100);border:1px solid var(--cc-border);border-radius:var(--cc-radius-12);padding:.85rem;overflow-x:auto;font-size:var(--cc-fs-14)}.app-shell{min-height:100vh;display:grid;grid-template-columns:252px minmax(0,1fr);background:linear-gradient(180deg,#ffffffbd,#ffffffbd)}.app-sidebar{position:sticky;top:0;height:100vh;background:radial-gradient(circle at 0% 0%,rgba(20,184,166,.28),transparent 50%),linear-gradient(165deg,#0f172a,#0f3d45 52%,#115e59);color:#e5f6f3;border-right:1px solid rgba(148,163,184,.24);padding:var(--cc-space-3) var(--cc-space-2);display:grid;grid-template-rows:auto 1fr auto;gap:1.3rem;z-index:20;box-shadow:12px 0 34px #0f172a38}.brand-lockup{display:grid;gap:.32rem}.brand-kicker{font-size:var(--cc-fs-12);letter-spacing:.12em;text-transform:uppercase;color:#e2fff9c7}.brand-title{font-size:1.42rem;font-weight:800;line-height:1.1;letter-spacing:-.02em}.brand-subtitle{font-size:var(--cc-fs-14);color:#e2fff9e6}.sidebar-nav{display:grid;align-content:start;gap:.36rem}.sidebar-link{display:block;padding:.62rem .72rem;border-radius:var(--cc-radius-8);color:#f8fffd;text-decoration:none;border:1px solid rgba(226,255,249,.12);background:#e2fff90d;transition:background var(--cc-transition),border-color var(--cc-transition),transform var(--cc-transition),box-shadow var(--cc-transition),color var(--cc-transition)}.sidebar-link-inner{display:inline-flex;align-items:center;gap:.58rem}.sidebar-link-icon{width:1.5rem;height:1.5rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:#ddf7f2;background:#0f172a54;border:1px solid rgba(226,255,249,.18)}.sidebar-link-text{line-height:1}.sidebar-link:hover{color:#f8fffd;background:#e2fff933;border-color:#e2fff96b;transform:translate(2px);box-shadow:0 10px 24px #0f172a40}.sidebar-link.active{color:#042723;background:color-mix(in srgb,var(--cc-brand-100) 78%,white 22%);border-color:#e2fff9a3;box-shadow:0 12px 24px #0891b229}.sidebar-link.active .sidebar-link-icon{background:#fff;color:var(--cc-brand-700);border-color:color-mix(in srgb,var(--cc-brand-700) 35%,white 65%)}.app-main{display:grid;grid-template-rows:auto 1fr;min-width:0}.top-utility{position:sticky;top:0;z-index:10;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:color-mix(in srgb,var(--cc-bg-canvas) 82%,white 18%);border-bottom:1px solid var(--cc-border);padding:.72rem var(--cc-space-3);display:flex;align-items:center;justify-content:space-between;gap:.9rem}.top-utility h1{font-size:1.16rem;line-height:1.2}.utility-title{display:flex;align-items:center;gap:.72rem}.utility-title-block{gap:.14rem}.utility-title-block .text-muted{color:color-mix(in srgb,var(--cc-text-700) 86%,white 14%)}.utility-right{display:flex;align-items:center;justify-content:flex-end;min-width:0}.top-actions{display:grid;grid-template-columns:minmax(220px,320px) auto auto;align-items:center;gap:.5rem}.utility-search,.utility-range{display:inline-flex;align-items:center;gap:.42rem;border:1px solid color-mix(in srgb,var(--cc-border) 80%,white 20%);background:color-mix(in srgb,var(--cc-bg-canvas) 38%,white 62%);border-radius:var(--cc-radius-8);padding:.3rem .5rem;min-height:2.35rem;color:var(--cc-text-700)}.utility-search input,.utility-range select{border:0;min-height:0;box-shadow:none;background:transparent;padding:0;width:100%}.utility-search input:focus-visible,.utility-range select:focus-visible{box-shadow:none}.utility-create{white-space:nowrap;min-height:2.35rem}.main-content{width:min(1380px,100%);padding:1.35rem var(--cc-space-3) var(--cc-space-3);margin:0 auto}.page{display:grid;gap:var(--cc-space-2);animation:page-enter .18s cubic-bezier(.2,.8,.2,1)}@keyframes page-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.mobile-menu-toggle{display:inline-flex}.sidebar-overlay{display:none}.app-shell.sidebar-collapsed{grid-template-columns:0 minmax(0,1fr)}.app-shell.sidebar-collapsed .app-sidebar{width:0;min-width:0;padding:0;border-right:0;overflow:hidden;opacity:0;pointer-events:none}@media(max-width:1024px){.app-shell{grid-template-columns:minmax(0,1fr);background:transparent}.app-sidebar{position:fixed;left:0;top:0;transform:translate(-105%);transition:transform var(--cc-transition);width:min(310px,85vw);box-shadow:var(--cc-shadow-2)}.app-sidebar.open{transform:translate(0)}.sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0c100e59;display:block;border:0;padding:0;z-index:15}.main-content{padding:var(--cc-space-2)}.top-utility{padding:.8rem var(--cc-space-2);flex-wrap:wrap;align-items:stretch}.utility-right{width:100%}.top-actions{width:100%;grid-template-columns:1fr}}@media(max-width:768px){.main-content{padding:.85rem}.utility-title{width:100%;justify-content:space-between}.utility-title-block .text-muted{display:none}}@media(max-width:480px){.top-utility h1{font-size:var(--cc-fs-16)}}.card{background:var(--cc-bg-surface);border:1px solid color-mix(in srgb,var(--cc-border) 86%,white 14%);border-radius:var(--cc-radius-16);padding:1.1rem;box-shadow:var(--cc-shadow-1);display:grid;gap:.95rem}.card-muted{background:color-mix(in srgb,var(--cc-brand-100) 48%,white 52%)}.card-danger{border-color:color-mix(in srgb,var(--cc-danger) 45%,white 55%)}.card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;flex-wrap:wrap}.card-subtitle{font-size:var(--cc-fs-14)}.summary-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.75rem}.summary-item{background:radial-gradient(circle at 100% 0%,rgba(8,145,178,.12),transparent 34%),linear-gradient(180deg,#fff,#f8fbff);border:1px solid color-mix(in srgb,var(--cc-border) 82%,white 18%);border-radius:var(--cc-radius-12);padding:.9rem;display:grid;gap:.32rem;transition:transform var(--cc-transition),box-shadow var(--cc-transition),border-color var(--cc-transition)}.summary-item:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--cc-brand-600) 32%,var(--cc-border) 68%);box-shadow:0 16px 28px #0f172a1a}.summary-header{display:flex;align-items:center;justify-content:space-between}.summary-icon{width:1.6rem;height:1.6rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--cc-brand-100) 64%,white 36%);border:1px solid color-mix(in srgb,var(--cc-border) 70%,white 30%);color:var(--cc-brand-700)}.summary-label{font-size:var(--cc-fs-12);color:var(--cc-text-700);text-transform:uppercase;letter-spacing:.08em}.summary-value{font-size:var(--cc-fs-20);color:var(--cc-text-900);font-weight:600}.ctr-chart-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.ctr-chart-toggle{display:inline-flex;align-items:center;gap:.4rem;padding:.2rem;border:1px solid var(--cc-border);border-radius:var(--cc-radius-8);background:color-mix(in srgb,var(--cc-bg-canvas) 36%,white 64%)}.report-toggle{min-width:6.3rem}.report-toggle.is-active{background:var(--cc-brand-600);border-color:var(--cc-brand-600);color:#f7f9f8;box-shadow:inset 0 1px #ffffff29}.report-toggle.is-active:hover:not(:disabled){background:var(--cc-brand-700);border-color:var(--cc-brand-700)}.ctr-chart{border:1px solid var(--cc-border);border-radius:var(--cc-radius-12);background:linear-gradient(180deg,#fff,#f8fbff);padding:.65rem;overflow-x:auto}.ctr-chart-svg{width:100%;min-width:640px;height:auto;display:block}.ctr-chart-grid-line{stroke:color-mix(in srgb,var(--cc-border) 72%,white 28%);stroke-width:1}.ctr-chart-axis-line{stroke:color-mix(in srgb,var(--cc-text-700) 30%,var(--cc-border) 70%);stroke-width:1}.ctr-chart-y-label,.ctr-chart-x-label{font-size:var(--cc-fs-12);fill:var(--cc-text-700)}.ctr-series-line{fill:none;stroke-width:2.6}.ctr-series-marker{stroke:#fff;stroke-width:1.2}.ctr-chart-legend{margin-top:.5rem;display:flex;flex-wrap:wrap;gap:.7rem;color:var(--cc-text-700);font-size:var(--cc-fs-12)}.ctr-chart-legend-item{display:inline-flex;align-items:center;gap:.35rem}.ctr-chart-legend-swatch{width:.75rem;height:.75rem;border-radius:999px;border:1px solid var(--cc-border)}.ctr-chart-empty{min-height:220px;display:grid;place-items:center;border:1px dashed color-mix(in srgb,var(--cc-border) 86%,white 14%);border-radius:var(--cc-radius-8);color:var(--cc-text-700);font-size:var(--cc-fs-14);text-align:center;padding:1rem}.ctr-analysis-grid{display:grid;gap:.85rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.form-grid{display:grid;gap:.85rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.form-grid-compact{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}label{display:grid;gap:.3rem;font-size:var(--cc-fs-14);color:var(--cc-text-900)}label>span{color:var(--cc-text-700);font-size:var(--cc-fs-12)}input,textarea,select{width:100%;border-radius:var(--cc-radius-8);border:1px solid var(--cc-border);background:color-mix(in srgb,var(--cc-bg-canvas) 22%,white 78%);padding:.56rem .68rem;min-height:2.55rem;transition:border-color var(--cc-transition),box-shadow var(--cc-transition),background var(--cc-transition)}input:hover,textarea:hover,select:hover{border-color:color-mix(in srgb,var(--cc-brand-600) 30%,var(--cc-border) 70%);background:#fff}input:user-invalid,textarea:user-invalid,select:user-invalid,input:invalid:focus-visible,textarea:invalid:focus-visible,select:invalid:focus-visible{border-color:var(--cc-danger);background:color-mix(in srgb,var(--cc-danger) 8%,white 92%)}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:none;border-color:var(--cc-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--cc-focus) 22%,white 78%);background:#fff}input[type=checkbox]{width:auto;min-height:0;accent-color:var(--cc-brand-600)}.action-row{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.row-between{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap}.form-actions{display:flex;justify-content:flex-end;gap:.5rem;flex-wrap:wrap}.btn{border:1px solid transparent;border-radius:var(--cc-radius-8);padding:.54rem .86rem;min-height:2.5rem;font-size:var(--cc-fs-14);font-weight:550;text-decoration:none;cursor:pointer;transition:background var(--cc-transition),border-color var(--cc-transition),color var(--cc-transition),transform var(--cc-transition),box-shadow var(--cc-transition);display:inline-flex;align-items:center;justify-content:center;gap:.35rem}.btn:disabled{opacity:.58;cursor:not-allowed}.btn:active:not(:disabled){transform:translateY(1px)}.btn-primary{background:linear-gradient(180deg,#10998e,var(--cc-brand-600));color:#f8fffd;box-shadow:inset 0 1px #ffffff47,0 8px 20px #0f766e38}.btn-primary:hover:not(:disabled){background:linear-gradient(180deg,#0f8a80,var(--cc-brand-700))}.btn-secondary{border-color:var(--cc-border);background:color-mix(in srgb,var(--cc-bg-canvas) 24%,white 76%);color:var(--cc-text-900)}.btn-secondary:hover:not(:disabled){border-color:color-mix(in srgb,var(--cc-brand-600) 35%,var(--cc-border) 65%);background:color-mix(in srgb,var(--cc-brand-100) 34%,white 66%)}.btn-danger{background:linear-gradient(180deg,#d64556,var(--cc-danger));color:#fff}.btn-danger:hover:not(:disabled){background:color-mix(in srgb,var(--cc-danger) 88%,black 12%)}.btn-ghost{background:transparent;color:inherit;border-color:transparent}.btn-ghost:hover:not(:disabled){background:#ffffff1a}.app-sidebar .btn-ghost{color:#f8fffd;border-color:#e2fff961;background:#e2fff91c}.app-sidebar .btn-ghost:hover:not(:disabled){background:#e2fff933;border-color:#e2fff99e}.btn-sm{padding:.36rem .64rem;min-height:2.05rem;font-size:var(--cc-fs-12)}.btn-md{min-height:2.5rem}.btn-lg{min-height:2.85rem;padding:.64rem 1.08rem}.status-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.24rem .64rem;font-size:var(--cc-fs-12);font-weight:600;border:1px solid transparent;line-height:1;white-space:nowrap}.status-success{background:color-mix(in srgb,var(--cc-success) 13%,white 87%);color:color-mix(in srgb,var(--cc-success) 80%,black 20%);border-color:color-mix(in srgb,var(--cc-success) 44%,white 56%)}.status-warning{background:color-mix(in srgb,var(--cc-warning) 15%,white 85%);color:color-mix(in srgb,var(--cc-warning) 90%,black 10%);border-color:color-mix(in srgb,var(--cc-warning) 38%,white 62%)}.status-danger{background:color-mix(in srgb,var(--cc-danger) 14%,white 86%);color:color-mix(in srgb,var(--cc-danger) 82%,black 18%);border-color:color-mix(in srgb,var(--cc-danger) 42%,white 58%)}.status-info{background:color-mix(in srgb,var(--cc-info) 10%,white 90%);color:color-mix(in srgb,var(--cc-info) 86%,black 14%);border-color:color-mix(in srgb,var(--cc-info) 40%,white 60%)}.status-neutral{background:#f3f6f9;color:var(--cc-text-700);border-color:var(--cc-border)}.table-wrap{width:100%;overflow-x:auto;border:1px solid var(--cc-border);border-radius:var(--cc-radius-12);background:#fff;box-shadow:inset 0 1px #ffffff80}.table-wrap table{width:100%;border-collapse:collapse;min-width:700px;background:#fff}th,td{padding:.7rem .75rem;border-bottom:1px solid var(--cc-border);text-align:left;font-size:var(--cc-fs-14);vertical-align:middle}th{background:color-mix(in srgb,var(--cc-brand-100) 42%,white 58%);color:var(--cc-text-900);font-weight:600;letter-spacing:.01em}.table-wrap.is-sticky th{position:sticky;top:0;z-index:1}tbody tr:nth-child(2n){background:#fbfdff}tbody tr:hover{background:color-mix(in srgb,var(--cc-brand-100) 30%,white 70%)}.table-empty{padding:1rem;color:var(--cc-text-700);text-align:center}.table-row-selected{background:color-mix(in srgb,var(--cc-brand-100) 46%,white 54%)}.cell-numeric{text-align:right;font-variant-numeric:tabular-nums}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:var(--cc-space-2);align-items:start}.dashboard-rail{display:grid;gap:var(--cc-space-2)}.editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:var(--cc-space-2);align-items:start}.editor-main,.editor-rail{min-width:0}.sticky-rail{position:sticky;top:5.5rem}.validation-list{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}.validation-list li{display:flex;align-items:center;gap:.5rem;border:1px solid color-mix(in srgb,var(--cc-border) 80%,white 20%);background:color-mix(in srgb,var(--cc-bg-canvas) 34%,white 66%);border-radius:var(--cc-radius-8);padding:.45rem .52rem;font-size:var(--cc-fs-14)}.preview-card{border:1px solid color-mix(in srgb,var(--cc-border) 82%,white 18%);background:radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--cc-brand-100) 42%,white 58%),transparent 55%),#fff;border-radius:var(--cc-radius-12);padding:.8rem;display:grid;gap:.42rem}.preview-card h4{margin:0;font-size:var(--cc-fs-16);line-height:1.25}.trend-chart{border:1px solid color-mix(in srgb,var(--cc-border) 82%,white 18%);background:linear-gradient(180deg,#fff,#f6fbff);border-radius:var(--cc-radius-12);padding:.7rem;display:grid;align-items:end;grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem;min-height:128px}.trend-chart span{display:block;border-radius:999px;background:linear-gradient(180deg,color-mix(in srgb,var(--cc-brand-600) 78%,#06b6d4 22%),var(--cc-brand-700));min-height:22px}.operational-card .action-row{margin-top:.25rem}.list-search{min-width:260px}.filter-chip-row{display:flex;flex-wrap:wrap;gap:.42rem}.filter-chip{border:1px solid color-mix(in srgb,var(--cc-border) 78%,white 22%);border-radius:999px;background:color-mix(in srgb,var(--cc-bg-canvas) 30%,white 70%);color:var(--cc-text-700);padding:.26rem .62rem;min-height:2rem;display:inline-flex;align-items:center;justify-content:center;font-size:var(--cc-fs-12);text-transform:capitalize;transition:border-color var(--cc-transition),color var(--cc-transition),background var(--cc-transition)}button.filter-chip{cursor:pointer}.filter-chip.is-active{background:color-mix(in srgb,var(--cc-brand-100) 70%,white 30%);color:color-mix(in srgb,var(--cc-brand-700) 82%,black 18%);border-color:color-mix(in srgb,var(--cc-brand-600) 34%,var(--cc-border) 66%)}.error{color:var(--cc-danger);font-size:var(--cc-fs-14)}.alert-issue-details{background:color-mix(in srgb,var(--cc-warning) 8%,white 92%);border:1px solid color-mix(in srgb,var(--cc-warning) 34%,white 66%);border-radius:var(--cc-radius-8);padding:.55rem .65rem}.alert-detail-label{color:var(--cc-text-900);font-size:var(--cc-fs-12);font-weight:600}.alert-detail-list{margin:0;padding-left:1.05rem;color:var(--cc-text-700);font-size:var(--cc-fs-12);display:grid;gap:.2rem}.info-note{color:var(--cc-text-700);font-size:var(--cc-fs-14)}.form-error-banner{border:1px solid color-mix(in srgb,var(--cc-danger) 42%,white 58%);background:color-mix(in srgb,var(--cc-danger) 9%,white 91%);border-radius:var(--cc-radius-8);color:var(--cc-danger);font-size:var(--cc-fs-14);padding:.55rem .7rem}.login-page{min-height:100vh;display:grid;place-items:center;padding:1rem}.login-panel{width:min(440px,94vw)}@media(max-width:1024px){.summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid,.editor-layout{grid-template-columns:1fr}.sticky-rail{position:static}}@media(max-width:768px){.form-grid,.form-grid-compact{grid-template-columns:1fr}.ctr-chart-toggle{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.report-toggle{min-width:0}.table-wrap table{min-width:620px}.list-search{min-width:0;width:100%}}@media(max-width:480px){.summary-strip{grid-template-columns:1fr}}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.stack-1{display:grid;gap:var(--cc-space-1)}.stack-2{display:grid;gap:var(--cc-space-2)}.text-muted{color:var(--cc-text-700)}.text-small{font-size:var(--cc-fs-12)}.w-100{width:100%}
