:root{color-scheme:light dark;--psg-max-width: 1040px;--psg-font-sans: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;--psg-font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--psg-radius-sm: 10px;--psg-radius-md: 14px;--psg-radius-lg: 18px;--psg-radius-pill: 999px;--psg-space-1: 4px;--psg-space-2: 8px;--psg-space-3: 12px;--psg-space-4: 16px;--psg-space-5: 24px;--psg-space-6: 32px;--psg-density-scale: 1;--psg-shell-pad-y: 12px;--psg-shell-pad-x: 20px;--psg-topbar-gap: 12px;--psg-topbar-right-gap: 14px;--psg-actions-gap: 10px;--psg-nav-gap: 14px;--psg-auth-gap: 10px;--psg-brand-title-size: 1.05rem;--psg-brand-byline-size: .62rem;--psg-nav-font-size: .9rem;--psg-auth-label-size: .7rem;--psg-btn-font-size: .75rem;--psg-footer-font-size: .85rem;--psg-btn-pad-y: 7px;--psg-btn-pad-x: 12px;--psg-btn-min-height: 32px;--psg-main-pad-top: 8px;--psg-main-pad-bottom: 44px;--psg-bg: #f6f8ff;--psg-surface: rgba(255, 255, 255, .72);--psg-surface-strong: rgba(255, 255, 255, .92);--psg-surface-solid: #ffffff;--psg-border: rgba(0, 0, 0, .12);--psg-text: rgba(0, 0, 0, .88);--psg-muted: rgba(0, 0, 0, .62);--psg-link: #2b5cff;--psg-accent: #2b5cff;--psg-accent-hover: #1f4bdb;--psg-accent-subtle: rgba(43, 92, 255, .16);--psg-accent-border: rgba(43, 92, 255, .32);--psg-danger: #ef4444;--psg-success: #22c55e;--psg-warning: #f59e0b;--psg-shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--psg-shadow-lg: 0 24px 50px rgba(0, 0, 0, .18);--psg-blur: 12px;--psg-focus-ring: 0 0 0 3px rgba(43, 92, 255, .24);--psg-motion-fast: .15s;--psg-motion-base: .2s}[data-psg-density=comfortable]{--psg-density-scale: 1;--psg-shell-pad-y: 12px;--psg-shell-pad-x: 20px;--psg-topbar-gap: 12px;--psg-topbar-right-gap: 14px;--psg-actions-gap: 10px;--psg-nav-gap: 14px;--psg-auth-gap: 10px;--psg-brand-title-size: 1.05rem;--psg-brand-byline-size: .62rem;--psg-nav-font-size: .9rem;--psg-auth-label-size: .7rem;--psg-btn-font-size: .75rem;--psg-footer-font-size: .85rem;--psg-btn-pad-y: 7px;--psg-btn-pad-x: 12px;--psg-btn-min-height: 32px;--psg-main-pad-top: 8px;--psg-main-pad-bottom: 44px}[data-psg-density=compact]{--psg-density-scale: .72;--psg-shell-pad-y: 8px;--psg-shell-pad-x: 12px;--psg-topbar-gap: 8px;--psg-topbar-right-gap: 8px;--psg-actions-gap: 6px;--psg-nav-gap: 8px;--psg-auth-gap: 6px;--psg-brand-title-size: .95rem;--psg-brand-byline-size: .54rem;--psg-nav-font-size: .8rem;--psg-auth-label-size: .62rem;--psg-btn-font-size: .68rem;--psg-footer-font-size: .76rem;--psg-btn-pad-y: 4px;--psg-btn-pad-x: 8px;--psg-btn-min-height: 26px;--psg-main-pad-top: 4px;--psg-main-pad-bottom: 28px}@media(prefers-color-scheme:dark){:root{--psg-bg: #0b1020;--psg-surface: rgba(15, 23, 42, .72);--psg-surface-strong: rgba(9, 12, 24, .92);--psg-surface-solid: #0b1020;--psg-border: rgba(255, 255, 255, .14);--psg-text: rgba(255, 255, 255, .92);--psg-muted: rgba(255, 255, 255, .68);--psg-link: #7aa2ff;--psg-accent: #7aa2ff;--psg-accent-hover: #9ab5ff;--psg-accent-subtle: rgba(122, 162, 255, .18);--psg-accent-border: rgba(122, 162, 255, .34);--psg-shadow-sm: 0 1px 2px rgba(0, 0, 0, .25);--psg-shadow-lg: 0 30px 70px rgba(0, 0, 0, .45);--psg-focus-ring: 0 0 0 3px rgba(122, 162, 255, .26)}}.psg-shell{min-height:100vh;background:var(--psg-bg);color:var(--psg-text);font-family:var(--psg-font-sans)}.psg-container{max-width:var(--psg-max-width);margin:0 auto;padding:var(--psg-shell-pad-y, 12px) var(--psg-shell-pad-x, 20px)}.psg-topbar{position:sticky;top:0;z-index:100;border-bottom:1px solid var(--psg-border);background:var(--psg-surface);backdrop-filter:blur(var(--psg-blur));-webkit-backdrop-filter:blur(var(--psg-blur))}.psg-topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--psg-topbar-gap, 12px)}.psg-topbar-right{display:flex;align-items:center;justify-content:flex-end;gap:var(--psg-topbar-right-gap, 14px);flex:1}.psg-topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--psg-actions-gap, 10px)}.psg-brand{display:inline-flex;flex-direction:column;align-items:flex-start;line-height:1.05;text-decoration:none;color:inherit;flex-shrink:0}.psg-brand-title{font-weight:900;letter-spacing:-.02em;font-size:var(--psg-brand-title-size, 1.05rem)}.psg-brand-byline{margin-top:-2px;font-weight:800;font-size:var(--psg-brand-byline-size, .62rem);letter-spacing:.02em;color:var(--psg-accent)}.psg-nav{display:flex;align-items:center;gap:var(--psg-nav-gap, 14px);flex-wrap:wrap}.psg-nav a{text-decoration:none;color:var(--psg-muted);font-weight:700;font-size:var(--psg-nav-font-size, .9rem)}.psg-nav a:hover{text-decoration:underline;color:var(--psg-text)}.psg-auth{display:flex;align-items:center;gap:var(--psg-auth-gap, 10px)}.psg-auth-label{font-size:var(--psg-auth-label-size, .7rem);text-transform:uppercase;letter-spacing:.08em;color:var(--psg-muted);white-space:nowrap}.psg-btn{appearance:none;border:1px solid var(--psg-border);background:var(--psg-surface-strong);color:var(--psg-text);border-radius:var(--psg-radius-pill);min-height:var(--psg-btn-min-height, 32px);padding:var(--psg-btn-pad-y, 7px) var(--psg-btn-pad-x, 12px);font-weight:800;font-size:var(--psg-btn-font-size, .75rem);text-decoration:none;cursor:pointer;transition:background var(--psg-motion-fast) ease,border-color var(--psg-motion-fast) ease,transform var(--psg-motion-fast) ease}.psg-btn:hover{border-color:#0000002e;transform:translateY(-1px)}@media(prefers-color-scheme:dark){.psg-btn:hover{border-color:#ffffff38}}.psg-btn.primary{background:var(--psg-accent-subtle);border-color:var(--psg-accent-border)}.psg-btn:focus-visible{outline:none;box-shadow:var(--psg-focus-ring)}.psg-main{padding:var(--psg-main-pad-top, 8px) 0 var(--psg-main-pad-bottom, 44px)}.psg-footer{border-top:1px solid var(--psg-border);background:var(--psg-surface);backdrop-filter:blur(var(--psg-blur));-webkit-backdrop-filter:blur(var(--psg-blur))}.psg-footer-text{margin:0;color:var(--psg-muted);font-size:var(--psg-footer-font-size, .85rem);line-height:1.45}.psg-ui-button{appearance:none;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--psg-radius-pill);border:1px solid var(--psg-border);background:var(--psg-surface-solid);color:var(--psg-text);font-weight:700;cursor:pointer;text-decoration:none;transition:background var(--psg-motion-fast) ease,border-color var(--psg-motion-fast) ease,transform var(--psg-motion-fast) ease}.psg-ui-button:hover{transform:translateY(-1px)}.psg-ui-button:focus-visible{outline:none;box-shadow:var(--psg-focus-ring)}.psg-ui-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.psg-ui-button[aria-disabled=true]{opacity:.6;cursor:not-allowed;transform:none}.psg-ui-button[aria-busy=true],.psg-ui-button--loading{cursor:progress}.psg-ui-button--primary{background:var(--psg-accent-subtle);border-color:var(--psg-accent-border)}.psg-ui-button--secondary{background:var(--psg-surface-solid);border-color:var(--psg-border)}.psg-ui-button--danger{border-color:color-mix(in srgb,var(--psg-danger) 40%,var(--psg-border));background:color-mix(in srgb,var(--psg-danger) 14%,var(--psg-surface-solid))}.psg-ui-button--ghost{background:transparent;border-color:transparent}.psg-ui-button--sm{font-size:.75rem;padding:6px 10px}.psg-ui-button--md{font-size:.875rem;padding:8px 12px}.psg-ui-button--lg{font-size:1rem;padding:10px 16px}.psg-ui-button--block{width:100%}.psg-ui-input,.psg-ui-select,.psg-ui-textarea{width:100%;border-radius:var(--psg-radius-md);border:1px solid var(--psg-border);background:var(--psg-surface-solid);color:var(--psg-text);padding:8px 12px;font:inherit}.psg-ui-input:focus-visible,.psg-ui-select:focus-visible,.psg-ui-textarea:focus-visible{outline:none;box-shadow:var(--psg-focus-ring)}.psg-ui-input[aria-invalid=true],.psg-ui-select[aria-invalid=true],.psg-ui-textarea[aria-invalid=true]{border-color:color-mix(in srgb,var(--psg-danger) 50%,var(--psg-border));box-shadow:0 0 0 1px color-mix(in srgb,var(--psg-danger) 45%,transparent)}.psg-ui-input[readonly],.psg-ui-select[readonly],.psg-ui-textarea[readonly],.psg-ui-input:read-only,.psg-ui-textarea:read-only{background:color-mix(in srgb,var(--psg-surface-solid) 85%,var(--psg-surface))}.psg-ui-input[disabled],.psg-ui-select[disabled],.psg-ui-textarea[disabled]{cursor:not-allowed;opacity:.7}.psg-ui-alert{border-radius:var(--psg-radius-lg);border:1px solid var(--psg-border);padding:10px 12px;font-size:.875rem}.psg-ui-alert--neutral{background:var(--psg-surface-solid);color:var(--psg-text)}.psg-ui-alert--success{background:color-mix(in srgb,var(--psg-success) 14%,var(--psg-surface-solid));border-color:color-mix(in srgb,var(--psg-success) 45%,var(--psg-border))}.psg-ui-alert--warning{background:color-mix(in srgb,var(--psg-warning) 14%,var(--psg-surface-solid));border-color:color-mix(in srgb,var(--psg-warning) 45%,var(--psg-border))}.psg-ui-alert--danger{background:color-mix(in srgb,var(--psg-danger) 14%,var(--psg-surface-solid));border-color:color-mix(in srgb,var(--psg-danger) 45%,var(--psg-border))}.psg-ui-badge{display:inline-flex;align-items:center;border-radius:var(--psg-radius-pill);border:1px solid var(--psg-border);padding:2px 8px;font-size:.75rem;font-weight:700}.psg-ui-badge--neutral{background:var(--psg-surface-solid)}.psg-ui-badge--success{background:color-mix(in srgb,var(--psg-success) 14%,var(--psg-surface-solid));border-color:color-mix(in srgb,var(--psg-success) 45%,var(--psg-border))}.psg-ui-badge--warning{background:color-mix(in srgb,var(--psg-warning) 14%,var(--psg-surface-solid));border-color:color-mix(in srgb,var(--psg-warning) 45%,var(--psg-border))}.psg-ui-badge--danger{background:color-mix(in srgb,var(--psg-danger) 14%,var(--psg-surface-solid));border-color:color-mix(in srgb,var(--psg-danger) 45%,var(--psg-border))}.psg-ui-card{border-radius:var(--psg-radius-lg);border:1px solid var(--psg-border);background:var(--psg-surface-solid)}.psg-ui-card--elevated{box-shadow:var(--psg-shadow-sm)}.psg-ui-card--warning{border-color:color-mix(in srgb,var(--psg-warning) 45%,var(--psg-border))}.psg-ui-card--pad-sm{padding:12px}.psg-ui-card--pad-md{padding:16px}.psg-ui-card--pad-lg{padding:20px}.psg-ui-filter-chip{border-radius:var(--psg-radius-pill);border:1px solid var(--psg-border);background:var(--psg-surface-solid);color:var(--psg-text);padding:4px 10px;font-size:.75rem;font-weight:700}.psg-ui-filter-chip--selected{border-color:var(--psg-accent-border);background:var(--psg-accent-subtle)}.psg-ui-section-header__title{font-size:1rem;font-weight:700}.psg-ui-section-header__description{margin-top:4px;color:var(--psg-muted);font-size:.875rem}.psg-ui-field-hint{margin:6px 0 0;color:var(--psg-muted);font-size:.75rem}.psg-ui-field-error{margin:6px 0 0;color:var(--psg-danger);font-size:.75rem;font-weight:600}.psg-ui-form-field{display:grid;gap:8px}.psg-ui-form-label{font-size:.825rem;font-weight:700;color:var(--psg-text)}.psg-ui-form-label__required-mark{color:var(--psg-danger);font-weight:800}.psg-ui-form-control{min-width:0}.psg-ui-form-message{margin-top:4px}.psg-ui-inline-validation{margin:6px 0 0;font-size:.75rem;color:var(--psg-muted)}.psg-ui-inline-validation--loading{color:var(--psg-muted)}.psg-ui-inline-validation--success{color:var(--psg-success)}.psg-ui-inline-validation--error{color:var(--psg-danger);font-weight:600}.psg-ui-form-error-summary__title{font-size:.875rem;font-weight:700}.psg-ui-form-error-summary__list{margin:8px 0 0;padding-left:18px}.psg-ui-form-error-summary__item+.psg-ui-form-error-summary__item{margin-top:4px}.psg-ui-form-error-summary__item a{color:inherit;text-decoration:underline}.psg-ui-table-wrap{width:100%;overflow-x:auto}.psg-ui-table{width:100%;min-width:560px;border-collapse:separate;border-spacing:0;border:1px solid var(--psg-border);border-radius:var(--psg-radius-lg);background:var(--psg-surface-solid);color:var(--psg-text)}.psg-ui-table-caption{text-align:left;color:var(--psg-muted);font-size:.75rem;padding:10px 12px}.psg-ui-table-header-cell,.psg-ui-table-cell{padding:10px 12px;border-bottom:1px solid color-mix(in srgb,var(--psg-border) 75%,transparent);text-align:left;vertical-align:middle}.psg-ui-table-header-cell{font-size:.75rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--psg-muted);background:color-mix(in srgb,var(--psg-surface) 55%,var(--psg-surface-solid))}.psg-ui-table-body .psg-ui-table-row:last-child .psg-ui-table-cell{border-bottom:0}.psg-ui-table--compact .psg-ui-table-header-cell,.psg-ui-table--compact .psg-ui-table-cell{padding:7px 10px}.psg-ui-table--sticky-header .psg-ui-table-head .psg-ui-table-header-cell{position:sticky;top:0;z-index:1}.psg-ui-empty-state{border:1px dashed var(--psg-border);border-radius:var(--psg-radius-lg);padding:16px;background:color-mix(in srgb,var(--psg-surface-solid) 88%,var(--psg-surface));color:var(--psg-text)}.psg-ui-empty-state__title{font-size:.95rem;font-weight:700}.psg-ui-empty-state__description{margin-top:6px;font-size:.85rem;color:var(--psg-muted)}.psg-ui-empty-state__action{margin-top:10px}.psg-ui-skeleton-lines{display:grid;gap:8px}.psg-ui-skeleton{background:linear-gradient(90deg,color-mix(in srgb,var(--psg-border) 70%,transparent),color-mix(in srgb,var(--psg-border) 45%,white),color-mix(in srgb,var(--psg-border) 70%,transparent));background-size:200% 100%;border-radius:var(--psg-radius-md)}.psg-ui-skeleton--line{width:100%;height:.875rem}.psg-ui-skeleton--block{width:100%;min-height:1rem}.psg-ui-skeleton--circle{border-radius:var(--psg-radius-pill);width:40px;height:40px}.psg-ui-skeleton--animate{animation:psg-ui-skeleton-pulse 1.2s ease-in-out infinite}@keyframes psg-ui-skeleton-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}.psg-ui-pagination{display:flex;align-items:center}.psg-ui-pagination__items{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px}.psg-ui-pagination__item{border:1px solid var(--psg-border);border-radius:var(--psg-radius-pill);padding:6px 10px;font-size:.75rem;font-weight:600;text-decoration:none;color:var(--psg-text);background:var(--psg-surface-solid)}.psg-ui-pagination__item:hover{background:color-mix(in srgb,var(--psg-surface) 62%,var(--psg-surface-solid))}.psg-ui-pagination__item--active{background:var(--psg-accent-subtle);border-color:var(--psg-accent-border)}.psg-ui-pagination__ellipsis{color:var(--psg-muted);font-size:.85rem;padding:0 2px}.psg-ui-dialog{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,#020617 60%,transparent);padding:16px}.psg-ui-dialog__panel{width:min(560px,100%);max-height:calc(100vh - 32px);overflow:auto;border-radius:var(--psg-radius-lg);border:1px solid var(--psg-border);background:var(--psg-surface-solid);box-shadow:var(--psg-shadow-lg)}.psg-ui-dialog__header{padding:16px;border-bottom:1px solid color-mix(in srgb,var(--psg-border) 70%,transparent)}.psg-ui-dialog__title{font-size:1rem;font-weight:700}.psg-ui-dialog__description{margin-top:6px;color:var(--psg-muted);font-size:.85rem}.psg-ui-dialog__body{padding:16px}.psg-ui-dialog__footer{padding:12px 16px 16px;border-top:1px solid color-mix(in srgb,var(--psg-border) 70%,transparent)}.psg-ui-toast{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border:1px solid var(--psg-border);border-radius:var(--psg-radius-lg);padding:12px;background:var(--psg-surface-solid);box-shadow:var(--psg-shadow-sm)}.psg-ui-toast--success{border-color:color-mix(in srgb,var(--psg-success) 45%,var(--psg-border))}.psg-ui-toast--warning{border-color:color-mix(in srgb,var(--psg-warning) 45%,var(--psg-border))}.psg-ui-toast--danger{border-color:color-mix(in srgb,var(--psg-danger) 45%,var(--psg-border))}.psg-ui-toast__content{min-width:0}.psg-ui-toast__title{font-size:.875rem;font-weight:700}.psg-ui-toast__description{margin-top:4px;color:var(--psg-muted);font-size:.8rem}.psg-ui-toast__actions{display:inline-flex;align-items:center;gap:8px}.psg-ui-toast__close{border:1px solid var(--psg-border);border-radius:var(--psg-radius-pill);background:transparent;color:var(--psg-text);font-size:.85rem;line-height:1;width:24px;height:24px}.psg-ui-confirm-sheet__actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px}.psg-ui-data-table-pattern{display:grid;gap:12px}.psg-ui-data-table-pattern__loading,.psg-ui-data-table-pattern__error,.psg-ui-data-table-pattern__empty{width:100%}.psg-ui-data-table-pattern__pagination{justify-content:flex-end}.psg-ui-visually-hidden{border:0;clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}:root{color-scheme:light dark;--bg: var(--psg-bg);--panel: var(--psg-surface);--panel-border: var(--psg-border);--text: var(--psg-text);--muted: var(--psg-muted);--link: var(--psg-link);--max: var(--psg-max-width);--dropdown-bg: var(--psg-surface-solid);--dropdown-border: var(--psg-border)}*{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:var(--psg-font-sans);background-color:var(--bg);background-image:radial-gradient(1200px 800px at 20% 0%,rgba(122,162,255,.25),transparent 50%),radial-gradient(900px 700px at 80% 30%,rgba(255,122,214,.18),transparent 55%);background-repeat:no-repeat;background-attachment:fixed;color:var(--text)}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:var(--max);margin:0 auto;padding:22px 18px 56px}.card{background:var(--panel);border:1px solid var(--panel-border);border-radius:16px}.dropdown-card{background:var(--dropdown-bg);border-color:var(--dropdown-border);color:var(--text);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.muted{color:var(--muted)}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border-radius:12px;border:1px solid var(--panel-border);background:#00000014;color:inherit;text-decoration:none}.btn:hover{text-decoration:none;border-color:var(--psg-accent-border)}.btn[data-access-state=blocked]{opacity:.72}.btn[data-access-state=blocked]:hover{border-color:var(--panel-border)}.btn.primary{background:var(--psg-accent-subtle);border-color:var(--psg-accent-border)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.prose{line-height:1.65}.prose h1,.prose h2,.prose h3{letter-spacing:-.02em}.prose code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.95em;padding:2px 6px;border-radius:10px;border:1px solid var(--panel-border);background:#00000014}
