/* Generated by design-system/sync-website.cjs. Edit the canonical kit, then sync. */
@font-face{font-family:Heebo;src:url("fonts/heebo-400.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Heebo;src:url("fonts/heebo-500.ttf") format("truetype");font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:Heebo;src:url("fonts/heebo-700.ttf") format("truetype");font-style:normal;font-weight:700;font-display:swap}

/* Pinhassi Solutions design tokens v1.0 */
:root {
  --ps-color-paper: #f4f1e9;
  --ps-color-ink: #292929;
  --ps-color-raspberry: #b52a56;
  --ps-color-raspberry-hover: #922044;
  --ps-color-raspberry-light: #e68aa6;
  --ps-color-charcoal: #101010;
  --ps-color-cream: #fffaf0;
  --ps-color-muted: #65645b;
  --ps-color-line: #d1cdc2;
  --ps-color-surface: #e8e4da;
  --ps-color-capture: #e5e1d6;
  --ps-color-border-strong: #818174;
  --ps-color-focus-light: #f1acc4;
  --ps-color-success: #2d684d;
  --ps-color-warning: #85540b;
  --ps-color-danger: #9f2846;
  --ps-color-info: #315b87;
  --ps-semantic-background: var(--ps-color-paper);
  --ps-semantic-text: var(--ps-color-ink);
  --ps-semantic-text-muted: var(--ps-color-muted);
  --ps-semantic-action: var(--ps-color-raspberry);
  --ps-semantic-action-hover: var(--ps-color-raspberry-hover);
  --ps-semantic-on-action: var(--ps-color-cream);
  --ps-semantic-focus: var(--ps-color-raspberry);
  --ps-semantic-border: var(--ps-color-line);
  --ps-semantic-control-border: var(--ps-color-border-strong);
  --ps-semantic-surface: var(--ps-color-cream);
  --ps-space-1: 4px;
  --ps-space-2: 8px;
  --ps-space-3: 12px;
  --ps-space-4: 16px;
  --ps-space-5: 20px;
  --ps-space-6: 24px;
  --ps-space-8: 32px;
  --ps-space-10: 40px;
  --ps-space-12: 48px;
  --ps-space-16: 64px;
  --ps-space-24: 96px;
  --ps-space-32: 128px;
  --ps-type-family: Heebo, Arial, sans-serif;
  --ps-type-display: clamp(52px, 7.7vw, 116px);
  --ps-type-headline: clamp(40px, 6.8vw, 96px);
  --ps-type-title: clamp(30px, 4.7vw, 66px);
  --ps-type-body: 22px;
  --ps-type-ui: 18px;
  --ps-type-caption: 18px;
  --ps-type-body-leading: 1.55;
  --ps-type-heading-leading: 1.05;
  --ps-type-regular: 400;
  --ps-type-medium: 500;
  --ps-type-bold: 700;
  --ps-layout-max: 1440px;
  --ps-layout-gutter-desktop: 50px;
  --ps-layout-gutter-tablet: 32px;
  --ps-layout-gutter-mobile: 20px;
  --ps-layout-control-height: 48px;
  --ps-layout-touch-minimum: 44px;
  --ps-radius-square: 0px;
  --ps-radius-utility: 4px;
  --ps-motion-fast: 160ms;
  --ps-motion-standard: 240ms;
  --ps-motion-reveal: 600ms;
  --ps-motion-ease: cubic-bezier(0.16, 1, 0.3, 1);
  --ps-shadow-capture: 0 18px 34px -24px #29292955;
  --ps-shadow-overlay: 0 24px 80px #17171740;
  --ps-layer-base: 0;
  --ps-layer-sticky: 20;
  --ps-layer-overlay: 50;
  --ps-layer-notice: 100;
}

/* Pinhassi Solutions components v1.0. Load tokens.css and Heebo first. */
.ps-scope{color:var(--ps-semantic-text);background:var(--ps-semantic-background);font:400 var(--ps-type-ui)/var(--ps-type-body-leading) var(--ps-type-family)}
.ps-scope,.ps-scope *{box-sizing:border-box}
.ps-scope[data-theme=dark]{--ps-semantic-background:var(--ps-color-charcoal);--ps-semantic-text:var(--ps-color-paper);--ps-semantic-text-muted:#c4c1b8;--ps-semantic-surface:#34352d;--ps-semantic-border:#5f6055;--ps-semantic-control-border:#929486;--ps-semantic-focus:var(--ps-color-focus-light)}
.ps-scope[data-theme=dark] .ps-error{color:#efa7b9}.ps-scope[data-theme=dark] .ps-input[aria-invalid=true]{border-color:#efa7b9}.ps-scope[data-theme=dark] .ps-tab[aria-selected=true]{border-bottom-color:var(--ps-color-raspberry-light)}
.ps-scope :is(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--ps-semantic-focus);outline-offset:4px}
.ps-button{display:inline-flex;justify-content:center;align-items:center;gap:16px;min-height:var(--ps-layout-control-height);padding:12px 22px;border:1px solid var(--ps-semantic-action);border-radius:var(--ps-radius-square);background:var(--ps-semantic-action);color:var(--ps-semantic-on-action);font:500 17px/1.25 var(--ps-type-family);cursor:pointer;text-decoration:none;transition:background var(--ps-motion-fast),transform var(--ps-motion-standard)}
.ps-button:hover:not(:disabled){background:var(--ps-semantic-action-hover);border-color:var(--ps-semantic-action-hover)}
.ps-button svg,.ps-link svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;flex:none;transition:transform var(--ps-motion-standard) var(--ps-motion-ease)}
.ps-button:hover:not(:disabled) svg{transform:translate(-3px,-3px)}
.ps-button.secondary{background:transparent;color:var(--ps-semantic-text);border-color:var(--ps-semantic-control-border)}
.ps-button.secondary:hover:not(:disabled){background:var(--ps-semantic-surface);border-color:var(--ps-semantic-text)}
.ps-button.ghost{background:transparent;border-color:transparent;color:var(--ps-semantic-text);text-decoration:underline;text-underline-offset:5px}
.ps-button.ghost:hover{background:var(--ps-semantic-surface)}
.ps-button.danger{background:var(--ps-color-danger);border-color:var(--ps-color-danger)}
.ps-button.small{padding:10px 16px;min-height:44px;font-size:var(--ps-type-caption)}
.ps-button:disabled{cursor:not-allowed;opacity:.48}
.ps-link{display:inline-flex;align-items:center;gap:20px;color:var(--ps-semantic-text);text-decoration:underline;text-underline-offset:6px;min-height:44px}
.ps-field{display:grid;gap:8px;min-width:0;font-size:16px}.ps-field>span:first-child{font-weight:500}
.ps-input{width:100%;min-width:0;min-height:48px;border:1px solid var(--ps-semantic-control-border);background:var(--ps-semantic-surface);color:var(--ps-semantic-text);padding:12px 14px;font:400 17px/1.4 var(--ps-type-family);border-radius:var(--ps-radius-square)}
.ps-input::placeholder{color:var(--ps-semantic-text-muted);opacity:1}.ps-input:disabled{opacity:.55;cursor:not-allowed}.ps-input[aria-invalid=true]{border:2px solid var(--ps-color-danger)}
.ps-helper{color:var(--ps-semantic-text-muted);font-size:14px}.ps-error{color:var(--ps-color-danger);font-size:14px;font-weight:500}
.ps-check{display:flex;align-items:center;gap:10px;min-height:44px;font-size:16px;cursor:pointer}.ps-check input{width:20px;height:20px;accent-color:var(--ps-color-raspberry);flex:none}
.ps-switch{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:48px;font-size:16px;cursor:pointer}.ps-switch input{appearance:none;width:44px;height:26px;border:1px solid var(--ps-semantic-control-border);border-radius:20px;background:var(--ps-color-line);position:relative;cursor:pointer;flex:none;margin:0}.ps-switch input::before{content:'';position:absolute;width:18px;height:18px;border-radius:50%;background:var(--ps-color-cream);top:3px;left:3px;transition:transform var(--ps-motion-fast)}.ps-switch input:checked{background:var(--ps-color-raspberry);border-color:var(--ps-color-raspberry)}.ps-switch input:checked::before{transform:translateX(18px)}
.ps-card{border:1px solid var(--ps-semantic-border);background:var(--ps-semantic-surface);padding:24px;min-width:0}.ps-card h3{font-size:24px;line-height:1.2;margin:0 0 12px}.ps-card p{margin:0;color:var(--ps-semantic-text-muted)}
.ps-tabs{display:flex;gap:24px;border-bottom:1px solid var(--ps-semantic-border);overflow:auto}.ps-tab{border:0;border-bottom:3px solid transparent;background:none;color:var(--ps-semantic-text-muted);font:500 17px var(--ps-type-family);padding:14px 0;white-space:nowrap;min-height:48px;cursor:pointer}.ps-tab[aria-selected=true]{border-bottom-color:var(--ps-color-raspberry);color:var(--ps-semantic-text)}
.ps-badge{display:inline-flex;align-items:center;gap:7px;padding:4px 10px;font-size:14px;line-height:1.5;border:1px solid currentColor;color:var(--ps-color-info);background:#fffaf0}.ps-badge.success{color:var(--ps-color-success)}.ps-badge.warning{color:var(--ps-color-warning)}.ps-badge.danger{color:var(--ps-color-danger)}
.ps-alert{display:flex;gap:12px;padding:16px 20px;border-inline-start:3px solid var(--ps-color-info);background:#e9eef2;color:#294862;font-size:16px}.ps-alert.success{background:#e5eee7;color:var(--ps-color-success);border-color:var(--ps-color-success)}.ps-alert.warning{background:#f1e8d8;color:var(--ps-color-warning);border-color:var(--ps-color-warning)}.ps-alert.danger{background:#f3e4e7;color:var(--ps-color-danger);border-color:var(--ps-color-danger)}
.ps-alert{display:grid;gap:6px}.ps-alert>p{margin:0}
.ps-details{border-block-end:1px solid var(--ps-semantic-border);padding:16px 0}.ps-details summary{cursor:pointer;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-weight:500;list-style:none}.ps-details summary::-webkit-details-marker{display:none}.ps-details summary::after{content:'+';font-size:25px}.ps-details[open] summary::after{content:'−'}.ps-details p{padding:8px 0;margin:0;color:var(--ps-semantic-text-muted)}
.ps-table-wrap{overflow:auto;border:1px solid var(--ps-semantic-border)}.ps-table{width:100%;border-collapse:collapse;text-align:start;font-size:16px}.ps-table th,.ps-table td{text-align:start;padding:16px 20px;border-bottom:1px solid var(--ps-semantic-border);white-space:nowrap}.ps-table th{font-size:14px;font-weight:500;color:var(--ps-semantic-text-muted);background:var(--ps-semantic-surface)}.ps-table tbody tr:last-child td{border:0}.ps-table tbody tr:hover{background:var(--ps-semantic-surface)}.ps-table caption{text-align:start;padding:16px 20px;font-weight:500}
.ps-empty{text-align:center;border:1px dashed var(--ps-semantic-control-border);padding:40px 24px}.ps-empty h3{font-size:25px;margin:0 0 8px}.ps-empty p{color:var(--ps-semantic-text-muted);margin:0 0 24px}
.ps-dialog{padding:32px;border:1px solid var(--ps-color-line);width:min(500px,calc(100% - 32px));background:var(--ps-color-paper);color:var(--ps-color-ink);box-shadow:var(--ps-shadow-overlay);font-family:var(--ps-type-family)}.ps-dialog::backdrop{background:#171812bd;backdrop-filter:blur(4px)}.ps-dialog h2{font-size:30px;line-height:1.15;margin:0 0 20px}.ps-dialog p{font-size:17px;line-height:1.6}.ps-dialog .actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.ps-progress{appearance:none;width:100%;height:6px;border:0;background:var(--ps-color-line)}.ps-progress::-webkit-progress-bar{background:var(--ps-color-line)}.ps-progress::-webkit-progress-value{background:var(--ps-color-raspberry)}.ps-progress::-moz-progress-bar{background:var(--ps-color-raspberry)}
.ps-skeleton{height:14px;background:var(--ps-color-line);animation:ps-pulse 1.5s ease-in-out infinite}.ps-skeleton+.ps-skeleton{margin-top:12px}.ps-skeleton.short{width:65%}@keyframes ps-pulse{50%{opacity:.45}}
.ps-spinner{display:inline-block;inline-size:18px;block-size:18px;border:2px solid currentColor;border-inline-end-color:transparent;border-radius:50%;animation:ps-spin .8s linear infinite}@keyframes ps-spin{to{transform:rotate(360deg)}}
.ps-breadcrumb{display:flex;gap:10px;flex-wrap:wrap;font-size:14px;min-height:44px;align-items:center}.ps-breadcrumb a{color:var(--ps-semantic-text-muted)}
.ps-tooltip{position:relative;display:inline-flex}.ps-tooltip [role=tooltip]{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);padding:8px 12px;background:var(--ps-color-ink);color:var(--ps-color-paper);font-size:14px;max-width:240px;width:max-content;opacity:0;visibility:hidden;pointer-events:none;z-index:3}.ps-tooltip:hover [role=tooltip],.ps-tooltip:focus-within [role=tooltip]{opacity:1;visibility:visible}
.ps-avatar{display:inline-flex;width:44px;height:44px;background:var(--ps-color-surface);border:1px solid var(--ps-color-line);align-items:center;justify-content:center;color:var(--ps-color-ink);font-weight:700;flex:none}
.ps-capture{background:var(--ps-color-capture);border:1px solid var(--ps-color-line);padding:22px}.ps-capture img{display:block;width:100%;height:auto;object-fit:contain;box-shadow:var(--ps-shadow-capture)}.ps-capture figcaption{font-size:14px;color:var(--ps-color-muted);margin-top:14px}
@media(max-width:650px){.ps-card{padding:20px}.ps-tabs{gap:18px}.ps-tab{font-size:15px}.ps-capture{padding:12px}.ps-button{padding:12px 18px}.ps-table th,.ps-table td{padding:14px}}
@media(prefers-reduced-motion:reduce){.ps-scope *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
