:root{color:#1f2933;background:#f4f1ea;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}.app-shell{display:grid;grid-template-columns:270px 1fr;min-height:100vh;transition:grid-template-columns .18s ease}.app-shell.sidebar-collapsed{grid-template-columns:84px 1fr}.sidebar{background:#20302e;color:#eef5ef;display:flex;flex-direction:column;gap:28px;padding:24px}.sidebar-collapsed .sidebar{padding:20px 14px}.brand-block{align-items:center;display:flex;gap:14px}.brand-mark{align-items:center;background:#e3b34b;color:#182321;display:inline-flex;font-weight:800;height:48px;justify-content:center;width:48px}.brand-logo{background:#fffdf8;border:1px solid #49655f;height:48px;object-fit:contain;padding:4px;width:48px}.brand-block strong,.brand-block span{display:block}.brand-block strong{font-size:15px}.brand-block div span{color:#b6c7c2;font-size:13px;margin-top:3px}.sidebar-collapsed .brand-block{justify-content:center}.sidebar-collapsed .brand-text{display:none}.nav-toggle{align-items:center;background:#314641;border:1px solid #49655f;color:#eef5ef;display:flex;gap:10px;justify-content:center;min-height:40px;padding:8px 10px}.sidebar-collapsed .nav-toggle span,.sidebar-collapsed .nav-item span{display:none}nav{display:grid;gap:8px}.nav-item{align-items:center;background:transparent;border:1px solid transparent;color:#dce8e3;display:flex;gap:10px;min-height:42px;padding:10px 12px;text-align:left}.sidebar-collapsed .nav-item{justify-content:center;padding:10px}.nav-item:hover,.nav-item.active{background:#314641;border-color:#49655f}.content{display:flex;flex-direction:column;gap:22px;min-width:0;padding:28px}.personal-shell{display:grid;gap:22px;min-height:100vh;padding:28px}.personal-topbar{align-items:center;display:flex;gap:18px;justify-content:space-between}.topbar{align-items:center;display:flex;justify-content:space-between;gap:18px}.eyebrow{color:#66736f;font-size:12px;font-weight:700;letter-spacing:0;margin:0 0 4px;text-transform:uppercase}.readonly-badge{background:#fff1c7;border:1px solid #e3b34b;color:#5f4612;display:inline-block;font-size:12px;font-weight:700;margin-top:8px;padding:4px 8px}h1,h2{margin:0}h1{font-size:32px;line-height:1.15}h2{font-size:18px}.login-chip{background:#fffaf0;border:1px solid #e2d8c5;color:#38413e;min-width:220px;padding:11px 14px}.login-chip button{background:transparent;border:0;color:#20302e;font-size:12px;font-weight:700;margin:8px 0 0;padding:0;text-decoration:underline}.login-chip span,.login-chip strong{display:block}.login-chip span{color:#6d7a76;font-size:12px}.login-chip strong{font-size:13px;margin-top:2px}.login-page{align-items:center;display:flex;min-height:100vh;justify-content:center;padding:24px}.login-panel{background:#fffdf8;border:1px solid #e2d8c5;box-shadow:0 18px 60px #20302e1f;display:grid;gap:16px;max-width:420px;padding:28px;width:100%}.login-panel .brand-mark,.login-logo{margin-bottom:16px}.login-logo{background:#fffdf8;border:1px solid #e2d8c5;display:block;height:64px;object-fit:contain;padding:6px;width:96px}.form-error{background:#fff1f1;border:1px solid #f1c2c2;color:#8a1f1f;font-size:13px;margin:0;padding:10px 12px}.page-grid{display:grid;gap:12px;grid-template-columns:repeat(6,minmax(0,1fr))}.stack{display:grid;gap:16px}.stat,.panel{background:#fffdf8;border:1px solid #ddd4c5;box-shadow:0 12px 30px #1f29330f}.stat{min-height:74px;padding:12px}.stat span{color:#63716d;display:block;font-size:12px}.stat strong{display:block;font-size:25px;margin-top:10px}.stat.alert strong{color:#b74330}.panel{min-width:0;padding:18px}.panel.wide{grid-column:1 / -1}.dashboard-window{grid-column:1 / -1;max-height:440px;overflow:auto}.panel-heading{align-items:center;display:flex;justify-content:space-between;gap:12px;margin-bottom:16px}.panel-heading span{color:#65736f;font-size:13px}.actions-row{display:flex;flex-wrap:wrap;gap:10px}.primary-action,.secondary-action{align-items:center;border:1px solid #283b37;display:inline-flex;gap:8px;min-height:38px;padding:8px 12px}.primary-action{background:#20302e;color:#fffdf8}.secondary-action{background:#fffdf8;color:#20302e}.form-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(160px,1fr))}.compact-form{max-width:980px;padding:14px}.compact-form .panel-heading{margin-bottom:12px}.compact-form .form-grid{grid-template-columns:repeat(3,minmax(150px,1fr))}.filter-grid{display:grid;gap:12px;grid-template-columns:2fr repeat(3,minmax(160px,1fr));margin-bottom:14px}.planning-filter-grid{grid-template-columns:repeat(6,minmax(150px,1fr))}.event-filter-grid{grid-template-columns:minmax(280px,2fr) minmax(180px,1fr)}.crew-filter-grid{grid-template-columns:minmax(280px,520px) minmax(180px,220px)}.bulk-row,.inline-controls{align-items:end;display:flex;flex-wrap:wrap;gap:10px}.bulk-row{background:#f7f1e7;border:1px solid #e4ddd2;margin-bottom:14px;padding:12px}.bulk-row>span{align-self:center;color:#4f5f5b;font-size:13px;font-weight:700;min-width:80px}.compact-panel{max-width:360px}.admin-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.report-grid{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr))}.report-controls{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(150px,1fr));margin-bottom:14px}.report-notes-field{grid-column:span 2}.report-field-grid{margin-bottom:14px}.capability-field{display:flex;flex-wrap:wrap;gap:8px;grid-column:1 / -1}.capability-field>span{color:#4f5f5b;flex:1 0 100%;font-size:12px;font-weight:700}.todo-form{display:flex;gap:10px;margin-bottom:14px}.todo-form input{flex:1}.agenda-grid{display:grid;gap:12px;grid-template-columns:repeat(7,minmax(150px,1fr));overflow-x:auto}.agenda-day{background:#f7f1e7;border:1px solid #e4ddd2;min-height:220px}.agenda-day-heading{align-items:center;background:#f1eadf;border-bottom:1px solid #e4ddd2;display:flex;justify-content:space-between;padding:10px}.agenda-day-heading span{color:#65736f;font-size:12px}.agenda-events{display:grid;gap:8px;min-width:0;padding:10px}.agenda-card{background:#fffdf8;border-left:4px solid #d5b15a;border-top:0;border-right:0;border-bottom:0;color:inherit;min-width:0;overflow-wrap:anywhere;overflow:hidden;padding:10px;text-align:left;width:100%}.agenda-card:hover{background:#fff7e8;outline:1px solid #d5b15a}.agenda-card strong,.agenda-card span{display:block}.agenda-card strong{align-items:center;display:flex;gap:8px;min-width:0}.event-name-text{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.truncated-event-name{display:inline-block;max-width:min(100%,360px);overflow:hidden;text-overflow:ellipsis;vertical-align:bottom;white-space:nowrap}.agenda-card .truncated-event-name{max-width:100%}.agenda-card>span,.agenda-card p{min-width:0;overflow:hidden;text-overflow:ellipsis}.agenda-card .location-badge{background:#25312f;color:#fffdf8;display:inline-flex;flex:0 0 auto;font-size:11px;font-weight:700;justify-content:center;letter-spacing:0;min-width:34px;padding:3px 5px}.agenda-card span{color:#65736f;font-size:12px;margin-top:3px}.candidate-preview{display:block;max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conflict-option{color:#b26000}.agenda-card p{color:#4f5f5b;font-size:13px;margin:8px 0 0}.modal-backdrop{align-items:center;background:#1f29336b;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:20px;position:fixed;z-index:30}.modal-panel{background:#fffdf8;border:1px solid #ddd4c5;box-shadow:0 24px 70px #1f293340;max-height:min(760px,calc(100vh - 40px));max-width:820px;overflow:auto;padding:18px;width:min(100%,820px)}.empty-state{color:#65736f;margin:0}.admin-card{background:#f7f1e7;border:1px solid #e4ddd2;padding:16px}.admin-card-wide{grid-column:1 / -1}.report-card{background:#f7f1e7;border:1px solid #e4ddd2;padding:16px}.admin-card h3{font-size:16px;margin:0 0 8px}.admin-card h4{font-size:13px;margin:16px 0 8px;text-transform:uppercase}.admin-card p,.report-card p{color:#4f5f5b;font-size:14px;line-height:1.45;margin:0 0 14px}.logo-admin-row{align-items:center;display:flex;flex-wrap:wrap;gap:14px}.admin-logo-preview{background:#fffdf8;border:1px solid #ddd4c5;height:64px;object-fit:contain;padding:6px;width:96px}.report-card h3{font-size:16px;margin:0 0 8px}.parameter-list{display:grid;gap:8px}.parameter-row{align-items:center;background:#fffdf8;border:1px solid #ddd4c5;display:flex;gap:8px;justify-content:space-between;min-height:38px;padding:7px 8px}.parameter-row input,.parameter-row select{min-width:0}.checkbox-grid{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}.check-field{align-items:center;background:#fffdf8;border:1px solid #ddd4c5;display:inline-flex;gap:8px;min-height:38px;padding:8px 10px}.check-field input{height:18px;width:18px}.checkbox-field{align-items:center;align-self:end;background:#fffdf8;border:1px solid #ddd4c5;display:inline-flex;gap:8px;min-height:38px;padding:8px 10px}.checkbox-field input,.quote-confirmed-cell input{height:18px;width:18px}.checkbox-field span{color:#4f5f5b;font-size:13px;font-weight:700}.danger-card{border-color:#d9b5ad}.danger-confirm{margin-bottom:14px}.danger-action{align-items:center;background:#8f2f21;border:1px solid #8f2f21;color:#fffdf8;display:inline-flex;gap:8px;min-height:38px;padding:8px 12px}.field{display:grid;gap:6px}.field span{color:#4f5f5b;font-size:12px;font-weight:700}input,select{background:#fff;border:1px solid #cfc7bb;color:#1f2933;height:38px;min-width:0;padding:8px 10px}button:disabled{cursor:not-allowed;opacity:.5}input:focus,select:focus{border-color:#20302e;outline:2px solid #d5b15a;outline-offset:1px}.table-wrap,.planning-table-wrap{max-width:100%;overflow-x:auto}table{border-collapse:collapse;min-width:760px;width:100%}th,td{border-bottom:1px solid #e4ddd2;padding:12px;text-align:left;vertical-align:top}th{background:#f1eadf;color:#485652;font-size:12px;text-transform:uppercase}td{font-size:14px}.gear-table{min-width:1560px}.location-table{min-width:760px}.crew-table{border-collapse:separate;border-spacing:0;min-width:1180px}.crew-table th:first-child,.crew-table td:first-child{background-clip:padding-box;box-shadow:1px 0 #e4ddd2;left:0;min-width:220px;position:sticky;z-index:4}.crew-table th:first-child{background:#f1eadf;z-index:5}.crew-table td:first-child{background:#fffdf8}.gear-table th:first-child,.gear-table td:first-child{min-width:48px;width:48px}.gear-table input[type=checkbox]{height:18px;width:18px}.gear-table td input:not([type=checkbox]),.gear-table td select{width:100%}.icon-action{align-items:center;background:#fffaf0;border:1px solid #cfc7bb;color:#20302e;display:inline-flex;height:34px;justify-content:center;width:34px}.icon-action:hover{background:#f1eadf;border-color:#20302e}.icon-action.danger{color:#8f2f21}.icon-action.danger:hover{border-color:#8f2f21}.danger-icon{color:#8f2f21;margin-left:6px}.table-wrap td input,.table-wrap td select{max-width:100%}.todo-text-cell input{width:100%}.muted-cell{color:#6d7a76;display:block;font-size:12px;margin-top:3px}.notes-preview{color:#4f5f5b;max-width:240px;white-space:normal}.item-name-cell{align-items:flex-start;display:flex;gap:8px}.item-name-cell>div,.item-name-cell>span{min-width:0}.expand-action,.expand-spacer{align-items:center;display:inline-flex;flex:0 0 auto;height:24px;justify-content:center;width:24px}.expand-action{background:#fffaf0;border:1px solid #cfc7bb;color:#20302e;padding:0}.expand-spacer{border:1px solid transparent}.accessory-row td{background:#fbf7ef}.accessory-row .item-name-cell{padding-left:18px}.sub-event-row td{background:#fbf7ef}.time-range-cell{display:grid;gap:6px;grid-template-columns:minmax(104px,1fr) minmax(104px,1fr)}.sub-event-indent{display:inline-block;width:18px}.planning-table th:first-child,.planning-table td:first-child{left:0;min-width:220px;position:sticky;z-index:1}.planning-table th:first-child{background:#f1eadf}.planning-table td:first-child{background:#fffdf8}.planning-table th{min-width:180px}.planning-table th span,.planning-table td span{color:#6d7a76;display:block;font-size:12px;font-weight:400;margin-top:3px;text-transform:none}.planning-table input{max-width:92px}.quote-confirmed-cell{align-items:center;color:#6d7a76;display:inline-flex;font-size:12px;gap:6px}.sub-event-detail{display:grid;gap:8px;min-width:430px}.modal-detail{min-width:0}.sub-event-detail>strong{color:#4f5f5b;font-size:12px;text-transform:uppercase}.mini-row{align-items:center;display:grid;gap:6px;grid-template-columns:112px minmax(160px,1fr) 34px}.crew-need-row{grid-template-columns:minmax(150px,1fr) minmax(180px,1fr) 34px}.mini-row input,.mini-row select{width:100%}.mini-row input[type=time]{min-width:104px}.modal-actions-row{margin-bottom:10px}.mini-action{justify-self:start;min-height:32px;padding:5px 9px}.readonly-row{align-items:center;background:#f7f1e7;border:1px solid #e4ddd2;display:grid;gap:10px;grid-template-columns:90px 1fr;padding:9px 10px}.readonly-row strong{color:#20302e}@media(max-width:920px){.app-shell,.app-shell.sidebar-collapsed{grid-template-columns:1fr}.sidebar{position:static}.sidebar-collapsed .sidebar{padding:20px}.sidebar-collapsed .brand-text,.sidebar-collapsed .nav-toggle span,.sidebar-collapsed .nav-item span{display:block}nav{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar-collapsed .nav-item{justify-content:flex-start}.page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-window{grid-column:1 / -1}.form-grid,.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-grid,.report-grid,.report-controls{grid-template-columns:1fr}.report-notes-field{grid-column:auto}}@media(max-width:620px){.content{padding:18px}.topbar{align-items:stretch;flex-direction:column}.login-chip{min-width:0}.page-grid,.form-grid,.filter-grid,nav{grid-template-columns:1fr}h1{font-size:26px}}
