@import url(https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;600;700&family=Inter:wght@400;500;600;700&display=swap);*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;background:#0a1628;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;min-height:100vh}.portal-page{--p-bg:#0a1628;--p-card:#0f1e35;--p-border:#60a5fa33;--p-input-bg:#1e293b99;--p-input-border:#60a5fa33;--p-input-focus:#60a5fa;--p-text:#e2e8f0;--p-input-text:#e2e8f0;--p-label:#94a3b8;--p-heading:#f8fafc;--p-muted:#94a3b8;--p-accent:#3b82f6;--p-accent-light:#60a5fa;--p-danger:#ef4444;--p-warning-bg:#f59e0b1a;--p-warning-border:#f59e0b66;--p-warning-text:#fbbf24;--p-success:#10b981;--p-booking-card-bg:#1e293bb3;--p-pill-bg:#3b82f624;--p-pill-border:#3b82f659;--p-pill-text:#60a5fa;--p-card-icon-bg:#0f172a80;--p-error-bg:#ef44441a;--p-error-border:#ef444459;--p-error-text:#fca5a5;--p-card-border:#60a5fa33;--p-card-shadow:none;--p-daycol-border:#60a5fa33;--p-daycol-shadow:none;--p-bookingcard-border:#60a5fa33;--p-bookingcard-shadow:none;--p-field-label:#cbd5e1;--p-daycol-header-border:#ffffff14;background:var(--p-bg);color:var(--p-text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;min-height:100vh;transition:background .2s ease,color .2s ease}.portal-page[data-theme=light]{--p-bg:#e8edf2;--p-card:#fff;--p-border:#c1cdd8;--p-input-bg:#f8fafc;--p-input-border:#94a3b8;--p-input-focus:#3b82f6;--p-text:#475569;--p-input-text:#0f172a;--p-label:#475569;--p-heading:#0f172a;--p-muted:#94a3b8;--p-accent:#3b82f6;--p-accent-light:#2563eb;--p-warning-bg:#f59e0b1a;--p-warning-border:#f59e0b80;--p-warning-text:#92400e;--p-booking-card-bg:#f1f5f9;--p-pill-bg:#dbeafe;--p-pill-border:#93c5fd;--p-pill-text:#1e40af;--p-card-icon-bg:#e2e8f0b3;--p-error-bg:#ef444414;--p-error-border:#ef44444d;--p-error-text:#b91c1c;--p-card-border:#c1cdd8;--p-card-shadow:0 2px 8px #0000001f;--p-daycol-border:#b8c4cf;--p-daycol-shadow:0 1px 4px #00000014;--p-bookingcard-border:#cbd5e1;--p-bookingcard-shadow:0 1px 3px #0000001a;--p-field-label:#334155;--p-daycol-header-border:#0f172a14}.portal-page *{box-sizing:border-box}.portal-page h1,.portal-page h2,.portal-page h3{font-family:Space Grotesk,Inter,sans-serif}.portal-loading-screen{color:var(--p-muted);flex-direction:column;gap:16px;padding:24px;text-align:center}.portal-loading-screen,.portal-supplier-view{align-items:center;display:flex;justify-content:center;min-height:100vh}.portal-supplier-view{padding:40px 20px}.portal-supplier-card{background:var(--p-card);border:1px solid #60a5fa40;border-radius:16px;box-shadow:0 8px 32px #0006,0 0 0 1px #60a5fa1a;display:flex;flex-direction:column;gap:8px;max-width:520px;padding:40px;position:relative;width:100%}.portal-page[data-theme=light] .portal-supplier-card{border:1px solid #3b82f640;box-shadow:0 8px 32px #0f172a1f,0 0 0 1px #3b82f614}.portal-card-heading{margin-bottom:24px;text-align:center}.portal-company-name{color:var(--p-heading);font-size:2rem;font-weight:700;letter-spacing:-.01em;margin-bottom:6px}.portal-company-subtitle{align-items:center;color:var(--p-accent-light);display:inline-flex;font-size:.95rem;font-weight:500;gap:6px;justify-content:center}.portal-subtitle-icon{flex-shrink:0}.portal-error-banner{background:var(--p-error-bg);border:1px solid var(--p-error-border);border-radius:8px;color:var(--p-error-text);font-size:.9rem;margin-bottom:16px;padding:12px 16px}.portal-success-card{align-items:center;display:flex;flex-direction:column;gap:6px;padding:12px 0;text-align:center}.portal-success-icon{margin-bottom:12px}.portal-success-heading{color:var(--p-heading);font-size:1.5rem;font-weight:700}.portal-success-subtitle{color:var(--p-muted);font-size:.95rem;margin-bottom:20px}.portal-success-details{background:var(--p-input-bg);border:1px solid var(--p-border);border-radius:12px;display:flex;flex-direction:column;gap:10px;margin-bottom:20px;padding:18px 20px;text-align:left;width:100%}.portal-success-details div{display:flex;font-size:.9rem;gap:12px;justify-content:space-between}.portal-success-details span{color:var(--p-label)}.portal-success-details strong{color:var(--p-heading);text-align:right}.portal-success-note{color:var(--p-muted);font-size:.85rem;font-style:italic;margin-bottom:20px}.pf-form{gap:22px}.pf-field,.pf-form{display:flex;flex-direction:column}.pf-field{color:var(--p-label);font-size:.85rem;font-weight:600;gap:8px}.pf-field>span{color:var(--p-field-label);font-size:.9rem;font-weight:500;margin-bottom:6px}.pf-field input,.pf-field select,.pf-field textarea{background:var(--p-input-bg);border:1px solid var(--p-input-border);border-radius:10px;color:var(--p-input-text);font-family:Inter,inherit;font-size:.95rem;min-height:46px;padding:13px 14px}.portal-page[data-theme=dark] .pf-field input[type=date]{color-scheme:dark}.portal-page[data-theme=light] .pf-field input[type=date]{color-scheme:light}.pf-field textarea{min-height:90px;resize:vertical}.pf-field input:focus,.pf-field select:focus,.pf-field textarea:focus{border-color:var(--p-input-focus);box-shadow:0 0 0 3px #60a5fa2e;outline:none}.pf-field input::placeholder,.pf-field textarea::placeholder{color:#64748b}.pf-field input:disabled{cursor:not-allowed;opacity:.6}.pf-notice-box{background:var(--p-warning-bg);border:1px solid var(--p-warning-border);border-radius:8px;color:var(--p-warning-text);font-size:.83rem;font-weight:500;line-height:1.5;padding:12px 16px}.pf-error{color:#f87171;font-size:.8rem;font-style:normal;font-weight:500}.pf-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.pf-btn-danger,.pf-btn-primary,.pf-btn-secondary{border:none;border-radius:10px;cursor:pointer;font-family:Inter,inherit;font-size:.95rem;font-weight:700;min-height:50px;padding:12px 24px;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.pf-btn-block{width:100%}.pf-btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 4px 16px #3b82f666;color:#fff}.pf-btn-primary:hover:not(:disabled){box-shadow:0 10px 28px #3b82f68c;transform:translateY(-2px)}.pf-btn-secondary{background:#0000;border:1px solid var(--p-border);color:var(--p-text)}.pf-btn-secondary:hover:not(:disabled){background:#60a5fa1a;border-color:var(--p-accent-light)}.pf-btn-danger{background:var(--p-danger);color:#fff}.pf-btn-danger:hover:not(:disabled){background:#dc2626}.pf-btn-danger:disabled,.pf-btn-primary:disabled,.pf-btn-secondary:disabled{cursor:not-allowed;opacity:.6}.portal-supplier-card>.pf-form>.pf-actions{flex-direction:column}.portal-supplier-card>.pf-form>.pf-actions .pf-btn-primary{width:100%}.portal-staff-link{background:none;border:none;color:var(--p-muted);cursor:pointer;font-size:.75rem;padding:8px;text-decoration:underline}.portal-card-footer{align-items:center;display:flex;gap:10px;justify-content:center;margin-top:20px}.portal-footer-dot{color:var(--p-muted);font-size:.8rem;line-height:1}.portal-dashboard{min-height:100vh}.portal-dash-header{align-items:center;background:var(--p-card);border-bottom:1px solid var(--p-border);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:20px 32px}.portal-page[data-theme=light] .portal-dash-header{border-bottom:2px solid #c1cdd8;box-shadow:0 2px 6px #0000001a}.portal-dash-header h1{color:var(--p-heading);font-size:1.4rem;font-weight:700;letter-spacing:-.02em}.portal-dash-title-link{cursor:pointer;transition:color .15s ease}.portal-dash-title-link:hover{color:var(--p-accent-light)}.portal-dash-user{align-items:center;color:var(--p-muted);display:flex;font-size:.85rem;gap:14px}.portal-dash-body{margin:0 auto;max-width:1400px;padding:24px 32px 60px}.portal-week-toolbar{justify-content:space-between;margin-bottom:20px}.portal-week-nav,.portal-week-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.portal-week-range{color:var(--p-heading);font-size:1.05rem;font-weight:600;white-space:nowrap}.portal-today-btn{font-size:.85rem;min-height:38px;padding:8px 16px}.portal-add-btn{white-space:nowrap}.portal-summary-bar{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}.portal-pill{align-items:center;background:var(--p-pill-bg);border:1px solid var(--p-pill-border);border-radius:999px;color:var(--p-pill-text);display:inline-flex;font-size:.82rem;font-weight:600;padding:8px 16px}.portal-toolbar-actions{align-items:center;display:flex;gap:10px}.portal-legend{align-items:center;color:var(--p-muted);display:flex;flex-wrap:wrap;font-size:.78rem;gap:20px;margin-bottom:20px}.portal-legend-item{align-items:center;display:inline-flex;gap:7px}.portal-legend-dot{border-radius:50%;display:inline-block;height:10px;width:10px}.portal-legend-dot-empty{background:#94a3b866}.portal-legend-dot-light{background:#eab308}.portal-legend-dot-medium{background:#f59e0b}.portal-legend-dot-busy{background:#ef4444}.portal-legend-dot-extreme{background:#b91c1c}.portal-readonly-pill{align-items:center;background:var(--p-input-bg);border:1px solid var(--p-border);border-radius:10px;color:var(--p-muted);display:inline-flex;font-size:.9rem;font-weight:600;min-height:46px;padding:12px 14px}.portal-day-tabs{display:none}.portal-calendar{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(5,1fr)}.portal-day-col{background:var(--p-card);border:1px solid var(--p-daycol-border);border-radius:16px;box-shadow:var(--p-daycol-shadow);display:flex;flex-direction:column;min-height:220px;transition:background .3s ease,border-color .3s ease}.portal-heat-light{background:#eab3081a;border-color:#eab3084d}.portal-heat-medium{background:#f59e0b26;border-color:#f59e0b66}.portal-heat-busy{background:#ef444426;border-color:#ef444466}.portal-heat-extreme{background:#ef444440;border-color:#ef444499}.portal-page[data-theme=light] .portal-heat-light{background:#eab3081f;border:2px solid #b4870080}.portal-page[data-theme=light] .portal-heat-medium{background:#f59e0b26;border:2px solid #b46e0080}.portal-page[data-theme=light] .portal-heat-busy{background:#ef44441f;border:2px solid #c8282873}.portal-page[data-theme=light] .portal-heat-extreme{background:#ef444433;border:2px solid #b414148c}.portal-day-header{align-items:center;border-bottom:1px solid var(--p-daycol-header-border);color:var(--p-heading);display:flex;font-size:.8rem;font-weight:700;gap:8px;justify-content:space-between;padding:14px 16px 10px}.portal-pallet-badge{border-radius:999px;font-size:.65rem;font-weight:700;padding:2px 8px;white-space:nowrap}.portal-pallet-badge-light{background:#eab30824;color:#eab308}.portal-pallet-badge-medium{background:#f59e0b29;color:#f59e0b}.portal-pallet-badge-busy{background:#ef444429;color:#f87171}.portal-pallet-badge-extreme{background:#ef444438;color:#ef4444}.portal-day-body{display:flex;flex:1 1;flex-direction:column;gap:10px;padding:10px 12px 12px}.portal-no-bookings{color:#64748b;font-size:.8rem;padding:20px 0;text-align:center}.portal-booking-card{background:var(--p-booking-card-bg);border:1px solid var(--p-bookingcard-border);border-left-width:4px;border-radius:10px;box-shadow:var(--p-bookingcard-shadow);display:flex;flex-direction:column;gap:4px;padding:12px;position:relative}.portal-heat-empty .portal-booking-card{border-left-color:#60a5fa4d}.portal-heat-light .portal-booking-card{border-left-color:#eab30899}.portal-heat-medium .portal-booking-card{border-left-color:#f59e0bb3}.portal-heat-busy .portal-booking-card{border-left-color:#ef444499}.portal-heat-extreme .portal-booking-card{border-left-color:#ef4444e6}.portal-card-supplier{color:var(--p-heading);font-size:.9rem;font-weight:700;padding-right:56px}.portal-card-meta{color:var(--p-muted);font-size:.78rem}.portal-card-ref{align-self:flex-start;background:#3b82f626;border:1px solid #60a5fa4d;border-radius:100px;color:#93c5fd;display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.02em;margin-top:8px;padding:2px 10px}.portal-page[data-theme=light] .portal-card-ref{background:#3b82f61a;border-color:#3b82f659;color:#1d4ed8}.portal-card-notes{color:var(--p-muted);font-size:.75rem;font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-card-actions{display:flex;gap:4px;opacity:.4;position:absolute;right:10px;top:10px;transition:opacity .2s ease}.portal-booking-card:hover .portal-card-actions{opacity:1}.portal-card-icon-btn{align-items:center;background:#0000;border:none;border-radius:6px;color:var(--p-text);cursor:pointer;display:inline-flex;font-size:.75rem;justify-content:center;min-height:26px;min-width:26px;transition:color .15s ease,background .15s ease}.portal-card-icon-btn:hover{background:#60a5fa1f;color:#60a5fa}.portal-card-icon-btn-danger{color:var(--p-text)}.portal-card-icon-btn-danger:hover{background:#ef44441f;color:#ef4444}.portal-icon-btn{align-items:center;background:var(--p-card);border:1px solid var(--p-border);border-radius:8px;color:var(--p-text);cursor:pointer;display:inline-flex;font-size:1.1rem;justify-content:center;min-height:48px;min-width:48px;padding:10px}.portal-icon-btn:hover{border-color:var(--p-accent-light);color:var(--p-accent-light)}.portal-theme-toggle{align-items:center;background:var(--p-input-bg);border:1px solid var(--p-border);border-radius:8px;color:var(--p-muted);cursor:pointer;display:inline-flex;flex-shrink:0;justify-content:center;min-height:40px;min-width:40px;transition:color .15s ease,border-color .15s ease}.portal-theme-toggle:hover{border-color:var(--p-accent-light);color:var(--p-accent-light)}.portal-footer-theme-toggle{background:#0000;border:none;min-height:30px;min-width:30px}.portal-tab-toggle-btn-active{background:#60a5fa24;border-color:var(--p-accent-light);color:var(--p-accent-light)}.portal-suppliers-panel{display:flex;flex-direction:column;gap:16px}.portal-suppliers-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.portal-suppliers-search{background:var(--p-input-bg);border:1px solid var(--p-input-border);border-radius:10px;color:var(--p-input-text);flex:1 1;font-family:Inter,inherit;font-size:.9rem;min-height:46px;min-width:200px;padding:12px 14px}.portal-suppliers-search:focus{border-color:var(--p-input-focus);box-shadow:0 0 0 3px #60a5fa2e;outline:none}.portal-suppliers-list{display:flex;flex-direction:column;gap:10px}.portal-supplier-row{align-items:center;background:var(--p-card);border:1px solid var(--p-card-border);border-radius:12px;display:flex;gap:12px;justify-content:space-between;padding:14px 16px}.portal-supplier-row-name{color:var(--p-heading);font-size:.92rem;font-weight:700}.portal-supplier-row-meta{color:var(--p-muted);font-size:.8rem;margin-top:2px}.portal-supplier-row-actions{display:flex;flex-shrink:0;gap:8px}.portal-manage-details{display:flex;flex-direction:column;gap:16px}.portal-modal-overlay{align-items:center;background:#020814b3;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:2000}.portal-modal{background:var(--p-card);border:1px solid var(--p-card-border);border-radius:16px;box-shadow:0 24px 48px #02081480;max-height:90vh;max-width:560px;overflow-y:auto;padding:32px;position:relative;width:100%}.portal-modal-small{max-width:440px}.portal-modal-booking{max-height:95vh;max-width:680px}@media (min-width:640px){.portal-modal-booking .pf-form{grid-gap:18px 20px;display:grid;gap:18px 20px;grid-template-columns:1fr 1fr}.portal-modal-booking .pf-form>.pf-actions,.portal-modal-booking .pf-form>.pf-field:nth-child(5),.portal-modal-booking .pf-form>.pf-field:nth-child(6){grid-column:1/-1}}.portal-modal h2{color:var(--p-heading);font-size:1.2rem;margin-bottom:4px}.portal-modal-sub{color:var(--p-muted);font-size:.85rem;margin-bottom:20px}.portal-modal-close-x{align-items:center;background:#0000;border:1px solid var(--p-border);border-radius:8px;color:var(--p-muted);cursor:pointer;display:inline-flex;font-size:.9rem;height:32px;justify-content:center;position:absolute;right:16px;top:16px;width:32px}.portal-modal-close-x:hover{border-color:var(--p-accent-light);color:var(--p-text)}.portal-loading{color:var(--p-muted);padding:60px 0;text-align:center}@media (max-width:900px){.portal-dash-body{padding:16px 16px 48px}.portal-dash-header{padding:16px 20px}.portal-day-tabs{display:flex;gap:8px;margin-bottom:16px;overflow-x:auto;padding-bottom:4px}.portal-day-tab{align-items:center;background:var(--p-card);border:1px solid var(--p-border);border-radius:999px;color:var(--p-muted);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:.85rem;font-weight:600;gap:6px;min-height:44px;padding:8px 14px}.portal-day-tab-active{background:var(--p-accent);border-color:var(--p-accent);color:#fff}.portal-tab-badge{background:#ffffff26;border-radius:999px;font-size:.65rem;font-weight:700;padding:1px 7px}.portal-tab-badge-light{color:#eab308}.portal-tab-badge-medium{color:#f59e0b}.portal-tab-badge-busy{color:#f87171}.portal-tab-badge-extreme{color:#ef4444}.portal-calendar{grid-template-columns:1fr}.portal-day-col{display:none}.portal-day-col.portal-day-active{display:flex}.portal-week-toolbar{align-items:stretch;flex-direction:column}.portal-add-btn,.portal-tab-toggle-btn{width:100%}.portal-suppliers-toolbar{align-items:stretch;flex-direction:column}.portal-suppliers-toolbar .pf-btn-primary{width:100%}.portal-supplier-row{align-items:flex-start;flex-direction:column}.portal-supplier-row-actions{align-self:flex-end}}@media (max-width:520px){.portal-supplier-card{padding:28px 20px}.portal-company-name{font-size:1.6rem}}
/*# sourceMappingURL=main.4404054c.css.map*/