@font-face{font-family:Reckless;src:url(/assets/Reckless-D9nmB8jU.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:#f5f6f8;--color-surface:#fff;--color-border:#dfe3e8;--color-text:#1a1d21;--color-text-muted:#657983;--color-primary:#004ca5;--color-primary-text:#fff;--color-accent:#ffe83d;--color-danger:#c0392b;--radius:8px;--font-brand:"Reckless", system-ui, serif;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{background:var(--color-bg);color:var(--color-text);margin:0}h1,h2{font-family:var(--font-brand);margin:0 0 .5rem;font-weight:400}h1{color:var(--color-primary);font-size:1.9rem}h2{color:var(--color-primary);font-size:1.3rem}#root{flex-direction:column;min-height:100vh;display:flex}a{color:var(--color-primary)}button{font:inherit;cursor:pointer}.btn{border-radius:var(--radius);border:1px solid var(--color-primary);background:var(--color-primary);color:var(--color-primary-text);justify-content:center;align-items:center;padding:.5rem 1rem;font-weight:600;display:inline-flex}.btn.secondary{color:var(--color-primary);background:0 0}.btn.danger{border-color:var(--color-danger);color:var(--color-danger);background:0 0}.btn:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{font:inherit;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);width:100%;color:var(--color-text);padding:.5rem}label{color:var(--color-text-muted);margin-bottom:.25rem;font-size:.85rem;font-weight:600;display:block}.field{margin-bottom:.75rem}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:1rem}.page{flex:1;width:100%;max-width:900px;margin:0 auto;padding:1rem}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.record-list{flex-direction:column;gap:.75rem;display:flex}.record-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.record-actions{gap:.5rem;display:flex}.record-meta{color:var(--color-text-muted);font-size:.85rem}.status-badge{text-transform:capitalize;border-radius:999px;padding:.15rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}.status-scheduled{color:#1d4ed8;background:#e5edff}.status-in_progress{color:#b45309;background:#fff4e0}.status-complete{color:#1a7f4e;background:#e2f6ea}.error-banner{color:var(--color-danger);border-radius:var(--radius);background:#fdecea;border:1px solid #f5c2bc;margin-bottom:1rem;padding:.75rem}.empty-state{color:var(--color-text-muted);text-align:center;padding:2rem 1rem}nav.app-nav{background:var(--color-surface);border-bottom:1px solid var(--color-border);flex-wrap:wrap;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.brand-logo{height:28px;margin-right:auto}nav.app-nav a{color:var(--color-text-muted);padding:.25rem 0;font-weight:600;text-decoration:none}.nav-badge{background:var(--color-danger);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:1.1rem;height:1.1rem;margin-left:.3rem;padding:0 .3rem;font-size:.7rem;font-weight:700;display:inline-flex}nav.app-nav a.active{color:var(--color-primary);border-bottom:2px solid var(--color-primary)}@media (width<=480px){.page{padding:.75rem}}.calendar-week{grid-template-columns:1fr;gap:.75rem;display:grid}@media (width>=800px){.calendar-week{grid-template-columns:repeat(7,minmax(0,1fr))}}.calendar-day{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);flex-direction:column;gap:.5rem;padding:.75rem;display:flex}.calendar-day-today{border-color:var(--color-primary)}.calendar-day-holiday{border-color:var(--color-danger);background:#fde7e4}.holiday-tag{color:var(--color-danger);background:#fbcfc9;border-radius:4px;padding:.05rem .4rem;font-size:.72rem;font-weight:700;display:inline-block}.calendar-day-header{font-size:.9rem;font-weight:700}.calendar-job-card{border:1px solid var(--color-border);border-radius:var(--radius);color:inherit;padding:.5rem;text-decoration:none;display:block}.calendar-job-card:hover{border-color:var(--color-primary)}.calendar-day-header-btn{font:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-size:.9rem;font-weight:700}.calendar-day-single{flex-direction:column;gap:.5rem;max-width:480px;display:flex}.calendar-month{grid-template-columns:repeat(7,minmax(0,1fr));gap:.4rem;display:grid}.calendar-month-day{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);flex-direction:column;gap:.2rem;min-height:84px;padding:.35rem;display:flex}.calendar-month-day-outside{opacity:.45}.calendar-month-day-today{border-color:var(--color-primary)}.calendar-month-day-holiday{border-color:var(--color-danger);background:#fde7e4}.holiday-tag-month{white-space:nowrap;text-overflow:ellipsis;padding:.02rem .25rem;font-size:.6rem;overflow:hidden}.calendar-month-day-number{font:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-size:.8rem;font-weight:700}.calendar-month-job{background:var(--color-bg);color:inherit;white-space:nowrap;text-overflow:ellipsis;border-radius:4px;padding:.1rem .3rem;font-size:.7rem;text-decoration:none;display:block;overflow:hidden}.calendar-month-more{color:var(--color-text-muted);cursor:pointer;text-align:left;background:0 0;border:none;padding:.1rem .3rem;font-size:.7rem}@media (width<=700px){.calendar-month-day{min-height:60px}.calendar-month-job{font-size:.62rem}}.confirm-overlay{z-index:1000;background:#0006;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.confirm-card{width:100%;max-width:360px}
