:root{--color-royal-blue:#1e3a8a;--color-royal-blue-dark:#152a63;--color-bg:#fff;--color-text:#1a1a1a;--color-muted:#4b5563;--color-border:#e5e7eb;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html,body,#root{height:100%}body{background-color:var(--color-bg);color:var(--color-text);margin:0;font-size:18px}h1{color:var(--color-royal-blue);margin:0 0 1rem;font-size:2rem}.page-lede{color:var(--color-muted);max-width:42rem;font-size:1.15rem}a{color:var(--color-royal-blue)}.app-shell{flex-direction:column;min-height:100%;display:flex}.app-header{border-bottom:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:1.25rem 1.5rem;display:flex}.brand{color:var(--color-royal-blue);font-size:1.35rem;font-weight:700}.app-header-account{align-items:center;gap:.75rem;display:flex}.app-header-name{font-weight:600}.app-header-sign-out{color:var(--color-royal-blue);border:1px solid var(--color-royal-blue);background:#fff;padding:.4rem .85rem;font-size:.9rem}.app-nav{border-bottom:1px solid var(--color-border);flex-wrap:wrap;gap:.5rem;padding:.75rem 1.5rem;display:flex}.nav-link{color:var(--color-text);border-radius:.5rem;padding:.5rem .9rem;font-size:1rem;font-weight:500;text-decoration:none}.nav-link:hover{background-color:#eff4ff}.nav-link-active{background-color:var(--color-royal-blue);color:#fff}.app-content{flex:1;width:100%;max-width:48rem;margin:0 auto;padding:2rem 1.5rem}@media (width>=640px){.app-content{padding:3rem 2rem}}@media (width>=1024px){.app-content{max-width:85rem;padding:3rem 2.5rem}}.tip-entry-note{color:var(--color-royal-blue);font-size:.95rem;font-weight:600}.tip-entry-field{margin-bottom:1.5rem}.tip-entry-field label,.tip-entry-label{margin-bottom:.4rem;font-weight:600;display:block}.tip-entry-field input[type=date],.tip-entry-field input[type=text],.tip-entry-field input[type=email],.tip-entry-field input[type=password],.tip-entry-field select{border:1px solid var(--color-border);border-radius:.5rem;width:100%;max-width:20rem;padding:.6rem .75rem;font-size:1.1rem}.tip-entry-error{color:#b91c1c;margin:.4rem 0 0;font-size:.95rem}.tip-table{border-collapse:collapse;width:100%;margin-bottom:1.5rem;font-size:1rem}.tip-table th,.tip-table td{text-align:left;border-bottom:1px solid var(--color-border);padding:.5rem .75rem .5rem 0}.tip-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 2rem;margin:0 0 1.5rem;display:grid}.tip-summary div{border-bottom:1px solid var(--color-border);justify-content:space-between;padding-bottom:.4rem;display:flex}.tip-summary dt{font-weight:600}.tip-summary dd{margin:0}@media (width<=640px){.tip-summary{grid-template-columns:1fr}}button{background:var(--color-royal-blue);color:#fff;cursor:pointer;border:none;border-radius:.5rem;padding:.65rem 1.25rem;font-size:1.05rem}button:disabled{cursor:not-allowed;background:#9ca3af}.auth-status-message{text-align:center;max-width:32rem;margin:3rem auto}.auth-status-message button{margin-top:1rem}.login-page{justify-content:center;align-items:center;min-height:100%;padding:2rem 1.5rem;display:flex}.login-card{width:100%;max-width:24rem}.login-card form{margin-top:1.5rem}.login-forgot-password-link{color:inherit;cursor:pointer;font:inherit;background:0 0;border:none;margin:1rem auto 0;padding:0;text-decoration:underline;display:block}.my-tips-view h2{color:var(--color-royal-blue);margin:1.75rem 0 .75rem;font-size:1.3rem}.my-tips-adjustments{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.my-tips-adjustments li{border:1px solid var(--color-border);border-radius:.5rem;padding:.6rem .85rem}.tip-entry{border-top:1px solid var(--color-border);margin-top:2rem;padding-top:2rem}.tip-entry-errors{margin-bottom:1.5rem}.tip-roster{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.tip-roster-row{flex-wrap:wrap;align-items:center;gap:.75rem;padding:.5rem 0;display:flex}.tip-roster-name{min-width:11rem;font-size:1.05rem}.tip-roster-toggle{border:1px solid var(--color-royal-blue);color:var(--color-royal-blue);cursor:pointer;background:#fff;border-radius:.5rem;min-width:5rem;padding:.4rem .9rem;font-size:.95rem}.tip-roster-toggle-on{background:var(--color-royal-blue);color:#fff}.tip-roster-adjustment{align-items:center;gap:.5rem;display:flex}.tip-roster-adjustment select,.tip-roster-adjustment input[type=number]{border:1px solid var(--color-border);border-radius:.4rem;padding:.35rem .5rem;font-size:1rem}.tip-roster-adjustment input[type=number]{width:4.5rem}.tip-entry-actions{gap:.75rem;margin-bottom:1.5rem;display:flex}.tip-schedule-status{margin-bottom:1.5rem;font-size:.9rem}.tip-schedule-status-none{color:var(--color-muted)}.tip-schedule-status-match{color:#166534;font-weight:600}.tip-schedule-status-warnings{color:#92400e;margin:0;padding:0;font-weight:600;list-style:none}.tip-schedule-status-warnings li{padding:.15rem 0}.tip-day-nav{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.tip-day-nav-confirm{background:#fffbeb;border:2px solid #d97706;border-radius:.75rem;margin-bottom:1.5rem;padding:1.25rem 1.5rem}.tip-review{border:1px solid var(--color-royal-blue);border-radius:.75rem;padding:1.25rem 1.5rem}.tip-review ul{padding-left:1.25rem}.tip-day-status-banner{border-radius:.5rem;margin-bottom:1rem;padding:.4rem .85rem;font-size:.95rem;font-weight:600;display:inline-block}.tip-day-status-draft{color:var(--color-royal-blue);background:#eff4ff}.tip-day-status-finalized{color:#166534;background:#dcfce7}.tip-day-status-revision{color:#92400e;background:#fef3c7}.tip-entry-revision-summary{font-size:.9rem}.tip-revise-button{color:#92400e;cursor:pointer;background:#fef3c7;border:1px solid #d97706;border-radius:.5rem;padding:.5rem 1rem;font-weight:600}.tip-revision-history{margin-bottom:1.5rem}.tip-revision-history summary{cursor:pointer;margin-bottom:.5rem;font-weight:600}.tip-revision-confirm{background:#fffbeb;border:2px solid #d97706;border-radius:.75rem;margin-bottom:1.5rem;padding:1.25rem 1.5rem}.tip-save-message{font-weight:600}.tip-save-message-error{color:#b91c1c}.tip-save-message-success{color:#166534}.pps-nav{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.pps-nav button{padding:.5rem .9rem;font-size:.95rem}.pps-nav-label{color:var(--color-royal-blue);font-size:1.15rem;font-weight:700}.pps-locked-note{color:var(--color-muted);margin-bottom:1rem;font-weight:600}.pps-table-scroll{margin-bottom:1rem;overflow-x:auto}.pps-table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:.9rem}.pps-table th,.pps-table td{text-align:left;border-bottom:1px solid var(--color-border);padding:.6rem .85rem}.pps-employee-name{padding-right:1.25rem;font-weight:600}.pps-inactive-tag{color:var(--color-muted);font-size:.85rem;font-weight:400}.pps-day-header-date{color:var(--color-muted);font-weight:400}.pps-cell-off{color:var(--color-muted)}.pps-cell-zero{color:var(--color-muted);font-size:.85rem;line-height:1.3}.pps-cell-draft{font-style:italic}.pps-draft-badge{color:var(--color-royal-blue);white-space:nowrap;background:#eff4ff;border-radius:.35rem;margin-left:.35rem;padding:.1rem .35rem;font-size:.7rem;font-weight:600;display:inline-block}.pps-week-total-header,.pps-week-total{border-left:2px solid var(--color-royal-blue);font-weight:700}.pps-period-total-header,.pps-period-total{border-left:2px solid var(--color-royal-blue);color:var(--color-royal-blue);font-weight:700}.pps-table tfoot td{border-top:2px solid var(--color-border);border-bottom:none;font-weight:600}.pps-cards{display:none}.pps-card{border:1px solid var(--color-border);border-radius:.75rem;margin-bottom:1rem;padding:1.1rem 1.25rem}.pps-card h3{color:var(--color-royal-blue);margin:0 0 .75rem}.pps-card-week-label{margin:.75rem 0 .3rem;font-weight:700}.pps-card-days{margin:0;padding:0;list-style:none}.pps-card-days li{border-bottom:1px solid var(--color-border);justify-content:space-between;padding:.35rem 0;display:flex}.pps-card-week-total{margin:.5rem 0 0;font-weight:600}.pps-card-no-activity{color:var(--color-muted);margin:0}.pps-card-period-total{color:var(--color-royal-blue);margin:1rem 0 .25rem;font-size:1.1rem;font-weight:700}.pps-card-days-worked{color:var(--color-muted);margin:0}@media (width<=640px){.pps-table-scroll{display:none}.pps-cards{display:block}}.employee-status-badge{border-radius:.5rem;padding:.25rem .65rem;font-size:.9rem;font-weight:600;display:inline-block}.employee-status-active{color:#166534;background:#dcfce7}.employee-status-inactive{color:#4b5563;background:#f3f4f6}.employee-row-actions{flex-wrap:wrap;gap:.5rem;display:flex}.schedule-tabs{gap:.5rem;margin-bottom:1.5rem;display:flex}.schedule-tab{color:var(--color-royal-blue);border:1px solid var(--color-royal-blue);background:#fff;padding:.55rem 1.1rem}.schedule-tab-active{background:var(--color-royal-blue);color:#fff}.schedule-week-nav{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.schedule-week-nav button{padding:.5rem .9rem;font-size:.95rem}.schedule-week-nav button:last-of-type{margin-left:auto}.schedule-week-label{color:var(--color-royal-blue);font-size:1.15rem;font-weight:700}.schedule-normal-link-hint{color:var(--color-muted)}.schedule-create-panel{border:1px solid var(--color-border);border-radius:.75rem;margin-bottom:1.5rem;padding:1.25rem 1.5rem}.schedule-show-archived-toggle{color:var(--color-muted);align-items:center;gap:.4rem;font-size:.9rem;display:inline-flex}.schedule-row-actions{flex-wrap:wrap;gap:.5rem;display:flex}.schedule-notification-status{color:var(--color-muted);margin-bottom:1rem;font-size:.9rem}.my-schedule-list{max-width:28rem;margin:0;padding:0;list-style:none}.my-schedule-row{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:1rem .25rem;font-size:1.4rem;display:flex}.my-schedule-day{color:var(--color-royal-blue);font-weight:700}.my-schedule-shift{font-weight:600}.my-schedule-row-off .my-schedule-shift{color:var(--color-muted);font-weight:500}@media (width>=641px){.my-schedule-list{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.75rem;max-width:none;display:grid}.my-schedule-row{border:1px solid var(--color-border);border-bottom:1px solid var(--color-border);border-radius:.75rem;flex-direction:column;align-items:flex-start;gap:.35rem;padding:1rem 1.1rem;font-size:1.15rem}}@media (width>=1024px){.my-schedule-list{grid-template-columns:repeat(7,1fr)}}.schedule-grid-scroll{margin-bottom:1.5rem;overflow-x:auto}.schedule-grid{table-layout:fixed;border-collapse:collapse;width:100%;min-width:54rem;font-size:.875rem}.schedule-grid th:first-child,.schedule-grid td:first-child{width:10.5rem}.schedule-grid th,.schedule-grid td{text-align:left;border-bottom:1px solid var(--color-border);padding:.8rem .75rem .8rem 0}@media (width>=1024px){.schedule-grid th,.schedule-grid td{white-space:nowrap}}.schedule-grid-name{padding-right:1.25rem;font-weight:600}.schedule-cell{font-weight:500}.schedule-cell-off{color:var(--color-muted)}.schedule-grid select{border:1px solid var(--color-border);border-radius:.4rem;padding:.3rem .4rem;font-size:.9rem}.schedule-day-cards{display:none}.schedule-day-card{border:1px solid var(--color-border);border-radius:.75rem;margin-bottom:1rem;padding:1rem}.schedule-day-card h3{color:var(--color-royal-blue);margin:0 0 .6rem}.schedule-day-card ul{margin:0;padding:0;list-style:none}.schedule-day-card li{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:.5rem 0;display:flex}.schedule-day-card li:last-child{border-bottom:none}.schedule-day-card-name{font-weight:600}@media (width<=640px){.schedule-grid-scroll{display:none}.schedule-day-cards{display:block}.my-schedule-row{font-size:1.25rem}}
