:root{--bg: #f2f1ea;--panel: #fbfaf5;--ink: #13181f;--muted: #596170;--border: #d9d5c7;--accent: #1f5b45;--accent-2: #c07a16;--danger: #b32a2a;--shadow: 0 12px 28px rgba(19, 24, 31, .08);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--ink);background:linear-gradient(180deg,#efeee6,#ebe8db)}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:radial-gradient(circle at top left,#fff8e3 0%,transparent 40%),radial-gradient(circle at top right,#dbeede 0%,transparent 45%),linear-gradient(180deg,#efece1,#ebe7d9)}a{color:#174a7a;text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}.app-shell{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.sidebar{background:#141a20;color:#edf2f7;border-right:1px solid rgba(255,255,255,.08);padding:1rem;display:flex;flex-direction:column;gap:1rem}.brand{display:flex;align-items:center;gap:.75rem;color:inherit;text-decoration:none;padding:.5rem .25rem}.brand:hover{text-decoration:none}.brand-mark{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#1f5b45,#6ea974);color:#f8fbf2;font-weight:800;letter-spacing:.05em}.brand strong{display:block}.brand small{color:#bdc9d6}.sidebar-nav{display:grid;gap:.35rem}.nav-link{display:block;padding:.7rem .85rem;border-radius:10px;color:#d8e0e8;text-decoration:none}.nav-link:hover{background:#ffffff0f;text-decoration:none}.nav-link.active{background:#6ea9742b;color:#ecfff0;border:1px solid rgba(110,169,116,.35)}.sidebar-footer{margin-top:auto}.user-pill{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:.75rem}.user-pill strong{display:block;font-size:.92rem}.user-pill small{color:#b8c3cf;text-transform:uppercase;letter-spacing:.06em}.main-content{padding:1.25rem}.page{display:grid;gap:1rem}.page-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.page-header h1{margin:0;font-size:1.9rem}.page-header p{margin:.35rem 0 0;color:var(--muted)}.header-actions{display:flex;gap:.5rem;flex-wrap:wrap}.panel{background:#fbfaf5e6;border:1px solid var(--border);border-radius:16px;padding:1rem;box-shadow:var(--shadow)}.panel.narrow{max-width:560px}.panel-header{display:flex;justify-content:space-between;gap:.75rem;align-items:center;margin-bottom:.75rem}.panel-header h2{margin:0;font-size:1.1rem}.form-panel h2{margin:0}.metrics-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem}.metric-card{background:#ffffffb8;border:1px solid var(--border);border-radius:14px;padding:.85rem;display:grid;gap:.4rem}.metric-card span{color:var(--muted);font-size:.82rem}.metric-card strong{font-size:1.9rem}.metric-card.warning{background:#fff6de;border-color:#e5cb89}.split-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:1rem}.stack-list{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}.flag-row,.event-row,.musician-row{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start;border:1px solid var(--border);border-radius:12px;padding:.75rem;background:#ffffff8c}.event-row-main{min-width:0}.event-title-link{font-weight:700}.flag-label{font-weight:600}.badge-stack{display:flex;gap:.35rem;flex-wrap:wrap;justify-content:flex-end}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:.2rem .55rem;font-size:.72rem;font-weight:700;letter-spacing:.02em;border:1px solid transparent}.badge-status.badge-inquiry{background:#e7f0fd;color:#144b8a;border-color:#b5cef4}.badge-status.badge-tentative{background:#fff5d8;color:#8a6200;border-color:#eccd6a}.badge-status.badge-confirmed{background:#dff7e6;color:#0d6a39;border-color:#8bd4aa}.badge-status.badge-cancelled{background:#eef0f2;color:#5f6977;border-color:#c8ced6}.badge-status.badge-completed{background:#ece6ff;color:#5b3ab7;border-color:#c9b8ff}.badge-type{background:#f0efe9;color:#404a57;border-color:#d4cfbf}.badge-type-gig{background:#e3f8ef;color:#13563c;border-color:#a6d7bf}.badge-type-rehearsal{background:#eaf1ff;color:#1d4f97;border-color:#b7c8ef}.badge-type-promo{background:#fff0e0;color:#8a4f09;border-color:#efc590}.muted,.muted-link{color:var(--muted)}.small{font-size:.85rem}.label{display:block;color:var(--muted);font-size:.8rem;margin-bottom:.2rem}.button{border:1px solid transparent;background:linear-gradient(135deg,#1f5b45,#2c775d);color:#f4fff8;padding:.6rem .9rem;border-radius:10px;font-weight:600;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.35rem}.button:hover{text-decoration:none;filter:brightness(1.02)}.button:disabled{opacity:.6;cursor:not-allowed}.button.secondary{background:#fff;color:#2a3340;border-color:var(--border)}.button.danger{background:#fff1f1;color:#842c2c;border-color:#e6b3b3}.button.tiny{padding:.38rem .55rem;font-size:.82rem}.center-state{min-height:100vh;display:grid;place-items:center;padding:1rem}.center-state.error{color:#842c2c}.landing{min-height:100vh;display:grid;place-items:center;padding:1rem}.landing-card{background:#fbfaf5f0;border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);width:min(700px,100%);padding:1.25rem}.landing-card h1{margin-top:0}.inline-code-block{margin-top:.75rem;background:#11161d;color:#d9f5e5;border-radius:12px;padding:.8rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;overflow-x:auto}.filters-row{display:flex;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.filters-row label{display:grid;gap:.3rem;font-size:.9rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.form-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.form-grid label{display:grid;gap:.35rem;font-size:.9rem}.form-grid label.wide,.inline-actions.wide{grid-column:1 / -1}input,select,textarea{width:100%;border:1px solid #d4d0c2;background:#fffef8;border-radius:10px;padding:.6rem .7rem;color:var(--ink)}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid rgba(31,91,69,.18);border-color:#5a9d81}.inline-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:.75rem}.inline-meta{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap;margin-top:.45rem}.breadcrumbs{display:flex;align-items:center;gap:.4rem;font-size:.85rem;color:var(--muted);margin-bottom:.25rem}.subform{margin-top:1rem;border-top:1px solid var(--border);padding-top:1rem}.subform h3{margin:0 0 .7rem;font-size:1rem}.table-wrap{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:.9rem}.data-table th,.data-table td{border-bottom:1px solid var(--border);padding:.55rem .4rem;vertical-align:top;text-align:left}.data-table th{color:var(--muted);font-weight:600}.table-actions{display:flex;gap:.35rem;align-items:center}.checkbox-label{display:flex!important;align-items:center;gap:.45rem}.checkbox-label input{width:auto}.error-text{color:#9b1f1f}.success-text{color:#11673c}.error-panel{border-color:#e1b8b8;background:#fff8f8}.schedule-list{list-style:none;margin:0;padding:0;display:grid;gap:.8rem}.schedule-card{border:1px solid var(--border);border-radius:14px;background:#ffffffa6;padding:.85rem}.schedule-card-header{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start}.schedule-card-header h3{margin:0 0 .2rem}.schedule-grid{margin-top:.75rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.schedule-notes{margin-top:.75rem;border-top:1px dashed var(--border);padding-top:.65rem}.schedule-notes p{margin:.25rem 0 0}.fc .fc-toolbar-title{font-size:1.1rem}.fc .fc-button{background:#20303f;border-color:#20303f}.fc .fc-button-primary:not(:disabled).fc-button-active,.fc .fc-button-primary:not(:disabled):active{background:#1f5b45;border-color:#1f5b45}.fc-theme-standard .fc-scrollgrid,.fc-theme-standard td,.fc-theme-standard th{border-color:#d9d5c7}@media(max-width:1080px){.metrics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.split-grid{grid-template-columns:1fr}.form-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:860px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:none;border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.page-header{flex-direction:column;align-items:stretch}}@media(max-width:640px){.main-content{padding:.75rem}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid,.form-grid.compact,.schedule-grid{grid-template-columns:1fr}.badge-stack{justify-content:flex-start}.flag-row,.event-row,.musician-row,.schedule-card-header{flex-direction:column}.sidebar-nav{grid-template-columns:1fr}}
