:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color-scheme:light}*{box-sizing:border-box}body{margin:0;background:#f8fafc;color:#0f172a}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh}.login-form{display:flex;flex-direction:column;gap:.75rem;width:320px;padding:2rem;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.login-form label{display:flex;flex-direction:column;gap:.25rem;font-size:.875rem}.login-form input{padding:.5rem;border:1px solid #cbd5e1;border-radius:4px;font-size:1rem}.login-form button{margin-top:.5rem;padding:.6rem;background:#0f172a;color:#fff;border:none;border-radius:4px;cursor:pointer}.form-error{color:#dc2626;font-size:.875rem}.app-shell{display:flex;min-height:100vh}.app-sidebar{width:220px;flex-shrink:0;background:#0f172a;color:#fff;display:flex;flex-direction:column}.app-sidebar-header{padding:1.1rem 1.25rem;font-weight:600;border-bottom:1px solid rgba(255,255,255,.1)}.app-sidebar-nav{flex:1;display:flex;flex-direction:column;padding:.75rem 0}.app-sidebar-nav a{color:#ffffffbf;text-decoration:none;padding:.65rem 1.25rem;font-size:.9rem}.app-sidebar-section{padding:.75rem 1.25rem .25rem;font-size:.75rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:#ffffff73}.app-sidebar-nav a.app-sidebar-sub{padding-left:2.1rem;font-size:.85rem}.app-sidebar-section-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:none;cursor:pointer;font-family:inherit}.app-sidebar-section-toggle:hover{color:#ffffffbf}.app-sidebar-caret{font-size:.65rem}.app-sidebar-nav a:hover{background:#ffffff0f;color:#fff}.app-sidebar-nav a.active{background:#ffffff1f;color:#fff;font-weight:500}.app-sidebar-footer{padding:1rem 1.25rem;border-top:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:.5rem}.app-sidebar-user{font-size:.8rem;color:#ffffffbf}.app-sidebar-footer button{background:transparent;border:1px solid rgba(255,255,255,.4);color:#fff;border-radius:4px;padding:.4rem .75rem;cursor:pointer}.app-content{flex:1;min-width:0;padding:1.5rem}.placeholder-page{max-width:480px}.callout{background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;padding:.75rem 1rem;margin:1rem 0 0;font-size:.875rem;color:#1e3a8a}.callout code{background:#1e3a8a14;padding:.1rem .3rem;border-radius:3px}.inline-form fieldset{border:1px solid #cbd5e1;border-radius:4px;padding:.5rem .75rem}.inline-form fieldset legend{font-size:.875rem;padding:0 .25rem}.checkbox-label{flex-direction:row!important;align-items:center;gap:.35rem!important;font-size:.875rem}table{width:100%;border-collapse:collapse;background:#fff}th,td{text-align:left;padding:.5rem .75rem;border-bottom:1px solid #e2e8f0}.table-scroll{overflow-x:auto;border-radius:8px}.matrix-table{min-width:1100px}.matrix-table th{white-space:nowrap;font-size:.8rem;vertical-align:bottom;text-align:center;border-bottom:1px solid #cbd5e1}.matrix-table td{white-space:nowrap;font-size:.875rem}.matrix-group-row td{background:#0f172a;color:#fff;font-weight:600;padding:.4rem .75rem}.page-header{display:flex;align-items:center;justify-content:space-between;margin-top:2rem}.page-header h1,.page-header h2{margin:0}.page-header button{padding:.4rem .9rem;background:#0f172a;color:#fff;border:none;border-radius:4px;cursor:pointer}.inline-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:1rem;padding:1rem;margin:1rem 0;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.inline-form label{display:flex;flex-direction:column;gap:.25rem;font-size:.875rem}.inline-form input,.inline-form select{padding:.4rem;border:1px solid #cbd5e1;border-radius:4px}.inline-form button{padding:.5rem 1rem;background:#0f172a;color:#fff;border:none;border-radius:4px;cursor:pointer;height:fit-content}.client-meta{color:#64748b;margin-top:-.5rem}.eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:#94a3b8;margin:0 0 .4rem}.button-row{display:flex;gap:.5rem}.danger-button{padding:.4rem .9rem;background:#fff;color:#dc2626;border:1px solid #dc2626;border-radius:4px;cursor:pointer}.link-button{background:none;border:none;color:#2563eb;cursor:pointer;padding:0;font-size:.875rem;text-decoration:underline}.hint{color:#94a3b8;font-size:.8rem}.checklist-steps{list-style:none;margin:.25rem 0;padding:.5rem .75rem;background:#f8fafc;border-radius:4px;display:flex;flex-wrap:wrap;gap:.25rem 1.5rem}.checklist-steps li{display:flex;align-items:center;font-size:.875rem}.checklist-steps label{display:flex;align-items:center;gap:.35rem;cursor:pointer}.step-event-date{margin-left:.5rem;padding:.15rem .35rem;border:1px solid #cbd5e1;border-radius:4px;font-size:.8rem}
