:root{--c-paper: #EFEFEC;--c-ink: #15161A;--c-amber: #FF5A1F;--c-muted: #94969F;--c-text2: #5C5E66;--c-line: #DEDED8;--c-card: #FFFFFF;--c-err: #D23B2A;--c-err-bg: #FBEAE7;--c-ok: #137150;--c-ok-bg: #E4F5EE;--c-warn: #8A5E00;--c-warn-bg: #FBF2DE;--c-info-bg: #EEF1F6}.cx-shell{min-height:100vh;background:var(--c-paper);color:var(--c-ink);font-family:DM Sans,ui-sans-serif,system-ui,Segoe UI,Roboto,Arial,sans-serif;padding:28px 6vw 64px;box-sizing:border-box}.cx-shell *,.cx-shell *:before,.cx-shell *:after{box-sizing:border-box}.cx-top{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;flex-wrap:wrap}.cx-brand{display:flex;align-items:baseline;gap:10px;text-decoration:none;color:var(--c-ink)}.cx-brand-dot{width:12px;height:12px;border-radius:4px;background:var(--c-amber);display:inline-block}.cx-brand-name{font-size:18px;font-weight:700}.cx-brand-sub{font-size:12px;color:var(--c-muted)}.cx-who{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--c-text2)}.cx-nav{display:flex;gap:4px;flex-wrap:wrap;margin:0 0 22px;padding:4px;background:var(--c-card);border:1px solid var(--c-line);border-radius:10px;width:fit-content;max-width:100%}.cx-nav a{font-size:13px;color:var(--c-text2);text-decoration:none;padding:6px 12px;border-radius:7px}.cx-nav a:hover{background:var(--c-paper);color:var(--c-ink)}.cx-nav a[aria-current=page]{background:var(--c-ink);color:#fff}.cx-crumb{font-size:12px;color:var(--c-muted);margin-bottom:8px}.cx-crumb a{color:var(--c-muted)}.cx-h1{font-size:22px;font-weight:600;margin:0 0 4px}.cx-lede{font-size:13px;color:var(--c-text2);margin:0 0 18px;max-width:70ch}.cx-h2{font-size:15px;font-weight:600;margin:0 0 12px}.cx-card{background:var(--c-card);border:1px solid var(--c-line);border-radius:12px;padding:16px 18px;margin-bottom:14px}.cx-grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.cx-grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.cx-toolbar{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin-bottom:14px}.cx-toolbar .cx-spacer{flex:1}.cx-btn{font:inherit;font-size:13px;padding:8px 14px;border-radius:8px;border:1px solid var(--c-line);background:var(--c-card);color:var(--c-ink);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:6px}.cx-btn:hover{border-color:var(--c-muted)}.cx-btn:disabled{opacity:.55;cursor:default}.cx-btn-primary{background:var(--c-ink);border-color:var(--c-ink);color:#fff}.cx-btn-primary:hover{background:#2a2b31}.cx-btn-danger{color:var(--c-err);border-color:#ebc1ba}.cx-btn-link{border:0;background:none;padding:0;color:var(--c-amber);font-weight:600}.cx-badge{display:inline-block;font-size:11px;padding:2px 9px;border-radius:99px;background:var(--c-info-bg);color:var(--c-text2);white-space:nowrap}.cx-badge-ok{background:var(--c-ok-bg);color:var(--c-ok)}.cx-badge-warn{background:var(--c-warn-bg);color:var(--c-warn)}.cx-badge-err{background:var(--c-err-bg);color:var(--c-err)}.cx-table-wrap{overflow-x:auto;background:var(--c-card);border:1px solid var(--c-line);border-radius:12px}.cx-table{width:100%;border-collapse:collapse;font-size:13px}.cx-table th{text-align:left;font-weight:600;font-size:11.5px;color:var(--c-muted);text-transform:uppercase;letter-spacing:.04em;padding:10px 14px;border-bottom:1px solid var(--c-line);white-space:nowrap}.cx-table td{padding:10px 14px;border-bottom:1px solid #EEEEE9;vertical-align:top}.cx-table tr:last-child td{border-bottom:0}.cx-table a{color:var(--c-ink);font-weight:600}.cx-mono{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12.5px}.cx-dim{color:var(--c-muted);font-size:12px}.cx-kv{display:grid;grid-template-columns:minmax(120px,40%) 1fr;gap:6px 14px;font-size:13px;margin:0}.cx-kv dt{color:var(--c-muted)}.cx-kv dd{margin:0}.cx-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}.cx-form .cx-full{grid-column:1 / -1}.cx-field{display:flex;flex-direction:column;gap:4px;min-width:0}.cx-field label{font-size:12px;font-weight:600;color:var(--c-text2)}.cx-field .cx-hint{font-size:11.5px;color:var(--c-muted)}.cx-field .cx-ferr{font-size:12px;color:var(--c-err)}.cx-input,.cx-select,.cx-textarea{font:inherit;font-size:13px;padding:8px 10px;border:1px solid var(--c-line);border-radius:8px;background:#fff;color:var(--c-ink);width:100%;min-width:0}.cx-textarea{min-height:96px;resize:vertical}.cx-input[aria-invalid=true],.cx-select[aria-invalid=true],.cx-textarea[aria-invalid=true]{border-color:var(--c-err)}.cx-input:focus-visible,.cx-select:focus-visible,.cx-textarea:focus-visible,.cx-btn:focus-visible,.cx-nav a:focus-visible{outline:2px solid var(--c-amber);outline-offset:1px}.cx-check{display:flex;align-items:center;gap:8px;font-size:13px}.cx-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.cx-note{font-size:13px;padding:10px 14px;border-radius:10px;margin:0 0 14px;background:var(--c-info-bg);color:var(--c-text2)}.cx-note-err{background:var(--c-err-bg);color:var(--c-err)}.cx-note-warn{background:var(--c-warn-bg);color:var(--c-warn)}.cx-note-ok{background:var(--c-ok-bg);color:var(--c-ok)}.cx-note ul{margin:6px 0 0;padding-left:18px}.cx-stat{background:var(--c-card);border:1px solid var(--c-line);border-radius:12px;padding:12px 14px}.cx-stat .k{font-size:12px;color:var(--c-muted)}.cx-stat .v{font-size:24px;font-weight:600}.cx-steps{list-style:none;margin:0;padding:0;display:grid;gap:8px}.cx-steps li{display:flex;gap:10px;align-items:flex-start;font-size:13px}.cx-step-dot{flex:none;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:700;border:1.5px solid var(--c-line);color:var(--c-muted);background:#fff}.cx-step-done{background:var(--c-ok-bg);border-color:var(--c-ok);color:var(--c-ok)}.cx-step-blocked{background:var(--c-warn-bg);border-color:var(--c-warn);color:var(--c-warn)}.cx-pager{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}@media (max-width: 760px){.cx-shell{padding:18px 16px 48px}.cx-grid2,.cx-grid3,.cx-form{grid-template-columns:1fr}.cx-kv{grid-template-columns:1fr;gap:0 0}.cx-kv dd{margin-bottom:8px}.cx-h1{font-size:19px}.cx-nav{width:100%}}.cx-toolbar.cx-cardhead{align-items:center;margin-bottom:8px}.cx-card a:not(.cx-btn){color:var(--c-ink);font-weight:600;text-underline-offset:2px}
