@import "https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";
:root{--pph-navy:#1f3a47;--pph-navy-deep:#14272f;--pph-teal:#5c8a8a;--pph-teal-deep:#3f6a6a;--n-0:#fff;--n-25:#fcfcfd;--n-50:#f8fafc;--n-100:#f1f5f9;--n-200:#e2e8f0;--n-300:#cbd5e1;--n-400:#94a3b8;--n-500:#64748b;--n-600:#475569;--n-700:#334155;--n-800:#1e293b;--n-900:#0f172a;--app-playhouse:#1f3a47;--app-admin:#6b5ba3;--app-central:#a8624d;--app-pzero:#1e3a8a;--app-warehouse:#8c6d2f;--app-payhouse:#2f5e5e;--app-playground:#c4824a;--app-platform:#4f6680;--app-current:var(--app-playhouse);--app-current-tint:var(--app-playhouse-tint);--app-playhouse-tint:#e8eef1;--app-admin-tint:#ece8f4;--app-central-tint:#f5e9e4;--app-pzero-tint:#e5ecfa;--app-warehouse-tint:#f2ebda;--app-payhouse-tint:#e1ecec;--app-playground-tint:#f6e8d9;--app-platform-tint:#e7ecf1;--status-success:#2d7a4f;--status-success-bg:#e2f0e7;--status-warning:#b7791f;--status-warning-bg:#f8ecd0;--status-danger:#b23a3a;--status-danger-bg:#f4dddd;--status-info:#2d5f8b;--status-info-bg:#dde7f1;--status-neutral:var(--n-500);--status-neutral-bg:var(--n-100);--ff-display:"Geist", "Geist Variable", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--ff-ui:"Geist", "Geist Variable", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--ff-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--fs-11:11px;--fs-12:12px;--fs-13:13px;--fs-14:14px;--fs-16:16px;--fs-18:18px;--fs-22:22px;--fs-24:24px;--fs-26:26px;--fs-28:28px;--fs-32:32px;--fs-36:36px;--fs-48:48px;--lh-tight:1.15;--lh-snug:1.3;--lh-normal:1.5;--tr-tight:-.02em;--tr-snug:-.01em;--tr-normal:0em;--tr-wide:.04em;--tr-uppercase:.08em;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--sp-0:0;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-7:32px;--sp-8:40px;--sp-9:56px;--sp-10:72px;--r-1:2px;--r-2:4px;--r-3:6px;--r-4:8px;--r-5:12px;--r-6:16px;--r-pill:999px;--el-0:none;--el-1:0 1px 2px #0f172a0d;--el-2:0 2px 8px #0f172a0f;--el-3:0 10px 28px #0f172a1f;--el-modal:0 24px 64px #0f172a33, 0 8px 24px #0f172a1a;--shadow-lg:0 12px 36px #0f172a1f;--ease:cubic-bezier(.2,.7,.3,1);--dur-fast:.12s;--dur-base:.18s;--dur-slow:.26s;--z-overlay:900;--z-dialog:1000;--z-toast:1100;--color-primary:var(--app-current);--color-border:var(--bd-default);--color-text-muted:var(--fg-muted);--color-danger:var(--status-danger);--color-surface-raised:var(--bg-raised);--fg-danger:var(--status-danger);--bg-surface-raised:var(--bg-raised);--radius-md:var(--r-3);--radius-sm:var(--r-2);--space-4:var(--sp-4);--fs-10:var(--fs-11);--fs-15:var(--fs-14);--fs-sm:var(--fs-13);--ease-standard:var(--ease);--radius-pill:var(--r-pill);--bg-subtle:var(--bg-sunken);--surface-elevated:var(--bg-surface);--surface-tinted:var(--bg-surface);--bd-subtle:1px solid var(--bd-default);--el-glow:0 0 0 1px color-mix(in srgb, var(--app-current) 14%, transparent);--el-float:var(--el-2);--el-prominent:var(--el-3);--content-max:1280px;--content-narrow:720px;--color-surface:var(--bg-surface);--color-warning:var(--status-warning);--color-accent:var(--app-current);--fs-20:20px;--fs-base:var(--fs-14);--fs-xs:var(--fs-12);--fg-body:var(--fg-default);--r-round:var(--r-pill);--ph-topbar-h:56px}:root,[data-theme=light]{--bg-app:var(--n-50);--bg-surface:var(--n-0);--bg-sunken:var(--n-25);--bg-raised:var(--n-0);--bg-elevated:var(--n-0);--bg-overlay:#0f172a7a;--bg-sidebar:var(--n-25);--fg-sidebar:var(--n-700);--fg-sidebar-muted:var(--n-500);--fg-sidebar-active:var(--n-900);--bd-sidebar:var(--n-200);--fg-default:var(--n-900);--fg-strong:var(--n-900);--fg-muted:var(--n-500);--fg-faint:var(--n-400);--fg-subtle:var(--n-400);--fg-on-accent:var(--n-0);--bd-default:var(--n-200);--bd-strong:var(--n-300);--bd-faint:var(--n-100);--field-bg:var(--n-0);--field-bd:var(--n-200);--field-bd-focus:var(--app-current,var(--pph-navy));--field-shadow-focus:0 0 0 3px color-mix(in srgb, var(--app-current,var(--pph-navy)) 16%, transparent);--row-hover:var(--n-50);--row-stripe:var(--n-25);--row-selected:#eff6ff;--code-bg:var(--n-50)}[data-theme=dark]{--bg-app:#020617;--bg-surface:#0f172a;--bg-sunken:#020617;--bg-raised:#111c31;--bg-elevated:#172033;--bg-overlay:#0009;--bg-sidebar:#0f172a;--fg-sidebar:#cbd5e1;--fg-sidebar-muted:#94a3b8;--fg-sidebar-active:#fff;--bd-sidebar:#1e293b;--fg-default:#e2e8f0;--fg-strong:#f8fafc;--fg-muted:#94a3b8;--fg-faint:#64748b;--fg-subtle:#64748b;--fg-on-accent:#fff;--bd-default:#334155;--bd-strong:#475569;--bd-faint:#1e293b;--field-bg:#0f172a;--field-bd:#334155;--field-bd-focus:var(--app-current,#60a5fa);--field-shadow-focus:0 0 0 3px color-mix(in srgb, var(--app-current,#60a5fa) 24%, transparent);--row-hover:#172033;--row-stripe:#111827;--row-selected:#172554;--code-bg:#020617;--app-playhouse:#4a86a0;--app-admin:#9685d2;--app-central:#d08a75;--app-pzero:#3b82f6;--app-warehouse:#c4a05a;--app-payhouse:#5fa1a1;--app-playground:#e0a878;--app-platform:#7e97b5;--app-playhouse-tint:#142026;--app-admin-tint:#1f1b2e;--app-central-tint:#2a1c18;--app-pzero-tint:#11213a;--app-warehouse-tint:#25200f;--app-payhouse-tint:#112524;--app-playground-tint:#2a1f12;--app-platform-tint:#18202b;--status-success-bg:#142b22;--status-warning-bg:#2c2310;--status-danger-bg:#2d1414;--status-info-bg:#122336;--status-neutral-bg:#1b2424}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--ff-ui);font-size:var(--fs-14);line-height:var(--lh-normal);color:var(--fg-default);background:var(--bg-app);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv11", "ss01", "ss03"}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}a{color:inherit;text-decoration:none}.t-display-xl{font-family:var(--ff-display);font-size:var(--fs-48);line-height:var(--lh-tight);letter-spacing:var(--tr-tight);font-weight:var(--fw-semibold)}.t-display-l{font-family:var(--ff-display);font-size:var(--fs-36);line-height:var(--lh-tight);letter-spacing:var(--tr-tight);font-weight:var(--fw-semibold)}.t-display-m{font-family:var(--ff-display);font-size:var(--fs-28);line-height:var(--lh-snug);letter-spacing:var(--tr-snug);font-weight:var(--fw-semibold)}.t-h1{font-family:var(--ff-display);font-size:var(--fs-22);line-height:var(--lh-snug);letter-spacing:var(--tr-snug);font-weight:var(--fw-semibold)}.t-h2{font-family:var(--ff-display);font-size:var(--fs-18);line-height:var(--lh-snug);font-weight:var(--fw-semibold)}.t-h3{font-family:var(--ff-ui);font-size:var(--fs-16);line-height:var(--lh-snug);font-weight:var(--fw-semibold)}.t-body{font-size:var(--fs-14);line-height:var(--lh-normal)}.t-body-sm{font-size:var(--fs-13);line-height:var(--lh-normal)}.t-caption{font-size:var(--fs-12);line-height:var(--lh-snug);color:var(--fg-muted)}.t-eyebrow{font-size:var(--fs-11);line-height:var(--lh-snug);letter-spacing:var(--tr-uppercase);text-transform:uppercase;font-weight:var(--fw-semibold);color:var(--fg-muted)}.t-mono{font-family:var(--ff-mono);font-size:var(--fs-12)}.t-mono-sm{font-family:var(--ff-mono);font-size:var(--fs-11)}.t-num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}
.ph-shell{background:var(--bg-app);grid-template-columns:232px minmax(0,1fr);height:100vh;display:grid;overflow:hidden}.ph-shell-main{flex-direction:column;min-width:0;display:flex;overflow:hidden}.ph-shell-content{min-height:0;padding:var(--sp-6);flex:1;overflow:auto}.ph-sidebar{background:var(--bg-sidebar);border-right:1px solid var(--bd-sidebar);color:var(--fg-sidebar);z-index:20;flex-direction:column;width:232px;height:100vh;min-height:0;display:flex;position:sticky;top:0;overflow:hidden}.ph-sidebar-collapsed{width:56px}.ph-sidebar-brand{border-bottom:1px solid #ffffff0d;flex:none;align-items:center;gap:10px;padding:14px;display:flex}.ph-sidebar-brand-copy{flex-direction:column;min-width:0;display:flex}.ph-sidebar-title,.ph-sidebar-tag{margin:0}.ph-sidebar-title{color:var(--fg-sidebar-active);font-family:var(--ff-display);font-size:var(--fs-14);font-weight:var(--fw-semibold);line-height:var(--lh-snug)}.ph-sidebar-tag{color:var(--fg-sidebar-muted);font-size:10px;font-weight:var(--fw-semibold);line-height:var(--lh-snug);text-transform:uppercase}.ph-sidebar-nav{min-height:0;padding:var(--sp-2);flex-direction:column;flex:1;gap:1px;display:flex;overflow:auto}.ph-sidebar-section{color:var(--fg-sidebar-muted);font-size:10px;font-weight:var(--fw-semibold);text-transform:uppercase;min-height:24px;margin-top:8px;margin-bottom:6px;padding:14px 10px 9px}.ph-sidebar-section:first-child{margin-top:0}.ph-sidebar-link{border-radius:var(--r-3);color:var(--fg-sidebar);font-size:var(--fs-13);align-items:center;gap:10px;min-height:32px;padding:7px 10px;display:flex;position:relative}.ph-sidebar-link:hover,.ph-sidebar-link.active{color:var(--fg-sidebar-active);background:#ffffff0f}.ph-sidebar-link.active:before{background:var(--app-current,var(--pph-navy));border-radius:var(--r-1);content:"";width:2px;position:absolute;top:6px;bottom:6px;left:-1px}.ph-sidebar-icon{color:var(--fg-sidebar-muted);flex:none;display:inline-flex}.ph-sidebar-link.active .ph-sidebar-icon{color:var(--app-current,var(--pph-navy))}.ph-sidebar-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.ph-sidebar-footer{border-top:1px solid #ffffff0d;flex:none;padding:10px}.ph-topbar{background:var(--bg-surface);border-bottom:1px solid var(--bd-default);align-items:center;gap:var(--sp-4);height:52px;padding:0 var(--sp-5);flex:none;justify-content:space-between;display:flex}.ph-topbar-left,.ph-topbar-actions{align-items:center;gap:var(--sp-3);min-width:0;display:flex}.ph-breadcrumb{color:var(--fg-muted);font-size:var(--fs-13);align-items:center;gap:var(--sp-2);min-width:0;display:flex}.ph-breadcrumb span:not(:first-child):before{color:var(--fg-muted);content:"/";margin-right:var(--sp-2)}.ph-breadcrumb a{color:inherit;text-decoration:none}.ph-breadcrumb a:hover{color:var(--fg-strong);text-underline-offset:3px;text-decoration:underline}.ph-breadcrumb .active{color:var(--fg-strong);font-weight:var(--fw-medium)}.ph-app-switcher{position:relative}.ph-app-switcher>summary{cursor:pointer;list-style:none}.ph-app-switcher>summary::-webkit-details-marker{display:none}.ph-app-switcher:after{content:"";height:14px;display:block;position:absolute;top:100%;left:0;right:-18px}.ph-app-switcher-menu{background:var(--bg-surface);border:1px solid var(--bd-default);border-radius:var(--r-4);box-shadow:var(--el-3);gap:var(--sp-1);padding:var(--sp-3);z-index:100;grid-template-columns:repeat(2,minmax(0,1fr));width:360px;display:none;position:absolute;top:calc(100% + 6px);left:0}.ph-app-switcher[open] .ph-app-switcher-menu{display:grid}.ph-app-switcher-summary{border-bottom:1px solid var(--bd-faint);margin:calc(var(--sp-1) * -1) 0 var(--sp-1);padding:var(--sp-2);grid-column:1/-1}.ph-app-switcher-title,.ph-app-switcher-subtitle{margin:0}.ph-app-switcher-title{color:var(--fg-strong);font-size:var(--fs-13);font-weight:var(--fw-semibold)}.ph-app-switcher-subtitle{color:var(--fg-muted);font-size:var(--fs-12);margin-top:2px}.ph-app-switcher-item{border-radius:var(--r-3);min-width:0;padding:var(--sp-2);align-items:center;gap:10px;display:flex}.ph-app-switcher-item:hover,.ph-app-switcher-item.active{background:var(--bg-sunken)}.ph-app-switcher-item.disabled{cursor:not-allowed;opacity:.5;pointer-events:none}.ph-app-switcher-item strong,.ph-app-switcher-item small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.ph-app-switcher-item strong{color:var(--fg-strong);font-size:var(--fs-12);font-weight:var(--fw-medium)}.ph-app-switcher-item small{color:var(--fg-muted);font-size:10px}.ph-account-footer{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.ph-account-footer strong,.ph-account-footer small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.ph-account-footer strong{color:var(--fg-sidebar-active);font-size:var(--fs-12);font-weight:var(--fw-semibold)}.ph-account-footer small{color:var(--fg-sidebar-muted);font-size:10px}.ph-topbar-profile-link{border-radius:var(--r-pill);align-items:center;display:inline-flex}.ph-topbar-profile-link:focus-visible{outline:2px solid var(--bd-focus);outline-offset:2px}.ph-avatar{background:var(--app-current,var(--pph-navy));border-radius:var(--r-pill);color:var(--fg-on-accent);font-weight:var(--fw-semibold);letter-spacing:0;flex:none;justify-content:center;align-items:center;display:inline-flex}.ph-kbd{background:var(--bg-sunken);border:1px solid var(--bd-faint);border-radius:var(--r-2);color:var(--fg-muted);font-family:var(--ff-mono);justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;display:inline-flex}.ph-theme-toggle{background:var(--bg-surface);border:1px solid var(--bd-default);border-radius:var(--r-3);color:var(--fg-default);font-size:var(--fs-12);font-weight:var(--fw-medium);align-items:center;gap:var(--sp-2);white-space:nowrap;height:32px;padding:0 10px;display:inline-flex}.ph-theme-toggle:hover{box-shadow:var(--el-1)}.ph-theme-toggle-track{background:var(--bg-sunken);border:1px solid var(--bd-faint);border-radius:var(--r-pill);width:30px;height:16px;padding:2px;display:inline-flex}.ph-theme-toggle-thumb{background:var(--app-current,var(--pph-navy));border-radius:var(--r-pill);height:10px;transition:transform var(--dur-fast) var(--ease);width:10px}[data-theme=dark] .ph-theme-toggle-thumb{transform:translate(14px)}.ph-button{border-radius:var(--r-3);font-weight:var(--fw-medium);align-items:center;gap:var(--sp-2);letter-spacing:0;transition:background-color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), filter var(--dur-fast) var(--ease), transform 90ms var(--ease);white-space:nowrap;justify-content:center;display:inline-flex}.ph-button-sm{font-size:var(--fs-12);height:28px;padding:0 10px}.ph-button-md{font-size:var(--fs-13);height:32px;padding:0 var(--sp-3)}.ph-button-lg{font-size:var(--fs-14);height:40px;padding:0 var(--sp-4)}.ph-button-primary{background:var(--app-current,var(--pph-navy));box-shadow:inset 0 -1px 0 #0000001f, var(--el-1);color:var(--fg-on-accent);border:1px solid #0000}.ph-button-secondary{background:var(--bg-surface);border:1px solid var(--bd-default);color:var(--fg-default)}.ph-button-ghost{color:var(--fg-default);background:0 0;border:1px solid #0000}.ph-button-danger{background:var(--status-danger);color:var(--fg-on-accent);border:1px solid #0000}.ph-button:hover:not(:disabled),.ph-icon-button:hover:not(:disabled){box-shadow:var(--el-2);transform:translateY(-1px)}.ph-button:active:not(:disabled),.ph-icon-button:active:not(:disabled){transform:translateY(1px);box-shadow:inset 0 1px 3px #0f172a33}.ph-button-primary:active:not(:disabled),.ph-button-danger:active:not(:disabled){filter:brightness(.92)}.ph-button-secondary:active:not(:disabled),.ph-button-ghost:active:not(:disabled),.ph-icon-button:active:not(:disabled){background:color-mix(in srgb, var(--app-current,var(--pph-navy)) 12%, var(--bg-surface));border-color:color-mix(in srgb, var(--app-current,var(--pph-navy)) 40%, var(--bd-default))}.ph-button:focus-visible,.ph-icon-button:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--bd-focus) 32%, transparent), var(--el-1);outline:2px solid var(--bd-focus);outline-offset:2px}.ph-button:disabled,.ph-icon-button:disabled{cursor:not-allowed;opacity:.55;transform:none}.ph-button-full{width:100%}.ph-button-icon{display:inline-flex}.ph-icon-button{background:var(--bg-surface);border:1px solid var(--bd-default);border-radius:var(--r-3);color:var(--fg-default);transition:background-color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), transform 90ms var(--ease);justify-content:center;align-items:center;display:inline-flex;position:relative}.ph-icon-button-sm{width:28px;height:28px}.ph-icon-button-md{width:32px;height:32px}.ph-icon-button-notified{border-color:color-mix(in srgb, var(--status-danger) 40%, var(--bd-default))}.ph-icon-button-count{background:var(--status-danger);border:2px solid var(--bg-surface);color:var(--fg-on-accent);font-size:10px;font-weight:var(--fw-semibold);border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;line-height:1;display:inline-flex;position:absolute;top:-7px;right:-7px}.ph-badge{border-radius:var(--r-2);font-weight:var(--fw-medium);text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:5px;width:fit-content;min-width:0;max-width:100%;padding-block:4px;padding-inline:10px;line-height:1.2;display:inline-flex;overflow:hidden}.ph-badge-sm{font-size:var(--fs-11);min-height:24px;padding-inline:8px}.ph-badge-md{font-size:var(--fs-11);min-height:26px;padding-inline:10px}.ph-status-pill{font-weight:var(--fw-semibold);letter-spacing:0;text-transform:none}.ph-badge-neutral{background:var(--status-neutral-bg);border-color:color-mix(in srgb, var(--status-neutral) 18%, transparent);color:var(--status-neutral)}.ph-badge-success{background:var(--status-success-bg);border-color:color-mix(in srgb, var(--status-success) 18%, transparent);color:var(--status-success)}.ph-badge-warning{background:var(--status-warning-bg);border-color:color-mix(in srgb, var(--status-warning) 20%, transparent);color:var(--status-warning)}.ph-badge-danger{background:var(--status-danger-bg);border-color:color-mix(in srgb, var(--status-danger) 18%, transparent);color:var(--status-danger)}.ph-badge-info{background:var(--status-info-bg);border-color:color-mix(in srgb, var(--status-info) 18%, transparent);color:var(--status-info)}.ph-badge-dot-mark{border-radius:var(--r-pill);background:currentColor;width:5px;height:5px}.ph-mono{font-family:var(--ff-mono)}.ph-page-header{align-items:flex-start;gap:var(--sp-6);margin-bottom:var(--sp-6);justify-content:space-between;display:flex}.ph-page-header-copy{min-width:0}.ph-page-actions{align-items:center;gap:var(--sp-2);flex-wrap:wrap;justify-content:flex-end;display:flex}.ph-eyebrow{color:var(--app-current,var(--pph-navy));font-size:var(--fs-11);font-weight:var(--fw-semibold);margin:0 0 var(--sp-2);text-transform:uppercase}.ph-page-title{color:var(--fg-strong);font-family:var(--ff-display);font-size:var(--fs-28);font-weight:var(--fw-semibold);line-height:var(--lh-snug);margin:0}.ph-page-copy,.ph-panel-subtitle{color:var(--fg-muted);margin:var(--sp-2) 0 0}.ph-panel{background:var(--bg-surface);border:1px solid var(--bd-default);border-radius:var(--r-3);box-shadow:var(--el-1);margin-bottom:var(--sp-5);overflow:hidden}.ph-panel-danger{border-color:var(--status-danger)}.ph-panel-success{border-color:var(--status-success)}.ph-panel-header{border-bottom:1px solid var(--bd-faint);align-items:center;gap:var(--sp-4);min-height:52px;padding:var(--sp-5);justify-content:space-between;display:flex}.ph-panel-title{color:var(--fg-strong);font-size:var(--fs-18);font-weight:var(--fw-semibold);line-height:var(--lh-snug);margin:0}.ph-panel-body{padding:var(--sp-5)}.ph-panel-body-flush{padding:0}.ph-empty-state{color:var(--fg-muted);align-items:center;gap:var(--sp-2);padding:var(--sp-8);text-align:center;justify-items:center;display:grid}.ph-loading-spinner{border:2px solid var(--bd-default);border-top-color:var(--app-current);border-radius:var(--r-pill);width:28px;height:28px;animation:.8s linear infinite ph-spin}.ph-loading-shell{background:var(--bg-app);min-height:100vh;display:block}.ph-loading-sidebar{background:var(--bg-sidebar);align-content:start;gap:10px;padding:14px 10px;display:grid}.ph-loading-main{place-items:center;min-width:0;min-height:100vh;display:grid}.ph-loading-topbar{background:color-mix(in srgb, var(--bg-surface) 92%, transparent);border-bottom:1px solid var(--bd-faint);min-height:56px;padding:0 var(--sp-6);justify-content:space-between;align-items:center;display:flex}.ph-loading-content{min-height:100vh;padding:var(--sp-6);place-items:center;width:100%;display:grid}.route-loading-frame{min-height:calc(100vh - 96px);padding:var(--sp-6);justify-content:center;align-items:center;width:100%;display:flex}.ph-loading-status-card{background:var(--bg-surface);border:1px solid var(--bd-default);border-radius:var(--r-3);box-shadow:var(--el-1);align-items:center;gap:var(--sp-3);max-width:520px;padding:var(--sp-4);width:min(520px,100%);display:flex}.ph-loading-status-card strong,.ph-loading-status-card small{display:block}.ph-loading-status-card small{color:var(--fg-muted);font-size:var(--fs-12);margin-top:2px}.ph-skeleton{background:linear-gradient(90deg, var(--bg-sunken), var(--bg-muted), var(--bg-sunken));border-radius:var(--r-3);background-size:240% 100%;animation:1.2s ease-in-out infinite ph-skeleton-pulse}.ph-loading-sidebar .ph-skeleton{background:linear-gradient(90deg,#ffffff0f,#ffffff21,#ffffff0f) 0 0/240% 100%}.ph-loading-brand{height:40px;margin-bottom:var(--sp-3)}.ph-loading-nav{height:32px}.ph-loading-breadcrumb{width:min(360px,42vw);height:18px}.ph-loading-header{gap:var(--sp-3);display:grid}.ph-loading-eyebrow{width:120px;height:12px}.ph-loading-title{width:min(420px,60vw);height:34px}.ph-loading-copy{width:min(680px,78vw);height:18px}.ph-loading-metrics{gap:var(--sp-4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.ph-loading-metric{height:96px}.ph-loading-panel{background:var(--bg-surface);border:1px solid var(--bd-default);border-radius:var(--r-3);gap:var(--sp-3);padding:var(--sp-4);display:grid}.ph-loading-panel-title{width:240px;height:22px}.ph-loading-row{height:42px}@keyframes ph-skeleton-pulse{to{background-position:-240% 0}}@keyframes ph-spin{to{transform:rotate(360deg)}}.ph-empty-action{margin-top:var(--sp-3)}.ph-field{gap:var(--sp-2);display:grid}.ph-field-label{color:var(--fg-muted);font-size:var(--fs-12);font-weight:var(--fw-semibold)}.ph-required{color:var(--status-danger);margin-left:2px}.ph-input,.ph-select,.ph-textarea{background:var(--field-bg);border:1px solid var(--field-bd);border-radius:var(--r-3);color:var(--fg-default);width:100%;min-height:40px;padding:9px 11px}.ph-input:focus,.ph-select:focus,.ph-textarea:focus{border-color:var(--field-bd-focus);box-shadow:var(--field-shadow-focus);outline:0}.ph-input[type=file]{cursor:pointer;padding:5px}.ph-input[type=file]::file-selector-button{background:var(--bg-raised);border:1px solid var(--bd-default);border-radius:var(--r-2);color:var(--fg-default);cursor:pointer;font:inherit;font-size:var(--fs-12);font-weight:var(--fw-semibold);margin-right:var(--sp-3);min-height:28px;padding:0 var(--sp-3)}.ph-textarea{resize:vertical;min-height:120px}.ph-field-message{color:var(--fg-muted);font-size:var(--fs-11)}.ph-field-message-error{color:var(--status-danger)}.ph-field-error .ph-input,.ph-field-error .ph-select,.ph-field-error .ph-textarea{border-color:var(--status-danger)}.ph-check-field{align-items:center;gap:var(--sp-2);display:flex}.ph-check-field input{accent-color:var(--app-current,var(--pph-navy))}.ph-check-field span{gap:2px;display:grid}.ph-check-field strong{color:var(--fg-default);font-size:var(--fs-13);font-weight:var(--fw-medium)}.ph-check-field small{color:var(--fg-muted);font-size:var(--fs-11)}.ph-toggle-field{cursor:pointer;align-items:center;gap:var(--sp-2);display:inline-flex}.ph-toggle-field input{opacity:0;pointer-events:none;position:absolute}.ph-toggle-track{background:var(--n-300);border-radius:var(--r-pill);flex:none;width:32px;height:18px;padding:2px;display:inline-flex}.ph-toggle-track span{background:var(--n-0);border-radius:var(--r-pill);box-shadow:var(--el-1);height:14px;transition:transform var(--dur-fast) var(--ease);width:14px}.ph-toggle-field input:checked+.ph-toggle-track{background:var(--app-current,var(--pph-navy))}.ph-toggle-field input:checked+.ph-toggle-track span{transform:translate(14px)}.ph-toggle-field strong{color:var(--fg-default);font-size:var(--fs-13);font-weight:var(--fw-medium);display:block}.ph-toggle-field small{color:var(--fg-muted);font-size:var(--fs-11);margin-top:2px;display:block}.ph-segmented{background:var(--bg-sunken);border:1px solid var(--bd-default);border-radius:var(--r-3);align-items:center;gap:2px;padding:2px;display:inline-flex}.ph-segmented label{border-radius:var(--r-2);color:var(--fg-muted);cursor:pointer;font-size:var(--fs-12);font-weight:var(--fw-medium);min-height:26px;padding:7px 10px;line-height:1}.ph-segmented label.active{background:var(--bg-surface);box-shadow:var(--el-1);color:var(--fg-strong)}.ph-segmented input{opacity:0;pointer-events:none;position:absolute}.ph-tabs{border-bottom:1px solid var(--bd-default);align-items:center;gap:var(--sp-1);margin-bottom:var(--sp-5);display:flex}.ph-tabs a{color:var(--fg-muted);font-size:var(--fs-13);font-weight:var(--fw-medium);align-items:center;gap:var(--sp-2);min-height:36px;padding:0 var(--sp-3);border-bottom:2px solid #0000;display:inline-flex}.ph-tabs a:hover,.ph-tabs a.active{border-bottom-color:var(--app-current,var(--pph-navy));color:var(--fg-strong)}.ph-modal-backdrop{background:var(--bg-overlay);padding:var(--sp-5);z-index:100;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ph-modal{background:var(--bg-surface);border:1px solid var(--bd-default);border-radius:var(--r-4);box-shadow:var(--el-modal);flex-direction:column;width:min(920px,100%);max-width:920px;min-height:0;max-height:min(900px,100vh - 48px);display:flex;overflow:hidden}.ph-modal-wide{width:min(1180px,100%);max-width:1180px}.ph-modal-header,.ph-modal-footer{align-items:center;gap:var(--sp-4);padding:var(--sp-5);flex:none;justify-content:space-between;display:flex}.ph-modal-header{border-bottom:1px solid var(--bd-faint)}.ph-modal-footer{border-top:1px solid var(--bd-faint);justify-content:flex-end}.ph-modal-title{color:var(--fg-strong);font-size:var(--fs-22);margin:0}.ph-modal-subtitle{color:var(--fg-muted);margin:var(--sp-2) 0 0}.ph-modal-body{gap:var(--sp-5);min-height:0;padding:var(--sp-5);display:grid;overflow:auto}.ph-table-wrap{overflow-x:auto}.ph-table{border-collapse:collapse;width:100%}.ph-table th,.ph-table td{border-bottom:1px solid var(--bd-faint);text-align:left;vertical-align:top;padding:12px 14px}.ph-table th{color:var(--fg-muted);font-size:var(--fs-12);font-weight:var(--fw-semibold)}.ph-list-toolbar{background:var(--bg-surface);border:1px solid var(--bd-default);border-radius:var(--r-4);box-shadow:var(--el-1);align-items:end;gap:var(--sp-3);margin-bottom:var(--sp-4);padding:var(--sp-3);flex-wrap:wrap;display:flex}.ph-list-toolbar .ph-field{flex:150px;min-width:150px}.ph-list-toolbar .ph-field:first-child{flex:1.4 240px}.ph-list-toolbar-actions{align-items:center;gap:var(--sp-3);flex:none;display:flex}.ph-pagination{border-top:1px solid var(--bd-faint);color:var(--fg-muted);font-size:var(--fs-13);align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);justify-content:space-between;display:flex}.ph-pagination p{margin:0}.ph-pagination-actions{align-items:center;gap:var(--sp-3);display:flex}.ph-disabled-link{opacity:.45;pointer-events:none}.ph-native-select-hidden,.ph-native-date-hidden{top:0;left:0;opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important;position:absolute!important}.ph-custom-select-wrap{width:100%;display:block;position:relative}.ph-custom-select-wrap.is-open{z-index:220}.ph-custom-select-trigger{background:var(--field-bg);border:1px solid var(--field-bd);border-radius:var(--r-3);color:var(--fg-default);cursor:pointer;font:inherit;align-items:center;gap:var(--sp-2);text-align:left;justify-content:space-between;width:100%;min-width:0;min-height:40px;padding:9px 11px;display:flex}.ph-custom-select-trigger:hover{border-color:var(--bd-strong)}.ph-custom-select-trigger:focus-visible{border-color:var(--field-bd-focus);box-shadow:var(--field-shadow-focus);outline:0}.ph-custom-select-value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ph-custom-select-icon{border-bottom:1.5px solid var(--fg-muted);border-right:1.5px solid var(--fg-muted);flex:none;width:7px;height:7px;transform:translateY(-2px)rotate(45deg)}.ph-custom-select-menu{background:var(--bg-elevated,var(--bg-raised));border:1px solid var(--bd-default);border-radius:var(--r-3);box-shadow:var(--shadow-lg);min-width:100%;max-height:260px;padding:var(--sp-2);z-index:221;gap:2px;display:grid;position:absolute;top:calc(100% + 6px);left:0;overflow:auto}.ph-custom-select-menu[hidden]{display:none}.ph-custom-select-option{border-radius:var(--r-2);color:var(--fg-default);cursor:pointer;font:inherit;align-items:center;gap:var(--sp-2);text-align:left;background:0 0;border:0;justify-content:space-between;width:100%;min-height:34px;padding:8px 10px;display:flex}.ph-custom-select-option:after{color:var(--app-current);content:"";font-weight:var(--fw-semibold);flex:none}.ph-custom-select-option:hover,.ph-custom-select-option:focus-visible{background:var(--bg-sunken);outline:0}.ph-custom-select-option.selected{background:var(--app-current-tint);color:var(--fg-strong)}.ph-custom-select-option.selected:after{content:"✓"}.ph-custom-select-option.disabled{color:var(--fg-subtle);cursor:not-allowed}input[type=checkbox],input[type=radio]{appearance:none;background:var(--field-bg);border:1px solid var(--field-bd);color:var(--app-current);cursor:pointer;vertical-align:middle;flex:none;place-content:center;width:18px;height:18px;margin:0;display:inline-grid}input[type=checkbox]{border-radius:var(--r-1)}input[type=radio]{border-radius:var(--r-pill)}input[type=checkbox]:before,input[type=radio]:before{content:"";transition:transform .12s;transform:scale(0)}input[type=checkbox]:before{border-bottom:2px solid var(--bg-surface);border-right:2px solid var(--bg-surface);width:5px;height:9px;transform:rotate(45deg)scale(0)}input[type=radio]:before{background:var(--bg-surface);border-radius:var(--r-pill);width:8px;height:8px}input[type=checkbox]:checked,input[type=radio]:checked{background:var(--app-current);border-color:var(--app-current)}input[type=checkbox]:checked:before{transform:rotate(45deg)scale(1)}input[type=radio]:checked:before{transform:scale(1)}input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{border-color:var(--field-bd-focus);box-shadow:var(--field-shadow-focus);outline:0}input[type=number]{appearance:textfield}input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}.ph-custom-date-wrap{width:100%;display:block;position:relative}.ph-custom-date-trigger{background:var(--field-bg);border:1px solid var(--field-bd);border-radius:var(--r-3);color:var(--fg-default);cursor:pointer;font:inherit;align-items:center;gap:var(--sp-2);text-align:left;justify-content:space-between;width:100%;min-width:0;min-height:40px;padding:9px 11px;display:flex}.ph-custom-date-trigger:hover{border-color:var(--bd-strong)}.ph-custom-date-trigger:focus-visible{border-color:var(--field-bd-focus);box-shadow:var(--field-shadow-focus);outline:0}.ph-custom-date-trigger.invalid{border-color:var(--status-danger)}.ph-custom-date-value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ph-custom-date-icon{border:1.5px solid var(--fg-muted);border-radius:var(--r-1);flex:none;width:15px;height:15px;position:relative}.ph-custom-date-icon:before{background:var(--fg-muted);content:"";height:1.5px;position:absolute;top:4px;left:2px;right:2px}.ph-custom-date-popover{background:var(--bg-surface);border:1px solid var(--bd-default);border-radius:var(--r-3);box-shadow:var(--shadow-lg);gap:var(--sp-2);min-width:280px;padding:var(--sp-3);z-index:1000;display:grid;position:absolute;top:calc(100% + 6px);left:0}.ph-custom-date-popover[hidden]{display:none}.ph-custom-date-header,.ph-custom-date-footer{justify-content:space-between;align-items:center;display:flex}.ph-custom-date-header strong{color:var(--fg-strong);font-size:var(--fs-13)}.ph-custom-date-nav,.ph-custom-date-link,.ph-custom-date-day{color:var(--fg-default);cursor:pointer;font:inherit;background:0 0;border:0}.ph-custom-date-nav{border:1px solid var(--bd-default);border-radius:var(--r-2);justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.ph-custom-date-nav:hover,.ph-custom-date-link:hover,.ph-custom-date-day:hover{background:var(--bg-sunken)}.ph-custom-date-weekdays,.ph-custom-date-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.ph-custom-date-weekdays span{color:var(--fg-muted);font-size:var(--fs-11);font-weight:var(--fw-semibold);padding:var(--sp-1) 0;text-align:center}.ph-custom-date-day{border-radius:var(--r-2);color:var(--fg-default);text-align:center;height:32px}.ph-custom-date-day.muted{color:var(--fg-subtle)}.ph-custom-date-day.today{box-shadow:inset 0 0 0 1px var(--app-current)}.ph-custom-date-day.selected{background:var(--app-current);color:var(--bg-surface)}.ph-custom-date-day.disabled{color:var(--fg-subtle);cursor:not-allowed;opacity:.45}.ph-custom-date-link{border-radius:var(--r-2);color:var(--app-current);font-size:var(--fs-12);font-weight:var(--fw-semibold);padding:6px 8px}.ph-grid-surface{gap:var(--sp-3);display:grid}.ph-grid-loading-overlay{background:color-mix(in srgb, var(--bg-surface) 62%, transparent);padding:var(--sp-5);pointer-events:none;z-index:4;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.ph-grid-toolbar{align-items:center;gap:var(--sp-3);justify-content:space-between;display:flex}.ph-grid-toolbar-actions{align-items:center;gap:var(--sp-2);flex-wrap:wrap;justify-content:flex-end;display:flex}.ph-grid-density{background:var(--bg-muted);border:1px solid var(--bd-default);border-radius:var(--r-3);align-items:center;gap:2px;padding:3px;display:inline-flex}.ph-grid-density button{border-radius:var(--r-2);color:var(--fg-muted);font-size:var(--fs-12);font-weight:var(--fw-semibold);background:0 0;border:0;min-height:28px;padding:0 9px}.ph-grid-density button[aria-pressed=true]{background:var(--bg-surface);color:var(--fg-default);box-shadow:var(--shadow-xs)}.ph-grid-search{background:var(--bg-surface);border:1px solid var(--field-bd);border-radius:var(--r-3);box-shadow:var(--shadow-xs);color:var(--fg-muted);font-size:var(--fs-12);font-weight:var(--fw-semibold);align-items:center;gap:var(--sp-2);min-width:min(360px,100%);min-height:36px;padding:0 var(--sp-3);text-transform:uppercase;display:flex}.ph-grid-search input{color:var(--fg-default);font:inherit;font-size:var(--fs-14);font-weight:var(--fw-regular);text-transform:none;background:0 0;border:0;outline:0;flex:1;min-width:0;padding:0}.ph-grid-column-menu{position:relative}.ph-grid-column-popover{background:var(--bg-surface);border:1px solid var(--bd-default);border-radius:var(--r-4);box-shadow:var(--shadow-lg);gap:var(--sp-2);min-width:240px;padding:var(--sp-3);right:0;top:calc(100% + var(--sp-2));z-index:40;display:grid;position:absolute}.ph-grid-column-popover p{color:var(--fg-muted);font-size:var(--fs-12);font-weight:var(--fw-semibold);text-transform:uppercase;margin:0}.ph-grid-column-list{gap:4px;max-height:280px;display:grid;overflow:auto}.ph-grid-column-toggle{border-radius:var(--r-2);color:var(--fg-default);font-size:var(--fs-13);align-items:center;gap:var(--sp-2);text-align:left;background:0 0;border:0;justify-content:flex-start;padding:7px 8px;display:flex}.ph-grid-column-toggle:hover{background:var(--bg-muted)}.ph-grid-column-toggle span{border:1px solid var(--field-bd);border-radius:var(--r-1);width:14px;height:14px}.ph-grid-column-toggle span.is-on{background:var(--app-current);border-color:var(--app-current);box-shadow:inset 0 0 0 3px var(--bg-surface)}@media (max-width:980px){.ph-shell{grid-template-columns:56px minmax(0,1fr)}.ph-sidebar{width:56px}.ph-sidebar-brand-copy,.ph-sidebar-label,.ph-sidebar-link .ph-badge,.ph-account-footer span{display:none}.ph-sidebar-link{justify-content:center;padding:7px 8px}.ph-sidebar-section{color:#0000;justify-content:center;align-items:center;min-height:12px;padding:8px 0 4px;font-size:0;line-height:0;display:flex;overflow:hidden}.ph-sidebar-section:before{border-radius:var(--r-pill);content:"";background:#ffffff24;width:22px;height:1px;display:block}.ph-topbar{padding:0 var(--sp-3)}.ph-app-switcher-menu{width:min(320px,100vw - 76px)}.ph-page-header,.ph-page-actions,.ph-pagination,.ph-grid-toolbar{flex-direction:column;align-items:flex-start}.ph-grid-search,.ph-grid-column-menu,.ph-grid-toolbar-actions{width:100%}.ph-grid-toolbar-actions{justify-content:flex-start}.ph-grid-column-popover{width:min(320px,100vw - 92px);left:0;right:auto}}
.ph-dialog-backdrop{animation:ph-overlay-in var(--dur-base) var(--ease);-webkit-backdrop-filter:blur(18px)saturate(1.08);backdrop-filter:blur(18px)saturate(1.08);padding:max(var(--sp-4), env(safe-area-inset-top)) max(var(--sp-4), env(safe-area-inset-right)) max(var(--sp-4), env(safe-area-inset-bottom)) max(var(--sp-4), env(safe-area-inset-left));z-index:var(--z-dialog,1000);background:#0f172a9e;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ph-dialog{animation:ph-dialog-in var(--dur-base) var(--ease);background:radial-gradient(circle at top left, color-mix(in srgb, var(--app-current-tint) 30%, transparent), transparent 38%), linear-gradient(180deg, color-mix(in srgb, var(--bg-surface) 98%, var(--app-current-tint) 2%), var(--bg-surface));border:1px solid color-mix(in srgb, var(--bd-default) 82%, var(--app-current) 18%);border-radius:var(--r-5);box-shadow:var(--el-modal);color:var(--fg-default);max-height:min(900px, calc(100dvh - 2 * var(--sp-4)));flex-direction:column;width:min(100%,640px);min-height:0;display:flex;position:relative;overflow:clip}.ph-dialog-sm{width:min(100%,440px)}.ph-dialog-md{width:min(100%,640px)}.ph-dialog-lg{width:min(100%,880px)}.ph-dialog-xl{width:min(100%,1120px)}.ph-dialog-fullscreen{height:calc(100dvh - 2 * var(--sp-4));width:min(1440px,100%)}.ph-dialog-header{border-bottom:1px solid var(--bd-faint);align-items:flex-start;gap:var(--sp-4);padding:var(--sp-5);flex:none;justify-content:space-between;display:flex}.ph-dialog-heading{align-items:flex-start;gap:var(--sp-3);min-width:0;display:flex}.ph-dialog-tone-mark,.ph-banner-mark,.ph-toast-mark{background:var(--status-neutral);border-radius:var(--r-pill);flex:none}.ph-dialog-tone-mark{box-shadow:0 0 0 5px color-mix(in srgb, var(--status-neutral-bg) 72%, transparent);width:10px;height:10px;margin-top:7px}.ph-dialog[data-tone=info] .ph-dialog-tone-mark{background:var(--status-info);box-shadow:0 0 0 5px color-mix(in srgb, var(--status-info-bg) 72%, transparent)}.ph-dialog[data-tone=warning] .ph-dialog-tone-mark{background:var(--status-warning);box-shadow:0 0 0 5px color-mix(in srgb, var(--status-warning-bg) 72%, transparent)}.ph-dialog[data-tone=danger] .ph-dialog-tone-mark{background:var(--status-danger);box-shadow:0 0 0 5px color-mix(in srgb, var(--status-danger-bg) 72%, transparent)}.ph-dialog-title{color:var(--fg-strong);font-family:var(--ff-display);font-size:var(--fs-22);line-height:var(--lh-tight);overflow-wrap:anywhere;margin:0}.ph-dialog-description{color:var(--fg-muted);font-size:var(--fs-13);line-height:var(--lh-normal);margin-top:var(--sp-2);max-width:72ch}.ph-dialog-close{border-radius:var(--r-3);color:var(--fg-muted);cursor:pointer;background:0 0;border:1px solid #0000;flex:none;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.ph-dialog-close:hover:not(:disabled){background:var(--bg-sunken);border-color:var(--bd-default);color:var(--fg-strong)}.ph-dialog-close:focus-visible{outline:2px solid var(--app-current);outline-offset:2px}.ph-dialog-close:disabled{cursor:not-allowed;opacity:.5}.ph-dialog-close svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:2.25px;width:20px;height:20px}.ph-dialog-body{align-content:start;gap:var(--sp-4);overscroll-behavior:contain;min-height:0;padding:var(--sp-5);flex:auto;grid-auto-rows:max-content;display:grid;overflow:auto}.ph-dialog-footer{background:color-mix(in srgb, var(--bg-surface) 94%, var(--app-current-tint) 6%);border-top:1px solid var(--bd-faint);align-items:center;gap:var(--sp-2);padding:var(--sp-4) var(--sp-5);flex-wrap:wrap;flex:none;justify-content:flex-end;display:flex}.ph-dialog-impact{background:color-mix(in srgb, var(--bg-sunken) 88%, var(--app-current-tint) 12%);border:1px solid var(--bd-faint);border-left:3px solid var(--app-current);border-radius:var(--r-3);gap:var(--sp-1);padding:var(--sp-3) var(--sp-4);display:grid}.ph-dialog-impact span{color:var(--fg-muted);font-size:var(--fs-11);font-weight:var(--fw-semibold);letter-spacing:var(--tr-uppercase);text-transform:uppercase}.ph-dialog-impact strong{color:var(--fg-strong);overflow-wrap:anywhere}.ph-dialog-impact p{color:var(--fg-muted);overflow-wrap:anywhere;margin:0}.ph-dialog-error{background:var(--status-danger-bg);border:1px solid color-mix(in srgb, var(--status-danger) 32%, var(--bd-default));border-radius:var(--r-3);color:var(--status-danger);line-height:var(--lh-normal);padding:var(--sp-3)}.ph-banner{background:color-mix(in srgb, var(--status-info-bg) 72%, var(--bg-surface));border:1px solid color-mix(in srgb, var(--status-info) 24%, var(--bd-default));border-radius:var(--r-4);align-items:flex-start;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);grid-template-columns:auto minmax(0,1fr) auto auto;display:grid}.ph-banner[data-tone=neutral]{background:color-mix(in srgb, var(--status-neutral-bg) 72%, var(--bg-surface));border-color:color-mix(in srgb, var(--status-neutral) 20%, var(--bd-default))}.ph-banner[data-tone=success]{background:color-mix(in srgb, var(--status-success-bg) 72%, var(--bg-surface));border-color:color-mix(in srgb, var(--status-success) 24%, var(--bd-default))}.ph-banner[data-tone=warning]{background:color-mix(in srgb, var(--status-warning-bg) 72%, var(--bg-surface));border-color:color-mix(in srgb, var(--status-warning) 24%, var(--bd-default))}.ph-banner[data-tone=danger]{background:color-mix(in srgb, var(--status-danger-bg) 72%, var(--bg-surface));border-color:color-mix(in srgb, var(--status-danger) 24%, var(--bd-default))}.ph-banner-mark{width:9px;height:9px;margin-top:6px}.ph-banner[data-tone=info] .ph-banner-mark{background:var(--status-info)}.ph-banner[data-tone=success] .ph-banner-mark{background:var(--status-success)}.ph-banner[data-tone=warning] .ph-banner-mark{background:var(--status-warning)}.ph-banner[data-tone=danger] .ph-banner-mark{background:var(--status-danger)}.ph-banner-copy{gap:2px;min-width:0;display:grid}.ph-banner-copy strong{color:var(--fg-strong)}.ph-banner-copy>div{color:var(--fg-muted);line-height:var(--lh-normal);overflow-wrap:anywhere}.ph-banner-actions{align-self:flex-start;align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.ph-banner-dismiss{color:var(--fg-muted);cursor:pointer;font-size:var(--fs-16);background:0 0;border:0;align-self:flex-start;min-width:28px;min-height:28px}.ph-panel-body>.ph-banner:not(:last-child){margin-block-end:var(--sp-4)}.ph-panel-body>*+.ph-banner{margin-block-start:var(--sp-4)}.ph-toast-viewport{bottom:max(var(--sp-4), env(safe-area-inset-bottom));gap:var(--sp-2);max-width:min(390px, calc(100vw - 2 * var(--sp-4)));pointer-events:none;right:max(var(--sp-4), env(safe-area-inset-right));width:100%;z-index:var(--z-toast,1100);display:grid;position:fixed}.ph-toast{--ph-toast-tone:var(--status-neutral);animation:ph-toast-in var(--dur-base) var(--ease);background:color-mix(in srgb, var(--bg-elevated) 97%, var(--ph-toast-tone) 3%);border:1px solid color-mix(in srgb, var(--bd-default) 82%, var(--ph-toast-tone) 18%);border-radius:var(--r-3);box-shadow:var(--el-3);align-items:start;gap:var(--sp-2) var(--sp-3);padding:var(--sp-3);pointer-events:auto;grid-template-columns:32px minmax(0,1fr) 28px;display:grid;position:relative;overflow:hidden}.ph-toast[data-tone=info]{--ph-toast-tone:var(--status-info)}.ph-toast[data-tone=success]{--ph-toast-tone:var(--status-success)}.ph-toast[data-tone=warning]{--ph-toast-tone:var(--status-warning)}.ph-toast[data-tone=danger]{--ph-toast-tone:var(--status-danger)}.ph-toast-icon{background:color-mix(in srgb, var(--ph-toast-tone) 14%, transparent);border:1px solid color-mix(in srgb, var(--ph-toast-tone) 25%, transparent);border-radius:var(--r-pill);color:var(--ph-toast-tone);grid-column:1;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.ph-toast-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.25px;width:17px;height:17px}.ph-toast-copy{text-align:left;grid-column:2;align-self:center;gap:3px;min-width:0;display:grid}.ph-toast-copy strong{color:var(--fg-strong);font-size:var(--fs-14);font-weight:var(--fw-semibold);line-height:var(--lh-snug);overflow-wrap:anywhere}.ph-toast-copy p{color:var(--fg-muted);font-size:var(--fs-12);line-height:var(--lh-normal);overflow-wrap:anywhere;margin:0}.ph-toast-action{color:var(--app-current);cursor:pointer;font-size:var(--fs-12);font-weight:var(--fw-semibold);background:0 0;border:0;grid-column:2;justify-self:start;min-height:28px;padding:0}.ph-toast-action:hover{text-decoration:underline}.ph-toast-action:focus-visible{border-radius:var(--r-1);box-shadow:var(--field-shadow-focus);outline:0}.ph-toast-dismiss{border-radius:var(--r-1);color:var(--fg-muted);cursor:pointer;background:0 0;border:0;grid-column:3;justify-content:center;align-items:center;width:28px;height:28px;padding:0;font-size:21px;line-height:1;display:inline-flex}.ph-toast-dismiss:hover{background:var(--bg-sunken);color:var(--fg-strong)}.ph-toast-dismiss:focus-visible{box-shadow:var(--field-shadow-focus);outline:0}.ph-toast-progress{animation:ph-toast-progress var(--ph-toast-duration) linear forwards;background:var(--ph-toast-tone);opacity:.72;transform-origin:0;width:100%;height:2px;position:absolute;bottom:0;left:0}.ph-toast:hover .ph-toast-progress,.ph-toast:focus-within .ph-toast-progress{animation-play-state:paused}@keyframes ph-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes ph-dialog-in{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes ph-toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes ph-toast-progress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media (max-width:640px){.ph-dialog-backdrop{padding:var(--sp-2);align-items:flex-end}.ph-dialog{border-radius:var(--r-5) var(--r-5) 0 0;max-height:calc(100dvh - env(safe-area-inset-top) - 2 * var(--sp-2));width:100%}.ph-dialog-fullscreen{height:calc(100dvh - env(safe-area-inset-top) - 2 * var(--sp-2))}.ph-dialog-header,.ph-dialog-body{padding:var(--sp-4)}.ph-dialog-footer{padding:var(--sp-3) var(--sp-4) max(var(--sp-3), env(safe-area-inset-bottom));flex-direction:column;align-items:stretch}.ph-dialog-footer .ph-button{justify-content:center;width:100%}.ph-banner{grid-template-columns:auto minmax(0,1fr) auto}.ph-banner-actions{grid-column:2/-1}.ph-toast-viewport{bottom:max(var(--sp-2), env(safe-area-inset-bottom));left:var(--sp-2);max-width:none;right:var(--sp-2);width:auto}}@media (prefers-reduced-motion:reduce){.ph-dialog-backdrop,.ph-dialog,.ph-toast{animation:none}.ph-toast-progress{display:none}}
.ph-route-loading{gap:var(--sp-5);max-width:var(--content-max,1280px);min-width:0;padding-block:var(--sp-2);width:100%;margin-inline:auto;display:grid}.ph-route-loading-header{background:linear-gradient(180deg, color-mix(in srgb, var(--bg-surface) 92%, var(--app-current-tint) 8%), var(--bg-surface));border:1px solid color-mix(in srgb, var(--bd-default) 78%, var(--app-current-tint) 22%);border-radius:var(--r-4);box-shadow:var(--el-1);gap:var(--sp-2);min-width:0;padding:var(--sp-5);display:grid}.ph-route-loading-header .ph-eyebrow{margin:0}.ph-route-loading-header h1{color:var(--fg-strong);font-family:var(--ff-display);font-size:var(--fs-28);line-height:var(--lh-snug);margin:0}.ph-route-loading-header p{color:var(--fg-muted);max-width:72ch;margin:0}.ph-route-loading-surface{background:var(--bg-surface);border:1px solid var(--bd-default);border-radius:var(--r-4);box-shadow:var(--el-1);gap:var(--sp-4);min-width:0;padding:var(--sp-4);display:grid;overflow:hidden}.ph-route-skeleton-block{background:color-mix(in srgb, var(--bg-sunken) 78%, var(--bd-default));border:1px solid color-mix(in srgb, var(--bd-faint) 76%, transparent);border-radius:var(--r-2);opacity:.62;min-width:0;min-height:2.5rem;animation:1.6s ease-in-out infinite alternate ph-route-skeleton-pulse;display:block}.ph-route-skeleton-toolbar,.ph-route-skeleton-command-bar{gap:var(--sp-3);grid-template-columns:minmax(13rem,1fr) repeat(2,minmax(8rem,.34fr)) minmax(7rem,auto);min-width:0;display:grid}.ph-route-skeleton-toolbar .is-action,.ph-route-skeleton-command-bar .is-action{min-width:7rem}.ph-route-skeleton-table{border:1px solid var(--bd-faint);border-radius:var(--r-3);min-width:0;display:grid;overflow:hidden}.ph-route-skeleton-table-row{border-top:1px solid var(--bd-faint);gap:var(--sp-4);min-width:0;padding:var(--sp-3) var(--sp-4);grid-template-columns:minmax(12rem,1.6fr) minmax(8rem,.8fr) minmax(8rem,.8fr) minmax(7rem,.6fr);display:grid}.ph-route-skeleton-table-row:first-child{border-top:0}.ph-route-skeleton-table-row.is-header{background:var(--bg-sunken)}.ph-route-skeleton-table-row .ph-route-skeleton-block{min-height:1.5rem}.ph-route-skeleton-table-row.is-header .ph-route-skeleton-block{width:72%;min-height:.75rem}.ph-route-skeleton-summary{gap:var(--sp-3);grid-template-columns:repeat(4,minmax(0,1fr));min-width:0;display:grid}.ph-route-skeleton-summary .ph-route-skeleton-block{min-height:6rem}.ph-route-skeleton-tabs{border-bottom:1px solid var(--bd-default);gap:var(--sp-2);min-width:0;padding-inline:var(--sp-1);grid-template-columns:repeat(4,minmax(5rem,8rem));display:grid}.ph-route-skeleton-tabs .ph-route-skeleton-block{border-radius:var(--r-2) var(--r-2) 0 0;min-height:2rem}.ph-route-skeleton-detail-grid,.ph-route-skeleton-dashboard-grid,.ph-route-skeleton-review-grid,.ph-route-skeleton-workbench-grid{gap:var(--sp-4);min-width:0;display:grid}.ph-route-skeleton-detail-grid{grid-template-columns:minmax(0,1.65fr) minmax(16rem,.75fr)}.ph-route-skeleton-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ph-route-skeleton-review-grid{grid-template-columns:minmax(0,1.7fr) minmax(17rem,.7fr)}.ph-route-skeleton-workbench-grid{grid-template-columns:minmax(13rem,.34fr) minmax(0,1fr)}.ph-route-skeleton-side-panel,.ph-route-skeleton-panel,.ph-route-skeleton-decision-rail,.ph-route-skeleton-rail,.ph-route-skeleton-canvas,.ph-route-skeleton-form{border:1px solid var(--bd-faint);border-radius:var(--r-3);gap:var(--sp-3);min-width:0;padding:var(--sp-4);display:grid}.ph-route-skeleton-form{max-width:48rem}.ph-route-skeleton-field,.ph-route-skeleton-list{gap:var(--sp-2);min-width:0;display:grid}.ph-route-skeleton-list .ph-route-skeleton-block{min-height:3.75rem}.ph-route-skeleton-field .is-label{width:min(11rem,46%);min-height:.75rem}.ph-route-skeleton-field .is-control{min-height:2.75rem}.ph-route-skeleton-actions{gap:var(--sp-2);justify-content:flex-end;display:flex}.ph-route-skeleton-actions .ph-route-skeleton-block{width:8rem;min-height:2.5rem}.ph-route-skeleton-block.is-heading,.ph-route-skeleton-block.is-section-title{width:min(18rem,64%);min-height:1rem}.ph-route-skeleton-block.is-copy{min-height:.8rem}.ph-route-skeleton-block.is-copy.is-short{width:68%}.ph-route-skeleton-decision-rail .is-control{min-height:2.75rem}.ph-route-skeleton-decision-rail .is-tall{min-height:7rem}.ph-route-skeleton-decision-rail .is-button{justify-self:end;width:9rem;min-height:2.75rem}.ph-route-skeleton-rail{border-radius:var(--r-3) 0 0 var(--r-3)}.ph-route-skeleton-canvas{grid-template-rows:auto minmax(12rem,1fr) auto}.ph-route-skeleton-canvas .is-canvas-header{min-height:4rem}.ph-route-skeleton-canvas .is-canvas-body{min-height:18rem}.ph-route-skeleton-canvas .is-canvas-footer{min-height:4.5rem}@keyframes ph-route-skeleton-pulse{0%{opacity:.5}to{opacity:.82}}@media (max-width:960px){.ph-route-skeleton-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.ph-route-skeleton-detail-grid,.ph-route-skeleton-review-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:720px){.ph-route-loading{gap:var(--sp-4)}.ph-route-loading-header,.ph-route-loading-surface{padding:var(--sp-3)}.ph-route-skeleton-toolbar,.ph-route-skeleton-command-bar,.ph-route-skeleton-summary,.ph-route-skeleton-dashboard-grid,.ph-route-skeleton-workbench-grid{grid-template-columns:minmax(0,1fr)}.ph-route-skeleton-toolbar .ph-route-skeleton-block:not(.is-wide),.ph-route-skeleton-command-bar .ph-route-skeleton-block:not(.is-wide){display:none}.ph-route-skeleton-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.ph-route-skeleton-table{overflow-x:auto}.ph-route-skeleton-table-row{min-width:38rem}.ph-route-skeleton-rail{border-radius:var(--r-3) var(--r-3) 0 0}}@media (prefers-reduced-motion:reduce){.ph-route-skeleton-block{opacity:.68;animation:none}}@media (forced-colors:active){.ph-route-skeleton-block{opacity:.22;background:canvastext;border-color:canvastext;animation:none}}
.client-actions{align-items:center;gap:var(--sp-2);flex-wrap:wrap;min-width:0;display:flex}.client-catalog-surface,.client-catalog-surface .ph-page-header-copy{min-width:0}.client-catalog-surface .ph-page-title{overflow-wrap:anywhere}.client-action-notice{color:var(--fg-muted);font-size:var(--text-sm);flex-basis:100%;margin:0}.client-filters{gap:var(--sp-3);margin-bottom:var(--sp-4);grid-template-columns:minmax(200px,1fr) minmax(150px,210px) auto;align-items:end;display:grid}.client-filter-status{color:var(--fg-muted);font-size:var(--text-sm);padding-bottom:var(--sp-2)}.client-name{overflow-wrap:anywhere;max-width:36rem;font-weight:600;display:block}.client-code{overflow-wrap:anywhere;max-width:20rem;color:var(--fg-muted);font-size:var(--text-sm);display:block}.client-pager{gap:var(--sp-3);margin-top:var(--sp-4);flex-wrap:wrap;justify-content:flex-end;align-items:center;display:flex}.client-facts{gap:var(--sp-4);margin:0;display:grid}.client-facts>div{gap:var(--sp-3);grid-template-columns:minmax(120px,180px) minmax(0,1fr);display:grid}.client-facts dt{color:var(--fg-muted)}.client-facts dd{overflow-wrap:anywhere;margin:0}@media (max-width:640px){.client-filters{grid-template-columns:minmax(0,1fr)}.client-facts>div{gap:var(--sp-1);grid-template-columns:minmax(0,1fr)}.client-pager{justify-content:flex-start}}.client-delivery-reason{max-width:28rem;margin-top:var(--sp-1);color:var(--fg-muted);font-size:var(--text-sm);overflow-wrap:anywhere;display:block}
