body,html{display:flex;margin:0;padding:0;width:100%}:where(body.p15-shell){--bg:oklch(98% 0.003 250);--surface:#ffffff;--surface-alt:oklch(97% 0.004 250);--surface-hover:oklch(96% 0.006 250);--border:oklch(92% 0.005 250);--border-strong:oklch(86% 0.008 250);--text:oklch(22% 0.02 250);--text-muted:oklch(48% 0.02 250);--text-subtle:oklch(62% 0.015 250);--brand:oklch(55% 0.16 245);--brand-soft:oklch(95% 0.04 245);--brand-text:oklch(40% 0.16 245);--green:oklch(58% 0.14 150);--green-soft:oklch(94% 0.06 150);--yellow:oklch(78% 0.15 85);--yellow-soft:oklch(95% 0.09 85);--red:oklch(57% 0.20 25);--red-soft:oklch(95% 0.05 25);--info:oklch(60% 0.13 230);--info-soft:oklch(95% 0.04 230);--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;--row-h:36px;--pad-y:8px;--pad-x:12px;--gap:12px;--radius:4px;--radius-lg:6px;--shadow-sm:0 1px 0 oklch(90% 0.01 250 / 0.6);--shadow-md:0 1px 2px oklch(50% 0.02 250 / 0.08),0 4px 12px oklch(50% 0.02 250 / 0.06);--shadow-lg:0 4px 8px oklch(50% 0.02 250 / 0.08),0 16px 40px oklch(50% 0.02 250 / 0.12);margin:0;padding:0;font-family:var(--font-sans);font-size:14px;line-height:1.45;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:where(body.p15-shell)[data-density=comfortable]{--row-h:44px;--pad-y:12px;--pad-x:16px;--gap:16px}:where(body.p15-shell) *{box-sizing:border-box}:where(body.p15-shell) button{font-family:inherit;font-size:inherit;color:inherit;cursor:pointer}:where(body.p15-shell) input,:where(body.p15-shell) select,:where(body.p15-shell) textarea{font-family:inherit;font-size:14px;color:var(--text)}:where(body.p15-shell) .page{max-width:1400px;margin:0 auto;padding:20px 24px 96px}:where(body.p15-shell) .page-title-row{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:16px;gap:16px}:where(body.p15-shell) .page-title-row .meta{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-subtle);font-family:var(--font-mono);margin-top:4px}:where(body.p15-shell) .page-title-row .meta .sep{color:var(--border-strong)}:where(body.p15-shell) .page-title-row .header-actions{display:flex;align-items:center;gap:8px}:where(body.p15-shell) .page-title{font-size:22px;font-weight:600;letter-spacing:-.015em;margin:0}:where(body.p15-shell) .page-title .doc-code{font-family:var(--font-mono);color:var(--text-subtle);font-weight:400;margin-left:12px;font-size:18px}:where(body.p15-shell) .section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:12px;overflow:hidden}:where(body.p15-shell) .section-header{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--border);background:var(--surface-alt)}:where(body.p15-shell) .section-header.no-border{border-bottom:none}:where(body.p15-shell) .section-title{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0}:where(body.p15-shell) .section-title-counter{font-family:var(--font-mono);font-size:11px;color:var(--text-subtle);font-weight:400;margin-left:4px}:where(body.p15-shell) .section-actions{margin-left:auto;display:flex;align-items:center;gap:8px}:where(body.p15-shell) .field{display:flex;flex-direction:column;gap:4px}:where(body.p15-shell) .field-label{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}:where(body.p15-shell) .field-label .required{color:var(--red);margin-left:2px}:where(body.p15-shell) .input,:where(body.p15-shell) input[type=date].input,:where(body.p15-shell) input[type=email].input,:where(body.p15-shell) input[type=number].input,:where(body.p15-shell) input[type=search].input,:where(body.p15-shell) input[type=tel].input,:where(body.p15-shell) input[type=text].input,:where(body.p15-shell) select.input,:where(body.p15-shell) textarea.input{height:34px;padding:0 10px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);outline:0;transition:border-color .12s,box-shadow .12s}:where(body.p15-shell) textarea.input{height:auto;padding:8px 10px;resize:vertical}:where(body.p15-shell) .input:focus,:where(body.p15-shell) input.input:focus,:where(body.p15-shell) select.input:focus,:where(body.p15-shell) textarea.input:focus{border-color:var(--brand);box-shadow:0 0 0 3px oklch(55% .16 245deg / .15)}:where(body.p15-shell) .input.is-mono{font-family:var(--font-mono)}:where(body.p15-shell) .input.is-readonly,:where(body.p15-shell) .input[readonly]{background:var(--surface-alt);color:var(--text-muted);border-color:var(--border);cursor:default}:where(body.p15-shell) .input.is-error{border-color:var(--red);box-shadow:0 0 0 3px oklch(57% .2 25deg / .12)}:where(body.p15-shell) .input-help{font-size:11px;color:var(--text-subtle)}:where(body.p15-shell) .input-help.is-error{color:var(--red)}:where(body.p15-shell) .form-grid{display:grid;gap:12px;grid-template-columns:repeat(12,1fr)}:where(body.p15-shell) .col-2{grid-column:span 2}:where(body.p15-shell) .col-3{grid-column:span 3}:where(body.p15-shell) .col-6{grid-column:span 6}:where(body.p15-shell) .col-8{grid-column:span 8}:where(body.p15-shell) .col-12{grid-column:span 12}:where(body.p15-shell) .btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:34px;padding:0 14px;border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font-size:13px;font-weight:500;transition:background .12s,border-color .12s;white-space:nowrap}:where(body.p15-shell) .btn:hover{background:var(--surface-hover)}:where(body.p15-shell) .btn-primary{background:var(--brand);border-color:var(--brand);color:#fff}:where(body.p15-shell) .btn-primary:hover{background:oklch(from var(--brand) calc(l - .05) c h)}:where(body.p15-shell) .btn-danger{background:var(--surface);border-color:var(--red);color:var(--red)}:where(body.p15-shell) .btn-danger:hover{background:var(--red-soft)}:where(body.p15-shell) .btn-ghost{background:0 0;border-color:transparent;color:var(--text-muted)}:where(body.p15-shell) .btn-ghost:hover{background:var(--surface-hover);color:var(--text)}:where(body.p15-shell) .btn-sm{height:28px;padding:0 10px;font-size:12px}:where(body.p15-shell) .btn-xs{height:24px;padding:0 8px;font-size:11px}:where(body.p15-shell) .chip{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border:1px solid var(--border-strong);background:var(--surface);border-radius:var(--radius);font-size:12px;color:var(--brand);font-weight:500;cursor:pointer}:where(body.p15-shell) .chip:hover{background:var(--brand-soft)}:where(body.p15-shell) .pill{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 8px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.01em}:where(body.p15-shell) .pill.is-green{background:var(--green-soft);color:oklch(35% .1 150deg)}:where(body.p15-shell) .pill.is-blue{background:var(--info-soft);color:oklch(40% .13 230deg)}:where(body.p15-shell) .pill .dot{width:6px;height:6px;border-radius:999px;background:currentColor}:where(body.p15-shell) .tag{display:inline-flex;align-items:center;gap:4px;height:20px;padding:0 8px;border-radius:3px;font-size:11px;font-weight:500;background:var(--surface-alt);border:1px solid var(--border);color:var(--text-muted);font-family:var(--font-mono);letter-spacing:-.01em;white-space:nowrap}:where(body.p15-shell) .mono{font-family:var(--font-mono)}:where(body.p15-shell) .muted{color:var(--text-muted)}:where(body.p15-shell) .subtle{color:var(--text-subtle)}:where(body.p15-shell) .right{text-align:right}:where(body.p15-shell) .spacer{flex:1}:where(body.p15-shell) .hidden{display:none!important}:where(body.p15-shell) .row-flex{display:flex;align-items:center;gap:8px}:where(body.p15-shell) .i{display:inline-flex;vertical-align:middle}:where(body.p15-shell) .i svg{display:block}:where(body.p15-shell) .modal-backdrop{position:fixed;inset:0;background:oklch(20% .02 250deg / .4);display:grid;place-items:center;z-index:50;padding:32px}:where(body.p15-shell) .modal{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:520px;max-height:90vh;display:flex;flex-direction:column}:where(body.p15-shell) .modal-header{padding:16px 20px;border-bottom:1px solid var(--border)}:where(body.p15-shell) .modal-title{font-size:16px;font-weight:600;margin:0}:where(body.p15-shell) .modal-sub{font-size:12px;color:var(--text-muted);margin-top:2px}:where(body.p15-shell) .modal-body{padding:20px;overflow:auto;flex:1}:where(body.p15-shell) .modal-footer{padding:12px 20px;border-top:1px solid var(--border);background:var(--surface-alt);display:flex;align-items:center;gap:8px;justify-content:flex-end}body.p15-shell{display:block}[data-valmsg-summary].validation-summary-valid{display:none}body.loading .wait-animation{display:flex}.wait-animation{display:none;position:fixed;z-index:9999;inset:0;background:oklch(20% .02 250deg / .8);justify-content:center;align-items:center}.wait-animation span{color:#fff;font-size:70px}.wait-dialog{width:30%;margin-top:15%}.progress-bar-full{width:100%}