:root{--bg: #1a1714;--surface: #252119;--surface-alt: #2e2822;--border: #3d352e;--text: #f5f0eb;--text-muted: #9c9088;--accent: #c47a2c;--accent-hover: #d9924a;--accent-soft: #5c4228;--success: #6b9e78;--danger: #b85450;--log-bg: #141210;font-family:Segoe UI,Trebuchet MS,sans-serif;color:var(--text);background:var(--bg);line-height:1.45}.beta-banner{position:sticky;top:0;z-index:4000;padding:.4rem .75rem;text-align:center;font-size:.85rem;font-weight:650;letter-spacing:.04em;color:#1a140c;background:#e3b34a;border-bottom:1px solid #b8862a}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;min-height:100%;max-width:100%}body{background:radial-gradient(ellipse at 20% 0%,#2a2218 0%,transparent 55%),radial-gradient(ellipse at 90% 10%,#1f1812 0%,transparent 40%),var(--bg)}button,input{font:inherit}.app-shell{max-width:920px;width:100%;min-width:0;margin:0 auto;padding:1rem 1.5rem 2rem}.app-shell:not(.app-shell-studio){overflow-x:hidden}.app-shell-login{max-width:400px}.app-shell-wide{max-width:min(1320px,100%)}.login-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1.25rem}.login-header .subhead{margin-bottom:0}.login-fieldset{border:0;margin:0;padding:0;min-width:0}.login-reload{display:block;margin:.9rem auto 0;padding:0;border:0;background:none;color:var(--text-muted);font-size:.8rem;text-decoration:underline;cursor:pointer}.login-reload:hover{color:var(--text)}.brand-logo{display:block;width:auto;height:125px;max-height:125px;object-fit:contain;flex-shrink:0}.login-header .brand-logo{height:125px;width:auto;max-width:140px;padding:.125rem}.topbar .brand-logo{height:2rem;max-height:2rem;width:auto;margin:0;padding:.125rem;object-fit:contain}.brand{font-size:1.15rem;font-weight:650;letter-spacing:.04em;margin:0;line-height:1.2}.brand span{color:var(--accent)}.subhead{color:var(--text-muted);margin:0 0 1.75rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:1.25rem 1.35rem}.card+.card{margin-top:1rem}label{display:block;font-size:.85rem;color:var(--text-muted);margin-bottom:.35rem}input[type=text],input[type=password]{width:100%;background:var(--log-bg);border:1px solid var(--border);border-radius:6px;color:var(--text);padding:.65rem .75rem;margin-bottom:.9rem}input[type=file]{width:100%;color:var(--text-muted);margin-bottom:.75rem}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:6px;padding:.65rem 1.1rem;background:var(--accent);color:#1a120a;font-weight:600;cursor:pointer}.btn:hover:not(:disabled){background:var(--accent-hover)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-ghost{background:var(--surface-alt);color:var(--text);border:1px solid var(--border)}.btn.btn-danger-outline{background:transparent;color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 55%,var(--border))}.btn.btn-danger-outline:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 14%,transparent);color:color-mix(in srgb,var(--danger) 82%,white)}.row{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}.muted{color:var(--text-muted);font-size:.9rem}.error{color:var(--danger);margin:.5rem 0 0;white-space:pre-wrap}.success{color:var(--success)}.log{background:var(--log-bg);border:1px solid var(--border);border-radius:8px;padding:1.15rem 1.25rem;min-height:8rem;font-family:Consolas,Courier New,monospace;font-size:.85rem;white-space:pre-wrap;color:var(--text-muted)}.progress{height:8px;background:var(--log-bg);border-radius:999px;overflow:hidden;margin:.75rem 0}.progress>span{display:block;height:100%;background:linear-gradient(90deg,var(--accent-soft),var(--accent));transition:width .25s ease}.checkbox{display:flex;gap:.5rem;align-items:center;margin:.5rem 0 1rem;color:var(--text-muted)}.checkbox input{margin:0}.topbar{display:flex;justify-content:space-between;align-items:center;gap:.75rem 1rem;margin-bottom:1rem;padding:.625rem 0;min-width:0;max-width:100%}.topbar-brand{display:flex;align-items:center;gap:.65rem;min-width:0;flex:0 1 auto}.topbar-brand .brand{display:flex;align-items:center;flex-wrap:nowrap;white-space:nowrap;gap:0;padding-left:.7rem;border-left:1px solid var(--border)}.topbar-end{display:flex;align-items:center;justify-content:flex-end;flex:1 1 auto;min-width:0;gap:.65rem}.topbar-workflow,.topbar-user{display:flex;align-items:center;gap:.5rem;min-width:0}.topbar-utils{display:inline-flex;align-items:center;gap:0;padding:0;border:1px solid var(--border);border-radius:8px;background:var(--log-bg);flex-shrink:0}.topbar-utils .btn{background:transparent;border:none;border-radius:0}.topbar-utils .btn+.btn{border-left:1px solid var(--border)}.topbar-utils>.btn:first-child,.topbar-utils>.settings-gear-wrap:first-child>.btn{border-top-left-radius:7px;border-bottom-left-radius:7px}.topbar-utils>.btn:last-child,.topbar-utils>.settings-gear-wrap:last-child>.btn{border-top-right-radius:7px;border-bottom-right-radius:7px}.topbar-utils>.settings-gear-wrap{border-left:1px solid var(--border)}.topbar-utils .btn:hover:not(:disabled){background:var(--surface-alt)}.usage-pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;background:var(--accent-soft);border:1px solid var(--border);border-radius:999px;padding:.35rem .75rem;font-size:.8rem;color:var(--text)}.usage-pill-stat{background:transparent;border-color:var(--border);color:var(--text-muted);font-weight:600}.usage-pill-identity{background:var(--surface-alt);border-color:var(--border);color:var(--text)}.history-list{list-style:none;margin:0;padding:0}.history-list li{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.65rem 0;border-top:1px solid var(--border);flex-wrap:wrap}.history-list li:first-child{border-top:none;padding-top:0}.history-list li.active{background:var(--surface-alt);margin:0 -.5rem;padding-left:.5rem;padding-right:.5rem;border-radius:6px}.history-main{display:flex;flex-direction:column;gap:.15rem;min-width:0;flex:1}.history-open{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;color:var(--text);font:inherit;font-weight:600;text-align:left;padding:0;cursor:pointer}.history-open:hover{color:var(--accent-hover)}.admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem 1rem;margin-bottom:1rem}.admin-grid label{margin-bottom:.25rem}.purge-check{display:flex;align-items:flex-start;gap:.55rem;margin:0;cursor:pointer}.purge-check input[type=checkbox]{width:auto;margin-top:.2rem;flex-shrink:0}.admin-grid input,.admin-grid select,.admin-table input:not([type=checkbox]):not([type=radio]),.admin-table select{width:100%;background:var(--log-bg);border:1px solid var(--border);border-radius:6px;color:var(--text);padding:.5rem .65rem;margin-bottom:0}.admin-table input[type=checkbox]{width:1.15rem;height:1.15rem;min-width:1.15rem;margin:0;padding:0;accent-color:var(--accent);cursor:pointer;background:none;border:none}.admin-table tr.purge-row{cursor:pointer}.admin-table th.purge-check-col,.admin-table td.purge-check-col{width:2.2rem;text-align:center;vertical-align:middle}.table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:.9rem}.admin-table th,.admin-table td{text-align:left;padding:.55rem .4rem;border-bottom:1px solid var(--border);vertical-align:middle}.admin-table th{color:var(--text-muted);font-weight:600;font-size:.8rem}.table-sort{display:inline-flex;align-items:center;gap:.28rem;max-width:100%;margin:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-weight:inherit;letter-spacing:inherit;line-height:1.2;text-align:inherit;cursor:pointer;white-space:nowrap}.table-sort:hover,.table-sort:focus-visible{color:var(--text)}.table-sort-mark{font-size:.68rem;line-height:1;opacity:.4}.table-sort.is-active .table-sort-mark{opacity:1;color:var(--accent)}.admin-table th.col-num .table-sort,.admin-table th.col-center .table-sort{width:100%}.admin-table th.col-num .table-sort{justify-content:flex-end}.admin-table th.col-center .table-sort{justify-content:center}.admin-table tr.company-section-start td{box-shadow:inset 0 2px color-mix(in srgb,var(--text) 32%,var(--border))}.admin-table .col-center,.admin-table th.col-center,.admin-table td.col-center{text-align:center}.admin-table .col-num,.admin-table th.col-num,.admin-table td.col-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.admin-table.usage-table th.usage-scans-group{text-align:center;letter-spacing:.02em}.admin-table.usage-table thead tr:first-child th{vertical-align:bottom}.admin-table.usage-table thead tr:last-child th{font-weight:600;font-size:.74rem}.admin-table td.is-muted,.admin-table .col-num.is-muted,.cell-stamp.is-muted,.cell-nowrap.is-muted{color:color-mix(in srgb,var(--text-muted) 55%,var(--border))}.cell-nowrap{white-space:nowrap}.cell-stamp{white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.75rem;color:color-mix(in srgb,var(--text) 78%,var(--text-muted))}.cell-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.75rem}.cell-truncate{max-width:16rem}.cell-truncate-text{display:inline-block;max-width:14rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}.identity-cell{display:flex;flex-direction:column;gap:.08rem;min-width:0;line-height:1.25}.identity-name-line{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;min-width:0}.identity-display{font-weight:600}.user-state-mark{display:inline-flex;align-items:center;gap:.28rem;padding:.06rem .42rem;border-radius:999px;border:1px solid rgba(214,69,69,.55);background:#d6454524;color:#f0a8a8;font-size:.66rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;line-height:1.35;white-space:nowrap}.user-state-mark.is-suspended{border-color:#e3b341a6;background:#e3b34124;color:#e3b341}.user-state-mark.is-locked{border-color:#d6454566;background:#d645451a;color:#e7b3b3}.identity-username{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;color:var(--text-muted)}.role-badge,.status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:.12rem .5rem;font-size:.72rem;font-weight:650;letter-spacing:.02em;border:1px solid var(--border);white-space:nowrap}.role-badge{background:var(--surface-alt);color:var(--text-muted)}.role-badge-sysadmin{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 14%,transparent)}.role-badge-gensupervisor,.role-badge-companyadmin,.role-badge-supervisor{color:var(--text);background:color-mix(in srgb,var(--text) 8%,transparent)}.status-pill-active{background:color-mix(in srgb,#34d399 12%,#0b1f18);color:#34d399;border-color:color-mix(in srgb,#34d399 35%,var(--border))}.status-pill-suspended{background:color-mix(in srgb,#fb7185 12%,#2a1014);color:#fb7185;border-color:color-mix(in srgb,#fb7185 35%,var(--border))}.status-pill-locked,.status-pill-deleted,.status-pill-processed{background:var(--surface-alt);color:var(--text-muted)}.status-pill-initial{background:color-mix(in srgb,#f5b942 14%,#2a220c);color:#f5b942;border-color:color-mix(in srgb,#f5b942 40%,var(--border))}.status-pill-reviewed{background:color-mix(in srgb,#34d399 12%,#0b1f18);color:#34d399;border-color:color-mix(in srgb,#34d399 35%,var(--border))}.status-pill-delivered{background:color-mix(in srgb,var(--accent) 16%,#1a140c);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.admin-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.55rem .75rem;margin-bottom:.75rem}.admin-toolbar-field{display:flex;flex-direction:column;gap:.2rem;margin:0;min-width:9rem}.admin-toolbar-search{flex:1 1 12rem}.admin-toolbar-label{font-size:.72rem;color:var(--text-muted);font-weight:650}.admin-toolbar-field input,.admin-toolbar-field select,.history-audit-field select{margin:0;min-height:1.85rem;width:100%;background:var(--log-bg);border:1px solid var(--border);border-radius:6px;color:var(--text);padding:.35rem .55rem}.admin-toolbar-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-left:auto}.admin-toolbar-cta{margin-left:auto}.admin-users-toolbar{flex-wrap:nowrap;align-items:flex-end;gap:.75rem;color-scheme:dark}.admin-users-toolbar .admin-toolbar-field{margin:0}.admin-users-toolbar .admin-toolbar-field:not(.admin-toolbar-search){flex:0 0 16.5rem;width:16.5rem}.admin-users-toolbar .admin-toolbar-search{flex:1 1 auto;min-width:12rem}.admin-users-toolbar .admin-toolbar-field input,.admin-users-toolbar .admin-toolbar-field select,.admin-users-toolbar .admin-toolbar-cta{box-sizing:border-box;height:2.35rem;min-height:2.35rem;max-height:2.35rem;margin:0;padding:0 .75rem;font:inherit;font-size:.9rem;line-height:1.2;border:1px solid var(--border);border-radius:6px;background:var(--log-bg);color:var(--text)}.admin-users-toolbar .admin-toolbar-field input::placeholder{color:var(--text-muted);opacity:1}.admin-users-toolbar input[type=search]{-webkit-appearance:none;-moz-appearance:none;appearance:none}.admin-users-toolbar .admin-toolbar-cta{margin-left:0;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;background:var(--accent);color:#1a120a;border-color:var(--accent);font-weight:600;cursor:pointer}.admin-users-toolbar .admin-toolbar-cta:hover:not(:disabled){background:var(--accent-hover)}.admin-card-head{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;margin:0 0 .65rem}.admin-card-title{margin:0;font-size:1.02rem;font-weight:650}.info-tip{width:1.2rem;height:1.2rem;border-radius:999px;border:1px solid var(--border);background:var(--surface-alt);color:var(--text-muted);font-size:.7rem;font-weight:700;font-style:italic;line-height:1;cursor:help;padding:0}.copy-text-btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:1.35rem;height:1.35rem;margin:0;padding:0;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--text-muted);cursor:pointer}.copy-text-btn:hover{border-color:var(--border);color:var(--text);background:var(--surface-alt)}.segmented{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--log-bg)}.segmented .btn{border-radius:0;background:transparent;color:var(--text);border:0;box-shadow:none}.segmented .btn+.btn{border-left:1px solid var(--border)}.segmented .btn.is-on{background:var(--accent);color:#1a120a}.segmented .btn:hover:not(:disabled):not(.is-on){background:var(--surface-alt)}.filter-pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);background:transparent;color:var(--text-muted);border-radius:999px;padding:.28rem .7rem;font-size:.8rem;font-weight:650;cursor:pointer}.filter-pill.is-on{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--text)}.history-controls{display:flex;align-items:center;gap:.65rem;margin:0 0 .65rem}.history-filter-pills{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 .75rem}.history-audit-field{display:flex;align-items:center;gap:.4rem;margin:0 auto 0 .5rem;min-width:0}.history-modal-title{font-size:1.15rem;margin:0;white-space:nowrap}.history-filename{display:inline;white-space:normal;overflow-wrap:break-word;word-break:normal;line-height:1.3}.history-filename-tag{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:700;white-space:nowrap}.error-log-table{table-layout:fixed;width:100%}.error-log-table .error-log-row th:nth-child(1),.error-log-table .error-log-row td:nth-child(1){width:10.75rem}.error-log-table thead th:nth-child(1){width:10.75rem}.error-log-table thead th:nth-child(2),.error-log-table .error-log-row td:nth-child(2),.error-log-table thead th:nth-child(3),.error-log-table .error-log-row td:nth-child(3){width:7.25rem}.error-log-table thead th:nth-child(4),.error-log-table .error-log-row td:nth-child(4){width:9.25rem}.error-log-table thead th:nth-child(5),.error-log-table .error-log-row td:nth-child(5){width:13.5rem}.error-log-table .cell-truncate{max-width:none}.error-log-table .cell-truncate-text{max-width:calc(100% - 1.45rem)}.error-log-row{cursor:pointer}.error-log-row:hover td{background:color-mix(in srgb,var(--text) 5%,transparent)}.error-log-row:focus-visible{outline:1px solid color-mix(in srgb,var(--accent) 55%,var(--border));outline-offset:-1px}.error-log-detail td{padding:.35rem .4rem .7rem}.btn-compact{padding:.35rem .75rem;font-size:.8rem;line-height:1.2;min-height:0;font-weight:600}.admin-tabs{flex-wrap:wrap;gap:.4rem;align-items:center}.error-log-trace{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.75rem;white-space:pre-wrap;word-break:break-word;max-height:20rem;overflow:auto;margin:.15rem 0;padding:1rem;background:#0009;border:1px solid color-mix(in srgb,var(--border) 80%,#111);border-radius:6px}.error-log-row.is-open td{border-bottom-color:transparent}.login-log-table{table-layout:fixed;width:100%}.login-log-table .login-log-when{width:5.5rem;white-space:nowrap}.login-log-table .login-log-event{width:5.75rem;white-space:nowrap}.login-log-table .login-log-ip{width:7.25rem;white-space:nowrap;font-variant-numeric:tabular-nums}.login-log-table .login-log-machine{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;line-height:1.35;word-break:break-all;overflow-wrap:anywhere}.login-log-table td.login-log-when,.login-log-table td.login-log-event,.login-log-table td.login-log-ip,.login-log-table th.login-log-when,.login-log-table th.login-log-event,.login-log-table th.login-log-ip{padding-right:.35rem}.login-log-day td{padding:.2rem .2rem .2rem 0;border-bottom:1px solid var(--border)}.login-log-day.is-open td{border-bottom-color:transparent}.login-log-day-btn{display:flex;align-items:center;gap:.55rem;width:100%;margin:0;padding:.45rem .35rem;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.login-log-day-btn:hover,.login-log-day-btn:focus-visible{background:color-mix(in srgb,var(--accent) 12%,transparent)}.login-log-chevron{display:inline-block;width:.9rem;flex-shrink:0;color:var(--text-muted)}.login-log-detail td{padding-top:.35rem;padding-bottom:.35rem}.admin-user-form{margin-bottom:.85rem;color-scheme:dark}.admin-user-form-title{margin:0 0 .9rem;color:var(--text-muted);font-size:.92rem}.admin-user-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem 1rem;align-items:start;margin-bottom:.95rem}.admin-user-fields>div{min-width:0}.admin-user-fields label{display:block;margin-bottom:.35rem;font-size:.8rem;line-height:1.2;color:var(--text-muted)}.admin-user-fields input,.admin-user-fields select{width:100%;box-sizing:border-box;height:2.35rem;min-height:2.35rem;margin:0;padding:0 .75rem;font:inherit;font-size:.9rem;line-height:1.2;color:var(--text);background:var(--log-bg);border:1px solid var(--border);border-radius:6px}.admin-user-fields input::placeholder{color:var(--text-muted);opacity:1}.admin-user-fields input:-webkit-autofill,.admin-user-fields input:-webkit-autofill:hover,.admin-user-fields input:-webkit-autofill:focus,.admin-user-fields select:-webkit-autofill,.admin-user-fields select:-webkit-autofill:hover,.admin-user-fields select:-webkit-autofill:focus{-webkit-text-fill-color:var(--text);caret-color:var(--text);box-shadow:0 0 0 1000px var(--log-bg) inset;transition:background-color 9999s ease-out}.admin-user-fields input:disabled{opacity:.72}.admin-user-fields select{padding-right:1.75rem}.admin-field-hint{margin:.3rem 0 0;color:var(--text-muted);font-size:.75rem;line-height:1.35}.admin-field-hint+.admin-field-hint{margin-top:.12rem}.admin-password-row{display:flex;align-items:stretch;min-height:2.35rem;background:var(--log-bg);border:1px solid var(--border);border-radius:6px;overflow:hidden}.admin-password-row input{flex:1 1 auto;min-width:0;height:auto;min-height:0;border:0;border-radius:0;background:transparent;box-shadow:none;font-family:inherit;font-size:.9rem;line-height:1.2}.admin-password-row input:-webkit-autofill,.admin-password-row input:-webkit-autofill:hover,.admin-password-row input:-webkit-autofill:focus{box-shadow:0 0 0 1000px var(--log-bg) inset}.admin-password-row .btn{flex:0 0 auto;align-self:stretch;height:auto;min-height:0;margin:0;padding:0 .75rem;border:0;border-left:1px solid var(--border);border-radius:0;background:var(--surface-alt);color:var(--text);font-size:.8rem;font-weight:600;line-height:1;white-space:nowrap}.admin-password-row .btn:hover:not(:disabled){background:color-mix(in srgb,var(--text) 8%,var(--surface-alt));color:var(--text)}.admin-perm-list{margin:0 0 1rem;padding:.55rem .85rem .6rem;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--log-bg) 72%,transparent);width:fit-content;max-width:100%;min-width:0}.admin-perm-grid{display:grid;grid-template-columns:repeat(3,max-content);column-gap:1.35rem;row-gap:.05rem;justify-content:start}.admin-perm-list legend{padding:0 .35rem;color:var(--text-muted);font-size:.75rem;font-weight:650;letter-spacing:.05em;text-transform:uppercase}.admin-perm-item{display:flex;align-items:center;gap:.6rem;margin:0;padding:.32rem .15rem;color:var(--text);font-size:.88rem;line-height:1.2;cursor:pointer}.admin-perm-item input[type=checkbox]{width:1rem;height:1rem;min-width:1rem;margin:0;padding:0;accent-color:var(--accent);flex-shrink:0;cursor:pointer}.admin-user-actions-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.85rem 1.25rem}.admin-user-actions-primary,.admin-user-actions-utility,.admin-user-actions-danger{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem}.admin-user-actions-primary{justify-content:flex-start}.admin-user-actions-utility{justify-content:center}.admin-user-actions-danger{justify-content:flex-end}.admin-user-actions-row .admin-user-action{box-sizing:border-box;height:2.15rem;min-height:2.15rem;margin:0;padding:0 .9rem;display:inline-flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:600;line-height:1;white-space:nowrap}.admin-user-actions-primary .btn-ghost,.admin-user-actions-utility .btn-ghost{background:var(--log-bg);color:var(--text);border:1px solid #6a5c50}.admin-user-actions-primary .btn-ghost:hover:not(:disabled),.admin-user-actions-utility .btn-ghost:hover:not(:disabled){background:var(--surface-alt);color:var(--text)}.admin-user-actions-danger .admin-user-action{padding:0 .7rem;font-weight:600}@media(max-width:900px){.admin-users-toolbar{flex-wrap:wrap}.admin-user-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-perm-grid{grid-template-columns:repeat(2,max-content)}.admin-user-actions-row{grid-template-columns:1fr}.admin-user-actions-utility,.admin-user-actions-danger{justify-content:flex-start}}@media(max-width:560px){.admin-user-fields{grid-template-columns:1fr}}.topbar>.row{flex-wrap:nowrap;align-items:center;gap:.5rem;min-width:0}.topbar .btn,.topbar .usage-pill{box-sizing:border-box;flex-shrink:0;height:1.85rem;min-height:1.85rem;max-height:1.85rem;padding:0 .75rem;font-size:.8rem;line-height:1;font-weight:600;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.edit-latch-toggles{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.topbar .btn-sysadmin-edit,.edit-latch-toggles .btn-sysadmin-edit{background:#111;color:var(--text);border:1px solid #2a2a2a}.topbar .btn-sysadmin-edit:hover:not(:disabled),.edit-latch-toggles .btn-sysadmin-edit:hover:not(:disabled){background:#1c1c1c;color:var(--text)}.topbar .btn-sysadmin-edit.is-on,.edit-latch-toggles .btn-sysadmin-edit.is-on{background:var(--danger);color:#fff;border-color:#8a3a38}.topbar .btn-sysadmin-edit.is-on:hover:not(:disabled),.edit-latch-toggles .btn-sysadmin-edit.is-on:hover:not(:disabled){background:#c45c58;color:#fff}.topbar .btn-peer-review-edit,.edit-latch-toggles .btn-peer-review-edit{background:#111;color:var(--text);border:1px solid #2a2a2a}.topbar .btn-peer-review-edit:hover:not(:disabled),.edit-latch-toggles .btn-peer-review-edit:hover:not(:disabled){background:#1c1c1c;color:var(--text)}.topbar .btn-peer-review-edit.is-on,.edit-latch-toggles .btn-peer-review-edit.is-on{background:var(--accent);color:#fff;border-color:var(--accent-hover)}.topbar .btn-peer-review-edit.is-on:hover:not(:disabled),.edit-latch-toggles .btn-peer-review-edit.is-on:hover:not(:disabled){background:var(--accent-hover);color:#fff}.topbar .btn.btn-icon{width:1.85rem;min-width:1.85rem;max-width:1.85rem;padding:0}.topbar .btn.btn-icon svg{display:block;width:1.15rem;height:1.15rem;flex-shrink:0}.btn-icon{padding:.35rem;min-width:2rem;display:inline-flex;align-items:center;justify-content:center}.admin-user-actions{width:2.5rem;text-align:right}.table-row-clickable{cursor:pointer}.table-row-clickable:hover td{background:color-mix(in srgb,var(--accent) 10%,transparent)}.table-row-clickable:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.table-row-active td,.history-row-active td{background:color-mix(in srgb,var(--accent) 12%,transparent)}.admin-user-row-deleted td{text-decoration:line-through;color:var(--text-muted);opacity:.85}.admin-user-row-deleted .user-presence,.admin-user-row-deleted .user-state-mark{text-decoration:none;opacity:1}.user-presence{display:inline-block;width:.72rem;height:.72rem;border-radius:50%;vertical-align:middle;box-shadow:0 0 0 1px color-mix(in srgb,var(--text) 22%,transparent)}.user-presence-active{background:#2fbe5c}.user-presence-idle{background:#e3b341}.user-presence-logged-out{background:#111}.user-presence-deactivated{background:#d64545}.admin-table.usage-table .user-presence{width:.82rem;height:.82rem}.admin-table.usage-table .user-presence-active{box-shadow:0 0 0 1px color-mix(in srgb,var(--text) 22%,transparent),0 0 7px #2fbe5c}.admin-table.usage-table .user-presence-deactivated{box-shadow:0 0 0 1px color-mix(in srgb,var(--text) 22%,transparent),0 0 7px #d64545}.admin-user-row-deleted .admin-user-actions,.admin-user-row-deleted .admin-user-actions *{text-decoration:none;opacity:1}.admin-user-divider-row td{padding:.85rem .4rem .55rem;border-bottom:none}.admin-user-divider{display:flex;align-items:center;gap:.75rem;color:var(--text-muted);font-size:.78rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.admin-user-divider:before,.admin-user-divider:after{content:"";flex:1;height:1px;background:var(--border)}.admin-user-divider span{white-space:nowrap}.launcher-dashboard{width:100%;max-width:1000px;margin:0 auto}.launcher-dashboard>.card{width:100%;max-width:none;margin-inline:0;box-sizing:border-box}.launcher-setup{width:100%;display:grid;justify-items:stretch;gap:.7rem}.launcher-file-lines{display:grid;grid-template-columns:11.5rem minmax(0,1fr);justify-content:stretch;gap:.6rem;align-items:stretch;width:100%}.launcher-file-chips{display:grid;gap:.45rem;min-width:0}.launcher-file-lines>.btn{width:100%;height:100%;justify-self:stretch;white-space:normal;line-height:1.25;text-align:center}.launcher-unfreeze{justify-self:center}.launcher-file-status{margin-top:.75rem;display:flex;flex-direction:column;align-items:stretch;gap:.5rem;min-width:0}.launcher-file-row{display:flex;align-items:center;gap:.4rem;width:100%;box-sizing:border-box;min-width:0;max-width:none;min-height:2.15rem;padding:.22rem .6rem;background:var(--surface-alt);border:1px solid #6a5c50;border-radius:6px}.launcher-file-label{flex:0 0 auto;padding-top:0;color:#d4cbc3;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;line-height:1.2}.launcher-file-value{min-width:0}.launcher-file-name{display:block;min-width:0;color:var(--text);font-size:.88rem;line-height:1.4;overflow-wrap:anywhere;word-break:break-all}.launcher-file-value .name-edit{width:100%;max-width:100%;align-items:flex-start}.launcher-file-value .name-edit-label{overflow-wrap:anywhere;word-break:break-all;white-space:normal}.launcher-process-block{display:grid;gap:.7rem;margin-top:0;width:100%;justify-items:center}.launcher-options{display:grid;grid-template-columns:minmax(16rem,.9fr) minmax(0,1.2fr);gap:.7rem 1rem;align-items:stretch;justify-self:stretch;width:100%}.inspection-kind-field{display:flex;align-items:stretch;min-width:0;min-height:2.15rem;height:100%;border:1px solid #6a5c50;border-radius:6px;overflow:hidden;background:var(--surface-alt)}.inspection-kind-field>span{display:flex;align-items:center;flex:0 0 auto;margin:0;padding:.22rem .65rem;color:#d4cbc3;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;line-height:1.2;white-space:nowrap;border-right:1px solid #6a5c50}.inspection-kind{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1fr 1fr;flex:1 1 auto;min-width:0;width:auto;height:100%;border:0;border-radius:0;overflow:hidden;background:var(--log-bg)}.inspection-kind .btn{height:100%;border-radius:0;background:transparent;color:var(--text);border:0;box-shadow:none;padding:.45rem .35rem;font-size:.82rem;line-height:1.2;white-space:normal}.inspection-kind .btn:nth-child(2n){border-left:1px solid var(--border)}.inspection-kind .btn:nth-child(n+3){border-top:1px solid var(--border)}.inspection-kind .btn.is-on{background:var(--accent);color:#1a120a}.inspection-kind .btn:hover:not(:disabled):not(.is-on){background:var(--surface-alt)}@media(max-width:720px){.launcher-options,.launcher-file-lines{grid-template-columns:1fr}.launcher-file-lines>.btn{height:auto;min-height:2.4rem}}.launcher-process-btn{width:40%;justify-self:center;background:#e08a2e;color:#1a120a}.launcher-process-btn:hover:not(:disabled){background:#f0a24a}.launcher-process-btn:disabled{opacity:1;background:#e08a2e;color:#1a120a;cursor:not-allowed}.launcher-process-btn.launcher-process-muted,.launcher-process-btn.launcher-process-muted:disabled{background:#3c3834;color:#a39890;box-shadow:inset 0 0 0 1px #6a5c50}.launcher-process-btn.launcher-process-muted:hover:not(:disabled){background:#4a453f;color:#e7e0da}.launcher-process-btn.launcher-process-muted:disabled{cursor:not-allowed}.launcher-project-card.is-processing .launcher-process-btn:disabled{cursor:wait}.btn.launcher-choose-picked{background:#3c3834;color:#a39890;box-shadow:inset 0 0 0 1px #6a5c50;cursor:pointer}.btn.launcher-choose-picked:hover:not(:disabled){background:#4a453f;color:#e7e0da}.launcher-project-card.is-processing .launcher-setup button:disabled:not(.launcher-process-btn),.launcher-project-card.is-processing .launcher-setup input:disabled{opacity:.38;filter:grayscale(.65);cursor:not-allowed}.launcher-project-card button:disabled,.launcher-project-card input:disabled{cursor:not-allowed}.launcher-thickness input:disabled{opacity:.55}.launcher-project-actions{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;justify-content:flex-end;flex:0 0 auto}@keyframes launcher-index-blink{0%,to{background:#d7a441;box-shadow:0 0 #f2c14e00}50%{background:#ffe08a;box-shadow:0 0 0 3px #f2c14ebf}}.launcher-index-blink{background:#e6b422;color:#1a120a;border:0;animation:launcher-index-blink .7s ease-in-out infinite}.launcher-index-blink:hover:not(:disabled){background:#ffe08a;color:#1a120a}.launcher-index-blink:disabled{animation:none}@keyframes launcher-studio-blink{0%,to{box-shadow:0 0 #e08a2e00}50%{box-shadow:0 0 0 4px #e08a2e8c;filter:brightness(1.08)}}.launcher-studio-blink{animation:launcher-studio-blink .85s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.launcher-index-blink,.launcher-studio-blink{animation:none}.launcher-index-blink{background:#e6b422;color:#1a120a;box-shadow:0 0 0 2px #f2c14ecc}.launcher-studio-blink{box-shadow:0 0 0 2px #e08a2ebf}}.launcher-project-card.is-drop-target{box-shadow:inset 0 0 0 2px #e6b422}.launcher-thickness{display:grid;grid-template-columns:1fr;gap:.45rem;width:100%;align-content:start}.launcher-nominal{display:flex;align-items:stretch;min-width:0;min-height:2.15rem;border:1px solid #6a5c50;border-radius:6px;overflow:hidden;background:var(--surface-alt)}.launcher-nominal label{display:flex;align-items:center;flex:0 0 auto;margin:0;padding:.22rem .65rem;color:#d4cbc3;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;line-height:1.2;white-space:nowrap;border-right:1px solid #6a5c50}.launcher-nominal input[type=number]{flex:1 1 auto;width:100%;min-width:3.25rem;margin:0;padding:.35rem;text-align:center;font-variant-numeric:tabular-nums;background:var(--log-bg);border:0;border-radius:0;color:var(--text);-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.launcher-nominal input[type=number]::-webkit-inner-spin-button,.launcher-nominal input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.launcher-nominal-step{display:flex;flex-direction:column;flex:0 0 1.35rem;border-left:1px solid #6a5c50}.launcher-nominal-step button{flex:1 1 50%;margin:0;padding:0;border:0;border-radius:0;background:var(--surface-alt);color:var(--text);font-size:.78rem;line-height:1;cursor:pointer}.launcher-nominal-step button+button{border-top:1px solid #6a5c50}.launcher-nominal-step button:hover:not(:disabled){background:#4a453f;color:#e7e0da}@media(max-width:560px){.launcher-process-btn{width:min(100%,16rem)}}@media(max-width:860px){.app-shell:not(.app-shell-studio){padding:.65rem 1rem 1.25rem}.app-shell:not(.app-shell-studio)>.topbar{flex-wrap:wrap;align-items:center;gap:.45rem .65rem;margin-bottom:.7rem;padding:.5rem 0}.app-shell:not(.app-shell-studio) .brand{font-size:1rem}.app-shell:not(.app-shell-studio) .topbar-end{flex:1 1 100%;flex-wrap:wrap;justify-content:flex-end;gap:.5rem}.app-shell:not(.app-shell-studio) .identity-prefix{display:none}.app-shell:not(.app-shell-studio) .topbar .usage-pill{max-width:10rem;min-width:0;flex-shrink:1;overflow:hidden;text-overflow:ellipsis}.app-shell:not(.app-shell-studio) .card{padding:.85rem .9rem}.app-shell:not(.app-shell-studio) .log{min-height:4.5rem;padding:1rem 1.05rem}.launcher-project-top{flex-direction:column;align-items:stretch;gap:.5rem}.launcher-project-main{flex:0 0 auto}.launcher-project-actions{justify-content:flex-start}.launcher-file-status{margin-top:.45rem}.launcher-process-block{max-width:none}.launcher-thickness{margin-top:0}.identity-popover{left:auto;right:0;min-width:0;width:min(22rem,calc(100vw - 1.5rem));max-width:calc(100vw - 1.5rem)}.company-detail{grid-template-columns:1fr}.billing-project-table{margin-left:0}.identity-actas{flex-direction:column;gap:.65rem}.history-col-date,.history-col-owner{visibility:collapse;width:0!important;min-width:0!important;max-width:0!important;padding:0!important;border:0!important;overflow:hidden;font-size:0;line-height:0}.history-table{table-layout:fixed;width:100%}.history-col-project{width:auto}.history-col-progress{width:3.4rem;max-width:3.4rem}.history-progress{max-width:3.4rem}.history-progress-label,.history-project-cell .copy-text-btn,.history-project-cell .name-edit-pen{display:none}.history-project-cell .name-edit-label,.history-project-cell .history-filename{display:block;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:normal;overflow-wrap:normal}.history-modal{width:min(920px,calc(100vw - .6rem))}.history-modal-tml{width:min(1400px,calc(100vw - .6rem))}.name-edit-input{font-size:16px}}.history-modal{width:min(920px,100%);max-height:min(90vh,900px);overflow:auto}.history-modal-tml{width:min(1400px,100%);max-width:min(1400px,calc(100vw - 1.5rem))}.history-modal-head{justify-content:space-between;align-items:center;flex-wrap:nowrap;gap:.75rem;margin-bottom:.55rem}.history-modal-head .history-modal-sub{margin:0}.history-modal-actions{gap:.4rem;flex-wrap:nowrap;justify-content:flex-end;flex:0 0 auto}.history-modal-sub{margin:.2rem 0 .55rem;font-size:.85rem}.history-project-summary{cursor:pointer}.history-project-summary:hover{background:color-mix(in srgb,var(--accent) 10%,transparent)}.history-project-summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.history-project-card.is-open .history-project-summary:hover{background:transparent}.history-list-dimmed{background:#14110e;border-radius:8px}.history-list-dimmed tbody tr:not(.history-row-open) td{position:relative}.history-list-dimmed tbody tr:not(.history-row-open) td:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080;pointer-events:none}.history-project-card.is-open{position:relative;z-index:2;background:var(--surface-alt);border:1px solid var(--border);border-radius:8px;padding:.55rem .7rem .75rem;margin:.15rem 0 .35rem;box-shadow:0 10px 28px #0000008c}.history-row-open td,.history-row-open.table-row-clickable:hover td,.history-row-open.history-row-active td{background:transparent;border-bottom-color:transparent;padding-top:.1rem;padding-bottom:.1rem}.history-project-editor{margin:.7rem 0 0;padding:0;background:transparent;border:0;border-radius:0}.history-expand-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.55rem}.history-expand-title{margin:0;font-size:.88rem;font-weight:600;line-height:1.3;min-width:0;word-break:break-word}.history-expand-title .name-edit{width:100%}.history-expand-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:0 0 auto;width:auto;height:1.7rem;margin:-.15rem -.2rem 0 0;padding:0 .5rem;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--text-muted);font-size:.78rem;font-weight:650;line-height:1;cursor:pointer}.history-expand-close:hover{color:var(--text);background:color-mix(in srgb,var(--text) 10%,transparent)}.history-status-row{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem 1.1rem;margin:0 0 .75rem;padding:.35rem 0 .7rem;border-bottom:1px solid var(--border)}.history-status-lock{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .5rem}.history-lock-glyph{flex:0 0 auto;display:block}.history-lock-badge{display:inline-flex;align-items:center;gap:.32rem;font-size:.8rem;font-weight:650}.history-lock-badge.is-unlocked{color:var(--success)}.history-status-activity{color:var(--text-muted);font-size:.8rem}.history-status-progress{display:flex;align-items:center;flex-wrap:nowrap;gap:.55rem;margin-left:auto;min-width:0}.history-flag-count{display:inline-flex;align-items:center;gap:.18rem;color:#e23b3b;font-size:.82rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1}.history-flag-count svg{display:block;flex:0 0 auto}.history-status-kicker{color:var(--text-muted);font-size:.72rem;font-weight:650;letter-spacing:.02em;text-transform:uppercase}.history-status-progress .history-progress{width:7.6rem;min-width:7.6rem}.history-status-locked{margin:0 0 .75rem}.history-lock-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.45rem .75rem;margin:0 0 .45rem;padding:.45rem .6rem;border:1px solid color-mix(in srgb,var(--danger) 42%,var(--border));border-radius:6px;background:color-mix(in srgb,var(--danger) 12%,var(--surface-alt))}.history-lock-banner.is-delivered{border-color:color-mix(in srgb,var(--accent) 42%,var(--border));background:color-mix(in srgb,var(--accent) 12%,var(--surface-alt))}.history-lock-banner-text{display:flex;align-items:flex-start;gap:.4rem;margin:0;flex:1 1 16rem;font-size:.82rem;line-height:1.35}.history-lock-banner-text .history-lock-glyph{margin-top:.12rem}.history-status-row-locked{margin:0;padding:.2rem 0 .55rem}.history-action-groups{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 0}.history-action-group{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.history-action-group-primary{padding-right:.75rem}.history-action-group-client{flex:1 1 auto;padding:0 .75rem;border-left:1px solid var(--border);border-right:1px solid var(--border)}.history-action-group-manage{margin-left:auto;padding-left:.75rem}.history-action-note{font-size:.8rem}@media(max-width:860px){.history-status-progress{margin-left:0;width:100%}.history-action-group-primary,.history-action-group-client,.history-action-group-manage{flex:1 1 100%;margin-left:0;padding:.35rem 0 0;border:0}.history-action-group-client,.history-action-group-manage{border-top:1px solid var(--border)}}.history-delete-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;color:var(--danger);font-size:.8rem;font-weight:600;padding:.2rem .3rem;cursor:pointer;text-decoration:underline;text-underline-offset:.16em}.history-delete-link:hover:not(:disabled){color:color-mix(in srgb,var(--danger) 80%,white)}.history-delete-link:disabled{opacity:.55;cursor:not-allowed}.history-project-actions{gap:.4rem;flex-wrap:wrap}.history-reprocess-box{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border)}.history-reprocess-box p{margin:0 0 .5rem;font-size:.9rem;line-height:1.35}.history-reprocess-keep{display:flex;align-items:center;gap:.4rem;font-size:.9rem;margin:.35rem 0}.history-reprocess-restore{display:grid;gap:.45rem;margin:.5rem 0}.history-reprocess-restore label{display:grid;gap:.2rem;font-size:.82rem}.history-field-value{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem;font-size:.84rem;line-height:1.35;min-height:1.35rem;word-break:break-word}.history-table{font-size:.8rem;table-layout:fixed;width:100%}.history-table-identity{table-layout:auto}.history-identity{display:grid;gap:.28rem;min-width:0}.history-identity-line{display:grid;grid-template-columns:minmax(8rem,1.15fr) auto minmax(9rem,1.2fr) auto minmax(8rem,1fr);gap:.35rem .75rem;align-items:center;min-width:0}.history-identity-wo{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.history-identity-line-seg{display:flex;flex-wrap:wrap;gap:.2rem .45rem;min-width:0;font-weight:400}.history-line-count{white-space:nowrap}.history-identity-dash{color:var(--text-muted);text-align:center}.history-identity-line .history-progress{min-width:0;width:100%}.history-expand-tools{display:flex;align-items:center;gap:.45rem;flex:0 0 auto}.history-source-card h2{margin:0 0 .75rem;font-size:1.05rem}.history-source-file{display:flex;flex-direction:column;gap:.15rem;margin:0 0 .65rem}.history-source-file span{color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.history-source-file strong{overflow-wrap:anywhere;font-weight:600}.history-source-field{display:flex;flex-direction:column;gap:.3rem;margin:0 0 .7rem;font-size:.82rem}.history-source-actions{display:flex;justify-content:flex-end;gap:.45rem;margin-top:.35rem}@media(max-width:720px){.history-identity-line{grid-template-columns:minmax(0,1fr);gap:.15rem}.history-identity-dash{display:none}}.history-month td{padding:0;background:var(--log-bg);border-bottom:1px solid var(--border)}.history-month.is-open td{border-bottom-color:transparent}.history-month-btn{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;width:100%;margin:0;padding:.5rem .45rem;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.history-month-btn:hover,.history-month-btn:focus-visible{background:color-mix(in srgb,var(--accent) 12%,transparent)}.history-month-chevron{display:inline-block;width:.9rem;flex-shrink:0;color:var(--text-muted)}.history-month-meta{color:var(--text-muted);font-size:.8rem;white-space:nowrap}.history-month-unprocessed{flex-shrink:0;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);border:1px solid var(--border);border-radius:999px;padding:.12rem .45rem}.history-month-btn .history-progress{margin-left:auto;min-width:7.5rem}.history-table th,.history-table td{padding:.28rem .3rem;vertical-align:middle;line-height:1.25}.history-table th{font-size:.72rem;white-space:nowrap}.history-col-date{width:7rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--text-muted)}.history-col-project{min-width:0}.history-project-cell{display:flex;align-items:flex-start;gap:.35rem;min-width:0}.history-project-cell .name-edit{flex:1 1 auto;min-width:0}.history-project-cell .badge{flex:0 0 auto}.name-edit{display:flex;align-items:center;gap:.3rem;min-width:0;max-width:100%;vertical-align:middle}.name-edit-label{flex:1 1 0;min-width:0;overflow:hidden}.name-edit-input{flex:1 1 auto;min-width:0;width:14rem;max-width:100%;background:var(--log-bg);border:1px solid var(--border);border-radius:5px;color:var(--text);font:inherit;font-size:.85rem;padding:.18rem .4rem;margin:0}.name-edit.is-editing,.name-edit.is-editing .name-edit-input{width:100%}.studio-scan-rename-fields{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem}.studio-tml-field{display:inline-flex;align-items:center;gap:.3rem;font-size:.85rem;color:var(--text-muted)}.studio-tml-field input,.studio-tml-field select{width:4.2rem}.name-edit-pen{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:2.1rem;height:2.1rem;padding:0;border:0;border-radius:4px;background:transparent;color:var(--text-muted);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.name-edit-pen svg{display:block;width:.95rem;height:.95rem}.name-edit-pen:hover:not(:disabled){background:color-mix(in srgb,var(--text) 10%,transparent);color:var(--text)}.name-edit-pen:disabled{opacity:.4;cursor:not-allowed}.history-col-project .name-edit{display:flex;width:100%}.history-col-project .name-edit-pen{margin-left:.2rem}.history-expand-title .name-edit-label,.history-expand-head .name-edit-label{font-weight:600}.launcher-file-status .name-edit-label{font-weight:600;color:var(--text)}.history-col-owner{width:6.2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-col-progress{width:10.6rem}.history-progress{display:grid;gap:.18rem;min-width:0}.history-project-cell .name-edit-label{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal;overflow-wrap:anywhere;word-break:break-word}@media(max-width:860px){.history-project-cell .name-edit-label,.history-project-cell .history-filename{display:block;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:normal;overflow-wrap:normal;-webkit-line-clamp:unset;-webkit-box-orient:unset}}.history-project-cell .copy-text-btn,.history-expand-title .copy-text-btn{vertical-align:text-top;margin-left:.28rem}.history-progress-track{height:4px;border-radius:99px;background:color-mix(in srgb,var(--text) 14%,transparent);overflow:hidden}.history-progress-fill{display:block;height:100%;border-radius:inherit;background:color-mix(in srgb,var(--accent) 75%,var(--success))}.history-progress-label{font-size:.72rem;font-variant-numeric:tabular-nums;color:var(--text-muted);white-space:nowrap}.history-expand-row td{padding:0;background:transparent;border-bottom-color:transparent;cursor:default;vertical-align:top}.history-row-actions{gap:.3rem;flex-wrap:nowrap;justify-content:flex-end}.app-shell-studio{max-width:1400px;height:100%;max-height:100%;height:100dvh;max-height:100dvh;height:100svh;max-height:100svh;overflow:hidden;overscroll-behavior:none;display:flex;flex-direction:column;padding-top:max(1rem,env(safe-area-inset-top,0px));padding-bottom:max(.5rem,env(safe-area-inset-bottom,0px));padding-left:max(1.25rem,env(safe-area-inset-left,0px));padding-right:max(1.25rem,env(safe-area-inset-right,0px));box-sizing:border-box}.app-shell-studio>.topbar{flex-shrink:0;margin-bottom:1rem;padding-bottom:0}.app-shell-studio>.muted,.app-shell-studio>.error{flex-shrink:0;margin:.15rem 0}.app-shell-studio .btn-compact{padding:.28rem .7rem;font-size:.85rem;line-height:1.2;min-height:0}.app-shell-studio .topbar .btn.btn-icon{padding:0;font-size:1rem}.app-shell-studio .topbar{align-items:center;margin-bottom:1rem;padding-block:.5rem}.app-shell-studio .brand{margin:0;font-size:1.15rem}.studio-top-actions{position:relative;min-width:0}.studio-identity-short{display:none}.studio-overflow{display:contents}.studio-overflow-trigger,.topbar .studio-overflow-trigger{display:none}.studio-overflow-panel{display:contents}.studio-scan-bar{display:flex;flex-direction:column;align-items:stretch;gap:.4rem;flex-wrap:nowrap;margin-bottom:.5rem;flex-shrink:0;padding:.5rem .7rem}.studio-scan-bar-row{display:flex;align-items:center;gap:.45rem;min-width:0;flex-wrap:nowrap}.studio-project-name{display:flex;align-items:center;flex:1 1 auto;min-width:0;max-width:75%;font-size:.85rem;font-weight:600}.studio-project-name .name-edit{width:100%;flex-direction:row-reverse}.studio-project-name .name-edit-label{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.studio-project-name .name-edit-input{width:100%}.studio-scan-bar-trailing{display:flex;align-items:center;gap:.45rem;margin-left:auto;flex:0 0 auto}.studio-scan-save{min-width:5.5rem}.studio-scan-status:empty{display:none}.studio-scan-status{white-space:nowrap;flex-shrink:0}.studio-scan-bar label{margin:0}.studio-scan-bar select{min-width:min(280px,100%);flex:1;background:var(--log-bg);border:1px solid var(--border);border-radius:6px;color:var(--text);padding:.28rem .55rem;font-size:.85rem}.studio-scan-picker{position:relative;flex:1 1 auto;min-width:8rem}.studio-scan-bar-scan>.btn,.studio-scan-bar-scan>.studio-overflow{flex-shrink:0}.studio-scan-picker-btn{width:100%;text-align:left;background:var(--log-bg);border:1px solid var(--border);border-radius:6px;color:var(--text);padding:.28rem .55rem;font-size:.85rem;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-scan-menu{position:absolute;z-index:40;top:calc(100% + 4px);left:0;min-width:min(580px,92vw);max-height:min(420px,60vh);overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 12px 32px #00000059;padding:0}.studio-scan-menu-table{margin:0;font-size:.8rem;border-collapse:separate;border-spacing:0}.studio-scan-menu-table thead th{position:sticky;top:0;z-index:2;background:var(--surface);box-shadow:inset 0 -1px 0 var(--border)}.studio-scan-section td{color:var(--accent);font-weight:650;padding-top:.55rem}.studio-scan-menu-table tr.studio-scan-row-active td{background:color-mix(in srgb,var(--accent) 18%,transparent)}.studio-scan-menu-table tr.studio-scan-row-active td:first-child{box-shadow:inset 3px 0 0 var(--accent);font-weight:650}.studio-lock-live{color:var(--accent);font-weight:650;white-space:nowrap}.studio-scan-name-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;color:inherit;font:inherit;cursor:pointer;padding:0;text-align:left}.studio-scan-menu-table .name-edit{width:100%}.studio-scan-icon-col{width:2.4rem;text-align:center;white-space:nowrap}.studio-scan-rename{position:relative;justify-content:center}.studio-scan-rename .name-edit-input{position:absolute;right:0;top:50%;transform:translateY(-50%);width:min(12rem,46vw);z-index:3}.studio-scan-icon-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:1.85rem;height:1.85rem;padding:0;border:0;border-radius:5px;background:transparent;color:var(--text-muted);cursor:pointer}.studio-scan-icon-btn:hover:not(:disabled){background:color-mix(in srgb,var(--text) 8%,transparent)}.studio-scan-icon-btn:disabled{cursor:default}.studio-scan-icon-btn svg{width:1.05rem;height:1.05rem;display:block}.studio-scan-icon-btn.is-unlocked{color:color-mix(in srgb,var(--text-muted) 80%,transparent)}.studio-scan-icon-btn.is-in-use{color:var(--accent)}.studio-scan-icon-btn.is-locked{color:var(--text)}.studio-scan-icon-btn.is-reviewed{color:var(--success)}.studio-scan-icon-btn.is-flagged{color:#c47d12}.studio-scan-icon-btn.is-commented{color:var(--accent)}.studio-scan-icon-badge{position:absolute;top:-.15rem;right:-.2rem;min-width:.9rem;height:.9rem;padding:0 .18rem;border-radius:999px;background:var(--accent);color:#1a1d1c;font-size:.62rem;font-weight:700;line-height:.9rem}.studio-scan-row-actions{white-space:nowrap}.studio-scan-row-actions .btn{margin-right:.25rem}.studio-scan-pos{white-space:nowrap;font-variant-numeric:tabular-nums}.studio-layout{display:grid;grid-template-columns:1fr;gap:.75rem;align-items:stretch;flex:1;min-height:0;overflow:hidden;--studio-status-h: 1.7rem}.studio-layout-strip-open{grid-template-columns:minmax(180px,240px) 1fr;overflow:visible}.studio-layout-strip-open.studio-layout-strip-current{grid-template-columns:minmax(112px,138px) 1fr}.studio-layout-strip-open.studio-layout-strip-current.studio-layout-strip-samples{grid-template-columns:minmax(138px,168px) 1fr}@media(max-width:860px){.studio-layout,.studio-layout-strip-open,.studio-layout-strip-open.studio-layout-strip-current,.studio-layout-strip-open.studio-layout-strip-current.studio-layout-strip-samples{grid-template-columns:1fr;min-height:0;overflow:hidden}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.comment-choices{display:flex;flex-direction:column;gap:.35rem;margin:.75rem 0 .35rem}.comment-choice{display:flex;align-items:center;gap:.45rem;cursor:pointer}.comment-choice:has(input:disabled){cursor:not-allowed;opacity:.55}.studio-comment-blocked{margin:.55rem 0 0;color:var(--danger);font-size:.88rem}@media(max-width:860px){.app-shell-studio{height:100%;max-height:100%;height:100dvh;max-height:100dvh;height:100svh;max-height:100svh;overflow:hidden}.app-shell-studio>.topbar{margin-bottom:.4rem;gap:.4rem;padding-block:.4rem}.app-shell-studio .brand{font-size:1rem}.app-shell-studio .topbar-brand .brand{padding-left:.5rem}.app-shell-studio .topbar>.row{flex-wrap:nowrap;min-width:0;gap:.35rem}.studio-identity-full{display:none}.studio-identity-short{display:inline}.app-shell-studio .topbar .usage-pill{max-width:8rem;min-width:0;flex-shrink:1;overflow:hidden;text-overflow:ellipsis}.studio-overflow{display:block;position:relative;flex-shrink:0}.topbar .studio-overflow-trigger,.studio-overflow-tools .studio-overflow-trigger{display:inline-flex}.studio-overflow-panel{display:none;position:absolute;right:0;top:calc(100% + 4px);z-index:50;min-width:14rem;max-width:min(20rem,92vw);max-height:min(70svh,28rem);overflow:auto;flex-direction:column;gap:.2rem;padding:.35rem;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 12px 32px #00000059}.studio-overflow-panel.is-open{display:flex}.studio-overflow-panel>.btn,.studio-overflow-panel .btn{width:100%;height:auto;min-height:2.15rem;max-height:none;justify-content:flex-start;white-space:normal;text-align:left}.studio-overflow-panel .studio-split{display:flex;flex-direction:column;width:100%}.studio-overflow-panel .studio-split>.btn+.btn{border-left:0;border-top:1px solid var(--border)}.studio-overflow-panel .studio-strip-prefs,.studio-overflow-panel .settings-menu{position:static;box-shadow:none;min-width:0;margin-top:.25rem}.studio-scan-bar{padding:.35rem .5rem;margin-bottom:.35rem;gap:.3rem}.studio-scan-bar-primary{flex-wrap:wrap}.studio-project-name{flex:1 1 100%;max-width:100%;min-width:0}.studio-scan-bar-trailing{margin-left:0;width:100%;justify-content:flex-end}.studio-scan-status{display:none}.studio-scan-picker{flex:1 1 auto;min-width:0}.studio-scan-picker-btn{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-overflow-tools{margin-left:0}.studio-strip-side{max-height:min(36svh,16rem);overflow:hidden}}.studio-strip-side{display:flex;flex-direction:column;min-height:0;overflow:visible;position:relative;z-index:6;padding:.5rem .4rem .65rem}.studio-layout-strip-current .studio-table th,.studio-layout-strip-current .studio-table td{padding:.28rem .2rem}.studio-strip-scroll{overflow:auto;flex:1;min-height:0}.studio-main{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;overflow:hidden}.studio-heatmap-card{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:.5rem .75rem .65rem}.studio-canvas-wrap{flex:1 1 auto;flex-shrink:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.studio-canvas-body{flex:1 1 auto;min-height:0;display:flex;flex-direction:row;align-items:stretch;gap:.3rem;overflow:hidden}.studio-canvas-plot{position:relative;flex:1 1 auto;min-width:0;min-height:0;overflow:hidden;contain:layout}.studio-canvas-stage{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;overflow:hidden;background:transparent}.studio-canvas-stage.is-zoomed{overflow:auto}.studio-canvas-sizer{position:absolute;top:0;left:0;pointer-events:none}.studio-canvas{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;display:block;width:100%;height:100%;max-width:100%;max-height:100%;pointer-events:none;image-rendering:pixelated;border:1px solid var(--border);border-radius:6px;background:#141210;box-sizing:border-box}.studio-canvas-edit{cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none}.studio-canvas-edit.is-panning{cursor:grabbing}.studio-tml-ruler-clip{position:relative;width:1.85rem;flex:0 0 1.85rem;min-height:0;overflow:hidden;border:1px solid var(--border);border-radius:6px;background:var(--surface-alt)}.studio-tml-ruler{position:absolute;top:0;left:0;list-style:none;margin:0;padding:0;width:100%;height:100%;display:flex;flex-direction:column;pointer-events:none;will-change:transform}.studio-tml-band{display:flex;align-items:center;justify-content:center;font-size:.62rem;font-weight:700;line-height:1;color:var(--text-muted);border-bottom:1px solid var(--border);min-height:0;overflow:hidden}.studio-tml-band:last-child{border-bottom:none}.studio-tml-band.is-half{font-size:.58rem}.studio-split{position:relative;display:inline-flex;border:1px solid var(--border);border-radius:6px;overflow:visible}.studio-split>.btn{border:0;border-radius:0;box-shadow:none}.studio-split>.btn+.btn{border-left:1px solid var(--border)}.studio-split>.btn[aria-pressed=true]{background:var(--accent-soft, #3a332c)}.studio-strip-prefs{left:0;right:auto;top:calc(100% + 4px);min-width:12rem;padding:.55rem .65rem;z-index:60}.studio-strip-prefs-label{margin:.45rem 0 .2rem;font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.studio-strip-prefs-label:first-child{margin-top:0}.studio-strip-side .btn.btn-icon{width:1.85rem;min-width:1.85rem;padding:0}.studio-strip-side .btn.btn-icon svg{display:block;width:1.15rem;height:1.15rem}.studio-table td.studio-thk-critical{background:#c00000;color:#fff;font-weight:700}.studio-table td.studio-thk-low{background:#ffc7ce;color:#000;font-weight:700}.studio-table td.studio-thk-monitor{background:#eadf00;color:#000}.studio-edit-cell{text-align:center;width:2.2rem}.studio-edit-dot{display:inline-block;width:.55rem;height:.55rem;border-radius:50%;background:#fff;vertical-align:middle}.studio-edit-dot.is-edited{background:#f0f}.studio-hover{flex:0 0 var(--studio-status-h);height:var(--studio-status-h);margin:0 0 .3rem;padding:0 .45rem;display:flex;align-items:center;font-size:.85rem;line-height:1;border:1px solid var(--border);border-radius:6px;box-sizing:border-box}.studio-table thead th{height:var(--studio-status-h);box-sizing:border-box}.studio-tml-chart{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.studio-tml-chart-head,.studio-tml-chart-row{display:grid;grid-template-columns:2.1rem minmax(0,1fr) 1.7rem;align-items:center;gap:.15rem;font-size:.8rem;padding:0 .2rem;box-sizing:border-box}.studio-tml-chart-head{flex:0 0 var(--studio-status-h);height:var(--studio-status-h);font-weight:700;border:1px solid var(--border);border-radius:6px;margin-bottom:.3rem}.studio-tml-chart-body{flex:1;min-height:0;overflow:hidden;border:1px solid var(--border);border-radius:6px}.studio-tml-chart-span{display:flex;flex-direction:column;width:100%;min-height:0;will-change:transform}.studio-tml-chart-row{min-height:0;border-bottom:1px solid var(--border);overflow:hidden}.studio-tml-chart-row:last-child{border-bottom:none}.studio-tml-chart-row.is-half{font-size:.72rem}.studio-strip-side.is-aligned{overflow:hidden}.studio-table td,.studio-table th{white-space:nowrap;font-size:.8rem;padding:.35rem .3rem}.stats-wrap{position:relative}.settings-gear-wrap{position:relative;display:inline-flex}.settings-menu{min-width:10rem;padding:.35rem}.settings-menu-account{min-width:min(24rem,calc(100vw - 1.5rem));max-height:min(70vh,34rem);overflow:auto;padding:.65rem .75rem}.settings-signed-in{margin:0 0 .35rem;font-size:.88rem;line-height:1.35}.settings-menu-divider{height:1px;margin:.45rem 0;background:var(--border)}.settings-menu-actions{display:flex;flex-direction:column;gap:.1rem}.company-expand-cell{display:flex;align-items:center;gap:.4rem}.company-detail{display:grid;grid-template-columns:minmax(8rem,.7fr) minmax(10rem,1fr) minmax(10rem,1.4fr) auto;gap:.75rem;align-items:end;padding:.35rem .15rem .75rem}.company-detail-label{display:block;margin-bottom:.2rem;color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.company-detail-stats{display:flex;flex-wrap:wrap;gap:.85rem 1.25rem;margin:0;padding:.15rem .15rem .45rem}.company-detail-stats div{min-width:4.5rem}.company-detail-stats dt{margin:0;color:var(--text-muted);font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.company-detail-stats dd{margin:.1rem 0 0;font-variant-numeric:tabular-nums}.billing-projects{display:flex;flex-direction:column;margin-top:.35rem}.billing-week{border-top:1px solid var(--border)}.billing-week-btn{padding-left:1.75rem}.billing-project-table{margin:0 0 .35rem 1.75rem}.profile-card-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.profile-card-head h2{margin:0;font-size:1.15rem}.profile-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:0 0 auto;width:1.85rem;height:1.85rem;padding:0;border:1px solid #6a5c50;border-radius:6px;background:var(--surface-alt);color:var(--text);font-size:1.25rem;line-height:1;cursor:pointer}.profile-close:hover{background:#3a332c}.profile-section-title{margin:.15rem 0 .3rem;font-size:1rem}.profile-note{margin:0 0 .75rem;color:#d5ccc4;font-size:.9rem}.profile-form input[type=password]{background:#3a332c;border-color:#7a6b5e;color:var(--text)}.profile-form input[type=password]:-webkit-autofill,.profile-form input[type=password]:-webkit-autofill:hover,.profile-form input[type=password]:-webkit-autofill:focus{-webkit-text-fill-color:var(--text);caret-color:var(--text);box-shadow:0 0 0 1000px #3a332c inset;transition:background-color 9999s ease-out}.profile-password-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.profile-password-head .profile-section-title{margin:0}.profile-password-toggle,.topbar-utils .profile-password-toggle{align-self:flex-start;height:auto;max-height:none;min-height:2rem;border:1px solid #6a5c50;border-radius:6px;background:var(--surface-alt);color:var(--text)}.topbar-utils .profile-password-toggle:hover:not(:disabled){background:#3a332c;color:var(--text)}.profile-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.15rem}.profile-actions .btn,.topbar-utils .profile-actions .btn,.topbar-utils .profile-actions .btn+.btn{height:auto;max-height:none;min-height:2rem;border:none;border-radius:6px;background:#e08a2e;color:#1a120a}.profile-actions .btn.btn-ghost,.topbar-utils .profile-actions .btn.btn-ghost{background:var(--surface-alt);color:var(--text);border:1px solid #6a5c50}.topbar-utils .profile-actions .btn:hover:not(:disabled),.profile-actions .btn:hover:not(:disabled){background:#f0a24a;color:#1a120a}.topbar-utils .profile-actions .btn.btn-ghost:hover:not(:disabled),.profile-actions .btn.btn-ghost:hover:not(:disabled){background:#3a332c;color:var(--text)}.password-secure-actions .btn,.topbar-utils .password-secure-actions .btn,.topbar-utils .password-secure-actions .btn+.btn{height:auto;max-height:none;min-height:2rem;border:none;border-radius:6px;background:#e08a2e;color:#1a120a}.password-secure-actions .btn.btn-ghost,.topbar-utils .password-secure-actions .btn.btn-ghost{background:var(--surface-alt);color:var(--text);border:1px solid #6a5c50}.password-field{display:flex;align-items:center;gap:.4rem}.password-field input{flex:1;min-width:0}.password-reveal{flex:0 0 auto;background:var(--surface-alt);color:var(--text);border:1px solid #6a5c50;border-radius:6px;min-height:2rem;padding:0 .65rem;cursor:pointer}.profile-fields{display:grid;grid-template-columns:max-content 1fr;column-gap:.85rem;row-gap:.18rem;align-items:baseline;margin:0 0 .9rem;font-size:.92rem}.profile-fields dt,.profile-fields dd{margin:0}.profile-fields dt{color:var(--text-muted)}.identity-role{margin:0;font-size:.85rem;font-weight:600}.identity-roles{display:flex;flex-direction:column;gap:.15rem;min-width:9.5rem}.identity-role-option{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;border-radius:5px;color:var(--text);cursor:pointer;font:inherit;font-size:.82rem;font-weight:600;padding:.28rem .45rem;text-align:left}.identity-role-option:hover{background:var(--surface-alt)}.identity-role-option.is-selected{background:var(--accent-soft, #3a332c);color:var(--text)}.identity-role-option:disabled{cursor:not-allowed;opacity:.55}.identity-actas-locked{margin:0 0 .45rem;font-size:.78rem}.stats-popover{position:absolute;right:0;top:calc(100% + .4rem);z-index:40;min-width:240px;box-shadow:0 8px 24px #00000059}.studio-split .studio-strip-prefs{left:0;right:auto}.identity-popover{left:0;right:auto;min-width:22rem;padding:.55rem .75rem}.identity-actas{display:flex;gap:1rem}.identity-actas-col{display:flex;flex-direction:column;gap:.15rem;min-width:9.5rem}.identity-actas-col-companies{max-height:16rem;overflow-y:auto}.identity-actas-label{margin:0 0 .2rem;color:var(--muted);font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.modal-backdrop.comment-backdrop{backdrop-filter:none;-webkit-backdrop-filter:none;background:#00000047}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:50;display:flex;align-items:center;justify-content:center;padding:1rem;pointer-events:auto;overscroll-behavior:contain}.confirm-backdrop{z-index:80}.confirm-dialog{width:min(34rem,100%);max-height:min(90vh,44rem);display:flex;flex-direction:column}.confirm-dialog-warning{border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}.confirm-dialog h2{margin:0 0 .45rem;font-size:1.08rem}.confirm-dialog-body{min-height:0;overflow:auto;overscroll-behavior:contain}.confirm-dialog p{margin:0;font-size:.9rem;line-height:1.45;color:var(--text-muted);white-space:pre-wrap}.confirm-dialog-dup-scans{width:min(36rem,100%);gap:.7rem}.dup-scan-lead{color:var(--text);white-space:pre-wrap}.dup-scan-index{font-size:.82rem}.dup-scan-toolbar{display:flex;align-items:baseline;justify-content:space-between;gap:.65rem;flex-wrap:wrap}.dup-scan-count{margin:0;font-size:.82rem}.dup-scan-expand{padding:.2rem .5rem;font-size:.78rem}.dup-scan-list{min-height:0;max-height:min(52vh,26rem);overflow:auto;overscroll-behavior:contain;border:1px solid var(--border);border-radius:8px;background:var(--surface-alt)}.dup-scan-group+.dup-scan-group{border-top:1px solid var(--border)}.dup-scan-toggle{width:100%;display:flex;align-items:center;gap:.55rem;margin:0;padding:.55rem .7rem;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.dup-scan-toggle:hover,.dup-scan-toggle:focus-visible{background:color-mix(in srgb,var(--accent) 10%,transparent)}.dup-scan-plus{flex:0 0 1.15rem;width:1.15rem;height:1.15rem;display:grid;place-items:center;border:1px solid var(--border);border-radius:4px;font-size:.95rem;line-height:1;color:var(--text)}.dup-scan-toggle-text{min-width:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .65rem}.dup-scan-num{font-weight:650}.dup-scan-meta{color:var(--text-muted);font-size:.82rem}.dup-scan-names{margin:0;padding:0 .75rem .65rem 2.4rem;display:grid;gap:.12rem}.dup-scan-names li{font-size:.85rem;line-height:1.4;overflow-wrap:anywhere}.dup-scan-retry{display:flex;flex-direction:column;gap:.45rem}.dup-scan-retry-lead{margin:0;color:var(--text);white-space:normal}.dup-scan-retry-row{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.dup-scan-retry-file{min-width:0;font-size:.82rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.confirm-dialog-actions{justify-content:flex-end;gap:.45rem;margin-top:1rem;flex-wrap:wrap}.confirm-dialog-choices{display:flex;flex-direction:column;gap:.45rem;margin-top:1rem}.confirm-dialog-choices .btn{width:100%;justify-content:center}.modal{width:min(960px,100%);max-height:min(80vh,720px);overflow:auto}.modal-card{width:min(420px,100%);padding:1rem 1.15rem}.confirm-dialog-duplicate{width:min(32rem,100%);display:flex;flex-direction:column;gap:.85rem;padding:1.15rem 1.25rem 1.2rem}.confirm-dialog-duplicate h2{margin:0}.confirm-dialog-duplicate .dup-dialog-lead{margin:0;color:var(--text);font-size:.92rem;line-height:1.45;white-space:normal}.dup-meta{min-width:0;padding:.8rem .9rem;border:1px solid var(--border);border-left:3px solid color-mix(in srgb,var(--accent) 50%,var(--border));border-radius:8px;background:var(--surface-alt)}.dup-meta-rows{margin:0;display:grid;gap:.55rem}.dup-meta-row{display:grid;grid-template-columns:8.75rem minmax(0,1fr);column-gap:.75rem;row-gap:.15rem;align-items:start}.dup-meta-row dt{margin:0;padding-top:.08rem;color:var(--text-muted);font-size:.78rem;font-weight:650;line-height:1.4}.dup-meta-row dt:after{content:":"}.dup-meta-row dd{margin:0;min-width:0;color:var(--text);font-size:.88rem;line-height:1.4;overflow-wrap:anywhere;word-break:break-word}.dup-meta-row dd.dup-meta-file{font-family:ui-monospace,Cascadia Mono,Consolas,Courier New,monospace;font-size:.8rem;line-height:1.45;overflow-wrap:anywhere;word-break:break-all;white-space:normal}.confirm-dialog-duplicate .dup-dialog-hint{margin:0;color:var(--text-muted);font-size:.82rem;line-height:1.4;white-space:normal}.dup-dialog-choices{display:flex;flex-direction:column;gap:.45rem}.dup-dialog-choices .btn{width:100%}.dup-dialog-choices .dup-dialog-cancel{margin-top:.15rem;background:transparent;border-color:transparent;color:var(--text-muted)}.dup-dialog-choices .dup-dialog-cancel:hover:not(:disabled){background:transparent;color:var(--text);text-decoration:underline;text-underline-offset:.16em}@media(max-width:420px){.dup-meta-row{grid-template-columns:1fr;gap:.1rem}}.nps-confirm-dialog{width:min(36rem,100%);padding:1.25rem 1.35rem 1.4rem;display:flex;flex-direction:column;gap:.95rem}.nps-confirm-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.nps-confirm-header h2{margin:0;font-size:1.12rem;letter-spacing:.01em;line-height:1.3}.nps-confirm-latch-btn{flex-shrink:0;padding:.4rem .75rem;font-size:.78rem;font-weight:600;letter-spacing:.02em}.nps-confirm-note{margin:0;padding:.7rem .8rem;border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:6px;background:var(--surface-alt);color:#f5f0eb;font-size:.88rem;line-height:1.5}.nps-confirm-copy{margin:0;color:var(--text);font-size:.95rem;line-height:1.55}.nps-confirm-scan{font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-weight:700;letter-spacing:.01em}.nps-confirm-error{margin:0;color:#f3c4c1;font-size:.88rem;line-height:1.45}.nps-confirm-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.nps-confirm-choice{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;width:100%;min-width:0;padding:.8rem .45rem}.nps-confirm-choice:focus-visible{outline:2px solid var(--text);outline-offset:2px}.nps-confirm-choice.is-recommended{box-shadow:0 0 0 2px #e3b34a}.nps-confirm-choice-size{font-weight:700;letter-spacing:.02em}.nps-confirm-choice-meta{font-size:.75rem;font-weight:650;opacity:.88}.nps-confirm-choice-flag{margin-top:.2rem;font-size:.72rem;font-weight:750;letter-spacing:.03em;color:#1a140c}@media(max-width:520px){.nps-confirm-header{flex-direction:column;align-items:stretch}.nps-confirm-latch-btn{width:100%}.nps-confirm-choices{grid-template-columns:1fr}}.duplicate-notice{margin-top:.75rem;padding:.7rem .8rem;border:1px solid var(--border);border-radius:8px;background:var(--surface-alt)}.duplicate-notice p{margin:0 0 .5rem;font-size:.88rem}.index-prompt{margin-top:.75rem;padding:.75rem;border:1px dashed var(--border);border-radius:8px;background:var(--surface-alt)}.qc-chart{width:100%}.qc-chart-legend{display:flex;align-items:center;gap:1rem;font-size:.8rem;margin-bottom:.45rem}.qc-legend-item{display:inline-flex;align-items:center;gap:.3rem;color:#e4ddd6;font-weight:600}.qc-swatch.snr{color:#e8c84a}.qc-swatch.dropout{color:#f07070}.qc-chart-plot{padding:.85rem .9rem;border:1px solid var(--border);border-radius:6px;background:var(--log-bg)}.qc-chart-canvas{display:block;width:100%;border:0;border-radius:0;background:transparent}.badge{display:inline-block;padding:.15rem .5rem;border-radius:4px;font-size:.72rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}.badge-delivered{background:var(--accent-soft);color:var(--accent)}.badge-frozen{background:#b8545033;color:var(--danger)}.badge-deletion{background:#b8545029;color:var(--danger)}.studio-banner{flex-shrink:0;padding:.4rem .85rem;border-radius:6px;font-size:.85rem;margin-bottom:.45rem}.studio-banner-lock{background:#b854501f;border:1px solid rgba(184,84,80,.35);color:var(--danger)}.progress-backdrop{z-index:70;cursor:wait;-webkit-user-select:none;user-select:none}.progress-dialog{width:min(420px,100%)}.progress-dialog h2{margin:0 0 .45rem;font-size:1.08rem}.progress-dialog p{margin:0;font-size:.9rem;line-height:1.4;color:var(--text-muted)}.progress-dialog-bar{margin:1rem 0 .65rem;height:10px;position:relative}.progress-dialog-fill{display:block;height:100%;background:linear-gradient(90deg,var(--accent-soft),var(--accent));transition:width .35s ease;position:relative;overflow:hidden}.progress-dialog-fill:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:progress-sheen 1.25s ease-in-out infinite}.progress-indeterminate .progress-dialog-fill{width:38%;animation:progress-slide 1.35s ease-in-out infinite}.progress-indeterminate .progress-dialog-fill:after{animation:none}.progress-dialog-hint{font-size:.78rem!important}@keyframes progress-sheen{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes progress-slide{0%{transform:translate(-30%)}to{transform:translate(230%)}}.tml-history{display:grid;gap:.65rem}.tml-history-filters{display:flex;flex-wrap:wrap;gap:.55rem .75rem;align-items:end}.tml-history-filters label{display:grid;gap:.2rem;font-size:.78rem;color:var(--text-muted)}.tml-history-segment{min-width:min(280px,100%);flex:1 1 240px}.tml-msl-bar{display:flex;flex-wrap:wrap;gap:.45rem .75rem;align-items:center;justify-content:space-between}.tml-msl-age{margin:0;flex:1 1 16rem}.tml-package-wrap{max-height:220px;overflow:auto}.tml-package-selected td{background:var(--accent-soft)}.tml-package-wrap tr{cursor:pointer}.app-shell.app-shell-studio.tml-log-stage{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;max-width:none;width:100%;margin:0;background:var(--bg)}.tml-log-identity{margin:.15rem 0 0;font-size:.82rem}.tml-log-stage>.tml-log-sheet{flex:1 1 auto;min-height:0;min-width:0;display:flex;flex-direction:column}.tml-log-sheet{border:1px solid #1f1f1f;background:#fff;color:#111}.tml-log-header{flex-shrink:0;display:grid;grid-template-columns:1fr auto;gap:.15rem .75rem;padding:.35rem .5rem;font-size:.78rem;font-weight:650;border-bottom:1px solid #333;color:#111}.tml-log-header div:nth-child(2){text-align:right}.tml-log-header div:nth-child(3){grid-column:1 / -1}.tml-log-scroll{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;background:#fff}.tml-log-table{table-layout:fixed;width:100%;min-width:0;border-collapse:collapse;font-size:clamp(.52rem,.72vw,.72rem);font-variant-numeric:tabular-nums;color:#111}.tml-log-table th,.tml-log-table td{border:1px solid #111;padding:.08rem .1rem;white-space:nowrap;text-align:center;overflow:hidden;text-overflow:ellipsis}.tml-log-table th{position:sticky;top:0;background:#f3f3f3;z-index:1;font-weight:650}.tml-col-seq{width:2.4rem}.tml-col-file{width:11%;text-align:left}.tml-col-tech{width:4.2rem}.tml-col-date{width:4.6rem}.tml-col-tdc,.tml-col-sten{width:2.6rem}.tml-col-notes{width:8%}.tml-log-table td.tml-col-file,.tml-log-table th.tml-col-file,.tml-log-table td.tml-col-notes,.tml-log-table th.tml-col-notes{text-align:left}.studio-hub{margin-top:.5rem}.studio-hub-kicker{margin:0 0 .75rem;font-size:.72rem;font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.studio-hub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:.75rem}.studio-hub-card{display:flex;flex-direction:column;align-items:stretch;gap:.45rem;text-align:left;padding:1rem 1.05rem;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);cursor:pointer;text-decoration:none}.studio-hub-card:hover:not(:disabled){border-color:var(--accent);background:var(--surface-alt)}.studio-hub-card-head{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}.studio-hub-card-title{margin:0;font-size:1.05rem}.studio-hub-card-launch{color:var(--accent)}.studio-hub-card-desc{margin:0;color:var(--text-muted);font-size:.88rem}.studio-hub-card-tags{display:flex;flex-wrap:wrap;gap:.35rem}.studio-hub-tag{font-size:.72rem;letter-spacing:.02em;color:#edc089;border:1px solid color-mix(in srgb,var(--accent) 40%,var(--border));background:color-mix(in srgb,var(--accent) 14%,transparent);border-radius:999px;padding:.1rem .45rem}body:has(.scheduler-shell){background:#3a3d42}html:has(.scheduler-shell){scrollbar-gutter:stable}html:has(.scheduler-shell:not(:has(.scheduler-grid-wrap))),body:has(.scheduler-shell:not(:has(.scheduler-grid-wrap))),#root:has(.scheduler-shell:not(:has(.scheduler-grid-wrap))){height:auto;min-height:100%}.app-shell.app-shell-studio.integrity-shell.scheduler-shell{max-width:none;width:100%;margin-left:0;margin-right:0;padding-left:0;padding-right:0}.app-shell.app-shell-studio.integrity-shell.scheduler-shell:not(:has(.scheduler-grid-wrap)){height:auto;max-height:none;overflow:visible}.scheduler-frame{width:min(1400px,100%);margin-left:auto;margin-right:auto;padding-left:max(1.25rem,env(safe-area-inset-left,0px));padding-right:max(1.25rem,env(safe-area-inset-right,0px));box-sizing:border-box}.scheduler-shell>.topbar{margin-bottom:0;padding-bottom:.45rem}.scheduler-tabbar{background:#32363b;border-bottom:1px solid #5a5f66;flex-shrink:0}.scheduler-tabbar .integrity-sheet-tabs{background:transparent;border-bottom:0;margin:0}.scheduler-shell:has(.scheduler-grid-wrap) .scheduler-workspace{overflow:hidden}.scheduler-shell:has(.scheduler-grid-wrap) .scheduler-detail{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.scheduler-shell:has(.scheduler-grid-wrap) .scheduler-grid-wrap{flex:1 1 auto;min-height:0;max-height:none;margin:0 .55rem .55rem}#root:has(.beta-banner) .scheduler-shell.app-shell-studio:has(.scheduler-grid-wrap){height:calc(100svh - 2.2rem);max-height:calc(100svh - 2.2rem);height:calc(100dvh - 2.2rem);max-height:calc(100dvh - 2.2rem)}#root:has(.beta-banner) .scheduler-shell.app-shell-studio:not(:has(.scheduler-grid-wrap)){height:auto;max-height:none}.scheduler-workspace{display:flex;flex-direction:column;gap:0;min-height:0;flex:1;overflow:auto;overscroll-behavior:contain}.scheduler-shell:not(:has(.scheduler-grid-wrap)) .scheduler-workspace{overflow:visible;flex:none}.scheduler-kicker{margin:0;font-size:.72rem;font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.scheduler-overview h2,.scheduler-detail h2,.scheduler-resource-section h3{margin:.15rem 0 .25rem}.scheduler-overview{width:min(1400px,100%);padding-top:.75rem;padding-bottom:1.25rem}.scheduler-overview-head,.scheduler-detail-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.85rem 1.5rem}.scheduler-overview-head .muted{max-width:34rem}.scheduler-detail-chrome{display:flex;flex-direction:column;gap:.55rem;flex:0 0 auto;min-width:0;padding-top:.75rem;padding-bottom:.55rem}.scheduler-detail-tabs{display:flex;flex-direction:column;gap:.35rem}.scheduler-detail-bar{display:flex;flex-wrap:nowrap;align-items:stretch;gap:.45rem;overflow-x:auto;margin:0;min-width:0;max-width:100%;min-height:2.4rem;height:2.4rem}.scheduler-detail-tile{display:flex;flex-direction:row;align-items:baseline;justify-content:flex-start;gap:.45rem;flex:0 0 auto;min-height:2.4rem;background:var(--log-bg);border:1px solid var(--border);border-radius:10px;padding:.4rem .7rem}.scheduler-details-anchor{position:relative;display:flex;flex:1 1 auto;min-width:0}button.scheduler-detail-tile{font:inherit;color:inherit;text-align:left;cursor:pointer}.scheduler-detail-identity{flex:1 1 auto;min-width:0;width:100%;overflow:hidden}.scheduler-detail-identity.is-open{border-color:var(--accent)}.scheduler-detail-summary{display:block;overflow:hidden;text-overflow:ellipsis;min-width:0}.scheduler-detail-dates{flex:0 0 auto}.scheduler-details-pop{position:fixed;z-index:80;width:min(20rem,calc(100vw - 1rem));display:flex;flex-direction:column;gap:.55rem;padding:.7rem .8rem;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px #00000059}.scheduler-details-pop label{display:flex;flex-direction:column;gap:.2rem;font-size:.75rem;color:var(--text-muted)}.scheduler-details-pop input,.scheduler-details-pop select{background:var(--log-bg);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:.35rem .5rem;width:100%;box-sizing:border-box}.scheduler-details-pop input:focus,.scheduler-details-pop select:focus{outline:none;border-color:var(--accent)}.scheduler-details-dates{display:grid;grid-template-columns:1fr 1fr;gap:.45rem}.scheduler-details-locked{display:flex;flex-direction:column;gap:.15rem}.scheduler-details-locked span{font-size:.75rem;color:var(--text-muted)}.scheduler-details-locked strong{font-size:.95rem}.scheduler-date-field{position:relative;display:flex;align-items:center;gap:.25rem}.scheduler-date-field input{flex:1 1 auto;min-width:0}.scheduler-date-btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;padding:0;border:1px solid var(--border);border-radius:6px;background:var(--log-bg);color:var(--text);cursor:pointer}.scheduler-date-btn svg{width:.9rem;height:.9rem}.scheduler-date-pop{position:absolute;z-index:90;top:calc(100% + .25rem);left:0;width:15.5rem;padding:.45rem;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px #00000059}.scheduler-date-nav{display:flex;align-items:center;justify-content:space-between;gap:.35rem;margin-bottom:.35rem}.scheduler-date-nav button{border:0;background:transparent;color:var(--text);font:inherit;cursor:pointer;padding:.1rem .35rem}.scheduler-date-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.1rem}.scheduler-date-grid button,.scheduler-date-dow{border:0;background:transparent;color:var(--text);font:inherit;font-size:.75rem;text-align:center;padding:.25rem 0}.scheduler-date-dow{color:var(--text-muted)}.scheduler-date-grid button{cursor:pointer;border-radius:6px}.scheduler-date-grid button.is-selected{background:var(--accent);color:#fff}.scheduler-contract-dialog label{display:flex;flex-direction:column;gap:.2rem;margin-bottom:.55rem}.scheduler-details-pop .btn{align-self:flex-start}.scheduler-inline-error{margin:0;color:#e07070;font-size:.8rem}.scheduler-detail-tile span{font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap}.scheduler-detail-tile strong{font-size:.95rem;line-height:1.2;white-space:nowrap}.scheduler-view-tabs,.scheduler-subtabs{margin:0}.scheduler-totals{display:grid;grid-template-columns:repeat(4,max-content);gap:.45rem}.scheduler-totals div{display:flex;flex-direction:row;align-items:baseline;gap:.4rem;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:.45rem .65rem}.scheduler-totals span{font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap}.scheduler-totals strong{font-size:1.05rem}.scheduler-profit{color:#8fcea0}.scheduler-create-project,.scheduler-resource-form-grid,.scheduler-paint-bar{display:flex;flex-wrap:wrap;gap:.55rem .7rem;align-items:end}.scheduler-create-project{align-items:flex-end;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:.65rem .8rem;margin:.85rem 0 .35rem}.scheduler-create-project label{margin:0}.scheduler-create-project input,.scheduler-create-project>.btn{height:2.15rem;box-sizing:border-box}.scheduler-create-project label,.scheduler-resource-form label,.scheduler-paint-bar label{display:flex;flex-direction:column;gap:.2rem;font-size:.75rem;color:var(--text-muted)}.scheduler-create-project input,.scheduler-resource-form input,.scheduler-resource-form select,.scheduler-paint-bar input,.scheduler-paint-bar select{background:var(--log-bg);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:.35rem .5rem;min-width:8.5rem}.scheduler-create-project input:focus,.scheduler-resource-form input:focus,.scheduler-resource-form select:focus,.scheduler-paint-bar select:focus{outline:none;border-color:var(--accent)}.scheduler-project-list{display:flex;flex-direction:column;align-items:stretch;gap:.5rem}.scheduler-project-card{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.75rem;width:100%;max-width:100%;text-align:left;padding:.85rem 1rem;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);cursor:pointer}.scheduler-project-card:hover{border-color:var(--accent);background:color-mix(in srgb,var(--surface) 78%,#fff);box-shadow:0 0 0 1px var(--accent),0 0 16px color-mix(in srgb,var(--accent) 38%,transparent)}.scheduler-project-card-main{display:flex;flex-direction:column;gap:.12rem;min-width:16rem}.scheduler-project-lead{font-size:.78rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:#d7dde3}.scheduler-project-card-main strong{font-size:1.05rem;font-weight:750;color:#f7f4ef}.scheduler-project-facts{font-size:.92rem;font-weight:700}.scheduler-project-card-metrics{display:grid;grid-template-columns:repeat(4,max-content);gap:.45rem}.scheduler-project-card-metrics div{display:flex;flex-direction:row;align-items:baseline;gap:.4rem}.scheduler-project-card-metrics span,.scheduler-totals span{font-size:.68rem;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:#d7dde3}.scheduler-project-card-metrics strong,.scheduler-totals strong{font-size:1.05rem;font-weight:750;color:#f7f4ef}.scheduler-project-card-metrics strong.scheduler-profit,.scheduler-totals strong.scheduler-profit{color:#8fcea0}.scheduler-resource-form,.scheduler-resource-section{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:.85rem 1rem}.scheduler-detail{background:transparent;border:0;border-radius:0;padding:0;min-width:0}.scheduler-resources,.scheduler-legend,.scheduler-sheet{display:flex;flex-direction:column;gap:.35rem;width:min(1400px,100%);max-width:1400px;min-width:0;margin-left:auto;margin-right:auto;padding-top:.75rem;padding-bottom:1.25rem;padding-left:max(1.25rem,env(safe-area-inset-left,0px));padding-right:max(1.25rem,env(safe-area-inset-right,0px));box-sizing:border-box}.scheduler-sheet{padding-top:0}.scheduler-masthead{display:flex;align-items:center;justify-content:space-between;gap:.75rem 1rem;min-height:3.6rem;margin:0;padding:0}.scheduler-masthead h2{margin:0;font-size:1.15rem;line-height:1.2}.scheduler-masthead .muted{margin:.12rem 0 0;font-size:.82rem;line-height:1.3;max-width:42rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scheduler-masthead .scheduler-resources-actions,.scheduler-masthead>.btn{flex:0 0 auto}.scheduler-resources-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.4rem;margin:0;padding:0}.scheduler-legend .scheduler-resource-section,.scheduler-resources .scheduler-resource-section{min-width:0;max-width:100%;padding:.25rem .45rem .15rem}.scheduler-sheet .scheduler-card{min-width:0;max-width:100%}.scheduler-resources .table-wrap,.scheduler-legend .table-wrap,.scheduler-sheet .scheduler-card{overflow-x:auto}.scheduler-legend .scheduler-resource-section h3,.scheduler-resources .scheduler-resource-section h3{margin:0 0 .1rem}.scheduler-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:.86rem}.scheduler-col-name,.scheduler-col-role{width:16%}.scheduler-col-num{width:9%}.scheduler-col-actions{width:14%}.scheduler-col-code{width:18%}.scheduler-legend-table .scheduler-col-name{width:34%}.scheduler-legend-table .scheduler-col-role{width:28%}.scheduler-legend-table .scheduler-col-actions{width:26%}.scheduler-table th:nth-child(n+3):nth-child(-n+8),.scheduler-table td:nth-child(n+3):nth-child(-n+8){text-align:right;font-variant-numeric:tabular-nums}.scheduler-legend-table th,.scheduler-legend-table td{text-align:left}.scheduler-legend-table td.scheduler-row-actions{text-align:right}.scheduler-table th{white-space:nowrap}.scheduler-table th,.scheduler-table td{padding:.35rem .45rem;border-bottom:1px solid var(--border);text-align:left}.scheduler-legend .scheduler-table th,.scheduler-legend .scheduler-table td{padding:.06rem .4rem;vertical-align:middle;line-height:1.15}.scheduler-resources .scheduler-table th,.scheduler-resources .scheduler-table td{padding:.08rem .22rem;vertical-align:middle}.scheduler-rate-group+.scheduler-rate-group{margin-top:.1rem}.scheduler-group-toggle{display:flex;align-items:center;gap:.35rem;margin:.1rem 0;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-size:.95rem;font-weight:650;cursor:pointer}.scheduler-rate-table{table-layout:auto;width:max-content;min-width:100%}.scheduler-table th{color:var(--text-muted);font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;font-weight:650}.scheduler-rate-table th{white-space:normal;text-transform:none;letter-spacing:0;line-height:1.15;font-size:.68rem;vertical-align:bottom;max-width:4.6rem}.scheduler-rate-table th:first-child,.scheduler-rate-table th:nth-child(2),.scheduler-rate-table th:last-child{max-width:none;white-space:nowrap}td.scheduler-row-actions{white-space:nowrap;text-align:right;vertical-align:middle}.scheduler-row-actions .btn+.btn{margin-left:.25rem}.scheduler-grid-wrap{overflow:auto;max-height:62vh;border:1px solid var(--border);border-radius:10px}.scheduler-name-col{width:11.5rem}.scheduler-day-col{width:2.9rem}.scheduler-grid{--sched-ink: #2a2418;--sched-m0: #c6a15a;--sched-m0-s0: #f6ead0;--sched-m0-s1: #ead7ae;--sched-m0-edge: #7a5a28;--sched-m1: #8aa67a;--sched-m1-s0: #e5f0de;--sched-m1-s1: #d0e3c4;--sched-m1-edge: #4f6848;--sched-m2: #8aa6b6;--sched-m2-s0: #e2edf3;--sched-m2-s1: #cddde7;--sched-m2-edge: #4d6878;--sched-m3: #b08a86;--sched-m3-s0: #f4e6e3;--sched-m3-s1: #e7d2cd;--sched-m3-edge: #7a524e;--sched-m4: #9aaa6e;--sched-m4-s0: #eaf1d8;--sched-m4-s1: #d7e4be;--sched-m4-edge: #5c6a38;--sched-m5: #c4926a;--sched-m5-s0: #f8e7d6;--sched-m5-s1: #efd4b8;--sched-m5-edge: #7a5234;--sched-m6: #7eada6;--sched-m6-s0: #dcf0eb;--sched-m6-s1: #c6e2db;--sched-m6-edge: #3f6a64;--sched-m7: #c2ad62;--sched-m7-s0: #f7f0d2;--sched-m7-s1: #ebe1b2;--sched-m7-edge: #6e5e28;--sched-m8: #9a8896;--sched-m8-s0: #eee6ec;--sched-m8-s1: #dfd3dc;--sched-m8-edge: #5c4c58;--sched-m9: #c08a58;--sched-m9-s0: #f8e5d2;--sched-m9-s1: #efd1b6;--sched-m9-edge: #7a4e28;--sched-m10: #8f8880;--sched-m10-s0: #eee9e4;--sched-m10-s1: #dfd8d1;--sched-m10-edge: #554e48;--sched-m11: #7d9e94;--sched-m11-s0: #e0eee8;--sched-m11-s1: #c9dfd6;--sched-m11-edge: #3f5e54;table-layout:fixed;width:max-content;border-collapse:separate;border-spacing:0;font-size:.72rem}.scheduler-grid th,.scheduler-grid td{border:1px solid var(--border);padding:0;text-align:center;background:var(--bg);box-sizing:border-box}.scheduler-grid th{background:var(--surface-alt);color:var(--text-muted);font-weight:650;padding:.15rem .1rem}.scheduler-month-row th{position:sticky;top:0;z-index:4;height:1.45rem}.scheduler-week-row th{position:sticky;top:1.45rem;z-index:4;height:1.35rem;font-weight:700}.scheduler-day-row th{position:sticky;top:2.8rem;z-index:4;height:1.5rem}.scheduler-grid th.scheduler-month-cell,.scheduler-grid th.scheduler-week-cell,.scheduler-grid th.scheduler-day-head{color:var(--sched-ink)}.scheduler-month-cell{letter-spacing:.03em;white-space:nowrap;text-align:center;font-weight:700}.scheduler-month-label{display:block;text-align:center;padding:0 .4rem}.scheduler-week-label{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;padding:0 .15rem;color:var(--sched-ink);font-size:.68rem}.scheduler-grid .scheduler-month-cell{text-align:center}.scheduler-grid .scheduler-week-cell{text-align:center;color:var(--sched-ink);border-right-color:transparent}.scheduler-day-head{font-size:.68rem;font-weight:700;white-space:nowrap;color:var(--sched-ink);border-color:#2a24181f}.scheduler-grid th.tone-m0{background:var(--sched-m0)}.scheduler-grid th.tone-m0.shade-0{background:var(--sched-m0-s0)}.scheduler-grid th.tone-m0.shade-1{background:var(--sched-m0-s1)}.scheduler-grid th.tone-m1{background:var(--sched-m1)}.scheduler-grid th.tone-m1.shade-0{background:var(--sched-m1-s0)}.scheduler-grid th.tone-m1.shade-1{background:var(--sched-m1-s1)}.scheduler-grid th.tone-m2{background:var(--sched-m2)}.scheduler-grid th.tone-m2.shade-0{background:var(--sched-m2-s0)}.scheduler-grid th.tone-m2.shade-1{background:var(--sched-m2-s1)}.scheduler-grid th.tone-m3{background:var(--sched-m3)}.scheduler-grid th.tone-m3.shade-0{background:var(--sched-m3-s0)}.scheduler-grid th.tone-m3.shade-1{background:var(--sched-m3-s1)}.scheduler-grid th.tone-m4{background:var(--sched-m4)}.scheduler-grid th.tone-m4.shade-0{background:var(--sched-m4-s0)}.scheduler-grid th.tone-m4.shade-1{background:var(--sched-m4-s1)}.scheduler-grid th.tone-m5{background:var(--sched-m5)}.scheduler-grid th.tone-m5.shade-0{background:var(--sched-m5-s0)}.scheduler-grid th.tone-m5.shade-1{background:var(--sched-m5-s1)}.scheduler-grid th.tone-m6{background:var(--sched-m6)}.scheduler-grid th.tone-m6.shade-0{background:var(--sched-m6-s0)}.scheduler-grid th.tone-m6.shade-1{background:var(--sched-m6-s1)}.scheduler-grid th.tone-m7{background:var(--sched-m7)}.scheduler-grid th.tone-m7.shade-0{background:var(--sched-m7-s0)}.scheduler-grid th.tone-m7.shade-1{background:var(--sched-m7-s1)}.scheduler-grid th.tone-m8{background:var(--sched-m8)}.scheduler-grid th.tone-m8.shade-0{background:var(--sched-m8-s0)}.scheduler-grid th.tone-m8.shade-1{background:var(--sched-m8-s1)}.scheduler-grid th.tone-m9{background:var(--sched-m9)}.scheduler-grid th.tone-m9.shade-0{background:var(--sched-m9-s0)}.scheduler-grid th.tone-m9.shade-1{background:var(--sched-m9-s1)}.scheduler-grid th.tone-m10{background:var(--sched-m10)}.scheduler-grid th.tone-m10.shade-0{background:var(--sched-m10-s0)}.scheduler-grid th.tone-m10.shade-1{background:var(--sched-m10-s1)}.scheduler-grid th.tone-m11{background:var(--sched-m11)}.scheduler-grid th.tone-m11.shade-0{background:var(--sched-m11-s0)}.scheduler-grid th.tone-m11.shade-1{background:var(--sched-m11-s1)}.scheduler-grid th.tone-m0.scheduler-month-cell{border-left-color:var(--sched-m0-edge);box-shadow:inset 3px 0 0 var(--sched-m0-edge)}.scheduler-grid th.tone-m0.scheduler-week-cell{border-left-color:var(--sched-m0-edge);box-shadow:inset 2px 0 0 var(--sched-m0-edge)}.scheduler-grid th.tone-m1.scheduler-month-cell{border-left-color:var(--sched-m1-edge);box-shadow:inset 3px 0 0 var(--sched-m1-edge)}.scheduler-grid th.tone-m1.scheduler-week-cell{border-left-color:var(--sched-m1-edge);box-shadow:inset 2px 0 0 var(--sched-m1-edge)}.scheduler-grid th.tone-m2.scheduler-month-cell{border-left-color:var(--sched-m2-edge);box-shadow:inset 3px 0 0 var(--sched-m2-edge)}.scheduler-grid th.tone-m2.scheduler-week-cell{border-left-color:var(--sched-m2-edge);box-shadow:inset 2px 0 0 var(--sched-m2-edge)}.scheduler-grid th.tone-m3.scheduler-month-cell{border-left-color:var(--sched-m3-edge);box-shadow:inset 3px 0 0 var(--sched-m3-edge)}.scheduler-grid th.tone-m3.scheduler-week-cell{border-left-color:var(--sched-m3-edge);box-shadow:inset 2px 0 0 var(--sched-m3-edge)}.scheduler-grid th.tone-m4.scheduler-month-cell{border-left-color:var(--sched-m4-edge);box-shadow:inset 3px 0 0 var(--sched-m4-edge)}.scheduler-grid th.tone-m4.scheduler-week-cell{border-left-color:var(--sched-m4-edge);box-shadow:inset 2px 0 0 var(--sched-m4-edge)}.scheduler-grid th.tone-m5.scheduler-month-cell{border-left-color:var(--sched-m5-edge);box-shadow:inset 3px 0 0 var(--sched-m5-edge)}.scheduler-grid th.tone-m5.scheduler-week-cell{border-left-color:var(--sched-m5-edge);box-shadow:inset 2px 0 0 var(--sched-m5-edge)}.scheduler-grid th.tone-m6.scheduler-month-cell{border-left-color:var(--sched-m6-edge);box-shadow:inset 3px 0 0 var(--sched-m6-edge)}.scheduler-grid th.tone-m6.scheduler-week-cell{border-left-color:var(--sched-m6-edge);box-shadow:inset 2px 0 0 var(--sched-m6-edge)}.scheduler-grid th.tone-m7.scheduler-month-cell{border-left-color:var(--sched-m7-edge);box-shadow:inset 3px 0 0 var(--sched-m7-edge)}.scheduler-grid th.tone-m7.scheduler-week-cell{border-left-color:var(--sched-m7-edge);box-shadow:inset 2px 0 0 var(--sched-m7-edge)}.scheduler-grid th.tone-m8.scheduler-month-cell{border-left-color:var(--sched-m8-edge);box-shadow:inset 3px 0 0 var(--sched-m8-edge)}.scheduler-grid th.tone-m8.scheduler-week-cell{border-left-color:var(--sched-m8-edge);box-shadow:inset 2px 0 0 var(--sched-m8-edge)}.scheduler-grid th.tone-m9.scheduler-month-cell{border-left-color:var(--sched-m9-edge);box-shadow:inset 3px 0 0 var(--sched-m9-edge)}.scheduler-grid th.tone-m9.scheduler-week-cell{border-left-color:var(--sched-m9-edge);box-shadow:inset 2px 0 0 var(--sched-m9-edge)}.scheduler-grid th.tone-m10.scheduler-month-cell{border-left-color:var(--sched-m10-edge);box-shadow:inset 3px 0 0 var(--sched-m10-edge)}.scheduler-grid th.tone-m10.scheduler-week-cell{border-left-color:var(--sched-m10-edge);box-shadow:inset 2px 0 0 var(--sched-m10-edge)}.scheduler-grid th.tone-m11.scheduler-month-cell{border-left-color:var(--sched-m11-edge);box-shadow:inset 3px 0 0 var(--sched-m11-edge)}.scheduler-grid th.tone-m11.scheduler-week-cell{border-left-color:var(--sched-m11-edge);box-shadow:inset 2px 0 0 var(--sched-m11-edge)}.scheduler-grid .edge-m0.is-month-start{box-shadow:inset 3px 0 0 var(--sched-m0-edge)}.scheduler-grid .edge-m0.is-week-start:not(.is-month-start){box-shadow:inset 2px 0 0 var(--sched-m0-edge)}.scheduler-grid .edge-m0.is-week-end{box-shadow:inset -2px 0 0 var(--sched-m0-edge)}.scheduler-grid .edge-m0.is-week-end.is-month-start{box-shadow:inset 3px 0 0 var(--sched-m0-edge),inset -2px 0 0 var(--sched-m0-edge)}.scheduler-grid .edge-m1.is-month-start{box-shadow:inset 3px 0 0 var(--sched-m1-edge)}.scheduler-grid .edge-m1.is-week-start:not(.is-month-start){box-shadow:inset 2px 0 0 var(--sched-m1-edge)}.scheduler-grid .edge-m1.is-week-end{box-shadow:inset -2px 0 0 var(--sched-m1-edge)}.scheduler-grid .edge-m1.is-week-end.is-month-start{box-shadow:inset 3px 0 0 var(--sched-m1-edge),inset -2px 0 0 var(--sched-m1-edge)}.scheduler-grid .edge-m2.is-month-start{box-shadow:inset 3px 0 0 var(--sched-m2-edge)}.scheduler-grid .edge-m2.is-week-start:not(.is-month-start){box-shadow:inset 2px 0 0 var(--sched-m2-edge)}.scheduler-grid .edge-m2.is-week-end{box-shadow:inset -2px 0 0 var(--sched-m2-edge)}.scheduler-grid .edge-m2.is-week-end.is-month-start{box-shadow:inset 3px 0 0 var(--sched-m2-edge),inset -2px 0 0 var(--sched-m2-edge)}.scheduler-grid .edge-m3.is-month-start{box-shadow:inset 3px 0 0 var(--sched-m3-edge)}.scheduler-grid .edge-m3.is-week-start:not(.is-month-start){box-shadow:inset 2px 0 0 var(--sched-m3-edge)}.scheduler-grid .edge-m3.is-week-end{box-shadow:inset -2px 0 0 var(--sched-m3-edge)}.scheduler-grid .edge-m3.is-week-end.is-month-start{box-shadow:inset 3px 0 0 var(--sched-m3-edge),inset -2px 0 0 var(--sched-m3-edge)}.scheduler-grid .edge-m4.is-month-start{box-shadow:inset 3px 0 0 var(--sched-m4-edge)}.scheduler-grid .edge-m4.is-week-start:not(.is-month-start){box-shadow:inset 2px 0 0 var(--sched-m4-edge)}.scheduler-grid .edge-m4.is-week-end{box-shadow:inset -2px 0 0 var(--sched-m4-edge)}.scheduler-grid .edge-m4.is-week-end.is-month-start{box-shadow:inset 3px 0 0 var(--sched-m4-edge),inset -2px 0 0 var(--sched-m4-edge)}.scheduler-grid .edge-m5.is-month-start{box-shadow:inset 3px 0 0 var(--sched-m5-edge)}.scheduler-grid .edge-m5.is-week-start:not(.is-month-start){box-shadow:inset 2px 0 0 var(--sched-m5-edge)}.scheduler-grid .edge-m5.is-week-end{box-shadow:inset -2px 0 0 var(--sched-m5-edge)}.scheduler-grid .edge-m5.is-week-end.is-month-start{box-shadow:inset 3px 0 0 var(--sched-m5-edge),inset -2px 0 0 var(--sched-m5-edge)}.scheduler-grid .edge-m6.is-month-start{box-shadow:inset 3px 0 0 var(--sched-m6-edge)}.scheduler-grid .edge-m6.is-week-start:not(.is-month-start){box-shadow:inset 2px 0 0 var(--sched-m6-edge)}.scheduler-grid .edge-m6.is-week-end{box-shadow:inset -2px 0 0 var(--sched-m6-edge)}.scheduler-grid .edge-m6.is-week-end.is-month-start{box-shadow:inset 3px 0 0 var(--sched-m6-edge),inset -2px 0 0 var(--sched-m6-edge)}.scheduler-grid .edge-m7.is-month-start{box-shadow:inset 3px 0 0 var(--sched-m7-edge)}.scheduler-grid .edge-m7.is-week-start:not(.is-month-start){box-shadow:inset 2px 0 0 var(--sched-m7-edge)}.scheduler-grid .edge-m7.is-week-end{box-shadow:inset -2px 0 0 var(--sched-m7-edge)}.scheduler-grid .edge-m7.is-week-end.is-month-start{box-shadow:inset 3px 0 0 var(--sched-m7-edge),inset -2px 0 0 var(--sched-m7-edge)}.scheduler-grid .edge-m8.is-month-start{box-shadow:inset 3px 0 0 var(--sched-m8-edge)}.scheduler-grid .edge-m8.is-week-start:not(.is-month-start){box-shadow:inset 2px 0 0 var(--sched-m8-edge)}.scheduler-grid .edge-m8.is-week-end{box-shadow:inset -2px 0 0 var(--sched-m8-edge)}.scheduler-grid .edge-m8.is-week-end.is-month-start{box-shadow:inset 3px 0 0 var(--sched-m8-edge),inset -2px 0 0 var(--sched-m8-edge)}.scheduler-grid .edge-m9.is-month-start{box-shadow:inset 3px 0 0 var(--sched-m9-edge)}.scheduler-grid .edge-m9.is-week-start:not(.is-month-start){box-shadow:inset 2px 0 0 var(--sched-m9-edge)}.scheduler-grid .edge-m9.is-week-end{box-shadow:inset -2px 0 0 var(--sched-m9-edge)}.scheduler-grid .edge-m9.is-week-end.is-month-start{box-shadow:inset 3px 0 0 var(--sched-m9-edge),inset -2px 0 0 var(--sched-m9-edge)}.scheduler-grid .edge-m10.is-month-start{box-shadow:inset 3px 0 0 var(--sched-m10-edge)}.scheduler-grid .edge-m10.is-week-start:not(.is-month-start){box-shadow:inset 2px 0 0 var(--sched-m10-edge)}.scheduler-grid .edge-m10.is-week-end{box-shadow:inset -2px 0 0 var(--sched-m10-edge)}.scheduler-grid .edge-m10.is-week-end.is-month-start{box-shadow:inset 3px 0 0 var(--sched-m10-edge),inset -2px 0 0 var(--sched-m10-edge)}.scheduler-grid .edge-m11.is-month-start{box-shadow:inset 3px 0 0 var(--sched-m11-edge)}.scheduler-grid .edge-m11.is-week-start:not(.is-month-start){box-shadow:inset 2px 0 0 var(--sched-m11-edge)}.scheduler-grid .edge-m11.is-week-end{box-shadow:inset -2px 0 0 var(--sched-m11-edge)}.scheduler-grid .edge-m11.is-week-end.is-month-start{box-shadow:inset 3px 0 0 var(--sched-m11-edge),inset -2px 0 0 var(--sched-m11-edge)}.scheduler-grid-name{position:sticky;left:0;z-index:3;width:11.5rem;min-width:11.5rem;max-width:11.5rem;text-align:left;background:var(--surface)!important;padding:.25rem .4rem!important}.scheduler-month-row .scheduler-grid-name,.scheduler-day-row .scheduler-grid-name,.scheduler-week-row .scheduler-grid-name{z-index:6}.scheduler-grid .is-outside{background:#161311}.scheduler-lane-row th,.scheduler-lane-row td{background:#32363b!important;color:#f3f3f3;text-align:left;letter-spacing:.06em;text-transform:uppercase;font-size:.7rem}.scheduler-grid-name strong,.scheduler-grid-name .muted{display:block}.scheduler-grid.is-selectable .scheduler-name-col,.scheduler-grid.is-selectable .scheduler-grid-name{width:13.6rem;min-width:13.6rem;max-width:13.6rem}.scheduler-name-with-check{display:flex;align-items:flex-start;gap:.4rem}.scheduler-name-with-check .scheduler-identity{flex:1 1 auto;min-width:0}.scheduler-row-check{flex:0 0 auto;width:.9rem;height:.9rem;margin:.15rem 0 0;accent-color:var(--accent)}.scheduler-identity{display:block;min-width:0}.scheduler-identity strong{display:block}.scheduler-identity-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:.1rem .35rem;min-width:0}.scheduler-identity-meta .muted{display:inline;min-width:0}.scheduler-emp-id,.scheduler-emp-col{color:#8a817a;font-size:.68rem;font-weight:600;letter-spacing:.01em;white-space:nowrap}.scheduler-rate-table th.scheduler-emp-col,.scheduler-rate-table th.scheduler-role-col,.scheduler-rate-table td.scheduler-emp-col{max-width:none;white-space:nowrap}.scheduler-secondary-bar{display:flex;align-items:flex-end;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.scheduler-grid-name button{display:block;border:0;background:transparent;color:var(--text);font:inherit;font-weight:650;cursor:pointer;padding:0}.scheduler-grid tr.is-selected td{background:color-mix(in srgb,var(--accent) 10%,var(--bg))}.scheduler-cell{position:relative;width:100%;height:1.7rem;border:0;background:transparent;color:var(--text);font:inherit;font-size:.68rem;font-weight:700;cursor:pointer}.scheduler-cell.is-buffer:after{content:"";position:absolute;top:1px;right:1px;width:0;height:0;border-top:7px solid #c47b2b;border-left:7px solid transparent;pointer-events:none}.scheduler-cell.has-code{width:calc(100% - 4px);height:calc(1.7rem - 4px);margin:2px;border-radius:5px}.scheduler-span-td{position:relative}.scheduler-cell.in-span{background:transparent}.scheduler-span-bar{position:absolute;top:50%;left:2px;z-index:2;height:calc(100% - 4px);transform:translateY(-50%);width:calc(var(--span-days) * 100% + (var(--span-days) - 1) * 1px - 4px);border-radius:4px;display:flex;align-items:center;justify-content:flex-start;pointer-events:none;overflow:clip;font-size:.68rem;font-weight:700}.scheduler-span-label{position:sticky;left:12rem;padding:0 .45rem;margin:0 auto;white-space:nowrap}.scheduler-span-bar.is-day{background:#b7d7b0;color:#121614}.scheduler-span-bar.is-night,.scheduler-span-bar.is-shutdown-night,.scheduler-span-bar.is-ccr-night{background:#3e4654;color:#fff}.scheduler-span-bar.is-off{background:#c97b76;color:#1a1212}.scheduler-span-bar.is-shutdown-day{background:#e4c56a;color:#1c1408}.scheduler-span-bar.is-ccr-day{background:#8fd0cb;color:#102220}.scheduler-span-bar.is-month{background:#c4b0dc;color:#1c1624}.scheduler-span-bar.is-week{background:#e2b56e;color:#1c1408}.scheduler-span-bar.is-travel{background:#9ebedc;color:#101820}.scheduler-code-bubble{display:inline-flex;align-items:center;justify-content:center;min-width:2.35rem;padding:.12rem .45rem;border-radius:999px;font-size:.72rem;font-weight:750;letter-spacing:.03em;line-height:1.2;white-space:nowrap}.scheduler-cell.is-day,.scheduler-code-bubble.is-day{background:#b7d7b0;color:#121614}.scheduler-cell.is-night,.scheduler-code-bubble.is-night{background:#3e4654;color:#fff}.scheduler-cell.is-off,.scheduler-code-bubble.is-off{background:#c97b76;color:#1a1212}.scheduler-cell.is-shutdown-day,.scheduler-code-bubble.is-shutdown-day{background:#e4c56a;color:#1c1408}.scheduler-cell.is-shutdown-night,.scheduler-code-bubble.is-shutdown-night,.scheduler-cell.is-ccr-night,.scheduler-code-bubble.is-ccr-night{background:#3e4654;color:#fff}.scheduler-cell.is-ccr-day,.scheduler-code-bubble.is-ccr-day{background:#8fd0cb;color:#102220}.scheduler-cell.is-month,.scheduler-code-bubble.is-month{background:#c4b0dc;color:#1c1624}.scheduler-cell.is-week,.scheduler-code-bubble.is-week{background:#e2b56e;color:#1c1408}.scheduler-cell.is-travel,.scheduler-code-bubble.is-travel{background:#9ebedc;color:#101820}.scheduler-cell.is-held{width:calc(100% - 4px);height:calc(1.7rem - 4px);margin:2px;border-radius:4px;background:repeating-linear-gradient(-45deg,#6a3030 0,#6a3030 4px,#3d2828 4px,#3d2828 8px);color:#fff7f6;font-weight:750;cursor:not-allowed}.scheduler-cell.is-marked{outline:2px solid var(--accent-hover);outline-offset:-2px}.scheduler-cell.is-remote{width:calc(100% - 4px);height:calc(1.7rem - 4px);margin:2px;border-radius:5px;background:#1f5fd6;color:#fff;box-shadow:0 0 0 2px #78afff8c}td.is-remote.is-remote{background:#1f5fd6;color:#fff;box-shadow:inset 0 0 0 2px #78afff8c}td.is-remote.is-remote span{color:#fff}.scheduler-grid th.is-today,.scheduler-grid td.is-today{outline:2px solid var(--accent);outline-offset:-2px}.scheduler-span-bar,.scheduler-project-run>span{--cap: calc(100% / var(--span-days, 1));--neck: 12.5%;clip-path:polygon(0 0,var(--cap) 0,var(--cap) var(--neck),calc(100% - var(--cap)) var(--neck),calc(100% - var(--cap)) 0,100% 0,100% 100%,calc(100% - var(--cap)) 100%,calc(100% - var(--cap)) calc(100% - var(--neck)),var(--cap) calc(100% - var(--neck)),var(--cap) 100%,0 100%)}.scheduler-grid td.scheduler-project-run:not(.is-remote){background:var(--bg);padding:3px 0}.scheduler-project-run>span{background:var(--run-bg);border-radius:4px;padding:0 .35rem;line-height:1.3rem;height:1.3rem}.scheduler-project-run{overflow:hidden;padding:0 .28rem;color:var(--sched-ink);font-size:.68rem;font-weight:750;text-align:left;cursor:context-menu}.scheduler-project-run span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scheduler-project-run.tone-p0{--run-bg: #f0d78c}.scheduler-project-run.tone-p1{--run-bg: #b7d7a8}.scheduler-project-run.tone-p2{--run-bg: #a9cbe0}.scheduler-project-run.tone-p3{--run-bg: #e7b8b2}.scheduler-project-run.tone-p4{--run-bg: #d7c4ef}.scheduler-project-run.tone-p5{--run-bg: #f3c9a0}.scheduler-project-run.tone-p6{--run-bg: #c9e4d4}.scheduler-project-run.tone-p7{--run-bg: #f0c3d8}.scheduler-project-run.tone-p8{--run-bg: #d5d8a8}.scheduler-project-run.tone-p9{--run-bg: #c5d4f2}.scheduler-project-run.tone-p10{--run-bg: #e6d3a1}.scheduler-project-run.tone-p11{--run-bg: #bfe0ea}.scheduler-roster-tools{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.55rem;margin-left:auto}.scheduler-roster-tools label{display:flex;flex-direction:column;gap:.15rem;font-size:.75rem;color:var(--text-muted)}.scheduler-roster-tools input{background:var(--log-bg);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:.35rem .5rem;min-width:9rem}.scheduler-roster-tools .scheduler-roster-search{width:11rem}.scheduler-roster-tools .scheduler-date-field input{min-width:6.6rem;width:7rem}.scheduler-roster-tools label.scheduler-avail-toggle{flex-direction:row;align-items:center;align-self:flex-end;gap:.4rem;min-height:2rem;white-space:nowrap}.scheduler-roster-tools label.scheduler-avail-toggle input{min-width:0;width:.95rem;height:.95rem;margin:0;accent-color:var(--accent)}.scheduler-roster-tools .btn.is-active{border-color:var(--accent);color:var(--accent-hover);box-shadow:inset 0 0 0 1px var(--accent)}.scheduler-filter-note{margin:.2rem 0 0;font-size:.75rem}.scheduler-legend-btn{display:inline-flex;align-items:center;gap:.35rem}.scheduler-info-mark{display:inline-grid;place-items:center;width:1rem;height:1rem;border:1px solid var(--accent);border-radius:999px;color:var(--accent);font-size:.68rem;font-weight:700;font-style:italic;line-height:1}.scheduler-roster-actions{display:flex;flex-wrap:wrap;gap:.45rem}.scheduler-travel-lines{white-space:pre-wrap;margin:0}.scheduler-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:.85rem 1rem}.scheduler-card-head,.scheduler-add-card header,.scheduler-month-nav{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.scheduler-card-head h3,.scheduler-cost-block h4,.scheduler-add-card h3{margin:0}.scheduler-cal-hint{margin:0;min-height:2.5rem;max-height:2.5rem;overflow:hidden;line-height:1.25rem}.scheduler-cost-block{margin-top:.85rem;padding-top:.55rem;border-top:1px solid var(--border)}.scheduler-cost-block:first-of-type,.scheduler-sheet .scheduler-cost-block:first-child{border-top:0;padding-top:0;margin-top:0}.scheduler-menu{position:fixed;z-index:5000;min-width:12rem;max-height:70vh;overflow:auto;display:flex;flex-direction:column;padding:.35rem;border:1px solid var(--border);border-radius:10px;background:var(--surface-alt);box-shadow:0 10px 28px #00000059}.scheduler-menu-title{margin:.15rem .4rem .35rem;font-size:.75rem;color:var(--text-muted)}.scheduler-menu button{display:flex;align-items:center;gap:.45rem;border:0;background:transparent;color:var(--text);text-align:left;font:inherit;padding:.28rem .45rem;border-radius:6px;cursor:pointer}.scheduler-menu button:hover{background:color-mix(in srgb,var(--accent) 22%,transparent)}.scheduler-contract-pick{display:flex;align-items:center;gap:.5rem;margin:.4rem 0 .7rem}.scheduler-rate-input{width:3.35rem;padding:.12rem .25rem;border:1px solid var(--border);border-radius:4px;background:var(--bg);color:var(--text);font:inherit;font-size:.75rem;text-align:right}.scheduler-num,.scheduler-rate-table th.scheduler-num,.scheduler-rate-table td.scheduler-num{text-align:right}.scheduler-contract-bar{display:flex;flex-wrap:wrap;align-items:end;gap:.75rem 1rem;margin-bottom:.4rem}.scheduler-contract-assign select,.scheduler-contract-pick select,.scheduler-contract-pick input{min-width:11rem}.scheduler-contract-assign select{border:0;background:transparent;color:var(--text);font:inherit;font-size:.95rem;font-weight:650;max-width:14rem}.scheduler-num-input{text-align:right}.scheduler-due{border-radius:4px;padding:.12rem .35rem}.scheduler-due-input{border-radius:4px}.scheduler-due-ok,.scheduler-due-input.scheduler-due-ok,.scheduler-resource-form input.scheduler-due-ok{background:#d9f5e3;color:#0f6b32}.scheduler-due-soon,.scheduler-due-input.scheduler-due-soon,.scheduler-resource-form input.scheduler-due-soon{background:#fff3c4;color:#7a5600}.scheduler-due-near,.scheduler-due-input.scheduler-due-near,.scheduler-resource-form input.scheduler-due-near{background:#ffd6ea;color:#8d245c}.scheduler-due-overdue,.scheduler-due-input.scheduler-due-overdue,.scheduler-resource-form input.scheduler-due-overdue{background:#ffd0d0;color:#9b1c1c}.scheduler-certs{margin-top:.85rem}.scheduler-certs-head,.scheduler-cert-row{display:flex;flex-wrap:wrap;align-items:end;gap:.55rem .75rem}.scheduler-certs-head{margin-bottom:.35rem;font-size:.78rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.scheduler-cert-row{margin-bottom:.4rem}.scheduler-cert-summary{display:flex;flex-direction:column;gap:.2rem;min-width:9rem}.scheduler-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:4500;background:#100d0a9e;display:flex;align-items:center;justify-content:center;padding:1rem}.scheduler-dialog{width:min(40rem,100%);max-height:min(88vh,44rem);overflow:auto;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:14px;padding:.85rem 1rem 1rem;box-shadow:0 18px 48px #00000073}.scheduler-dialog.is-wide{width:min(72rem,100%)}.scheduler-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.35rem}.scheduler-dialog-head h2{margin:0;font-size:1.05rem}.scheduler-legend-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.scheduler-legend-head .muted{margin:0;font-size:.82rem}.scheduler-legend-grids{display:grid;grid-template-columns:1fr;gap:.65rem}.scheduler-dialog.is-wide .scheduler-legend-grids{grid-template-columns:repeat(auto-fit,minmax(22rem,1fr))}.scheduler-dialog .scheduler-legend{width:100%;max-width:none;margin:0;padding:0;gap:.55rem}.scheduler-dialog .scheduler-legend .scheduler-resource-section{padding:.1rem 0 0}.scheduler-dialog .scheduler-legend .scheduler-resource-section h3{margin:0 0 .25rem;font-size:.82rem}.scheduler-dialog .scheduler-legend-table th,.scheduler-dialog .scheduler-legend-table td{padding-top:.28rem;padding-bottom:.28rem}.scheduler-add-card{width:min(34rem,100%);max-height:min(90vh,44rem);overflow:auto;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:14px;padding:.9rem 1rem 1rem;display:flex;flex-direction:column;gap:.65rem}.scheduler-add-card label{display:flex;flex-direction:column;gap:.2rem;font-size:.75rem;color:var(--text-muted)}.scheduler-add-card input{background:var(--log-bg);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:.35rem .5rem}.scheduler-resource-picks{display:flex;flex-direction:column;gap:.25rem;max-height:9rem;overflow:auto}.scheduler-resource-picks button,.scheduler-range-labels button{display:flex;justify-content:space-between;gap:.5rem;border:1px solid var(--border);background:var(--log-bg);color:var(--text);border-radius:8px;padding:.35rem .5rem;font:inherit;cursor:pointer}.scheduler-resource-picks button.is-on,.scheduler-range-labels button.is-on,.scheduler-month button.is-end{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 28%,var(--log-bg))}.scheduler-range-labels{display:grid;grid-template-columns:1fr 1fr;gap:.45rem}.scheduler-range-labels span,.scheduler-resource-picks span{color:var(--text-muted);font-size:.75rem}.scheduler-month-nav button,.scheduler-month button{border:1px solid var(--border);background:var(--log-bg);color:var(--text);border-radius:8px;font:inherit;cursor:pointer}.scheduler-month-nav button{width:2rem;height:2rem}.scheduler-month{display:grid;grid-template-columns:repeat(7,1fr);gap:.25rem}.scheduler-dow{text-align:center;font-size:.7rem;color:var(--text-muted)}.scheduler-month button{height:2rem}.scheduler-month button:disabled{opacity:.35;cursor:not-allowed}.scheduler-month button.is-range{background:color-mix(in srgb,var(--accent) 18%,var(--log-bg))}.scheduler-month button.is-held:disabled{background:#3a2a2a;color:#e7b2ae;opacity:1}.integrity-shell>.topbar{margin-bottom:.35rem}.integrity-top-lead{display:flex;align-items:center;gap:.75rem;min-width:0}.integrity-workspace{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column}.integrity-sheet-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:.12rem;padding:.15rem .1rem 0;background:#32363b;border-bottom:1px solid #5a5f66;flex-shrink:0}.integrity-sheet-tab{border:1px solid #5a5f66;border-bottom:none;background:#4a4f55;color:#ececec;padding:.18rem .55rem;font-size:.72rem;line-height:1.15;border-radius:5px 5px 0 0;white-space:nowrap;cursor:pointer}.integrity-sheet-tab.is-active{background:#d7e2ef;color:#1b1d20;font-weight:650}.studio-pills{display:inline-flex;flex-wrap:wrap;gap:.22rem}.studio-pill{box-sizing:border-box;min-width:2.15rem;height:1.45rem;padding:0 .4rem;border-radius:999px;border:1px solid #3a3530;background:#141210;color:#6b635c;font-size:.68rem;font-weight:700;letter-spacing:.03em;line-height:1;cursor:pointer}.studio-pill:hover:not(:disabled){color:#b8aea5;border-color:#524b44}.studio-pill.is-on{background:color-mix(in srgb,var(--accent) 16%,#1a140c);color:#edc089;border-color:color-mix(in srgb,var(--accent) 42%,#3d352e)}.studio-pill:disabled{opacity:.55;cursor:default}.scheduler-table.scheduler-resource-list :is(th,td):not(.scheduler-num):nth-child(n){text-align:left;font-variant-numeric:normal}.scheduler-resource-list .scheduler-status-col{min-width:14rem}.scheduler-open-cell{cursor:pointer}.scheduler-resource-list tr.table-row-clickable:hover td{background:color-mix(in srgb,var(--accent) 10%,transparent)}.scheduler-row-open{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--text);font:inherit;font-weight:600;padding:0;text-align:left;cursor:pointer}.scheduler-row-open:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.scheduler-status-line{display:inline-block;border-radius:4px;padding:.1rem .4rem;font-size:.8rem;line-height:1.25}.scheduler-status-line.is-overdue,.scheduler-status-item.is-overdue{background:#ffd0d0;color:#9b1c1c}.scheduler-status-line.is-near,.scheduler-status-item.is-near{background:#ffd6ea;color:#8d245c}.scheduler-status-line.is-soon,.scheduler-status-item.is-soon{background:#fff3c4;color:#7a5600}.scheduler-status-line.is-ok,.scheduler-status-item.is-ok{background:#d9f5e3;color:#0f6b32}.scheduler-status-line.is-none,.scheduler-status-item.is-none{background:color-mix(in srgb,var(--text) 10%,transparent);color:var(--text)}.scheduler-resource-list .history-project-summary{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;padding:.15rem .2rem}.scheduler-resource-card.scheduler-resource-form{background:transparent;border:0;padding:0}.scheduler-resource-card .history-expand-tools{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.scheduler-status-list{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;margin:0 0 .75rem;padding:0;list-style:none}.scheduler-status-item{display:flex;align-items:center;gap:.4rem;border-radius:4px;padding:.12rem .5rem;font-size:.82rem}.scheduler-status-dot{width:.5rem;height:.5rem;border-radius:50%;background:currentColor}.scheduler-card-rates,.scheduler-card-history{margin-top:.85rem}.scheduler-inspection-settings{display:flex;flex-wrap:wrap;align-items:end;gap:.55rem .9rem;margin:.2rem 0 .5rem}.scheduler-inspection-settings label{display:flex;flex-direction:column;gap:.2rem;font-size:.75rem;color:var(--text-muted)}.scheduler-inspection-settings select{background:var(--log-bg);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:.3rem .5rem}.scheduler-rates-toggle{display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem;cursor:pointer}.scheduler-record{position:relative;display:flex;flex-wrap:wrap;align-items:flex-start;gap:.5rem .9rem;margin-bottom:.45rem;padding:.5rem .6rem;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--text) 4%,transparent)}.scheduler-record.is-superseded{opacity:.72}.scheduler-record-badge{position:absolute;top:.3rem;right:.5rem;font-size:.66rem;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.scheduler-record-fields{flex:1 1 auto;display:flex;flex-wrap:wrap;align-items:flex-end;gap:.55rem .8rem}.scheduler-record-fields label{display:flex;flex-direction:column;gap:.2rem;font-size:.75rem;color:var(--text-muted)}.scheduler-record-fields input,.scheduler-record-fields select{background:var(--log-bg);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:.35rem .5rem;min-width:8.5rem}.scheduler-record-wide{flex:1 1 14rem}.scheduler-record-wide input{width:100%}.scheduler-record-actions{display:flex;flex-direction:column;gap:.25rem;margin-top:1rem}.scheduler-files{flex:1 1 100%;display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;padding:.3rem;border:1px dashed var(--border);border-radius:8px}.scheduler-files.is-dragging{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.scheduler-files-actions{display:inline-flex;gap:.25rem}.scheduler-files-hint{font-size:.75rem}.scheduler-thumb{position:relative;display:inline-block;width:3.6rem;height:3.6rem}.scheduler-thumb-open{width:100%;height:100%;padding:0;border:1px solid var(--border);border-radius:6px;background:var(--log-bg);overflow:hidden;cursor:zoom-in}.scheduler-thumb-open img{width:100%;height:100%;object-fit:cover;display:block}.scheduler-thumb-wait{font-size:.65rem;color:var(--text-muted)}.scheduler-thumb-remove{position:absolute;top:-.35rem;right:-.35rem;width:1.1rem;height:1.1rem;padding:0;border:1px solid var(--border);border-radius:50%;background:var(--surface);color:var(--text);font-size:.6rem;line-height:1;cursor:pointer}.scheduler-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:6000;display:flex;align-items:center;justify-content:center;background:#000000c7;padding:1rem}.scheduler-lightbox-body{display:flex;flex-direction:column;gap:.6rem;max-width:min(96vw,60rem);max-height:94vh;padding:.7rem;border-radius:10px;background:var(--surface);border:1px solid var(--border)}.scheduler-lightbox-body header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.scheduler-lightbox-body img{max-width:100%;max-height:calc(94vh - 5rem);object-fit:contain;align-self:center}.scheduler-history ol{margin:.4rem 0;padding:0;list-style:none}.scheduler-history-month-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--text);display:flex;align-items:center;gap:.45rem;padding:.35rem .1rem;font:inherit;font-weight:600;cursor:pointer}.scheduler-history li{display:grid;grid-template-columns:11rem 10rem minmax(0,1fr);gap:.2rem .6rem;padding:.3rem 0;border-bottom:1px solid var(--border);font-size:.82rem}.scheduler-history-when{color:var(--text-muted);min-width:10.5rem}.scheduler-history-what{flex:1 1 14rem}.scheduler-date-pop{max-width:calc(100vw - 1rem)}.scheduler-drill-title,.scheduler-date-nav .scheduler-drill-title,.scheduler-month-nav .scheduler-drill-title{flex:1 1 auto;width:auto;height:auto;border:0;border-radius:6px;background:transparent;color:var(--text);font:inherit;font-weight:700;cursor:pointer;padding:.15rem .5rem}.scheduler-drill-title:hover{background:color-mix(in srgb,var(--accent) 18%,transparent)}.scheduler-drill-range{flex:1 1 auto;text-align:center}.scheduler-drill-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.25rem}.scheduler-drill-grid button{border:1px solid var(--border);background:var(--log-bg);color:var(--text);border-radius:8px;font:inherit;font-size:.8rem;padding:.55rem 0;cursor:pointer}.scheduler-drill-grid button:hover{border-color:var(--accent)}.scheduler-drill-grid button.is-today{box-shadow:inset 0 0 0 1px var(--accent)}.scheduler-drill-grid button.is-selected{background:var(--accent);border-color:var(--accent);color:#fff}.scheduler-resource-card,.scheduler-resource-card *{box-sizing:border-box}.scheduler-resource-card{max-width:100%;overflow-x:hidden}.scheduler-resource-card label{display:flex;flex-direction:column;gap:.25rem;min-width:0;margin:0}.scheduler-resource-card label>span{font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.scheduler-resource-card input:not([type=checkbox]):not([type=file]),.scheduler-resource-card select,.scheduler-resource-card textarea{width:100%;max-width:100%;min-width:0;background:#0f1115;color:var(--text, #e2e8f0);border:1px solid #4a5568;border-radius:6px;padding:.35rem .5rem}.scheduler-resource-card input::placeholder{color:#718096}.scheduler-resource-card .scheduler-resource-form-grid{display:grid;gap:.65rem .8rem;align-items:end;grid-template-columns:repeat(2,minmax(0,1fr))}.scheduler-resource-card .scheduler-resource-form-grid.is-human{grid-template-columns:repeat(4,minmax(0,1fr))}.scheduler-resource-card .scheduler-resource-form-grid.is-vehicle{grid-template-columns:repeat(3,minmax(0,1fr))}.scheduler-resource-card .scheduler-resource-form-grid.is-rates{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.scheduler-card-actions{display:flex;align-items:center;gap:.4rem;margin-top:.85rem}.scheduler-card-actions-spacer{flex:1}@media(max-width:720px){.scheduler-resource-card .scheduler-resource-form-grid.is-human,.scheduler-resource-card .scheduler-resource-form-grid.is-vehicle{grid-template-columns:repeat(2,minmax(0,1fr))}}.scheduler-table.scheduler-resource-list{table-layout:fixed;width:100%}.scheduler-resource-list :is(th,td):nth-child(1){width:33%}.scheduler-resource-list :is(th,td):nth-child(2),.scheduler-resource-list :is(th,td):nth-child(3){width:17%}.scheduler-resource-list :is(th,td):nth-child(4){width:33%}.scheduler-resource-list :is(th,td):nth-child(n+5){width:6.5rem}.scheduler-resource-list td,.scheduler-resource-list th{overflow:hidden;text-overflow:ellipsis}.scheduler-table.scheduler-resource-list :is(th,td).scheduler-status-col:nth-child(n){text-align:right;min-width:0}.scheduler-resource-list td[colspan]{width:auto;overflow:visible}.scheduler-rates-toggle{position:relative;-webkit-user-select:none;user-select:none}.scheduler-switch-input{position:absolute;opacity:0;width:0;height:0}.scheduler-switch{position:relative;width:2.1rem;height:1.15rem;border-radius:999px;background:#3a4150;border:1px solid #4a5568;transition:background .15s}.scheduler-switch:after{content:"";position:absolute;top:1px;left:1px;width:calc(1.15rem - 4px);height:calc(1.15rem - 4px);border-radius:50%;background:#cbd5e0;transition:transform .15s}.scheduler-switch-input:checked+.scheduler-switch{background:var(--accent, #c9792b);border-color:var(--accent, #c9792b)}.scheduler-switch-input:checked+.scheduler-switch:after{transform:translate(.95rem);background:#fff}.scheduler-switch-input:focus-visible+.scheduler-switch{outline:2px solid var(--accent, #c9792b);outline-offset:2px}.scheduler-rate-pairs{display:flex;flex-wrap:wrap;gap:.6rem}.scheduler-rate-pair{display:grid;grid-template-columns:repeat(2,6.5rem);gap:.5rem;padding:.5rem .6rem;border:1px solid #3a4150;border-radius:8px;background:#0000002e}.scheduler-resource-card .scheduler-rate-pair input{max-width:6.5rem}.scheduler-filter-btn{display:inline-flex;align-items:center;gap:.4rem}.scheduler-link-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--accent, #c9792b);cursor:pointer;font-size:.8rem;text-decoration:underline;padding:0 .2rem}.scheduler-filter-modal{width:min(560px,calc(100vw - 2rem));max-height:calc(100vh - 3rem);display:flex;flex-direction:column;padding:0}.scheduler-filter-modal>header{padding:.8rem 1rem 0}.scheduler-filter-body{overflow-y:auto;padding:.4rem 1rem;display:flex;flex-direction:column;gap:1rem}.scheduler-filter-section{display:flex;flex-direction:column;gap:.6rem}.scheduler-filter-section h4{margin:0;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.scheduler-filter-modal label{display:flex;flex-direction:column;gap:.25rem;font-size:.75rem;color:var(--text-muted)}.scheduler-filter-modal input:not([type=checkbox]),.scheduler-filter-modal select{height:2.2rem;box-sizing:border-box;width:100%;background:#0f1115;color:var(--text, #e2e8f0);border:1px solid #4a5568;border-radius:6px;padding:0 .6rem}.scheduler-filter-list{max-height:14rem;overflow-y:auto;border:1px solid #4a5568;border-radius:6px;background:#0f1115}.scheduler-filter-modal .scheduler-filter-item{flex-direction:row;align-items:center;gap:.5rem;padding:.35rem .6rem;font-size:.85rem;color:var(--text);border-bottom:1px solid #262b34;cursor:pointer}.scheduler-filter-item span:last-child{margin-left:auto;font-size:.75rem}.scheduler-filter-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.scheduler-filter-modal .scheduler-rates-toggle{flex-direction:row;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text)}.scheduler-filter-footer{position:sticky;bottom:0;display:flex;justify-content:space-between;gap:.6rem;padding:.7rem 1rem;border-top:1px solid var(--border);background:inherit}.scheduler-filter-footer .btn{min-width:8rem;height:2.2rem;justify-content:center}.scheduler-attach{position:relative;display:inline-flex}.scheduler-icon-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:2.15rem;height:2.15rem;padding:0;border-radius:8px;border:1px solid var(--border);background:#0f1115;color:var(--text-muted);cursor:pointer}.scheduler-icon-btn.is-missing{color:#f26b6b;border-color:#7a3434}.scheduler-icon-btn.is-ok{color:#5fd08a;border-color:#2f6a47}.scheduler-icon-btn.is-note{color:var(--accent, #c9792b);border-color:var(--accent, #c9792b)}.scheduler-icon-count{position:absolute;top:-.4rem;right:-.4rem;min-width:1rem;height:1rem;padding:0 .25rem;border-radius:999px;background:#2f9e5f;color:#fff;font-size:.65rem;line-height:1rem;text-align:center;font-weight:700}.scheduler-pop{position:absolute;z-index:30;top:calc(100% + .35rem);left:0;min-width:14rem;max-width:min(24rem,80vw);padding:.6rem;border:1px solid #4a5568;border-radius:8px;background:#1b1f27;box-shadow:0 8px 24px #00000080}.scheduler-pop.scheduler-files{flex-wrap:wrap;flex:none;border-style:solid}.scheduler-note-pop{display:flex;flex-direction:column;gap:.4rem;align-items:flex-end;width:18rem}.scheduler-note-pop textarea{width:100%;box-sizing:border-box;background:#0f1115;color:var(--text);border:1px solid #4a5568;border-radius:6px;padding:.4rem;font:inherit;resize:vertical}.scheduler-record-icons{display:inline-flex;gap:.5rem;align-items:center}.scheduler-record.is-grid{display:grid;grid-template-columns:minmax(0,1fr) 11rem;align-items:end}.scheduler-record.is-grid .scheduler-record-fields{display:grid;align-items:end;gap:.55rem .8rem}.scheduler-record.is-grid-cert .scheduler-record-fields{grid-template-columns:minmax(8rem,2fr) 9.5rem 9.5rem 5rem}.scheduler-record.is-grid-cal .scheduler-record-fields{grid-template-columns:9.5rem 9.5rem 5rem}.scheduler-record.is-grid .scheduler-record-fields input{min-width:0;width:100%;box-sizing:border-box}.scheduler-record.is-grid .scheduler-record-actions{flex-direction:row;margin-top:0;justify-content:flex-end}.scheduler-norehire{margin-top:.85rem;padding:.6rem .8rem;border:1px solid #7a3434;border-radius:8px;background:#a028281f;display:flex;flex-direction:column;gap:.6rem}.scheduler-norehire.is-on{background:#a0282838;border-color:#b04545}.scheduler-norehire-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem .8rem}.scheduler-norehire .scheduler-rates-toggle{flex-direction:row;align-items:center;gap:.5rem;font-size:.85rem;color:#f2a0a0}.scheduler-grid-name .scheduler-identity strong,.scheduler-grid-name .scheduler-identity-meta{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scheduler-grid-name .scheduler-identity-meta{flex-wrap:nowrap}.scheduler-grid-name .scheduler-identity-meta .muted{overflow:hidden;text-overflow:ellipsis}.scheduler-cell.is-marked:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none;outline:2px solid var(--accent-hover);outline-offset:-2px;background:color-mix(in srgb,var(--accent-hover) 28%,transparent)}.scheduler-cell.is-remote:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none;box-shadow:inset 0 0 0 2px #78afffcc}.scheduler-cell.in-hold{background:transparent;cursor:pointer}.scheduler-span-bar.scheduler-hold-bar{color:var(--sched-ink, #1a1a1a);background:var(--run-bg, #ccc)}.scheduler-hold-bar.tone-p0{--run-bg: #f0d78c}.scheduler-hold-bar.tone-p1{--run-bg: #b7d7a8}.scheduler-hold-bar.tone-p2{--run-bg: #a9cbe0}.scheduler-hold-bar.tone-p3{--run-bg: #e7b8b2}.scheduler-hold-bar.tone-p4{--run-bg: #d7c4ef}.scheduler-hold-bar.tone-p5{--run-bg: #f3c9a0}.scheduler-hold-bar.tone-p6{--run-bg: #c9e4d4}.scheduler-hold-bar.tone-p7{--run-bg: #f0c3d8}.scheduler-hold-bar.tone-p8{--run-bg: #d5d8a8}.scheduler-hold-bar.tone-p9{--run-bg: #c5d4f2}.scheduler-hold-bar.tone-p10{--run-bg: #e6d3a1}.scheduler-hold-bar.tone-p11{--run-bg: #bfe0ea}.scheduler-resource-card{border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:.6rem 1rem;margin-bottom:.5rem}.scheduler-resource-card .scheduler-group-toggle{display:flex;align-items:center;gap:.6rem;width:100%;font-size:1.05rem}.scheduler-resource-card-count{margin-left:auto;color:var(--muted, #8a817a);font-weight:700}.scheduler-sort-btn{display:block;border:0;background:transparent;color:inherit;font:inherit;font-weight:700;cursor:pointer;padding:0;text-align:inherit}.scheduler-col-search{display:block;width:100%;min-width:0;margin-top:.2rem;padding:.15rem .3rem;font-size:.72rem;background:var(--log-bg);color:var(--text);border:1px solid var(--border);border-radius:5px}.scheduler-span-bar{top:3px;left:0;height:calc(100% - 6px);transform:none;border-radius:4px;width:calc(var(--span-days) * (100% + 2px) - 2px)}.scheduler-span-handle{position:absolute;top:0;bottom:0;width:8px;cursor:ew-resize;pointer-events:auto;z-index:4}.scheduler-span-handle.is-start{left:0}.scheduler-span-handle.is-end{right:0}.scheduler-span-handle:hover{background:#00000040}.scheduler-grid-wrap.is-resizing,.scheduler-grid-wrap.is-resizing *{cursor:ew-resize!important}.scheduler-grid-wrap.is-resizing .scheduler-span-handle{pointer-events:none}.scheduler-span-bar.scheduler-hold-bar{background:repeating-linear-gradient(-45deg,#6a3030 0,#6a3030 4px,#3d2828 4px,#3d2828 8px);color:#fff7f6}.scheduler-contract-pick{background:var(--log-bg);border:1px solid var(--border);border-radius:10px;padding:.4rem .7rem;width:fit-content}.scheduler-contract-pick>span{font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap}.scheduler-contract-pick select{border:0;background:transparent;color:#fff;font:inherit;font-size:.95rem;font-weight:650}.scheduler-contract-pick select option{background:#14171c;color:#fff}.scheduler-clear-btn{background:var(--accent, #c9792b);color:#14110c;border:1px solid var(--accent, #c9792b);font-weight:700}.scheduler-clear-btn:hover{filter:brightness(1.12)}.scheduler-rate-input,.scheduler-num-input{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.scheduler-rate-input::-webkit-outer-spin-button,.scheduler-rate-input::-webkit-inner-spin-button,.scheduler-num-input::-webkit-outer-spin-button,.scheduler-num-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
