:root{--pb-color-primary: #4f46e5;--pb-color-primary-hover: #4338ca;--pb-color-primary-subtle: #eef2ff;--pb-color-primary-ring: rgba(79, 70, 229, .35);--pb-color-success: #059669;--pb-color-success-subtle: #ecfdf5;--pb-color-warning: #d97706;--pb-color-warning-subtle: #fffbeb;--pb-color-error: #dc2626;--pb-color-error-subtle: #fef2f2;--pb-color-bg: #f8fafc;--pb-color-surface: #ffffff;--pb-color-surface-raised: #ffffff;--pb-color-border: #e5e7eb;--pb-color-border-strong: #d1d5db;--pb-color-text: #111827;--pb-color-text-secondary: #4b5563;--pb-color-text-muted: #6b7280;--pb-color-text-disabled: #9ca3af;--pb-color-text-inverse: #ffffff;--pb-font-family: Inter, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--pb-font-display: 2rem;--pb-font-h1: 1.5rem;--pb-font-h2: 1.25rem;--pb-font-h3: 1rem;--pb-font-body: .9375rem;--pb-font-caption: .8125rem;--pb-font-small: .75rem;--pb-line-height-tight: 1.25;--pb-line-height-normal: 1.5;--pb-font-weight-normal: 400;--pb-font-weight-medium: 500;--pb-font-weight-semibold: 600;--pb-font-weight-bold: 700;--pb-space-1: .25rem;--pb-space-2: .5rem;--pb-space-3: .75rem;--pb-space-4: 1rem;--pb-space-5: 1.25rem;--pb-space-6: 1.5rem;--pb-space-8: 2rem;--pb-space-10: 2.5rem;--pb-space-12: 3rem;--pb-radius-sm: 6px;--pb-radius-md: 8px;--pb-radius-lg: 12px;--pb-radius-xl: 16px;--pb-radius-full: 9999px;--pb-shadow-xs: 0 1px 2px rgba(15, 23, 42, .04);--pb-shadow-sm: 0 1px 3px rgba(15, 23, 42, .08), 0 1px 2px rgba(15, 23, 42, .04);--pb-shadow-md: 0 4px 6px -1px rgba(15, 23, 42, .08), 0 2px 4px -2px rgba(15, 23, 42, .04);--pb-shadow-lg: 0 10px 15px -3px rgba(15, 23, 42, .08), 0 4px 6px -4px rgba(15, 23, 42, .04);--pb-sidebar-width: 260px;--pb-header-height: 64px;--pb-content-max-width: 1200px;--pb-transition-fast: .15s ease;--pb-transition-normal: .2s ease;--pb-focus-ring: 0 0 0 3px var(--pb-color-primary-ring)}.pb-display{font-size:var(--pb-font-display);font-weight:var(--pb-font-weight-bold);line-height:var(--pb-line-height-tight);color:var(--pb-color-text);letter-spacing:-.02em}.pb-h1{font-size:var(--pb-font-h1);font-weight:var(--pb-font-weight-semibold);line-height:var(--pb-line-height-tight);color:var(--pb-color-text);margin:0}.pb-h2{font-size:var(--pb-font-h2);font-weight:var(--pb-font-weight-semibold);line-height:var(--pb-line-height-tight);color:var(--pb-color-text);margin:0}.pb-body{font-size:var(--pb-font-body);line-height:var(--pb-line-height-normal);color:var(--pb-color-text-secondary)}.pb-caption{font-size:var(--pb-font-caption);line-height:var(--pb-line-height-normal);color:var(--pb-color-text-muted)}.pb-tabular{font-variant-numeric:tabular-nums}.card{background:var(--pb-color-surface);border-radius:var(--pb-radius-lg);padding:var(--pb-space-6);box-shadow:var(--pb-shadow-sm);border:1px solid var(--pb-color-border)}.pb-stat-card__icon svg,.pb-empty__icon svg,.shell__nav-icon svg{width:1.125rem;height:1.125rem}.pb-empty__icon svg{width:1.5rem;height:1.5rem}@keyframes pb-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.pb-skeleton{background:linear-gradient(90deg,var(--pb-color-border) 25%,#f1f5f9 50%,var(--pb-color-border) 75%);background-size:200% 100%;animation:pb-shimmer 1.4s ease-in-out infinite;border-radius:var(--pb-radius-md)}.pb-table thead th{padding:.75rem 1rem;text-align:left;font-size:var(--pb-font-caption);font-weight:var(--pb-font-weight-medium);color:var(--pb-color-text-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--pb-color-border);background:var(--pb-color-bg)}.pb-table tbody td{padding:.875rem 1rem;border-bottom:1px solid var(--pb-color-border);color:var(--pb-color-text);vertical-align:middle}.pb-table tbody tr:last-child td{border-bottom:none}.pb-table tbody tr{transition:background var(--pb-transition-fast)}.pb-table tbody tr:hover{background:var(--pb-color-bg)}.auth-layout{display:grid;min-height:100vh;grid-template-columns:1fr}@media(min-width:900px){.auth-layout{grid-template-columns:1fr 1fr}}.auth-layout__brand{display:none;flex-direction:column;justify-content:center;padding:var(--pb-space-10);background:linear-gradient(145deg,var(--pb-color-primary) 0%,#3730a3 100%);color:var(--pb-color-text-inverse)}@media(min-width:900px){.auth-layout__brand{display:flex}}.auth-layout__brand-logo{display:block;margin-bottom:var(--pb-space-6)}.auth-layout__brand-logo img{display:block;height:2.5rem;width:auto}.auth-layout__brand h2{font-size:1.75rem;font-weight:var(--pb-font-weight-bold);line-height:var(--pb-line-height-tight);margin:0 0 var(--pb-space-4);letter-spacing:-.02em}.auth-layout__brand p{font-size:var(--pb-font-body);line-height:var(--pb-line-height-normal);opacity:.9;max-width:36ch;margin:0}.auth-layout__features{margin-top:var(--pb-space-8);display:grid;gap:var(--pb-space-4)}.auth-layout__feature{display:flex;align-items:flex-start;gap:var(--pb-space-3);font-size:var(--pb-font-caption);opacity:.95}.auth-layout__feature svg{flex-shrink:0;width:1.25rem;height:1.25rem;margin-top:2px}.auth-layout__form{display:flex;align-items:center;justify-content:center;padding:var(--pb-space-6);background:var(--pb-color-bg)}.auth-layout__card{width:min(420px,100%);display:grid;gap:var(--pb-space-5)}.auth-layout__card h1{font-size:var(--pb-font-h1);font-weight:var(--pb-font-weight-semibold);color:var(--pb-color-text);margin:0;letter-spacing:-.02em}.auth-layout__card>p{color:var(--pb-color-text-muted);margin:0;font-size:var(--pb-font-body)}.auth-form{display:grid;gap:var(--pb-space-4)}.auth-form__row{display:grid;grid-template-columns:1fr 1fr;gap:var(--pb-space-4)}@media(max-width:480px){.auth-form__row{grid-template-columns:1fr}}.auth-form__error{padding:var(--pb-space-3) var(--pb-space-4);background:var(--pb-color-error-subtle);border:1px solid #fecaca;border-radius:var(--pb-radius-md);color:var(--pb-color-error);font-size:var(--pb-font-caption);margin:0}.auth-form__notice{padding:var(--pb-space-3) var(--pb-space-4);background:var(--pb-color-info-subtle, #eff6ff);border:1px solid #bfdbfe;border-radius:var(--pb-radius-md);color:var(--pb-color-info, #1d4ed8);font-size:var(--pb-font-caption);margin:0 0 var(--pb-space-4)}.auth-layout__form--centered{grid-column:1 / -1}.auth-form__forgot{text-align:right;margin:calc(-1 * var(--pb-space-2)) 0 0;font-size:var(--pb-font-caption)}.auth-form__forgot a{color:var(--pb-color-primary);text-decoration:none}.auth-form__forgot a:hover{text-decoration:underline}.auth-form__success{padding:var(--pb-space-3) var(--pb-space-4);background:#ecfdf5;border:1px solid #a7f3d0;border-radius:var(--pb-radius-md);color:#047857;font-size:var(--pb-font-caption);margin:0}.auth-form__divider{display:flex;align-items:center;gap:var(--pb-space-3);color:var(--pb-color-text-muted);font-size:var(--pb-font-caption);text-transform:lowercase}.auth-form__divider:before,.auth-form__divider:after{content:"";flex:1;height:1px;background:var(--pb-color-border)}.auth-form__footer{text-align:center;font-size:var(--pb-font-caption);color:var(--pb-color-text-muted)}.form-page{max-width:640px}.form-page__actions{display:flex;gap:var(--pb-space-3);flex-wrap:wrap;margin-top:var(--pb-space-2)}.pb-textarea-field{display:grid;gap:var(--pb-space-2)}.pb-textarea-field__label{font-size:var(--pb-font-caption);font-weight:var(--pb-font-weight-medium);color:var(--pb-color-text)}.pb-textarea-field__input{padding:.625rem .75rem;border:1px solid var(--pb-color-border-strong);border-radius:var(--pb-radius-md);font:inherit;color:var(--pb-color-text);background:var(--pb-color-surface);resize:vertical;min-height:5rem;transition:border-color var(--pb-transition-fast),box-shadow var(--pb-transition-fast)}.pb-textarea-field__input:focus{outline:none;border-color:var(--pb-color-primary);box-shadow:var(--pb-focus-ring)}.dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--pb-space-4);margin-bottom:var(--pb-space-6)}.dashboard-actions{display:grid;gap:var(--pb-space-4)}.dashboard-actions__buttons{display:flex;gap:var(--pb-space-3);flex-wrap:wrap}.table-actions{display:flex;align-items:center;gap:var(--pb-space-3)}.table-actions__link{font-size:var(--pb-font-caption);font-weight:var(--pb-font-weight-medium);color:var(--pb-color-primary)}.table-actions__link:hover{color:var(--pb-color-primary-hover)}.table-actions__delete{font-size:var(--pb-font-caption);font-weight:var(--pb-font-weight-medium);color:var(--pb-color-error);background:none;border:none;padding:0;cursor:pointer}.table-actions__delete:hover{color:#b91c1c}.doc-filters{display:flex;gap:var(--pb-space-2);flex-wrap:wrap;margin-bottom:var(--pb-space-4)}.doc-filters__btn{padding:.4rem .85rem;border-radius:var(--pb-radius-full);border:1px solid var(--pb-color-border);background:var(--pb-color-surface);color:var(--pb-color-text-secondary);font-size:var(--pb-font-caption);font-weight:var(--pb-font-weight-medium);cursor:pointer;transition:background var(--pb-transition-fast),border-color var(--pb-transition-fast),color var(--pb-transition-fast)}.doc-filters__btn:hover{border-color:var(--pb-color-border-strong);color:var(--pb-color-text)}.doc-filters__btn--active{background:var(--pb-color-primary-subtle);border-color:var(--pb-color-primary);color:var(--pb-color-primary)}.doc-form__row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--pb-space-4)}.doc-form__select{width:100%;padding:.625rem .75rem;border:1px solid var(--pb-color-border-strong);border-radius:var(--pb-radius-md);font:inherit;color:var(--pb-color-text);background:var(--pb-color-surface)}.doc-form__select:focus{outline:none;border-color:var(--pb-color-primary);box-shadow:var(--pb-focus-ring)}.doc-totals{display:grid;gap:var(--pb-space-2);padding:var(--pb-space-4);background:var(--pb-color-bg);border-radius:var(--pb-radius-md);border:1px solid var(--pb-color-border)}.doc-totals>div{display:flex;justify-content:space-between;align-items:center;font-size:var(--pb-font-caption);color:var(--pb-color-text-secondary)}.doc-totals__grand{padding-top:var(--pb-space-2);margin-top:var(--pb-space-1);border-top:1px solid var(--pb-color-border);font-size:var(--pb-font-body)!important;color:var(--pb-color-text)!important}.doc-totals__grand strong{font-size:var(--pb-font-h3);color:var(--pb-color-primary)}.doc-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--pb-space-4)}.doc-meta{display:grid;gap:var(--pb-space-3);margin:0}.doc-meta>div{display:flex;justify-content:space-between;gap:var(--pb-space-4);font-size:var(--pb-font-caption)}.doc-meta dt{color:var(--pb-color-text-muted);margin:0}.doc-meta dd{margin:0;font-weight:var(--pb-font-weight-medium);color:var(--pb-color-text);text-align:right}.doc-meta__highlight dd{font-size:var(--pb-font-h3);color:var(--pb-color-primary)}.doc-actions{display:flex;align-items:center;gap:var(--pb-space-3);flex-wrap:wrap}.doc-detail-spaced{margin-top:var(--pb-space-4)}.portal-layout{min-height:100vh;background:var(--pb-color-bg)}.portal-layout__header{background:var(--pb-color-surface);border-bottom:1px solid var(--pb-color-border);padding:var(--pb-space-4) var(--pb-space-6)}.portal-layout__brand{display:flex;align-items:center;gap:var(--pb-space-3);font-weight:var(--pb-font-weight-bold);color:var(--pb-color-text)}.portal-layout__brand svg{width:1.5rem;height:1.5rem;color:var(--pb-color-primary)}.portal-layout__main{max-width:720px;margin:0 auto;padding:var(--pb-space-6)}.portal-section{margin-top:var(--pb-space-6)}.portal-section h2{font-size:var(--pb-font-h3);font-weight:var(--pb-font-weight-semibold);color:var(--pb-color-text);margin:0 0 var(--pb-space-3)}.pb-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}*{box-sizing:border-box}body{margin:0;font-family:var(--pb-font-family);font-size:var(--pb-font-body);line-height:var(--pb-line-height-normal);background:var(--pb-color-bg);color:var(--pb-color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--pb-color-primary);text-decoration:none;transition:color var(--pb-transition-fast)}a:hover{color:var(--pb-color-primary-hover)}button{cursor:pointer;font-family:inherit}:focus-visible{outline:none;box-shadow:var(--pb-focus-ring)}h1,h2,h3,h4,p{margin:0}html[dir=rtl] body,body.pb-rtl{direction:rtl;text-align:right}html[dir=rtl] .shell__sidebar,html[dir=rtl] .shell__nav-item,html[dir=rtl] .doc-actions,html[dir=rtl] .table-actions,html[dir=rtl] .form-page__actions{direction:rtl}html[dir=rtl] .shell__sidebar{border-right:none;border-left:1px solid var(--pb-color-border)}html[dir=rtl] .pb-field__select,html[dir=rtl] input,html[dir=rtl] textarea{text-align:right}
