:root{--color-main:#303030;--color-main-soft:#3b3b3b;--color-main-deep:#232323;--color-accent:#c4002e;--color-accent-soft:#c4002e2e;--color-border:#ffffff1f;--color-text:#f5f5f5;--color-text-muted:#d1d1d1;color:var(--color-text);background:radial-gradient(circle at top left, #c4002e29, transparent 30%), radial-gradient(circle at top right, #ffffff0f, transparent 28%), linear-gradient(180deg, var(--color-main-deep) 0%, var(--color-main) 100%);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Aptos,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh;margin:0}a{color:inherit}#root{min-height:100vh}.app-shell{width:min(1200px,100vw - 2rem);margin:0 auto;padding:6.5rem 0 2rem}.loading-screen{min-height:100vh;color:var(--color-text);place-items:center;font-size:1.125rem;display:grid}.helper-copy,.status-banner,.empty-state,.entry-card p,label,input,textarea,select,button{font-size:.98rem}.panel{border:1px solid var(--color-border);background:linear-gradient(180deg, #3b3b3bf5, #232323fa), var(--color-main);border-radius:24px;padding:.5rem;box-shadow:0 22px 60px #0000003d}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#f0b7c3;margin:0 0 .5rem;font-size:.75rem}.section-heading h2,.hero-panel h1,.entry-card h3,.access-card h3{margin:0}.status-banner{z-index:1000;text-align:left;opacity:1;border-radius:18px;justify-content:space-between;align-items:flex-start;gap:.75rem;width:min(440px,100vw - 2rem);margin:0;padding:.9rem 1rem;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.status-banner.success{color:#ffe0e7;background:#4a1b26;border:1px solid #c4002e59}.status-banner.error{color:#ffd8df;background:#2a0f16;border:1px solid #c4002e66}.status-banner p{flex:1;margin:0}.status-banner-close{color:inherit;background:0 0;border:0;min-width:auto;margin:0;padding:0;line-height:1}.auth-layout,.dashboard-layout,.user-grid,.home-stack{gap:1rem;display:grid}.home-cpd-status{justify-items:start;gap:.25rem;display:grid}.home-stack{gap:.75rem}.home-stack .manager-header,.home-stack .section-heading{margin-bottom:.35rem}.home-stack .rota-user-panel .manager-header,.home-stack .home-cpd-panel .manager-header{gap:.35rem}.home-stack .rota-user-panel .rota-calendar{margin-top:0}.home-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.home-overview-card{border:1px solid var(--color-border);background:#ffffff0a;border-radius:16px;gap:.3rem;padding:.8rem .9rem;display:grid}.home-overview-card strong{font-size:1.4rem;line-height:1}.auth-layout{grid-template-columns:minmax(0,460px);justify-content:center}.toolbar{justify-content:space-between;align-items:center;display:flex}.toolbar-inline{z-index:900;padding:calc(.75rem + env(safe-area-inset-top)) 1rem .75rem;border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(#303030f5,#181818e6);justify-content:center;display:flex;position:fixed;top:0;left:0;right:0}.toolbar-nav{justify-content:space-between;align-items:center;gap:1rem;width:min(1200px,100%);display:flex}.tab-strip{flex-wrap:wrap;justify-content:center;gap:.2rem;width:auto;display:inline-flex}.primary-nav{justify-content:flex-start}.manager-top-nav{justify-content:flex-end}.tab-button{color:var(--color-text);box-shadow:none;background:0 0;border:0;flex:none;padding:.3rem .4rem}.tab-button-content{justify-content:center;align-items:center;gap:.5rem;display:inline-flex}.tab-button-icon{width:1.2rem;height:1.2rem;display:none}.tab-button-icon svg{width:100%;height:100%}.tab-button-label{line-height:1.1}.tab-button.active{color:var(--color-accent);background:0 0}.tab-button:hover,.tab-button:focus-visible{background:0 0;transform:none}.user-grid{grid-template-columns:minmax(0,460px) minmax(0,1fr)}.toolbox-talk-live-panel{grid-column:1/-1}.toolbox-signoff-section,.toolbox-signoff-list{gap:.65rem;margin-top:1.25rem;display:grid}.toolbox-signature-saved{gap:.6rem;display:grid}.toolbox-signature-pad-wrap{gap:.2rem;display:grid}.toolbox-signature-pad{border:1px solid var(--color-border);touch-action:none;background:#ffffff0d;border-radius:16px;width:100%;max-width:560px}.toolbox-signature-actions{flex-wrap:wrap;gap:.75rem;display:flex}.toolbox-signature-image{border:1px solid var(--color-border);background:#fff;border-radius:12px;width:100%;max-width:280px}.toolbox-signoff-status-list{gap:.7rem;display:grid}.toolbox-signoff-status-row{border:1px solid var(--color-border);background:#ffffff0a;border-radius:16px;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;display:flex}.toolbox-signoff-status-user{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.toolbox-signoff-status-indicator{border-radius:999px;justify-content:center;align-items:center;min-width:2rem;min-height:2rem;font-weight:700;display:inline-flex}.toolbox-signoff-status-indicator.signed{color:#9fe0b1;background:#1199442e}.toolbox-signoff-status-indicator.missing{color:#ffb1c1;background:#c4002e2e}.toolbox-signature-list-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.85rem;display:grid}.toolbox-signature-card{border:1px solid var(--color-border);background:#ffffff0a;border-radius:16px;gap:.55rem;padding:.9rem;display:grid}.toolbox-signature-card p{margin:0}.section-heading{margin-bottom:1rem}.role-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}label{color:var(--color-text);gap:.45rem;display:grid}form label+label,form .split-fields,form button{margin-top:1rem}input,textarea,select{border:1px solid var(--color-border);color:var(--color-text);font:inherit;background:#181818e6;border-radius:16px;padding:.85rem .95rem}textarea{resize:vertical;min-height:7rem}button,.ghost-button,.file-link{transition:transform .12s,border-color .12s,background .12s}button{background:linear-gradient(135deg, #d10033, var(--color-accent));color:#fff5f7;cursor:pointer;border:none;border-radius:999px;padding:.95rem 1.2rem;font-weight:700}button:disabled{opacity:.65;cursor:wait}.ghost-button{color:var(--color-text);background:0 0;border:1px solid #c4002e59;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.text-button{color:#ff8ca6;background:0 0;border:none;justify-content:flex-start;width:fit-content;padding:.2rem 0;display:flex}.auth-panel button+.text-button,.auth-panel .text-button+.text-button{margin-top:.5rem}.reset-help{color:var(--color-text-muted);margin:0}.install-panel{gap:.75rem;margin-top:1rem;display:grid}.evidence-button{width:100%}.entry-actions{gap:.75rem;margin-top:.75rem;display:grid}.danger-button{color:#fff5f7;background:linear-gradient(135deg,#8f0b28,#c4002e)}.split-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.entry-list{gap:1rem;display:grid}.entry-card{border:1px solid var(--color-border);background:#ffffff0a;border-radius:20px;padding:1rem}.entry-card.compact{padding:.85rem}.entry-summary{cursor:pointer;list-style:none}.entry-summary::-webkit-details-marker{display:none}.entry-body{border-top:1px solid var(--color-border);margin-top:.8rem;padding-top:.8rem}.entry-heading{justify-content:space-between;gap:1rem;margin-bottom:.8rem;display:flex}.entry-meta{color:var(--color-text-muted);flex-direction:column;gap:.15rem;display:flex}.align-right{text-align:right}.file-link{color:#a7d2ff}.manager-header{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1rem;display:flex}.overview-actions{flex-wrap:wrap;justify-content:flex-end;align-items:end;gap:.75rem;display:flex}.manager-subnav{flex-wrap:wrap;gap:.5rem;display:inline-flex}.manage-users-header-actions{flex:1;justify-content:space-between;align-items:center;gap:1rem;display:flex}.manage-users-subnav{justify-content:flex-start;gap:.2rem}.manager-subnav .tab-button{flex:0 auto;min-width:140px}.manage-users-subnav .tab-button{min-width:auto;padding:.15rem .2rem}.user-admin-summary.static{cursor:default}.toolbox-talk-form,.toolbox-talk-list{gap:1rem;display:grid}.toolbox-subnav{margin-bottom:1rem}.toolbox-tab-panel{gap:1rem;display:grid}.toolbox-pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-top:1rem;display:flex}.toolbox-talk-list{margin-top:1rem}.rich-text-editor-wrap{gap:.6rem;display:grid}.rich-text-toolbar{flex-wrap:wrap;gap:.5rem;display:flex}.rich-text-toolbar button{background:#ffffff14;min-width:56px}.rich-text-toolbar button.active{background:linear-gradient(135deg, #d10033, var(--color-accent));color:#fff5f7}.rich-text-editor{border:1px solid var(--color-border);background:#ffffff0d;border-radius:16px;outline:none;min-height:180px;padding:.85rem .95rem}.rich-text-editor:empty:before{content:attr(data-placeholder);color:var(--color-text-muted)}.editor-field{gap:.45rem;display:grid}.toolbox-talk-card{border:1px solid var(--color-border);background:#ffffff0a;border-radius:18px;gap:0;display:grid}.toolbox-talk-card.live{border-color:var(--color-border)}.toolbox-talk-summary{justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.toolbox-talk-summary-button{text-align:left;background:0 0;border:none;gap:.2rem;width:100%;padding:0;display:grid}.toolbox-talk-summary-button:hover{background:0 0}.toolbox-live-button{min-width:110px}.toolbox-live-button.live{color:var(--color-text-muted);background:#ffffff1f}.toolbox-delete-button{background:#ffffff14;min-width:96px}.toolbox-talk-body{padding:0 1rem 1rem}.toolbox-talk-actions{justify-content:flex-end;margin-bottom:.85rem;display:flex}.toolbox-recipient-picker{border:1px solid var(--color-border);background:#ffffff0a;border-radius:16px;gap:.85rem;margin-top:1rem;padding:1rem;display:grid}.toolbox-recipient-picker-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.toolbox-recipient-picker-header .eyebrow{margin:0}.toolbox-recipient-picker-actions{flex-wrap:wrap;gap:.75rem;display:flex}.toolbox-recipient-picker-actions.publish{justify-content:flex-end}.toolbox-recipient-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.6rem;display:grid}.toolbox-recipient-item{border:1px solid var(--color-border);background:#ffffff0a;border-radius:14px;align-items:center;gap:.65rem;padding:.75rem .85rem;display:flex}.toolbox-recipient-item input{width:1rem;height:1rem;margin:0}.toolbox-talk-copy{margin:0}.rich-text-output p,.rich-text-output ul,.rich-text-output ol{margin:0 0 .9rem}.rich-text-output p:last-child,.rich-text-output ul:last-child,.rich-text-output ol:last-child{margin-bottom:0}.settings-accordion{gap:1rem;margin-top:1rem;display:grid}.settings-subnav .tab-button{flex:0 auto;min-width:120px}.settings-grid{grid-template-columns:1fr;gap:1rem;display:grid}.settings-section{align-content:start;gap:1rem;display:grid}.settings-toggle{width:100%;display:block}.settings-download{gap:.75rem;margin-bottom:1rem;display:grid}.settings-download>button,.settings-signout>button{width:100%}.settings-signout{gap:.75rem;margin-top:1rem;display:grid}.ladder-inspections-panel,.ladder-inspection-form,.ladder-summary,.rota-panel{gap:1rem;display:grid}.rota-week-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem;display:flex}.icon-week-controls{gap:.45rem}.rota-form{border:1px solid var(--color-border);background:#ffffff0a;border-radius:18px;gap:1rem;padding:1rem;display:grid}.rota-preview-stack{gap:1rem;display:grid}.rota-preview-stack .rota-calendar{background:linear-gradient(#ffffff0b,#ffffff05),#ffffff08;border-radius:26px;box-shadow:0 18px 42px #00000029}.rota-assignees{gap:.65rem;display:grid}.rota-jobs-page{gap:1rem;display:grid}.rota-address-lookup-field{gap:.35rem;display:grid;position:relative}.rota-address-results{border:1px solid var(--color-border);background:#1b1b1bfa;border-radius:12px;gap:0;display:grid;overflow:hidden;box-shadow:0 14px 28px #00000047}.rota-address-result{text-align:left;background:0 0;border:0;border-radius:0;justify-content:flex-start;width:100%;padding:.8rem .9rem}.rota-address-result+.rota-address-result{border-top:1px solid #ffffff14}.rota-address-result:hover,.rota-address-result:focus-visible{background:#ffffff0f}.rota-template-list{gap:.75rem;display:grid}.rota-template-card{border:1px solid var(--color-border);background:0 0;border-width:0 0 1px;border-radius:0;gap:.2rem;padding:.7rem 0;display:grid}.rota-template-preview{margin:0}.rota-planner-board{overflow:hidden}.rota-drag-user-strip{flex-wrap:wrap;gap:.6rem;display:flex}.rota-drag-user{border:1px solid var(--color-border);width:fit-content;color:var(--color-text);cursor:grab;background:#ffffff12;border-radius:999px;padding:.35rem .65rem;font-size:.84rem;display:inline-flex}.rota-drag-user.dragging{opacity:.5}.rota-planner-scroll{overflow-x:auto}.rota-planner-grid{grid-template-columns:220px repeat(7,minmax(140px,1fr));gap:.6rem;min-width:1160px;display:grid}.rota-planner-corner,.rota-planner-head,.rota-planner-jobcell,.rota-planner-dropcell{border:1px solid var(--color-border);background:#ffffff0a;border-radius:16px;padding:.75rem .85rem}.rota-planner-corner,.rota-planner-head{font-weight:700}.rota-planner-head{gap:.2rem;display:grid}.rota-planner-jobcell{align-content:start;gap:.25rem;display:grid}.rota-planner-dropcell{align-content:start;gap:.45rem;min-height:92px;transition:border-color .18s,background .18s;display:grid}.rota-planner-dropcell.active{background:#c4002e14;border-color:#c4002e61}.rota-planner-assignees{gap:.4rem;display:grid}.rota-planner-assignee-row{justify-content:space-between;align-items:center;gap:.4rem;display:flex}.rota-planner-footer{justify-content:center;align-items:center;gap:.35rem;padding:.15rem 0 0;display:flex}.rota-planner-footer .ghost-button{padding:.28rem .55rem;font-size:.78rem}.rota-planner-footer-label{background:0 0;border:0;align-items:center;padding:.15rem 0 0;font-weight:700;display:flex}.rota-planner-scheduled{cursor:grab;background:0 0;border-radius:0;padding:0}.rota-planner-scheduled.dragging{opacity:.5}.rota-planner-assignee{width:fit-content;color:var(--color-text);background:#ffffff14;border-radius:999px;padding:.35rem .65rem;font-size:.84rem;display:inline-flex}.rota-assignment-settings{min-width:auto;min-height:auto;color:var(--color-text-muted);background:0 0;border:none;border-radius:0;flex:none;padding:0}.rota-assignment-settings:hover{color:var(--color-text);background:0 0;transform:none}.rota-assignment-settings svg,.rota-user-job-location svg,.rota-user-job-comment-indicator svg{width:1rem;height:1rem}.rota-user-job-card{text-align:left;width:100%;box-shadow:none;background:0 0;position:relative}.rota-user-job-header{justify-content:space-between;gap:.5rem;font-weight:400;display:flex}.rota-user-job-location{color:var(--color-text-muted);align-items:center;gap:.45rem;display:flex}.rota-user-job-comment-indicator{color:#ffd8df;position:absolute;bottom:.7rem;right:.7rem}.rota-detail-backdrop{z-index:950;background:#0000006b;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.rota-detail-modal{gap:1rem;width:min(720px,100%);display:grid;position:relative}.rota-detail-modal .manager-header{gap:.5rem}.rota-detail-modal .section-heading{margin-bottom:0}.rota-detail-modal .rota-form{background:0 0;border:0;border-radius:0;gap:.7rem;padding:0}.rota-detail-modal .rota-form .split-fields,.rota-detail-modal .rota-form button,.rota-detail-modal .rota-form label+label{margin-top:.7rem}.rota-detail-modal .rota-form .entry-meta{margin:0}.popup-close-button{color:#f0b7c3;background:0 0;border:0;flex:none;justify-content:center;align-self:flex-start;align-items:center;width:2rem;height:2rem;margin-left:auto;padding:0;font-size:1rem;line-height:1;display:inline-flex}.rota-detail-grid{gap:.6rem;display:grid}.rota-detail-grid p{margin:0}.rota-detail-map{border:1px solid var(--color-border);border-radius:16px;min-height:220px;overflow:hidden}.rota-detail-map iframe{border:0;width:100%;height:220px}.rota-assignment-editor{margin-top:1rem}.rota-planner-empty{color:#ffffff73;font-size:.84rem}.rota-delete-zone{color:#ffffffb8;background:#ffffff08;border:1px dashed #fff3;border-radius:16px;justify-content:center;align-items:center;min-height:64px;font-weight:700;transition:border-color .18s,background .18s,color .18s;display:flex}.rota-delete-zone.active{color:#ffd8df;background:#c4002e1f;border-color:#c4002eb3}.rota-assignee-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.65rem;display:grid}.rota-assignee-item{border:1px solid var(--color-border);background:#ffffff08;border-radius:14px;align-items:center;gap:.55rem;padding:.7rem .8rem;display:flex}.rota-calendar{border:1px solid var(--color-border);background:#ffffff08;border-radius:22px;gap:0;display:grid;overflow:hidden}.rota-mobile-list,.rota-manager-mobile{display:none}.rota-mobile-day{border-bottom:1px solid #ffffff14;grid-template-columns:52px minmax(0,1fr);gap:.85rem;padding:.9rem .75rem;display:grid}.rota-mobile-day:last-child{border-bottom:0}.rota-mobile-date{color:#ffffffb8;align-content:start;justify-items:center;gap:.08rem;padding-top:.25rem;display:grid}.rota-mobile-weekday{text-transform:uppercase;letter-spacing:.08em;color:#7fb3ff;font-size:.7rem}.rota-mobile-datevalue{color:var(--color-text);font-size:1.45rem;line-height:1}.rota-mobile-jobs{border-left:1px solid #ffffff14;gap:.75rem;padding-left:.85rem;display:grid}.rota-mobile-job-card{background:#fff1;gap:.45rem;padding:.85rem .9rem;box-shadow:0 8px 20px #0000001f}.rota-mobile-job-time{font-size:.9rem;font-weight:700}.rota-mobile-empty{color:#ffffffad;background:#ffffff14;border-radius:999px;justify-self:center;margin:0;padding:.35rem .9rem;font-size:.85rem}.rota-manager-mobile-template-picker{gap:.35rem;display:grid}.rota-manager-mobile-day{align-items:start}.rota-manager-mobile-jobs{gap:.6rem}.rota-manager-mobile-day-header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.rota-manager-mobile-day-header strong{font-size:.92rem}.rota-manager-mobile-add-button{font-size:1.15rem;line-height:1}.rota-manager-mobile-add-menu,.rota-manager-mobile-assignees{gap:.45rem;display:grid}.rota-manager-mobile-add-menu{background:#ffffff09;border:1px solid #ffffff14;border-radius:14px;padding:.6rem .7rem}.rota-manager-mobile-add-user{text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:.7rem;width:100%;padding:0;display:flex}.rota-editor-actions{justify-content:space-between}.rota-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.rota-calendar-weekdays{background:#00000026;border-bottom:1px solid #ffffff14}.rota-calendar-weekday{border-right:1px solid #ffffff14;gap:.15rem;padding:.95rem .85rem;display:grid}.rota-calendar-weekday:last-child{border-right:0}.rota-calendar-weekday-name{text-transform:uppercase;letter-spacing:.08em;color:#f0b7c3;font-size:.8rem}.rota-calendar-weekday-date{font-size:.95rem;font-weight:700}.rota-calendar-days{align-items:stretch}.rota-calendar-day{background:linear-gradient(#ffffff0b,#ffffff05);border-right:1px solid #ffffff14;min-height:300px;padding:.9rem}.rota-calendar-day:last-child{border-right:0}.rota-calendar-body{align-content:start;gap:.75rem;display:grid}.rota-month-calendar .rota-calendar-weekday{min-height:54px}.rota-month-day-number{color:#ffffffb8;margin-bottom:.55rem;font-size:.82rem}.rota-month-calendar .rota-calendar-day.outside-month{background:linear-gradient(#ffffff05,#ffffff03)}.rota-month-calendar .rota-calendar-day.outside-month .rota-month-day-number{color:#ffffff52}.rota-month-job-card{color:var(--color-text);background:#ffffff0d;border-radius:10px;gap:.25rem;padding:.55rem .6rem}.rota-month-job-card .entry-meta{color:var(--color-text-muted);font-size:.76rem}.rota-month-job-title{font-size:.76rem;font-weight:700}@media (width>=721px){.rota-user-panel{gap:1.2rem}.rota-user-panel .manager-header{align-items:center;gap:1rem}.rota-user-panel .section-heading{min-width:160px}.rota-user-panel .rota-week-controls{flex:1;justify-content:center}.rota-fortnight-desktop{gap:1rem;display:grid}.rota-fortnight-week{border:1px solid var(--color-border);background:linear-gradient(#ffffff0b,#ffffff05),#ffffff08;border-radius:16px;gap:0;display:grid;overflow:hidden}.rota-fortnight-calendar .rota-mobile-list{display:none}.rota-user-panel .rota-calendar{box-shadow:none;background:0 0;border:none;border-radius:16px}.rota-user-panel .rota-calendar-weekdays{background:#00000026;border-bottom:1px solid #ffffff14}.rota-user-panel .rota-calendar-weekday{border-right:1px solid #ffffff14;min-height:52px;padding:.7rem .8rem}.rota-user-panel .rota-calendar-weekday-name{color:#f0b7c3;letter-spacing:.06em;font-size:.72rem}.rota-user-panel .rota-calendar-day{background:linear-gradient(#ffffff0b,#ffffff05);border-bottom:1px solid #ffffff14;border-right:1px solid #ffffff14;min-height:140px;padding:.65rem}.rota-user-panel .rota-month-day-number{color:#ffffffb8;margin-bottom:.45rem;font-size:.78rem;font-weight:700}.rota-user-panel .rota-calendar-body{gap:.45rem}.rota-user-panel .rota-month-job-card{background:#ffffff0d;border-radius:8px;padding:.45rem .55rem;box-shadow:0 8px 20px #0000001f}.rota-user-panel .rota-month-job-title{font-size:.74rem}.rota-user-panel .rota-month-job-card .entry-meta,.rota-user-panel .rota-mobile-job-time{font-size:.72rem}}.rota-job-card{background:#ffffff12;border:1px solid #ffffff14;border-radius:16px;gap:.45rem;padding:.95rem;display:grid;box-shadow:0 10px 20px #00000014}.rota-job-card.dragging{opacity:.45}.rota-drop-zone{transition:border-color .2s,background .2s}.rota-drop-zone:hover{border-color:#c4002e59}.rota-job-header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.rota-job-header h3{margin:0;font-size:.95rem}.rota-job-actions{align-items:center;gap:.5rem;display:flex}.rota-job-title-wrap{min-width:0}.rota-job-title-wrap .entry-meta{margin-top:.18rem}.compact-checkbox{align-items:center;gap:.35rem;font-size:.86rem;display:inline-flex}.icon-only-button{justify-content:center;align-items:center;width:2rem;height:2rem;padding:0;display:inline-flex}.icon-only-button svg{width:1rem;height:1rem}.rota-empty{color:#ffffffad;background:#ffffff14;border-radius:999px;justify-self:center;margin:0;padding:.35rem .9rem;font-size:.85rem}.ladder-checklist{gap:.75rem;display:grid}.ladder-check-row{border:1px solid var(--color-border);background:#ffffff0a;border-radius:14px;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem .85rem;display:flex}.ladder-toggle{min-width:3rem;min-height:3rem;padding:.5rem}.ladder-toggle.pass{color:#9fe0b1;background:#1199442e}.ladder-toggle.fail{color:#ffb1c1;background:#c4002e2e}.ladder-toggle.static{border-radius:999px;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.ladder-record-card .entry-meta{margin-top:.2rem}.ladder-public-report{gap:1rem;display:grid}.ladder-public-pairs,.ladder-public-checks{gap:.65rem;display:grid}.ladder-public-pairs p,.ladder-public-checks p{margin:0}.ladder-public-actions{margin-top:.25rem}.ladder-public-action{background:linear-gradient(135deg, #d10033, var(--color-accent));color:#fff5f7;border-radius:999px;justify-content:center;align-items:center;padding:.95rem 1.2rem;font-weight:700;text-decoration:none;transition:transform .12s,border-color .12s,background .12s;display:inline-flex}.ladder-public-action:hover{transform:translateY(-1px)}.user-admin-list{gap:1rem;display:grid}.user-admin-item{border:1px solid var(--color-border);background:#ffffff0a;border-radius:18px;overflow:hidden}.user-admin-summary{cursor:pointer;width:100%;color:inherit;text-align:left;background:0 0;border:none;border-radius:0;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.user-admin-body{gap:1rem;padding:0 1rem 1rem;display:grid}.role-badge{background:var(--color-accent-soft);color:#ffd8df;border-radius:999px;width:fit-content;padding:.25rem .6rem;font-size:.82rem;display:inline-flex}.role-color-dot{vertical-align:middle;border-radius:999px;width:.8rem;height:.8rem;margin-right:.55rem;display:inline-block;box-shadow:0 0 0 1px #ffffff29}.role-color-input{cursor:pointer;background:#ffffff0a;border-radius:14px;width:3rem;height:3rem;padding:.2rem}.role-color-input::-webkit-color-swatch-wrapper{padding:0}.role-color-input::-webkit-color-swatch{border:0;border-radius:10px}.role-color-input::-moz-color-swatch{border:0;border-radius:10px}.manager-table{gap:.7rem;display:grid}.permissions-matrix-wrap{overflow-x:auto}.permissions-matrix{grid-template-columns:minmax(120px,150px) repeat(9,minmax(82px,96px));gap:.45rem;min-width:max-content;display:grid}.permissions-head,.permissions-role-cell,.permissions-cell{border:1px solid var(--color-border);text-align:center;background:#ffffff0a;border-radius:14px;justify-content:center;align-items:center;min-height:48px;padding:.55rem;display:flex}.permissions-head,.permissions-role-cell{font-weight:700}.permissions-role-head,.permissions-role-cell{justify-content:flex-start}.permissions-role-cell strong{text-align:left;width:100%;font-weight:400}.permissions-cell input{width:1.1rem;height:1.1rem}.records-footer-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem;margin-top:1rem;display:flex}.table-head,.table-row{grid-template-columns:220px 1fr auto;align-items:stretch;gap:.7rem;display:grid}.month-head-grid,.month-grid{grid-template-columns:repeat(12,42px);gap:.7rem;display:grid}.personal-month-grid{grid-template-columns:repeat(12,minmax(0,1fr))}.personal-overview .table-head,.personal-overview .table-row{grid-template-columns:1fr}.full-width-head,.full-width-grid{width:100%}.table-head{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;padding-inline:.2rem;font-size:.8rem}.table-action-head,.table-row-action{justify-content:flex-end;align-items:center;display:flex}@media (width>=721px){.app-shell{width:calc(100vw - 2rem);max-width:1440px;padding-top:5.25rem}.toolbar-inline{padding:calc(.45rem + env(safe-area-inset-top)) 1rem .45rem;border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:none;background:linear-gradient(#303030f5,#181818e6)}.tab-strip{flex-wrap:nowrap;justify-content:flex-start;gap:.15rem}.toolbar-nav{width:100%}.tab-button{color:var(--color-text);background:0 0;border:0;border-radius:0;flex:none;padding:.25rem .35rem}.tab-button.active{color:var(--color-accent);background:0 0}.tab-button:hover,.tab-button:focus-visible{background:0 0;transform:none}.panel{border-radius:16px;padding:1rem}button,.ghost-button,.file-link{transition:background .12s,border-color .12s,box-shadow .12s,transform .12s}.entry-card,.toolbox-signature-card,.user-summary{border-radius:14px}.entry-body{border-top-color:var(--color-border)}.manager-header{align-items:center}}.user-summary,.month-cell{border:1px solid var(--color-border);background:#ffffff0a;border-radius:18px}.user-summary{gap:.35rem;padding:.95rem;display:grid}.user-summary span{color:var(--color-text-muted)}.month-cell{overflow:hidden}.compact-cell{place-items:center;gap:.1rem;min-height:56px;padding:0;display:grid}.compact-cell:disabled{opacity:1;cursor:default}.month-indicator{font-size:1.2rem;line-height:1}.month-label{color:var(--color-text-muted);font-size:.7rem;display:none}.compact-cell.has-entry{color:#ffd0d9}.compact-cell.empty{color:#bdbdbd}.month-cell summary{cursor:pointer;gap:.2rem;padding:.75rem;list-style:none;display:grid}.month-cell summary::-webkit-details-marker{display:none}.month-cell.has-entry{background:var(--color-accent-soft)}.month-cell.empty{opacity:.78}.month-detail{padding:0 .75rem .75rem}.manager-evidence-panel{border:1px solid var(--color-border);background:#ffffff0a;border-radius:18px;padding:1rem}.year-picker{width:120px}@media (width<=1100px){.auth-layout,.user-grid,.settings-grid{grid-template-columns:1fr}.manager-table{gap:1rem}.table-head,.table-row{grid-template-columns:1fr}.month-head-grid,.month-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.month-label{display:block}.table-head{display:none}}@media (width<=720px){.app-shell{width:100%;padding-top:1rem;padding-bottom:calc(6.75rem + env(safe-area-inset-bottom));margin:0}.toolbar,.manager-header,.entry-heading,.split-fields,.role-grid{grid-template-columns:1fr;display:grid}.toolbar,.entry-heading{justify-content:stretch}.manager-header{grid-template-columns:none;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.manager-header .section-heading{margin-bottom:0}.overview-actions,.records-footer-actions{justify-content:stretch}.align-right{text-align:left}.toolbar-inline{padding:.65rem .75rem calc(.65rem + env(safe-area-inset-bottom));border-bottom:none;border-top:1px solid var(--color-border);background:linear-gradient(#181818eb,#303030fa);top:auto;bottom:0}.toolbar-nav{-webkit-overflow-scrolling:touch;scrollbar-width:none;align-items:stretch;gap:.4rem;width:100%;display:flex;overflow:auto hidden}.toolbar-nav::-webkit-scrollbar{display:none}.tab-strip{flex-wrap:nowrap;justify-content:flex-start;gap:.4rem;width:max-content;min-width:max-content}.manager-top-nav{margin-top:0}.tab-button{border-radius:18px;flex:none;min-width:4.6rem;padding:.6rem .35rem}.tab-button-content{flex-direction:column;gap:.22rem;width:100%}.tab-button-icon{display:inline-flex}.tab-button-label{text-align:center;font-size:.72rem}.table-row{border:1px solid var(--color-border);background:#ffffff0a;border-radius:18px;padding:.9rem}.user-summary{background:0 0;border:none;padding:0}.month-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.compact-cell{min-height:64px}.rota-mobile-list{display:grid}.rota-manager-mobile{gap:.85rem;display:grid}.rota-address-lookup-field{grid-template-columns:1fr}.rota-calendar-grid,.rota-planner-board,.rota-delete-zone{display:none}.rota-mobile-day{grid-template-columns:52px minmax(0,1fr)}}
