@font-face{font-family:Poppins;font-weight:400;font-display:swap;src:url(/fonts/Poppins-Regular.ttf)format("truetype")}@font-face{font-family:Poppins;font-weight:500;font-display:swap;src:url(/fonts/Poppins-Medium.ttf)format("truetype")}@font-face{font-family:Poppins;font-weight:600;font-display:swap;src:url(/fonts/Poppins-SemiBold.ttf)format("truetype")}@font-face{font-family:Poppins;font-weight:700;font-display:swap;src:url(/fonts/Poppins-Bold.ttf)format("truetype")}:root{--primary:#723ed8;--primary-half:#723ed880;--primary-quarter:#723ed840;--primary-light:#d3c8e9;--primary-dark:#695492;--bg:#f1f9ff;--surface:#fff;--ink:#000;--grey:#8a8a8a;--line:#e3e3e3;--disabled:#dbdbdb;--success:#47b174;--error:#f55;--error-strong:#dc3545;--warning:#ff9800;--blue:#0a62f1;--on:#47e888;--off:#fe4550;--ink-2:#555;--primary-soft:#723ed814;--success-text:#2c6e48;--warning-text:#945800;--error-text:#bb2d3b;--success-bg:#47b1741f;--warning-bg:#ff98001f;--error-bg:#ff55551a;--blue-bg:#0a62f114;--r-card:20px;--r-ctl:10px;--ease:cubic-bezier(.2, .8, .2, 1);--t-fast:.15s;--t-med:.3s;--side:240px;--font:"Poppins", sans-serif;--mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{font-size:100%}html,body{margin:0}body{font:400 .875rem/1.5 var(--font);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}a{color:var(--primary);font-weight:500;text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{margin:0;font-weight:600}h1{flex-wrap:wrap;align-items:center;gap:10px;font-size:1.625rem;font-weight:700;line-height:1.25;display:flex}h2{font-size:1rem}h3{margin:12px 0 4px;font-size:.875rem}p{margin:6px 0}code,.mono{font-family:var(--mono);font-size:.75rem}.small{font-size:.75rem}.muted{color:var(--ink-2)}.strong{font-weight:600}.center{text-align:center}.spacer{flex:1}input,select,textarea,button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),select,textarea{border:2px solid var(--primary-quarter);border-radius:var(--r-ctl);background:var(--bg);width:100%;min-height:40px;transition:border-color var(--t-fast) ease;padding:6px 12px;font-weight:500}input:focus,select:focus,textarea:focus{border-color:var(--primary);outline:none}input:disabled,select:disabled{background:var(--surface);color:var(--grey);border-color:var(--disabled)}input.invalid{border-color:var(--error)}input[type=checkbox],input[type=radio],input[type=range]{accent-color:var(--primary)}input[type=checkbox]{width:18px;height:18px}.btn{border-radius:var(--r-ctl);border:2px solid var(--primary-quarter);background:var(--surface);min-height:40px;color:var(--primary);cursor:pointer;white-space:nowrap;transition:background var(--t-fast) ease, border-color var(--t-fast) ease, filter var(--t-fast) ease;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){border-color:var(--primary-half);background:var(--primary-soft);text-decoration:none}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--primary);color:#fff;border-color:var(--primary)}.btn-primary:hover:not(:disabled){background:var(--primary);border-color:var(--primary);filter:brightness(1.08)}.btn-danger{color:var(--error);background:var(--surface);border-color:#0000}.btn-danger:hover:not(:disabled){background:var(--error-bg);border-color:#0000}.btn-ghost{background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){border-color:#0000}.btn-sm{border-width:1.5px;border-color:var(--primary);border-radius:999px;min-height:32px;padding:0 14px;font-size:.75rem}.btn-sm.btn-primary{border-color:var(--primary)}.btn-block{width:100%;margin-top:12px}.btn.is-busy{opacity:.75;cursor:progress}.btn.is-busy:before{content:"";border:2px solid;border-right-color:#0000;border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin}.icon-btn{cursor:pointer;color:var(--ink-2);background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;min-width:32px;min-height:32px;padding:6px;line-height:0;display:inline-flex}.icon-btn:hover{background:var(--primary-soft);color:var(--primary)}.link{color:var(--primary);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}@keyframes spin{to{transform:rotate(360deg)}}.shell{min-height:100vh;display:flex}.sidebar{width:var(--side);background:var(--surface);flex-direction:column;flex:none;height:100vh;display:flex;position:sticky;top:0}.sidebar-head{padding:20px 20px 16px}.sidebar nav{flex:1;padding:4px 12px;overflow-y:auto}.sidebar-foot{color:var(--ink-2);padding:14px 20px;font-size:.75rem}.nav-group{margin-bottom:16px}.nav-title{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;padding:8px 12px 6px;font-size:.75rem;font-weight:600;overflow:hidden}.nav-item{border-radius:var(--r-ctl);min-height:42px;color:var(--ink);transition:background var(--t-fast) ease, color var(--t-fast) ease;align-items:center;gap:12px;padding:0 12px;font-size:.875rem;font-weight:500;display:flex}.nav-item:hover{background:var(--primary-soft);color:var(--primary);text-decoration:none}.nav-item.active{background:var(--primary-soft);color:var(--primary);font-weight:600}.nav-icon{flex:none;width:20px;height:20px;display:inline-flex}.logo{align-items:center;gap:10px;display:inline-flex}.logo img{border-radius:10px}.logo-text{flex-direction:column;line-height:1.2;display:flex}.logo-text strong{color:var(--ink);font-size:1.125rem;font-weight:700}.logo-text small{color:var(--ink-2);font-size:.75rem;font-weight:500}.main{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{background:var(--bg);z-index:5;align-items:center;gap:12px;height:64px;padding:0 32px;display:flex;position:sticky;top:0}.topbar-title{text-overflow:ellipsis;white-space:nowrap;font-size:1rem;font-weight:600;overflow:hidden}.who{align-items:center;gap:12px;display:flex}.menu-btn{display:none}.content{width:100%;max-width:1440px;padding:4px 32px 40px}.scrim{display:none}.page-enter{animation:rise var(--t-med) var(--ease)}@keyframes rise{0%{transform:translateY(6px)}}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.page-title p{max-width:680px;margin:4px 0 0}.page-header .actions,.actions{flex-wrap:wrap;gap:8px;display:flex}.crumbs{color:var(--ink-2);margin:0 0 6px;font-size:.75rem;font-weight:500}.card{background:var(--surface);border-radius:var(--r-card);min-width:0;margin-bottom:20px}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;min-height:52px;padding:18px 20px 4px;display:flex}.card-head h2{align-items:center;gap:12px;font-size:1.125rem;display:flex}.go{background:var(--ink);color:#fff;width:32px;height:32px;transition:transform var(--t-fast) ease;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.go:hover{text-decoration:none;transform:translate(2px)}.section-title{align-items:center;gap:14px;margin:8px 0 14px;font-size:1.25rem;font-weight:600;display:flex}.card-actions{align-items:center;gap:8px;display:flex}.card-body{padding:12px 20px 20px}.card-flush .card-body{padding:0 0 8px}.card-flush .toolbar{padding:14px 20px 0}.card-flush .notice{margin:14px 20px}.card-flush .card-note{padding:8px 20px 4px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px;margin-bottom:20px;display:grid}.grid-2>.card{margin-bottom:0}.stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-bottom:20px;display:grid}.stat{background:var(--surface);border-radius:var(--r-card);align-items:flex-start;gap:14px;padding:16px 18px;display:flex}.stat-icon{background:var(--primary-soft);width:44px;height:44px;color:var(--primary);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.stat-icon.is-tinted{background:color-mix(in srgb, var(--tint) 18%, white);color:color-mix(in srgb, var(--tint) 80%, black)}.cat-badge{border-radius:12px;flex:none;justify-content:center;align-items:center;display:inline-flex}.cat-top{align-items:center;gap:10px;display:flex}.name-cell{align-items:center;gap:12px;min-width:230px;display:flex}.stat-text{flex-direction:column;flex:1;min-width:0;display:flex}.stat-label{color:var(--ink-2);font-size:.75rem;font-weight:500}.stat-value{font-variant-numeric:tabular-nums;font-size:1.625rem;font-weight:700;line-height:1.3}.stat-hint{color:var(--ink-2);margin-top:2px;font-size:.75rem}.stat-hint .meter{margin-top:6px}.toolbar{flex-wrap:wrap;gap:10px;margin-bottom:12px;display:flex}.toolbar .search{max-width:320px}.toolbar select{width:auto;min-width:170px}.status{background:var(--bg);white-space:nowrap;text-transform:capitalize;border-radius:12px;align-items:center;gap:6px;height:24px;padding:0 10px 0 8px;font-size:.75rem;font-weight:500;display:inline-flex}.status-dot{background:var(--grey);border-radius:50%;width:8px;height:8px}.status-green .status-dot{background:var(--success)}.status-amber .status-dot{background:var(--warning)}.status-red .status-dot{background:var(--error)}.status-blue .status-dot{background:var(--blue)}.status-violet .status-dot{background:var(--primary)}.badge{white-space:nowrap;background:var(--bg);height:22px;color:var(--ink-2);border-radius:6px;align-items:center;margin-right:4px;padding:0 8px;font-size:.75rem;font-weight:500;display:inline-flex}.badge-green{background:var(--success-bg);color:var(--success-text)}.badge-amber{background:var(--warning-bg);color:var(--warning-text)}.badge-red{background:var(--error-bg);color:var(--error-text)}.badge-blue{background:var(--blue-bg);color:var(--blue)}.badge-violet{background:var(--primary-soft);color:var(--primary)}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.table th{text-align:left;color:var(--ink-2);border-bottom:1px solid var(--bg);white-space:nowrap;padding:10px 12px;font-size:.75rem;font-weight:600}.table td{border-bottom:1px solid var(--bg);vertical-align:middle;padding:12px;font-weight:500}.table tr:last-child td{border-bottom:0}.table th:first-child,.table td:first-child{padding-left:20px}.table th:last-child,.table td:last-child{padding-right:20px}.table tbody tr{transition:background var(--t-fast) ease}.table tbody tr:hover{background:var(--primary-soft)}.table .num{text-align:right}.table td.mono{white-space:nowrap}.row-muted td{color:var(--grey)}.row-selected td{background:var(--primary-soft)}.cell-meter{min-width:140px}.cell-meter .meter{margin-top:4px}.meter{background:var(--bg);border-radius:3px;min-width:80px;height:6px;overflow:hidden}.meter-fill{background:var(--primary);height:100%;transition:width .4s var(--ease);border-radius:3px}.meter-hot{background:var(--off)}.notice{border-radius:var(--r-ctl);margin:0 0 16px;padding:12px 14px}.notice:has(.notice-icon){align-items:flex-start;gap:10px;display:flex}.notice-icon{flex:none;padding-top:1px;line-height:0}.notice-text{flex:1;min-width:0}.notice p{margin:2px 0}.notice ul{margin:6px 0 0;padding-left:18px}.notice-red{background:var(--error-bg);color:var(--error-text)}.notice-amber{background:var(--warning-bg);color:var(--warning-text)}.notice-green{background:var(--success-bg);color:var(--success-text)}.notice-blue,.notice-violet{background:var(--primary-soft);color:var(--primary-dark)}.tip{background:var(--surface);border-radius:var(--r-card);align-items:flex-start;gap:12px;margin-bottom:20px;padding:12px 12px 12px 16px;display:flex}.tip-icon{color:var(--primary);padding-top:2px;line-height:0}.tip-text{flex:1}.tip-text p{color:var(--ink-2);margin:2px 0 0}.empty{text-align:center;flex-direction:column;align-items:center;gap:6px;padding:36px 20px;display:flex}.empty-icon{width:56px;height:56px;color:var(--primary);background:0 0;border-radius:50%;justify-content:center;align-items:center;margin-bottom:6px;display:inline-flex}.empty-title{color:var(--primary);font-size:1rem;font-weight:600}.empty-text{color:var(--ink-2);max-width:420px;margin:0}.empty-action{gap:8px;margin-top:10px;display:flex}.skeleton{padding:8px 20px}.skeleton-row{border-bottom:1px solid var(--bg);gap:16px;padding:12px 0;display:flex}.skeleton-row:last-child{border-bottom:0}.skeleton-bar{background:linear-gradient(90deg,#e6edf5 25%,#f6f9fc 37%,#e6edf5 63%) 0 0/400% 100%;border-radius:6px;height:12px;animation:1.4s infinite shimmer}@keyframes shimmer{0%{background-position:100%}to{background-position:0}}.led{background:var(--disabled);border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.led-on{background:var(--on)}.copy{background:var(--bg);border:2px solid var(--primary-quarter);border-radius:var(--r-ctl);align-items:center;gap:4px;max-width:100%;padding:4px 4px 4px 10px;display:inline-flex}.copy code{word-break:break-all}.code{background:var(--bg);color:var(--ink);border-radius:var(--r-ctl);max-height:70vh;font:.75rem/1.55 var(--mono);margin:8px 0 0;padding:16px;overflow:auto}.kv{grid-template-columns:minmax(120px,32%) 1fr;gap:10px 16px;margin:0;display:grid}.kv dt{color:var(--ink-2);font-weight:500}.kv dd{overflow-wrap:anywhere;min-width:0;margin:0}.toasts{z-index:100;pointer-events:none;flex-direction:column;gap:10px;width:min(420px,100vw - 32px);display:flex;position:fixed;bottom:24px;right:24px}.toast{pointer-events:auto;background:var(--surface);border-left:4px solid var(--primary);border-radius:var(--r-ctl);animation:rise var(--t-med) var(--ease);align-items:center;gap:10px;padding:10px 8px 10px 12px;display:flex;box-shadow:0 8px 22px #18143c1a}.toast-success{border-left-color:var(--success)}.toast-success .toast-icon{color:var(--success-text)}.toast-error{border-left-color:var(--error)}.toast-error .toast-icon{color:var(--error-text)}.toast-icon{color:var(--primary);line-height:0}.toast-text{flex:1;font-weight:500}.toast-action{color:var(--primary);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:8px;padding:6px 8px;font-weight:600}.toast-action:hover{background:var(--primary-soft)}.field{flex-direction:column;gap:6px;min-width:0;margin-bottom:14px;display:flex}.field-label{color:var(--ink);font-size:.875rem;font-weight:500}.field-hint{color:var(--ink-2);font-size:.75rem}.field-msg{color:var(--error-text);font-size:.75rem;font-weight:500}.field-error input,.field-error select{border-color:var(--error)}.form-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:0 16px;display:grid}.form-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;margin-top:12px;display:flex}.form-why{color:var(--ink-2);font-size:.75rem}.row-fields{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:0 12px;display:grid}.checks{flex-wrap:wrap;gap:8px 20px;display:flex}.checks label,.checks-col label{cursor:pointer;align-items:center;gap:8px;min-height:32px;display:flex}.checks-col{border:0;flex-direction:column;gap:4px;margin:8px 0 0;padding:0;display:flex}.colour-field{align-items:center;gap:8px;display:flex}.colour-field input[type=color]{border:2px solid var(--primary-quarter);border-radius:var(--r-ctl);background:var(--bg);width:48px;height:40px;padding:3px}.tabs{scrollbar-width:none;gap:8px;margin-bottom:20px;padding:2px;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{background:var(--surface);cursor:pointer;min-height:38px;color:var(--ink);white-space:nowrap;transition:background var(--t-fast) ease, color var(--t-fast) ease;border:0;border-radius:25px;align-items:center;gap:6px;padding:0 18px;font-weight:500;display:inline-flex}.tab:hover{color:var(--primary)}.tab.active{background:var(--ink);color:#fff;text-transform:uppercase;letter-spacing:.03em;font-size:.75rem;font-weight:600}.tab .dot{background:var(--warning);border-radius:50%;width:7px;height:7px}.modal{border:0;border-radius:20px;width:min(560px,100vw - 24px);max-height:calc(100vh - 40px);padding:0;box-shadow:0 24px 60px #18143c2e}.modal[open]{animation:rise var(--t-med) var(--ease)}.modal-wide{width:min(900px,100vw - 24px)}.modal::backdrop{background:#0006}.modal-head{justify-content:space-between;align-items:center;padding:18px 22px 4px;display:flex}.modal-head h2{font-size:1.125rem}.modal-body{padding:12px 22px 16px}.modal-foot{justify-content:flex-end;gap:8px;padding:12px 22px 20px;display:flex}.signin{background:var(--bg);grid-template-columns:1fr minmax(360px,480px);min-height:100vh;display:grid}.signin-intro{flex-direction:column;justify-content:center;gap:20px;max-width:640px;padding:56px 64px;display:flex}.signin-intro h1{font-size:2rem}.signin-intro>p{color:var(--ink-2);margin:0;font-size:1rem}.signin-cats{flex-wrap:wrap;gap:8px;display:flex}.signin-how{flex-direction:column;gap:14px;margin:4px 0 0;padding:0;list-style:none;display:flex}.signin-how li{align-items:flex-start;gap:14px;display:flex}.signin-how li>span{background:var(--primary);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:32px;height:32px;font-weight:700;display:inline-flex}.signin-how p{color:var(--ink-2);margin:2px 0 0}.signin-panel{background:var(--surface);flex-direction:column;justify-content:center;gap:14px;padding:32px 24px;display:flex}.signin-card{width:100%;max-width:400px;margin:0 auto}.signin-card h2{margin-bottom:4px;font-size:1.375rem;font-weight:700}.signin-card>p{color:var(--ink-2);margin:0 0 18px}.signin-card .tabs{margin-bottom:18px}.signin-card .tab:not(.active),.modal .tab:not(.active){background:var(--bg)}.cat-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;display:grid}.cat{background:var(--bg);border-radius:var(--r-card);transition:border-color var(--t-fast) ease;border:2px solid #0000;padding:14px 16px}.cat.has-active{border-color:var(--ink);background:var(--surface)}.cat-name{font-size:1rem;font-weight:600}.cat-desc{margin-top:2px}.cat-profiles{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.chip{background:var(--surface);cursor:pointer;min-height:34px;transition:background var(--t-fast) ease, color var(--t-fast) ease;border:0;border-radius:25px;padding:0 14px;font-size:.75rem;font-weight:500}.chip:hover{color:var(--primary)}.chip.active{background:var(--ink);color:#fff;text-transform:uppercase;letter-spacing:.03em;font-weight:600}.dp-pick{margin-top:8px}.pick-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;max-height:320px;margin-top:10px;padding:2px;display:grid;overflow-y:auto}.pick{background:var(--bg);border-radius:var(--r-ctl);cursor:pointer;transition:background var(--t-fast) ease;align-items:flex-start;gap:10px;padding:10px;display:flex}.pick:hover{background:var(--primary-soft)}.editor-layout{grid-template-columns:minmax(0,1fr) 400px;align-items:start;gap:20px;display:grid}.editor-side{max-height:calc(100vh - 92px);position:sticky;top:76px;overflow-y:auto}.inline-add{gap:8px;display:flex}.inline-add select{min-width:230px;min-height:36px}.dp-table td{padding:8px 6px}.dp-table input:not([type=checkbox]),.dp-table select{border-width:1.5px;min-height:34px;padding:3px 8px}.dp-table .w-id{width:72px}.dp-table .w-code{width:150px}.dp-table .w-name{min-width:130px}.tags{margin-top:4px}.row-error td{background:var(--error-bg)}.row-error-msg td{color:var(--error-text);background:var(--error-bg);padding-top:0;font-size:.75rem;font-weight:500}.row-expand td{background:var(--bg)}.dp-details{padding:8px 4px}.dp-load{vertical-align:middle;border-radius:7px;justify-content:center;align-items:center;width:24px;height:24px;margin-right:8px;display:inline-flex}.name-cell-sm{gap:8px;min-width:0}.row-actions{white-space:nowrap;text-align:right}.issues{flex-direction:column;gap:6px;margin:8px 0;padding-left:0;font-size:.75rem;list-style:none;display:flex}.issues li{background:var(--bg);border-radius:8px;padding:6px 10px}.issues .issue-error{background:var(--error-bg);color:var(--error-text)}.issues .issue-warn{background:var(--warning-bg);color:var(--warning-text)}.savebar{border-radius:var(--r-card);background:var(--surface);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;padding:12px 18px;display:flex}.savebar-dirty{z-index:4;box-shadow:inset 0 0 0 2px var(--primary);position:sticky;top:72px}.savebar .field{flex-direction:row;align-items:center;gap:8px;margin:0}.savebar .w-ver{width:96px}.savebar-error{flex-basis:100%}.steps{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.steps li{align-items:center;gap:12px;min-height:40px;font-weight:500;display:flex}.step-mark{border:2px solid var(--primary-quarter);color:var(--primary);width:24px;height:24px;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:.75rem;font-weight:600;display:inline-flex}.steps li.done .step-mark{background:var(--primary);border-color:var(--primary);color:#fff}.steps li.done a{color:var(--ink-2);font-weight:400}.steps li.next a{font-weight:600}.progress{grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:14px;display:grid}.progress span{background:var(--bg);border-radius:3px;height:6px}.progress .is-done{background:var(--primary)}.progress .is-next{background:var(--primary-quarter)}.split-bar{background:var(--bg);border-radius:6px;height:12px;margin:4px 0 14px;display:flex;overflow:hidden}.split-bar span{height:100%;transition:width .4s var(--ease)}.legend{flex-wrap:wrap;gap:8px 20px;margin:0;padding:0;list-style:none;display:flex}.legend li{color:var(--ink-2);align-items:center;gap:8px;display:flex}.legend li span{border-radius:3px;width:10px;height:10px}.legend strong{color:var(--ink)}.cat-list{margin:0;padding:4px 20px 8px;list-style:none}.cat-list li{border-bottom:1px solid var(--bg);align-items:center;gap:12px;padding:10px 0;display:flex}.cat-list li:last-child{border-bottom:0}.cat-list-text{flex-direction:column;flex:1;min-width:0;display:flex}.cat-list-num{flex-direction:column;align-items:flex-end;display:flex}.cat-list-num strong{font-size:1.125rem;line-height:1.2}.home-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin:8px 0 22px;display:flex}.home-greeting{margin:0;font-size:1.375rem;font-weight:500}.home-name{color:var(--primary);margin:2px 0 4px;font-size:2rem;font-weight:700}.tiles{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:14px;display:grid}.tile{min-height:150px;transition:transform var(--t-fast) ease;border-radius:20px;flex-direction:column;align-items:flex-start;gap:2px;padding:16px;text-decoration:none;display:flex}.tile:hover{text-decoration:none;transform:translateY(-2px)}.tile svg{margin-bottom:auto}.tile-name{margin-top:14px;font-size:.9375rem;font-weight:700}.tile-meta{opacity:.9;font-size:.6875rem;font-weight:600}.tile-foot{margin-top:6px;font-size:.8125rem;font-weight:500}.mini-list{margin:0;padding:0;list-style:none}.mini-list li{border-bottom:1px solid var(--bg);align-items:center;gap:8px;padding:10px 0;display:flex}.mini-list li:last-child{border-bottom:0}.rollout{background:var(--bg);border-radius:var(--r-card);padding:14px 16px}.rollout-head{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.stages{gap:8px;margin:0 0 12px;padding:0;list-style:none;display:flex}.stages li{background:var(--surface);border-radius:var(--r-ctl);flex-direction:column;flex:1;padding:8px 10px;display:flex}.stages li.done{background:var(--success-bg);border-color:#0000}.stages li.current{box-shadow:inset 0 0 0 2px var(--primary)}.stage-pct{font-weight:700}.ap-wrap{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:24px;display:flex}.ap-side{flex-direction:column;flex:1;gap:8px;min-width:180px;max-width:280px;display:flex}.phone{--ap-accent:#723ed8;background:#1b1b1f;border-radius:38px;flex:none;width:300px;max-width:100%;height:600px;padding:10px;position:relative}.phone-notch{z-index:2;background:#1b1b1f;border-radius:0 0 14px 14px;width:110px;height:22px;position:absolute;top:10px;left:50%;transform:translate(-50%)}.ap-screen{scrollbar-width:none;background:#f1f9ff;border-radius:30px;height:100%;padding-bottom:14px;font-size:.8125rem;overflow-y:auto}.ap-top{align-items:center;gap:10px;padding:36px 16px 12px;display:flex}.ap-back,.ap-more{color:var(--ink);width:22px;line-height:0}.ap-top>div{flex:1;min-width:0}.ap-title{text-overflow:ellipsis;white-space:nowrap;font-size:1.125rem;font-weight:700;overflow:hidden}.ap-sub{color:var(--ink-2);align-items:center;gap:5px;font-size:.75rem;font-weight:500;display:flex}.ap-dot{background:var(--on);border-radius:50%;width:7px;height:7px}.ap-hero{justify-content:center;padding:6px 14px 14px;display:flex}.ap-grid{grid-template-columns:repeat(2,1fr);gap:12px;width:100%;display:grid}.ap-tile{cursor:pointer;min-height:120px;color:var(--ink);text-align:left;background:#fff;border:0;border-radius:18px;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:18px;padding:14px 12px;font-size:.875rem;font-weight:600;transition:background .35s,color .35s;display:flex}.ap-tile-name{font-size:.9375rem;font-weight:700;line-height:1.2}.ap-tile-meta{opacity:.8;margin-top:-14px;font-size:.6875rem;font-weight:600}.ap-row-icon{vertical-align:-4px;margin-right:8px;display:inline-flex}.ap-tile-icon{line-height:0}.ap-power{width:132px;height:132px;color:var(--ink-2);cursor:pointer;background:#fff;border:0;border-radius:50%;justify-content:center;align-items:center;margin:10px 0;transition:background .35s,color .35s;display:inline-flex}.ap-hero-list{background:#fff;border-radius:14px;flex-direction:column;gap:8px;width:100%;padding:6px 14px;display:flex}.ap-metric{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;padding:8px 0;font-weight:500;display:flex}.ap-metric:last-child{border-bottom:0}.ap-metric strong{font-variant-numeric:tabular-nums;font-size:1.125rem;font-weight:700}.ap-card{background:#fff;border-radius:14px;margin:0 14px 12px;padding:4px 14px}.ap-card-title{color:var(--ink);padding:12px 0 2px;font-size:.875rem;font-weight:600}.ap-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:11px 0;font-weight:500;display:flex}.ap-row:last-child{border-bottom:0}.ap-row-wide{flex-direction:column;align-items:stretch}.ap-label{min-width:0}.ap-label small{color:var(--ink-2)}.ap-toggle{cursor:pointer;background:#e3e3e3;border:0;border-radius:15px;flex:none;width:50px;height:30px;padding:0;transition:background .2s;position:relative}.ap-knob{background:#fff;border-radius:50%;width:26px;height:26px;transition:transform .2s,background .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000040}.ap-toggle.on{background:color-mix(in srgb, var(--ap-accent) 35%, transparent)}.ap-toggle.on .ap-knob{background:var(--ap-accent);transform:translate(20px)}.ap-slider{width:100%;accent-color:var(--ap-accent)}.ap-stepper{align-items:center;gap:8px;display:inline-flex}.ap-stepper button{width:32px;height:32px;color:var(--ap-accent);cursor:pointer;background:#f1f9ff;border:0;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.ap-stepper span{text-align:center;font-variant-numeric:tabular-nums;min-width:56px;font-weight:600}.ap-segmented,.ap-buttons{flex-wrap:wrap;gap:6px;display:flex}.ap-segmented button,.ap-buttons button{cursor:pointer;text-transform:capitalize;background:#f1f9ff;border:0;border-radius:25px;padding:6px 12px;font-size:.75rem;font-weight:500;transition:background .25s,color .25s}.ap-segmented button.on,.ap-buttons button.on{color:#fff}.ap-action{cursor:pointer;background:#fff;border:2px solid;border-radius:10px;padding:4px 14px;font-weight:600}.ap-readout{color:var(--ink-2);font-variant-numeric:tabular-nums;text-transform:capitalize;font-weight:600}.ap-colour{background:0 0;border:0;width:40px;height:28px;padding:0}.ap-foot{text-align:center;color:var(--ink-2);padding:8px;font-size:.75rem;font-weight:500}.ap-home-tile{box-shadow:inset 4px 0 0 var(--ap-tile-accent,var(--primary));background:#fff;border-radius:14px;padding:12px 14px}.ap-home-name{margin-bottom:8px;font-weight:600}.ap-home-dps{flex-wrap:wrap;gap:4px;display:flex}.ap-chip{background:#f1f9ff;border-radius:25px;padding:3px 10px;font-size:.75rem;font-weight:500}.ap-chip.on{color:#fff}@media (width<=1180px){.editor-layout{grid-template-columns:minmax(0,1fr)}.editor-side{max-height:none;position:static}}@media (width<=900px){.grid-2{grid-template-columns:minmax(0,1fr)}.signin{grid-template-columns:1fr}.signin-intro{padding:32px 20px 8px}.signin-intro h1{font-size:1.375rem}.signin-how{display:none}.signin-panel{background:var(--bg);border-left:0;justify-content:flex-start}.signin-card{background:var(--surface);border-radius:var(--r-card);padding:20px}}@media (width<=760px){.sidebar{z-index:30;visibility:hidden;transition:transform .45s var(--ease), visibility 0s linear .45s;position:fixed;left:0;transform:translate(-100%)}.nav-open .sidebar{visibility:visible;transition:transform .45s var(--ease);transform:none;box-shadow:0 0 40px #18143c33}.nav-open .scrim{z-index:20;background:#0006;display:block;position:fixed;inset:0}.menu-btn{display:inline-flex}.topbar{height:56px;padding:0 12px}.content{padding:4px 14px 28px}h1{font-size:1.375rem}.card-head{padding:12px 14px}.card-body{padding:14px}.table th:first-child,.table td:first-child{padding-left:14px}.table th:last-child,.table td:last-child{padding-right:14px}.card-flush .toolbar{padding:12px 14px 0}.toolbar .search,.toolbar select{flex:100%;max-width:none}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stat{flex-direction:column;gap:10px;padding:12px}.stat-icon{width:34px;height:34px}.stat-value{font-size:1.125rem}.kv{grid-template-columns:1fr;gap:0}.kv dt{margin-top:10px}.inline-add{flex:100%}.inline-add select{min-width:0}.who .badge,.savebar .spacer{display:none}.toasts{width:auto;bottom:16px;left:16px;right:16px}}@media (pointer:coarse){.btn,.tab,.chip,.nav-item,input:not([type=checkbox]):not([type=radio]):not([type=range]),select,.btn-sm{min-height:44px}.icon-btn{min-width:44px;min-height:44px}.link,.toast-action{min-height:44px;padding:0 8px}.checks label,.checks-col label{min-height:44px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
