:root{--page:#f3f8fb;--page-accent:#eef7ff;--surface:#fff;--surface-soft:#f7fafc;--surface-muted:#eff5f8;--sidebar-surface:#ffffffd1;--ink:#243242;--ink-soft:#435267;--ink-muted:#5a6b7b;--rule:#dce6ee;--rule-strong:#cad8e2;--accent:#24b8a8;--accent-strong:#0f766e;--accent-soft:#e3faf6;--accent-blue:#2e7cf6;--accent-blue-soft:#eaf2ff;--st-warn:#8a5200;--st-warn-soft:#fff2df;--st-danger:#b3261e;--st-danger-soft:#fff0ee;--st-ok:#176b4f;--st-ok-soft:#e8f8f0;--st-info:#1b5fd0;--st-info-soft:#eaf2ff;--font-sans:"Hiragino Sans", "Yu Gothic", "Noto Sans JP", sans-serif;--focus-ring:#2e7cf6b8;--focus-ring-soft:#2e7cf62e;--control-sm:40px;--control-md:44px;--control-lg:48px;--radius-xs:10px;--radius-sm:14px;--radius-md:20px;--radius-lg:28px;--shadow-sm:0 1px 2px #1b2f440d;--shadow-md:0 16px 40px #24436214;--shadow-lg:0 24px 70px #2443621f}.notification-route-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;display:grid}.notification-route-card{border:1px solid var(--rule);background:var(--surface-soft);border-radius:16px;gap:.9rem;padding:1rem;display:grid}.notification-route-card-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.notification-route-card-head h3{margin:.25rem 0 0}.notification-route-preview{overflow-wrap:anywhere;white-space:pre-wrap;background:var(--surface);font:inherit;border-radius:12px;margin:0;padding:.9rem}.notification-route-form{gap:.75rem;display:grid}.notification-route-form label{gap:.35rem;display:grid}*{box-sizing:border-box}html{font-family:var(--font-sans);line-height:1.6}body{background:radial-gradient(circle at top left, #24b8a814, transparent 28%), radial-gradient(circle at right top, #2e7cf614, transparent 24%), linear-gradient(180deg, #f7fbfe 0%, var(--page) 44%, #edf4f8 100%);color:var(--ink);margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;outline:none}:where(a[href],button,input,select,textarea,summary,[role=button],[tabindex]:not([tabindex="-1"])):focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;box-shadow:0 0 0 5px var(--focus-ring-soft)}:where(input,select,textarea):focus-visible{border-color:#2e7cf6ad}button{touch-action:manipulation}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{color:var(--accent-strong);letter-spacing:.1em;text-transform:uppercase;margin:0 0 .35rem;font-size:.74rem;font-weight:700}.button{min-height:var(--control-md);cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:.66rem 1rem;font-size:.88rem;font-weight:700;transition:transform .12s,box-shadow .12s,background-color .12s,border-color .12s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button-primary{color:#fff;background:var(--accent-strong);box-shadow:0 10px 24px #0f766e33}.button-secondary{color:var(--ink);border-color:var(--rule);background:#ffffffeb}.button-danger{color:var(--st-danger);background:#fff;border-color:#b3261e57}.button-danger-fill{color:#fff;background:var(--st-danger);border-color:var(--st-danger);box-shadow:0 10px 24px #b3261e33}.legal-page{min-height:100dvh;color:var(--ink);background:linear-gradient(#e8f7f6c7,#f8fbfff2),#f7fafc;padding:2.5rem 1rem}.legal-shell{background:#fffffff5;border:1px solid #cad8e2d1;border-radius:8px;width:min(880px,100%);margin:0 auto;padding:clamp(1.25rem,4vw,2.5rem);box-shadow:0 22px 60px #3f546c1f}.legal-eyebrow{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .45rem;font-size:.78rem;font-weight:900}.legal-shell h1{margin:0;font-size:clamp(1.9rem,5vw,2.8rem);line-height:1.15}.legal-lead{color:var(--ink-soft);margin:1rem 0 1.8rem;font-size:1rem;line-height:1.8}.legal-shell section{border-top:1px solid #cad8e2b8;padding:1.25rem 0}.legal-shell h2{margin:0 0 .55rem;font-size:1.05rem}.legal-shell p,.legal-shell li{color:var(--ink-soft);font-size:.94rem;line-height:1.78}.legal-shell p{margin:.45rem 0 0}.legal-shell ul{margin:.6rem 0 0;padding-left:1.2rem}.legal-updated{color:var(--ink-muted);margin-top:1.4rem;font-size:.84rem;font-weight:800}.legal-back-link{border:1px solid var(--rule);min-height:42px;color:var(--ink);background:#fff;border-radius:999px;justify-content:center;align-items:center;margin-top:1rem;padding:.6rem 1rem;font-weight:900;text-decoration:none;display:inline-flex}.legal-link-list{flex-wrap:wrap;gap:.75rem 1.1rem;margin-top:1.5rem;font-weight:850;display:flex}.legal-link-list a{color:var(--accent);text-underline-offset:.18em;text-decoration:underline}.break-anywhere{overflow-wrap:anywhere;word-break:break-word}.button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.admin-app{color:#243242;--admin-radius:18px;--admin-radius-sm:14px;--admin-shadow:0 12px 34px #1f364e0e;--admin-card-border:#cad8e294;background:radial-gradient(circle at 16% 0,#24b8a814,#0000 28%),linear-gradient(#fbfdff 0%,#f5f8fb 100%);grid-template-columns:236px minmax(0,1fr);min-height:100dvh;display:grid}.sidebar{z-index:20;overscroll-behavior:contain;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fbfdffd1;border-right:1px solid #cad8e280;flex-direction:column;align-self:start;gap:.72rem;height:100dvh;max-height:100dvh;padding:1rem .75rem .85rem;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-panel{border-radius:var(--admin-radius);box-shadow:none;background:#ffffffbd;border:1px solid #cad8e275;padding:.82rem .86rem}.brand{flex-direction:column;gap:.2rem;margin-bottom:.7rem;display:flex}.brand-logo-image{width:100%;height:auto;display:block}.sidebar-brand-logo{width:100%;max-width:170px}.brand-mark{letter-spacing:-.03em;font-size:1.35rem;font-weight:800;display:block}.brand-copy{color:var(--ink-muted);overflow-wrap:anywhere;font-size:.92rem}.workspace-badge{color:var(--accent-strong);background:#e3faf6db;border-radius:999px;align-items:center;gap:.4rem;padding:.38rem .62rem;font-size:.74rem;font-weight:700;display:inline-flex}.viewer-card{flex-direction:column;gap:.3rem;display:flex}.viewer-card-label{color:var(--ink-muted);margin:0;font-size:.8rem;font-weight:600}.viewer-card strong{overflow-wrap:anywhere;font-size:.96rem}.viewer-card span{color:var(--ink-soft);overflow-wrap:anywhere;font-size:.82rem}.viewer-role-list{flex-wrap:wrap;gap:.45rem;margin-top:.35rem;display:flex}.viewer-card-summary{color:var(--ink-muted);margin:.35rem 0 0;font-size:.8rem;font-weight:700}.viewer-role-pill{background:var(--surface);border:1px solid var(--rule);color:var(--ink-soft);border-radius:999px;align-items:center;padding:.28rem .54rem;font-size:.72rem;font-weight:700;display:inline-flex}.sidebar-staff-link{border-radius:var(--admin-radius);color:var(--ink);background:#fff;border:1px solid #2e7cf62e;flex-direction:column;gap:.12rem;padding:.78rem .9rem;display:flex}.sidebar-staff-link span{color:var(--ink-muted);font-size:.74rem;font-weight:800}.sidebar-staff-link strong{color:var(--accent-blue);font-size:.9rem;font-weight:850}.sidebar-section-title{color:var(--ink-muted);letter-spacing:.08em;text-transform:uppercase;margin:.18rem 0 0 .35rem;font-size:.7rem;font-weight:700}.sidebar-nav{flex-direction:column;gap:.28rem;display:flex}.nav-link{border-radius:var(--admin-radius-sm);color:var(--ink-soft);border:1px solid #0000;grid-template-columns:26px minmax(0,1fr);align-items:center;gap:.56rem;padding:.64rem .68rem;transition:background-color .14s,border-color .14s,box-shadow .14s,color .14s;display:grid}.nav-link:hover{background:#ffffffc7;border-color:#cad8e28c}.nav-link.is-active{box-shadow:inset 3px 0 0 var(--accent-blue), 0 10px 24px #2e7cf60f;color:var(--ink);background:#fff;border-color:#2e7cf62e}.nav-link-staff{color:var(--ink);background:#f3fbf9;border-color:#24b8a833}.nav-link-staff .nav-icon{color:var(--accent-strong);background:#fff}.nav-link-staff strong{color:var(--accent-strong)}.nav-icon{width:26px;height:26px;color:var(--accent-blue);background:#f4f7fa;border-radius:10px;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.nav-copy{flex-direction:column;min-width:0;display:flex}.nav-copy strong{font-size:.9rem}.nav-copy small{color:var(--ink-muted);font-size:.74rem}.admin-content{flex-direction:column;min-width:0;display:flex}.topbar{z-index:10;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fbfdffd6;border-bottom:1px solid #cad8e280;padding:.68rem 1.6rem .58rem;position:sticky;top:0}.topbar-inner{justify-content:space-between;align-items:flex-start;gap:1rem;width:min(1560px,100%);margin:0 auto;display:flex}.topbar-main{flex-direction:column;gap:.1rem;display:flex}.topbar-kicker{color:var(--accent-strong);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:850}.topbar-title{letter-spacing:-.03em;margin:0;font-size:1.02rem;font-weight:800}.topbar-subtitle{color:var(--ink-muted);margin:0;font-size:.8rem}.topbar-actions{flex-wrap:wrap;gap:.55rem;display:flex}.chip-link-home{color:var(--accent-blue);background:var(--st-info-soft);border-color:#2e7cf62e}.chip-link,.status-badge{border:1px solid var(--rule);white-space:nowrap;word-break:keep-all;background:#fff;border-radius:999px;flex:none;justify-content:center;align-items:center;min-height:30px;padding:.28rem .72rem;font-size:.76rem;font-weight:700;display:inline-flex}.chip-link,.status-badge.tone-neutral{color:var(--ink-soft)}.status-badge.tone-warn{color:var(--st-warn);background:var(--st-warn-soft);border-color:#d288222e}.status-badge.tone-danger{color:var(--st-danger);background:var(--st-danger-soft);border-color:#d8615833}.status-badge.tone-info{color:var(--st-info);background:var(--st-info-soft);border-color:#2e7cf62e}.status-badge.tone-ok{color:var(--st-ok);background:var(--st-ok-soft);border-color:#1f8c672e}.main-content{padding:1.35rem 1.6rem 2rem}.main-frame{width:min(1560px,100%);margin:0 auto}.main-frame>:not(.page-head)+:not(.page-head){margin-top:1.05rem}.main-frame.is-narrow{width:min(1320px,100%)}.page-head{border-bottom:0;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.2rem;padding-bottom:.15rem;display:flex}.page-title{letter-spacing:-.04em;margin:0;font-size:clamp(1.55rem,2.4vw,2rem);font-weight:800}.page-description{max-width:48rem;color:var(--ink-muted);margin:.3rem 0 0;font-size:.92rem}.page-actions{flex-wrap:wrap;gap:.55rem;display:flex}.download-action{flex-direction:column;align-items:flex-start;gap:.35rem;display:inline-flex}.section-actions,.inline-action-form,.compact-inline-form{flex-wrap:wrap;align-items:center;gap:.55rem;display:inline-flex}.section-actions{justify-content:flex-end}.compact-inline-form input,.compact-inline-form select{border:1px solid var(--rule);min-height:38px;color:var(--ink);background:#fff;border-radius:999px;padding:.62rem .9rem}.shift-period-toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.7rem;display:flex}.shift-period-switch-form,.shift-period-create-form{background:#ffffffd1;border:1px solid #7e96b047;border-radius:18px;flex-wrap:wrap;align-items:center;gap:.45rem;padding:.38rem;display:inline-flex}.shift-period-create-form{background:#2f77f412}.shift-period-create-note{color:var(--ink-muted);flex:100%;margin:.1rem 0 0;font-size:.76rem;line-height:1.45}.shift-period-switch-form>label,.shift-period-create-form label,.shift-period-form-title{color:var(--ink-muted);white-space:nowrap;align-items:center;gap:.35rem;font-size:.78rem;font-weight:850;display:inline-flex}.shift-period-toolbar input,.shift-period-toolbar select{border:1px solid var(--rule);min-height:40px;color:var(--ink);font:inherit;background:#fff;border-radius:12px;padding:.5rem .72rem;font-weight:780}.shift-period-switch-form select{min-width:260px;max-width:min(46vw,380px)}.shift-period-create-form input{width:88px}.shift-period-create-form select{min-width:82px}.shift-period-toolbar .button{white-space:nowrap;min-height:40px}.system-settings-nav{border:1px solid var(--rule);background:var(--surface-soft);border-radius:18px;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:0 0 18px;padding:5px;display:grid}.system-settings-nav-item{min-height:66px;color:var(--ink);border:1px solid #0000;border-radius:13px;gap:4px;padding:10px 11px;text-decoration:none;display:grid}.system-settings-nav-item span{color:var(--ink-muted);font-size:.76rem;font-weight:800}.system-settings-nav-item strong{font-size:.9rem}.system-settings-nav-item:hover,.system-settings-nav-item:focus-visible{border-color:var(--accent);background:var(--surface)}.system-settings-section{margin-top:18px;scroll-margin-top:18px}.shift-work-mode-strip{border:1px solid var(--rule);background:var(--surface);border-radius:20px;gap:12px;margin:0 0 18px;padding:16px;display:grid}.shift-work-mode-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.shift-work-mode-heading h2,.shift-work-mode-heading .eyebrow{margin:0}.shift-work-mode-heading h2{font-size:1.18rem}.shift-work-mode-heading .eyebrow{margin-bottom:3px}.shift-work-mode-nav{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.shift-work-mode-link{border:1px solid var(--rule);background:var(--surface-soft);min-height:68px;color:var(--ink);border-radius:14px;gap:4px;padding:11px 12px;text-decoration:none;display:grid}.shift-work-mode-link strong{font-size:.96rem}.shift-work-mode-link small{color:var(--ink-muted);font-size:.75rem;line-height:1.4}.shift-work-mode-link:hover,.shift-work-mode-link:focus-visible,.shift-work-mode-link.is-active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 9%, var(--surface))}.shift-work-mode-link.is-active{box-shadow:inset 0 -3px 0 var(--accent)}.shift-work-mode-link.is-unavailable{opacity:.68}.dashboard-grid,.two-column-grid,.three-column-grid,.metric-grid{gap:1rem;display:grid}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.dashboard-grid{grid-template-columns:minmax(0,1.4fr) minmax(320px,1fr)}.two-column-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.three-column-grid{grid-template-columns:300px minmax(0,1fr) 320px}.employee-detail-layout{grid-template-columns:minmax(280px,340px) minmax(0,1fr);align-items:start;gap:1.15rem;display:grid}.employee-detail-sidebar,.employee-detail-main{flex-direction:column;gap:1.1rem;min-width:0;display:flex}.employee-detail-overview-grid{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:1.1rem;display:grid}.section-card,.metric-card,.hero-card,.table-card,.form-card,.profile-card,.sign-panel,.empty-state{background:#ffffffeb;border:1px solid #cad8e2d9;border-radius:18px;box-shadow:0 10px 26px #2443620f}.admin-app .section-card,.admin-app .metric-card,.admin-app .table-card,.admin-app .form-card,.admin-app .profile-card,.admin-app .empty-state{border-color:var(--admin-card-border);border-radius:var(--admin-radius);box-shadow:var(--admin-shadow);background:#ffffffe6}.admin-app .button{border-radius:999px;min-height:36px;padding:.56rem .88rem}.admin-app .button-primary{background:var(--accent-blue);box-shadow:none}.admin-app .button-secondary{background:#ffffffd6}.admin-app .task-row,.admin-app .list-row,.admin-app .linked-row,.admin-app .access-user-card,.admin-app .comparison-panel,.admin-app .decision-action-grid .access-role-form,.admin-app .workspace-card,.admin-app .template-download-card,.admin-app .template-import-note,.admin-app .role-checkbox-pill{border-radius:var(--admin-radius-sm);box-shadow:none}.admin-app .section-card>div>.table-card,.admin-app .section-card>div>.form-card{box-shadow:none;background:#f8fbfd9e;border-color:#dce6eeb8}.section-card,.table-card,.form-card,.profile-card,.sign-panel,.empty-state{padding:1.15rem}.section-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.section-head h3,.empty-state h3{letter-spacing:-.02em;margin:0;font-size:1.18rem;font-weight:800}.section-head p,.empty-state p,.metric-note,.data-note{color:var(--ink-muted);margin:.25rem 0 0;font-size:.9rem}.metric-card{min-height:116px;padding:.92rem 1rem;position:relative;overflow:hidden}.metric-card:before{content:"";background:var(--accent-blue);width:4px;position:absolute;inset:0 auto 0 0}.metric-card.tone-warn:before{background:var(--st-warn)}.metric-card.tone-danger:before{background:var(--st-danger)}.metric-card.tone-ok:before{background:var(--st-ok)}.metric-label{color:var(--ink-muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:700}.metric-value{letter-spacing:-.04em;margin:.3rem 0 .15rem;font-size:1.72rem;font-weight:800}.metric-card.tone-warn .metric-value{color:var(--st-warn)}.metric-card.tone-danger .metric-value{color:var(--st-danger)}.metric-card.tone-ok .metric-value{color:var(--st-ok)}.hero-card{color:#fff;background:radial-gradient(circle at 100% 0,#ffffff2e,#0000 22%),linear-gradient(135deg,#2f7df4 0%,#24b8a8 100%);padding:1.25rem;position:relative;overflow:hidden}.hero-card:after{content:"";background:#ffffff1a;border-radius:999px;width:220px;height:220px;position:absolute;inset:auto -6% -35% auto}.hero-card h2,.hero-card h3,.hero-card p{z-index:1;margin:0;position:relative}.hero-card h2{letter-spacing:-.04em;font-size:1.72rem;font-weight:800}.hero-card p{color:#ffffffe0;max-width:42rem;margin-top:.45rem}.hero-cta{z-index:1;flex-wrap:wrap;gap:.7rem;margin-top:1rem;display:flex;position:relative}.task-list,.plain-list,.linked-list{flex-direction:column;gap:.6rem;display:flex}.admin-priority-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:0;display:grid}.admin-priority-card{border-radius:var(--admin-radius);min-height:132px;box-shadow:var(--admin-shadow);background:linear-gradient(#fffffff0,#f8fbfde6);border:1px solid #cad8e28a;flex-direction:column;justify-content:space-between;gap:.65rem;padding:1rem 1.05rem;transition:border-color .14s,transform .14s,box-shadow .14s;display:flex;position:relative}.admin-priority-card:hover{border-color:#2e7cf642;transform:translateY(-1px);box-shadow:0 16px 38px #1f364e14}.admin-priority-card span{color:var(--ink-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.74rem;font-weight:850}.admin-priority-card strong{color:var(--ink);letter-spacing:-.025em;font-size:1.1rem;font-weight:850;line-height:1.35}.admin-priority-card small{color:var(--ink-muted);font-size:.84rem;font-weight:650;line-height:1.5}.admin-priority-card.tone-warn{background:linear-gradient(#fffdf9f5,#fffaf2e6);border-color:#d2882233}.admin-priority-card.tone-danger{background:linear-gradient(#fffbfaf5,#fff7f6e6);border-color:#d8615833}.admin-priority-card.tone-ok{background:linear-gradient(#fafffcf5,#f4fbf7e6);border-color:#1f8c672e}.admin-priority-card.tone-info{background:linear-gradient(#fafdfff5,#f5f9ffe6);border-color:#2e7cf62e}.admin-priority-card.tone-neutral{background:linear-gradient(#fffffff0,#f8fbfde6)}.admin-flow-links{flex-wrap:wrap;gap:.6rem;margin-top:.95rem;display:flex}.action-summary{border-radius:var(--admin-radius);box-shadow:var(--admin-shadow);background:#ffffffeb;border:1px solid #cad8e2c7;border-left-width:5px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1rem 1.12rem;display:grid}.action-summary.tone-info{border-left-color:var(--st-info);background:linear-gradient(#fffffff5,#f5f9ffe6)}.action-summary.tone-warn{border-color:#d2882252;border-left-color:var(--st-warn);background:linear-gradient(#fffefafa,#fff9eeeb)}.action-summary.tone-danger{border-color:#d861584d;border-left-color:var(--st-danger);background:linear-gradient(#fffcfbfa,#fff4f2eb)}.action-summary.tone-ok{border-color:#1f8c673d;border-left-color:var(--st-ok);background:linear-gradient(#fffffffa,#f4fbf7eb)}.action-summary h3{color:var(--ink);letter-spacing:-.02em;margin:0;font-size:1.08rem;font-weight:850}.action-summary p{color:var(--ink-soft);margin:.32rem 0 0;font-size:.9rem}.action-summary-chips,.action-summary-actions{flex-wrap:wrap;gap:.48rem;display:flex}.action-summary-chips{margin-top:.72rem}.action-summary-actions{justify-content:flex-end}.task-row,.list-row,.linked-row{background:#f8fbfdb8;border:1px solid #dce6eec7;border-radius:16px;justify-content:space-between;align-items:flex-start;gap:.85rem;padding:.86rem .95rem;display:flex}.task-row>div,.list-row>div,.linked-row>div{min-width:0}.task-row .task-copy h4,.linked-row h4,.list-row h4,.profile-card h3{letter-spacing:-.02em;overflow-wrap:anywhere;margin:0;font-size:.98rem;font-weight:800}.linked-row p,.list-row p,.task-row p,.table-cell-note{overflow-wrap:anywhere}.task-row .task-copy p,.linked-row p,.list-row p{color:var(--ink-muted);margin:.28rem 0 0;font-size:.86rem}.workspace-inline-heading{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.access-card-grid,.workspace-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;display:grid}.workspace-card{border:1px solid var(--rule);background:var(--surface-soft);border-radius:16px;flex-direction:column;gap:.85rem;padding:.95rem;display:flex}.workspace-card-head{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.workspace-card-role{color:var(--accent-strong);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .2rem;font-size:.78rem;font-weight:800}.workspace-card-head h4{margin:0;font-size:1rem;font-weight:800}.workspace-card-head p:last-child{color:var(--ink-muted);margin:.28rem 0 0;font-size:.86rem}.workspace-card-tasks{flex-direction:column;gap:.55rem;display:flex}.workspace-card-tasks .task-row{padding:.72rem .78rem}.workspace-card-actions{justify-content:flex-end;display:flex}.access-user-card{border:1px solid var(--rule);background:var(--surface-soft);border-radius:16px;padding:.95rem}.access-user-head{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.access-user-head h3{margin:0;font-size:.98rem;font-weight:800}.access-user-head p{color:var(--ink-muted);margin:.2rem 0 0;font-size:.84rem}.comparison-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin-top:.85rem;display:grid}.comparison-panel{border:1px solid var(--rule);background:#ffffffeb;border-radius:16px;padding:.82rem .9rem}.comparison-panel.is-after{background:var(--st-info-soft);border-color:#2e7cf633}.comparison-label{color:var(--ink-muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.74rem;font-weight:800}.comparison-panel h4{margin:.35rem 0 0;font-size:.98rem;font-weight:800}.comparison-panel p{color:var(--ink-muted);margin:.24rem 0 0;font-size:.84rem}.comparison-note{color:var(--st-danger);font-weight:700}.access-inline-meta{margin-top:.75rem}.access-inline-meta p{color:var(--ink-muted);margin:0;font-size:.82rem}.access-role-form{margin-top:.85rem}.decision-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-top:.9rem;display:grid}.decision-action-grid .access-role-form{border:1px solid var(--rule);background:#ffffffdb;border-radius:16px;margin-top:0;padding:.8rem}.operation-board{grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;display:grid}.operation-step{border:1px solid var(--rule);background:#fff;border-radius:18px;min-height:138px;padding:.95rem;position:relative;overflow:hidden}.admin-app .operation-step{border-radius:var(--admin-radius);box-shadow:var(--admin-shadow)}.operation-step:before{content:"";background:var(--rule);width:5px;position:absolute;inset:0 auto 0 0}.operation-step-kicker{color:var(--ink-muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:800}.operation-step strong{letter-spacing:-.05em;margin-top:.52rem;font-size:1.55rem;font-weight:850;display:block}.operation-step span{color:var(--ink-muted);margin-top:.35rem;font-size:.84rem;line-height:1.55;display:block}.operation-step.tone-danger{background:#fff7f6;border-color:#d8615838}.operation-step.tone-danger:before{background:var(--st-danger)}.operation-step.tone-warn{background:#fffaf2;border-color:#d2882238}.operation-step.tone-warn:before{background:var(--st-warn)}.operation-step.tone-info{background:#f5f9ff;border-color:#2e7cf62e}.operation-step.tone-info:before{background:var(--st-info)}.operation-step.tone-ok{background:#f4fbf7;border-color:#1f8c672e}.operation-step.tone-ok:before{background:var(--st-ok)}.operation-step.tone-neutral:before{background:#7b8b9abd}.template-downloads{gap:.9rem;display:grid}.template-download-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;display:grid}.template-download-card{border:1px solid var(--rule);background:#fff;border-radius:18px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.75rem;min-height:184px;padding:.95rem;display:grid;position:relative}.template-download-step{width:34px;height:34px;color:var(--accent-strong);background:var(--accent-soft);border-radius:12px;justify-content:center;align-items:center;font-size:.88rem;font-weight:850;display:inline-flex}.template-download-copy{min-width:0}.template-download-copy h4{letter-spacing:-.02em;margin:0;font-size:1rem;font-weight:850}.template-download-copy p{color:var(--ink-muted);margin:.32rem 0 0;font-size:.86rem;line-height:1.55}.template-download-copy small{color:var(--ink-soft);margin-top:.55rem;font-size:.78rem;font-weight:700;line-height:1.5;display:block}.template-download-card .button{grid-column:1/-1;align-self:end}.template-import-note{background:var(--st-info-soft);border:1px solid #2e7cf629;border-radius:18px;justify-content:space-between;align-items:center;gap:.85rem;padding:.85rem .95rem;display:flex}.template-import-note strong{font-size:.9rem;display:block}.template-import-note p{color:var(--ink-muted);margin:.22rem 0 0;font-size:.84rem}.template-import-note code{white-space:nowrap}.role-checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;display:grid}.role-checkbox-pill{border:1px solid var(--rule);color:var(--ink-soft);background:#fff;border-radius:14px;align-items:center;gap:.55rem;padding:.65rem .75rem;font-size:.84rem;font-weight:700;display:flex;position:relative}.role-checkbox-pill input{width:16px;height:16px;margin:0}.checkbox-card{border:1px solid var(--rule);color:var(--ink);background:#fff;border-radius:16px;align-items:flex-start;gap:.7rem;padding:.8rem .85rem;display:flex}.checkbox-card input{width:17px;height:17px;margin-top:.15rem}.checkbox-card span{gap:.2rem;display:grid}.checkbox-card small{color:var(--ink-muted);font-size:.8rem;font-weight:650;line-height:1.5}.role-help{margin-left:auto;position:relative}.role-help-trigger{width:22px;height:22px;color:var(--ink-muted);cursor:help;background:#f7fafc;border:1px solid #76889e59;border-radius:999px;place-items:center;font-size:.78rem;line-height:1;display:inline-grid}.role-help-panel{z-index:20;border:1px solid var(--rule);width:min(280px,72vw);color:var(--ink);opacity:0;pointer-events:none;background:#fff;border-radius:12px;padding:.75rem .85rem;font-size:.8rem;font-weight:700;line-height:1.65;transition:opacity .16s,transform .16s;position:absolute;bottom:calc(100% + .55rem);right:-.3rem;transform:translateY(4px);box-shadow:0 16px 36px #1b2f4424}.role-help:hover .role-help-panel,.role-help:focus-within .role-help-panel{opacity:1;transform:translateY(0)}.task-row.tone-danger{background:#fff7f6;border-color:#d861583d}.task-row.tone-warn{background:#fffaf2;border-color:#d288223d}.task-row.tone-info{background:#f5f9ff;border-color:#2e7cf638}.task-row.tone-ok{background:#f4fbf7;border-color:#1f8c6738}.table-card{overflow:hidden}.data-table{border-collapse:separate;border-spacing:0;width:100%}.data-table th,.data-table td{border-bottom:1px solid var(--rule);text-align:left;vertical-align:top;padding:.78rem .7rem}.data-table thead th{z-index:1;background:var(--surface-soft);color:var(--ink-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.78rem;font-weight:800;position:sticky;top:0}.data-table tbody tr:hover td{background:#f8fbfd}.data-table tr:last-child td{border-bottom:none}.table-cell-note{color:var(--ink-muted);margin:.25rem 0 0;font-size:.82rem}.table-cell-note.is-alert{color:var(--st-danger);font-weight:700}.desktop-only{display:table}.mobile-only{display:none}.table-actions{flex-wrap:wrap;gap:.5rem;display:flex}.search-bar,.field input,.field select,.field textarea{border:1px solid var(--rule);width:100%;color:var(--ink);background:#fff;border-radius:12px;padding:.74rem .85rem;box-shadow:inset 0 1px 1px #24436205}.field input[readonly]{background:var(--surface-soft);color:var(--ink-soft)}.field{flex-direction:column;gap:.45rem;display:flex}.field label{color:var(--ink-soft);font-size:.88rem;font-weight:700}.field-note{color:var(--ink-muted);margin:0;font-size:.84rem}.field-error{color:var(--st-danger);margin:0;font-size:.8rem;font-weight:700}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;display:grid}.form-grid .field.span-2{grid-column:span 2}.form-actions{flex-wrap:wrap;justify-content:flex-end;gap:.75rem;margin-top:1.25rem;display:flex}.audit-filter-form{gap:1rem;display:grid}.audit-filter-grid{align-items:end}.audit-filter-actions{margin-top:0}.audit-diff-details{color:var(--ink-muted);margin-top:.35rem;font-size:.78rem;font-weight:650}.audit-diff-details summary{cursor:pointer;color:var(--accent-blue);font-weight:800;display:inline-flex}.audit-diff-details ul{margin:.35rem 0 0;padding-left:1rem}.audit-diff-details li{overflow-wrap:anywhere;margin:.16rem 0}.kv-list{gap:.6rem;display:grid}.kv-row{border-bottom:1px dashed var(--rule-strong);grid-template-columns:minmax(6.5rem,38%) minmax(0,1fr);align-items:flex-start;gap:1rem;padding-bottom:.78rem;display:grid}.kv-row:last-child{border-bottom:none;padding-bottom:0}.kv-row dt{min-width:0;color:var(--ink-muted);font-size:.88rem}.kv-row dd{text-align:right;min-width:0;max-width:none;color:var(--ink);overflow-wrap:anywhere;margin:0;font-weight:600}.employee-app{min-height:100dvh;padding:1rem 1rem 1.5rem}.employee-header{justify-content:space-between;align-items:flex-end;gap:1rem;max-width:1120px;margin-bottom:.8rem;margin-left:auto;margin-right:auto;padding:1rem 1rem 0;display:flex}.employee-heading{flex-direction:column;min-width:0;display:flex}.employee-title{letter-spacing:0;overflow-wrap:anywhere;margin:0;font-size:1.58rem;font-weight:800}.employee-subtitle{color:var(--ink-muted);overflow-wrap:anywhere;margin:.24rem 0 0;font-size:.9rem}.employee-header-actions{flex-wrap:wrap;gap:.65rem;display:flex}.employee-content{flex-direction:column;gap:1rem;width:100%;max-width:1120px;margin:0 auto;display:flex}.bottom-tab-nav{padding:.55rem .55rem calc(.55rem + env(safe-area-inset-bottom,0px));box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:20;background:#ffffffeb;border:1px solid #cad8e2cc;border-radius:24px;justify-content:space-around;gap:.55rem;display:none;position:fixed;bottom:.9rem;left:.9rem;right:.9rem}.bottom-tab-link{text-align:center;min-width:0;min-height:46px;color:var(--ink-soft);white-space:nowrap;word-break:keep-all;border-radius:18px;flex:1;justify-content:center;align-items:center;padding:.72rem .45rem;font-size:.86rem;font-weight:700;display:inline-flex}.bottom-tab-link:hover{background:var(--surface-soft)}.bottom-tab-link.is-active{color:var(--st-info);background:var(--st-info-soft);box-shadow:inset 0 -3px 0 var(--st-info)}.shortcut-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;display:grid}.shortcut-item{border:1px solid var(--rule);background:linear-gradient(180deg, #fff 0%, var(--surface-soft) 100%);text-align:center;min-height:82px;box-shadow:var(--shadow-sm);border-radius:16px;justify-content:center;align-items:center;padding:.85rem .75rem;font-weight:700;display:flex}.staff-timecard-page{flex-direction:column;gap:1rem;width:min(100%,600px);margin:0 auto;display:flex}.attendance-language-switcher{color:var(--ink-muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:.45rem;font-size:.78rem;font-weight:800;display:flex}.language-chip{color:var(--ink-muted);box-shadow:var(--shadow-sm);background:#ffffffdb;border:1px solid #cad8e2f2;border-radius:999px;padding:.42rem .7rem;text-decoration:none}.language-chip.is-active{color:var(--accent-strong);background:#e3faf6e6;border-color:#0f766e47}.attendance-month-switcher{z-index:12;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f4fafaeb;border:1px solid #cad8e294;border-radius:18px;margin:-.32rem -.42rem 0;display:grid;position:sticky;top:.75rem;overflow:hidden;box-shadow:0 12px 28px #24436214}.attendance-month-switcher summary{min-height:42px;color:var(--ink);cursor:pointer;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.5rem;padding:.5rem .72rem;font-weight:850;list-style:none;display:grid}.attendance-month-switcher summary::-webkit-details-marker{display:none}.attendance-month-switcher summary:after{content:"⌄";color:var(--ink-muted);font-size:.82rem;font-weight:900;line-height:1;transition:transform .16s}.attendance-month-switcher[open] summary:after{transform:rotate(180deg)}.attendance-month-switcher summary span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.attendance-month-switcher summary em{min-height:24px;color:var(--ink-muted);white-space:nowrap;background:#ffffffd1;border-radius:999px;justify-content:center;align-items:center;padding:.16rem .48rem;font-size:.7rem;font-style:normal;line-height:1.15;display:inline-flex}.attendance-month-switcher[open] nav{gap:.65rem;padding:0 .42rem .42rem;display:grid}.attendance-month-primary{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.attendance-month-primary.is-single{grid-template-columns:minmax(0,1fr)}.attendance-month-chip{min-width:0;color:var(--ink-muted);box-shadow:var(--shadow-sm);background:#ffffffe6;border:1px solid #cad8e2e6;border-radius:14px;flex-direction:column;gap:.12rem;padding:.72rem .82rem;text-decoration:none;display:flex}.attendance-month-chip.needs-review{background:linear-gradient(#fff4f2fa 0%,#fffffff5 100%);border-color:#d861583d}.attendance-month-chip span{letter-spacing:.02em;font-size:.72rem;font-weight:800}.attendance-month-chip strong{overflow-wrap:anywhere;color:var(--ink);font-size:.98rem;line-height:1.2}.attendance-month-chip em{width:fit-content;color:var(--ink-muted);background:#eff5f8eb;border-radius:999px;margin-top:.18rem;padding:.16rem .46rem;font-size:.68rem;font-style:normal;font-weight:850;line-height:1.2}.attendance-month-chip.needs-review em{background:var(--st-danger-soft);color:var(--st-danger)}.attendance-month-chip.is-active{background:#e3faf6e6;border-color:#0f766e52}.attendance-month-compact{color:var(--ink-muted);flex-wrap:wrap;align-items:center;gap:.45rem;font-size:.78rem;font-weight:800;display:flex}.attendance-month-compact-link{min-height:34px;color:var(--ink-soft);background:#ffffffc7;border:1px solid #cad8e2db;border-radius:999px;align-items:center;gap:.35rem;padding:.34rem .68rem;text-decoration:none;display:inline-flex}.attendance-month-link-loading{color:var(--accent-strong);font-size:.7rem;font-weight:850}.attendance-month-confirmation{background:#fffffff0;border:1px solid #cad8e2d9;border-radius:18px;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem;display:flex;box-shadow:0 10px 26px #2443620f}.attendance-month-confirmation.is-quiet{box-shadow:var(--shadow-sm);border-radius:16px;padding:.82rem .95rem}.attendance-month-confirmation.is-quiet .eyebrow,.attendance-month-confirmation.is-quiet h3{display:none}.attendance-month-confirmation.is-quiet p{font-size:.8rem}.attendance-month-confirmation.is-quiet .attendance-month-confirmation-action{min-width:auto}.attendance-month-confirmation.is-quiet .button{min-height:38px;padding:.48rem .78rem;font-size:.82rem}.attendance-month-confirmation h3{color:var(--ink);margin:.12rem 0 .35rem;font-size:1.05rem}.attendance-month-confirmation p{color:var(--ink-muted);margin:.25rem 0 0;font-size:.84rem;line-height:1.55}.attendance-month-confirmation-action{text-align:right;flex-direction:column;align-items:flex-end;gap:.65rem;min-width:150px;display:flex}.staff-timecard-card,.staff-record-card,.staff-secondary-panel{background:#fffffff0;border:1px solid #cad8e2d9;border-radius:20px;box-shadow:0 14px 34px #24436212}.staff-timecard-card{padding:1.25rem}.staff-timecard-head,.staff-section-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.staff-timecard-head>div,.staff-section-head>div{min-width:0}.staff-timecard-head .status-badge{margin-top:.15rem}.staff-timecard-head h2,.staff-section-head h3{color:var(--ink);letter-spacing:0;margin:0;font-weight:850}.staff-timecard-head h2{overflow-wrap:anywhere;word-break:normal;line-break:auto;text-wrap:balance;font-size:clamp(1.45rem,3vw,1.76rem);line-height:1.24}.staff-section-head h3{font-size:1.05rem}.staff-section-head p{color:var(--ink-muted);margin:.15rem 0 0;font-size:.86rem}.live-clock{text-align:center;background:linear-gradient(#f8fbfd 0%,#eef6fb 100%);border-radius:22px;margin:1.35rem 0 1.1rem;padding:1.1rem .8rem}.live-clock p{color:var(--ink-muted);margin:0 0 .2rem;font-size:.92rem;font-weight:700}.live-clock time{color:var(--ink);letter-spacing:0;font-variant-numeric:tabular-nums;font-size:clamp(2.55rem,13vw,4.45rem);font-weight:850;line-height:1;display:block}.staff-cheer-message{border:1px solid #0000;border-radius:20px;margin:-.25rem 0 1rem;padding:.95rem 1rem}.staff-cheer-message strong{color:var(--ink);margin-bottom:.2rem;font-size:1rem;font-weight:850;display:block}.staff-cheer-message p{color:var(--ink-soft);margin:0;font-size:.9rem;font-weight:650}.staff-cheer-message.tone-start{background:linear-gradient(135deg,#effaf3,#e8fbf7);border-color:#1f8c672e}.staff-cheer-message.tone-break{background:linear-gradient(135deg,#fff8ea,#fff2df);border-color:#d288222e}.staff-cheer-message.tone-end{background:linear-gradient(135deg,#eef6ff,#f2f7ff);border-color:#2e7cf629}.staff-clock-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;display:grid}.staff-clock-panel{grid-column:1/-1;gap:.75rem;display:grid}.staff-clock-actions{grid-template-columns:1fr;gap:.7rem;display:grid}.staff-clock-actions:has(.staff-clock-form:nth-child(2)){grid-template-columns:repeat(2,minmax(0,1fr))}.staff-clock-form{flex-direction:column;gap:.65rem;min-width:0;margin:0;display:flex}.staff-clock-note{color:var(--ink-muted);background:#f5f9ff;border:1px solid #2e7cf629;border-radius:18px;gap:.35rem;padding:.72rem .8rem;font-size:.82rem;font-weight:800;display:grid}.staff-clock-note textarea{resize:vertical;border:1px solid var(--rule);width:100%;min-height:64px;color:var(--ink);font:inherit;background:#fff;border-radius:14px;padding:.65rem .75rem}.staff-clock-button{color:#fff;cursor:pointer;border:0;border-radius:22px;width:100%;min-height:92px;font-size:1.05rem;font-weight:850;transition:transform .12s,box-shadow .12s,filter .12s;box-shadow:0 18px 30px #24436224}.staff-clock-button-content{justify-content:center;align-items:center;gap:.55rem;display:inline-flex}.staff-clock-button.is-processing{box-shadow:0 0 0 4px #fffc,0 18px 30px #24436224}.staff-clock-button:disabled{cursor:not-allowed;filter:saturate(.86);opacity:.72;transform:none}.staff-clock-button.is-processing:disabled{cursor:wait}.staff-clock-button:not(:disabled):hover{filter:saturate(1.05);transform:translateY(-1px)}.staff-clock-button.tone-start{background:#0f766e}.staff-clock-button.tone-break{background:#9a5a00}.staff-clock-button.tone-end{background:#c2453b}.staff-clock-button.tone-disabled{color:#fff;opacity:1;box-shadow:none;background:#526273}.staff-clock-complete{background:var(--st-ok-soft);color:var(--st-ok);text-align:center;border-radius:20px;grid-column:1/-1;margin:0;padding:1.2rem;font-weight:800}.staff-clock-processing{background:var(--accent-blue-soft);min-height:48px;color:var(--st-info);border:1px solid #2e7cf62e;border-radius:18px;align-items:center;gap:.62rem;padding:.78rem .9rem;font-size:.88rem;font-weight:850;line-height:1.5;display:flex}.staff-clock-spinner{border:2px solid;border-top-color:#0000;border-radius:999px;flex:none;width:1.05rem;height:1.05rem;animation:.76s linear infinite staff-clock-spin}.staff-location-select{border:1px solid var(--rule);background:var(--surface-soft);color:var(--ink-muted);border-radius:18px;justify-content:space-between;align-items:center;gap:.75rem;padding:.65rem .75rem .65rem .95rem;font-size:.88rem;font-weight:800;display:flex}.staff-location-select select{border:1px solid var(--rule);max-width:13rem;min-height:42px;color:var(--ink);background:#fff;border-radius:14px;flex:1;padding:.55rem .7rem;font-weight:800}.staff-location-select select:disabled,.staff-commute-toggle input:disabled,.staff-location-notice textarea:disabled,.staff-clock-note textarea:disabled{cursor:wait;opacity:.72}.staff-commute-toggle,.staff-commute-status{color:var(--ink-soft);background:#fff8ea;border:1px solid #d2882233;border-radius:18px;align-items:center;gap:.65rem;padding:.72rem .85rem;font-size:.86rem;font-weight:800;display:flex}.staff-commute-toggle input{width:18px;height:18px;accent-color:var(--st-warn)}.staff-commute-status{flex-wrap:wrap;justify-content:space-between}.staff-commute-status strong{color:var(--ink)}.staff-commute-status span{color:var(--ink-muted);font-size:.78rem}.staff-location-notice{color:var(--ink-soft);background:#fff8ea;border:1px solid #d288222e;border-radius:18px;gap:.55rem;padding:.72rem .8rem;font-size:.82rem;font-weight:700;line-height:1.55;display:grid}.staff-location-notice p{margin:0}.staff-location-message{color:var(--st-warn)}.staff-location-notice label{gap:.35rem;display:grid}.staff-location-notice textarea{resize:vertical;border:1px solid var(--rule);width:100%;min-height:58px;color:var(--ink);font:inherit;background:#fff;border-radius:14px;padding:.65rem .75rem}@keyframes staff-clock-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.staff-clock-spinner{animation:none}}@media (forced-colors:active){:where(a[href],button,input,select,textarea,summary,[role=button],[tabindex]:not([tabindex="-1"])):focus-visible{outline-offset:3px;box-shadow:none;outline:2px solid canvastext}}.daily-report-filter-form{grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:.75rem;display:grid}.daily-report-filter-form label,.daily-report-admin-list,.daily-report-detail-sections,.daily-report-summary-grid{gap:.45rem;display:grid}.daily-report-filter-form label>span,.daily-report-detail-sections dt,.daily-report-summary-grid dt{color:var(--ink-muted);font-size:.76rem;font-weight:800}.daily-report-admin-list{gap:.9rem}.daily-report-admin-card{border:1px solid var(--rule);border-radius:var(--radius-md);background:var(--surface-soft);gap:.9rem;padding:1rem;display:grid}.daily-report-admin-card-head{justify-content:space-between;gap:1rem;display:flex}.daily-report-admin-card-head h3,.daily-report-admin-card-head p,.daily-report-eyebrow,.daily-report-detail-sections dd,.daily-report-summary-grid dd{margin:0}.daily-report-eyebrow{color:var(--accent-blue);font-size:.75rem;font-weight:850}.daily-report-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.daily-report-summary-grid>div,.daily-report-detail-sections>div{border:1px solid var(--rule);border-radius:var(--radius-sm);background:#fff;min-width:0;padding:.85rem}.daily-report-summary-grid dd,.daily-report-detail-sections dd{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;margin-top:.35rem;line-height:1.7}.daily-report-image-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.8rem;display:grid}.daily-report-image-grid a{color:var(--ink-soft);gap:.45rem;text-decoration:none;display:grid}.daily-report-image-grid img{aspect-ratio:4/3;border:1px solid var(--rule);border-radius:var(--radius-sm);object-fit:cover;background:var(--surface-muted);width:100%}.daily-report-file-card{aspect-ratio:4/3;border:1px solid var(--rule);border-radius:var(--radius-sm);width:100%;color:var(--accent-blue);background:var(--accent-blue-soft);letter-spacing:.08em;place-items:center;font-size:1rem;font-weight:850;display:grid}@media (max-width:720px){.daily-report-filter-form,.daily-report-summary-grid{grid-template-columns:1fr}.daily-report-admin-card-head{flex-direction:column}}.work-restriction-panel{scroll-margin-top:20px}.work-restriction-disclosure{border:1px solid var(--rule);background:var(--surface-soft);border-radius:18px;margin-top:16px;overflow:hidden}.work-restriction-disclosure>summary{cursor:pointer;min-height:52px;color:var(--ink);padding:15px 18px;font-weight:850}.work-restriction-disclosure[open]>summary{border-bottom:1px solid var(--rule);background:#fff}.work-restriction-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:14px;display:grid}.work-restriction-card{border:1px solid var(--rule);background:#fff;border-left-width:4px;border-radius:16px;align-content:start;gap:14px;min-width:0;padding:16px;display:grid}.work-restriction-card.tone-danger{border-left-color:var(--st-danger)}.work-restriction-card.tone-warn{border-left-color:var(--st-warn)}.work-restriction-card.tone-info{border-left-color:var(--st-info)}.work-restriction-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.work-restriction-card-head h4,.work-restriction-card-head p,.work-restriction-exception-list p{margin:0}.work-restriction-card-head p{color:var(--ink-muted);margin-top:4px;font-size:.82rem}.work-restriction-policy-form,.work-restriction-exception-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:10px;display:grid}.work-restriction-checkbox{border:1px solid var(--rule);min-height:44px;color:var(--ink-soft);border-radius:12px;align-items:center;gap:9px;padding:8px 10px;font-size:.82rem;font-weight:750;display:flex}.work-restriction-checkbox input{width:20px;height:20px;margin:0}.work-restriction-exception{border:1px solid var(--rule);border-radius:14px;overflow:hidden}.work-restriction-exception>summary{cursor:pointer;min-height:48px;color:var(--accent-strong);padding:13px 14px;font-weight:850}.work-restriction-exception[open]>summary{border-bottom:1px solid var(--rule);background:var(--surface-soft)}.work-restriction-exception-form{padding:14px}.work-restriction-reason{grid-column:1/-1}.work-restriction-exception-list{gap:8px;margin:0;padding:0 14px 14px;list-style:none;display:grid}.work-restriction-exception-list li{border:1px solid var(--rule);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.work-restriction-exception-list small,.work-restriction-updated{color:var(--ink-muted);line-height:1.5}@media (max-width:900px){.work-restriction-grid{grid-template-columns:1fr}}@media (max-width:640px){.work-restriction-grid{padding:10px}.work-restriction-card{padding:14px}.work-restriction-card-head,.work-restriction-exception-list li{flex-direction:column;align-items:stretch}.work-restriction-policy-form,.work-restriction-exception-form{grid-template-columns:1fr}.work-restriction-reason{grid-column:auto}.work-restriction-policy-form .button,.work-restriction-exception-form .button,.work-restriction-exception-list .button{width:100%}}.settings-page{gap:1.25rem;max-width:820px;margin:0 auto;display:grid}.settings-back-link{width:fit-content;min-height:44px;color:var(--accent-blue);align-items:center;font-weight:800;display:inline-flex}.settings-status-hero{box-shadow:var(--admin-shadow);background:linear-gradient(145deg,#fff,#f2f7ff);border:1px solid #2e7cf629;border-radius:20px;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.15rem;display:flex}.settings-status-hero h2,.settings-status-hero p,.settings-section-heading h3,.settings-section-heading p,.settings-entry-row h3,.settings-entry-row p{margin:0}.settings-status-hero h2{color:var(--ink);letter-spacing:-.04em;margin-top:.2rem;font-size:clamp(1.4rem,5vw,1.85rem)}.settings-status-hero p:not(.eyebrow){max-width:38rem;color:var(--ink-muted);margin-top:.45rem;line-height:1.65}.settings-section{gap:.55rem;display:grid}.settings-section-heading{padding:0 .6rem}.settings-section-heading h3{color:var(--ink);font-size:.86rem;font-weight:850}.settings-section-heading p{color:var(--ink-muted);margin-top:.18rem;font-size:.78rem}.settings-group{background:#fff;border:1px solid #cad8e2e6;border-radius:18px;overflow:hidden;box-shadow:0 3px 14px #1d34460e}.settings-group>.settings-empty-copy{padding:1rem}.settings-index-list{display:grid}.admin-settings-groups{gap:1.15rem;display:grid}.admin-settings-group-block{gap:.45rem;display:grid}.admin-settings-group-label{color:var(--ink-muted);letter-spacing:.04em;margin:0;padding-inline:.35rem;font-size:.74rem;font-weight:800}.admin-settings-group-description{color:var(--ink-muted);margin:-.25rem 0 .1rem;padding-inline:.35rem;font-size:.78rem;line-height:1.45}.settings-index-row,.settings-person-disclosure>summary,.settings-list-disclosure>summary{min-height:64px;color:var(--ink);justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 1rem;list-style:none;display:flex}.settings-index-row+.settings-index-row,.settings-person-disclosure+.settings-person-disclosure,.settings-nested-list>.settings-person-disclosure:first-child,.settings-list-disclosure[open]>.settings-nested-list{border-top:1px solid var(--rule)}.settings-person-disclosure>summary::-webkit-details-marker{display:none}.settings-list-disclosure>summary::-webkit-details-marker{display:none}.settings-nested-disclosure>summary::-webkit-details-marker{display:none}.settings-person-disclosure>summary,.settings-list-disclosure>summary,.settings-nested-disclosure>summary{cursor:pointer}.settings-row-copy{gap:.18rem;min-width:0;display:grid}.settings-row-copy strong{font-size:.94rem;line-height:1.35}.settings-row-copy small{color:var(--ink-muted);text-overflow:ellipsis;font-size:.76rem;line-height:1.4;overflow:hidden}.settings-row-value{color:var(--accent-blue);text-align:right;flex:none;font-size:.82rem;font-weight:850}.admin-detail-stack{gap:1rem;display:grid}.admin-attendance-tools{width:min(100%,760px)}.admin-shift-period-tools{width:min(100%,820px)}.admin-attendance-tools>summary{min-height:58px}.admin-attendance-tools>.admin-attendance-actions{border-top:1px solid var(--rule);background:var(--surface-soft);padding:.85rem}.admin-shift-period-tools>.shift-period-toolbar{border-top:1px solid var(--rule);background:var(--surface-soft);justify-content:flex-start;padding:.85rem}[hidden]{display:none!important}.settings-index-row.tone-warn .settings-row-value{color:var(--st-warn)}.settings-index-row.tone-ok .settings-row-value{color:var(--st-ok)}.settings-index-row.tone-info .settings-row-value{color:var(--st-info)}.settings-row-value.tone-warn{color:var(--st-warn)}.settings-row-value.tone-ok{color:var(--st-ok)}.settings-person-disclosure[open]>summary,.settings-list-disclosure[open]>summary{background:var(--surface-soft)}.settings-person-content,.settings-nested-list{border-top:1px solid var(--rule);background:#f7f9fb;padding:.85rem}.settings-nested-list{padding:0}.settings-nested-list .settings-person-disclosure{background:#fff}.settings-detail-stack{gap:.8rem;margin-top:.8rem;display:grid}.shift-person-editor{gap:.85rem;display:grid}.shift-person-current-value{border:1px solid var(--rule);background:#fff;border-radius:14px;gap:.35rem;padding:.75rem;display:grid}.shift-person-current-value>span,.shift-person-form label>span{color:var(--ink-muted);font-size:.76rem;font-weight:800}.shift-person-form label{gap:.3rem;display:grid}.settings-form-card{border:1px solid var(--rule);background:#fff;border-radius:14px;padding:.9rem}.settings-metric-grid{border:1px solid var(--rule);background:#fff;border-radius:14px;grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden}.settings-metric-grid>div{text-align:center;gap:.18rem;min-width:0;padding:.75rem .35rem;display:grid}.settings-metric-grid>div+div{border-left:1px solid var(--rule)}.settings-metric-grid strong{color:var(--ink);font-size:1.3rem}.settings-metric-grid span{color:var(--ink-muted);font-size:.7rem;font-weight:750}.restriction-history{gap:.75rem;display:grid}.restriction-history-list{border:1px solid var(--rule);background:#fff;border-radius:14px;overflow:hidden}.restriction-history-row{grid-template-columns:minmax(130px,.72fr) minmax(0,1.28fr);gap:.8rem;padding:.8rem;display:grid}.restriction-history-row+.restriction-history-row{border-top:1px solid var(--rule)}.restriction-history-row.is-danger{background:#fff6f5}.restriction-history-row.is-warn{background:#fffaf2}.restriction-history-date,.restriction-history-result{align-content:start;gap:.28rem;display:grid}.restriction-history-date span,.restriction-history-result p,.settings-footnote,.settings-empty-copy{color:var(--ink-muted);margin:0;font-size:.76rem;line-height:1.5}.restriction-history-result .status-badge{width:fit-content}.restriction-history-result .line-delivery-ok{color:var(--st-ok)}.restriction-history-result .line-delivery-none{color:var(--ink-muted)}.settings-nested-disclosure>summary{min-height:48px}.settings-entry-panel{padding:0}.settings-entry-row{justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.settings-entry-row p{color:var(--ink-muted);margin-top:.28rem;font-size:.82rem}@media (max-width:640px){.settings-status-hero,.settings-entry-row{flex-direction:column;align-items:stretch}.settings-status-hero .status-badge{width:fit-content}.settings-index-row,.settings-person-disclosure>summary,.settings-list-disclosure>summary{min-height:60px;padding:.75rem .85rem}.settings-person-content{padding:.65rem}.restriction-history-row{grid-template-columns:1fr;gap:.45rem}.settings-page input,.settings-page select{font-size:16px}}.staff-clock-dialog-backdrop{z-index:80;background:#121e2d5c;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.staff-clock-dialog{border:1px solid var(--rule);background:#fff;border-radius:18px;gap:1rem;width:min(100%,480px);max-height:min(720px,100dvh - 2rem);padding:1rem;display:grid;overflow-y:auto;box-shadow:0 26px 60px #24436238}.staff-clock-dialog h3{margin:0;font-size:1.05rem;font-weight:850}.staff-clock-dialog p{color:var(--ink-muted);margin:.35rem 0 0;font-size:.88rem;line-height:1.6}.staff-clock-dialog label{color:var(--ink-muted);gap:.4rem;font-size:.86rem;font-weight:800;display:grid}.staff-clock-dialog input{border:1px solid var(--rule);width:100%;min-height:44px;color:var(--ink);font:inherit;background:#fff;border-radius:14px;padding:.55rem .7rem;font-weight:850}.staff-clock-dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;display:flex}.staff-clock-dialog-actions .button{min-height:var(--control-md)}.staff-record-card{padding:1rem}.staff-record-editor{padding:0;overflow:hidden}.staff-record-editor>summary{cursor:pointer;padding:1rem;list-style:none}.staff-record-editor>summary::-webkit-details-marker{display:none}.staff-record-editor[open]>summary{border-bottom:1px solid var(--rule)}.staff-record-editor[open] .staff-record-display{display:none}.staff-record-editor>.attendance-day-plan-panel,.staff-record-editor>.attendance-google-calendar-form,.staff-record-editor>.attendance-leave-request-form{margin:1rem 1rem 0}.staff-record-editor>.staff-record-edit-form{border-top:1px solid var(--rule);margin-top:.8rem}.staff-record-editor>.staff-record-delete-form{margin-top:.85rem}.staff-text-link{color:var(--accent-strong);text-underline-offset:.18em;font-size:.9rem;font-weight:850;text-decoration:underline}.staff-record-list{flex-direction:column;margin-top:.75rem;display:flex}.staff-record-row{border-top:1px solid var(--rule);justify-content:space-between;align-items:center;gap:1rem;padding:.86rem 0;display:flex}.staff-record-row:first-child{border-top:0}.staff-record-row span{color:var(--ink-muted);font-weight:700}.staff-record-row strong{color:var(--ink);font-size:1.05rem}.staff-record-edit-form{flex-direction:column;margin:0;padding:.2rem 1rem 1rem;display:flex}.staff-record-edit-row{border-top:1px solid var(--rule);justify-content:space-between;align-items:center;gap:1rem;min-height:58px;display:flex}.staff-record-edit-row:first-of-type{border-top:0}.staff-record-edit-row span{color:var(--ink-muted);font-weight:800}.staff-record-edit-row input,.staff-record-edit-row select{border:1px solid var(--rule);width:min(12rem,48vw);min-height:42px;color:var(--ink);text-align:right;background:#fff;border-radius:14px;padding:.55rem .7rem;font-size:1rem;font-weight:850}.staff-record-edit-check input{width:20px;min-height:20px;accent-color:var(--st-warn);padding:0}.staff-record-edit-actions{border-top:1px solid var(--rule);justify-content:space-between;align-items:center;gap:.9rem;margin-top:.9rem;padding-top:.9rem;display:flex}.staff-record-edit-actions p{color:var(--ink-muted);margin:0;font-size:.82rem;font-weight:700}.staff-record-delete-form{background:#fff0eeb8;border:1px solid #b3261e3d;border-radius:18px;justify-content:space-between;align-items:center;gap:.9rem;margin:0 1rem 1rem;padding:.85rem;display:flex}.staff-record-delete-form strong{color:var(--st-danger);font-size:.92rem;font-weight:850;display:block}.staff-record-delete-form p{color:var(--ink-soft);margin:.22rem 0 0;font-size:.8rem;font-weight:700}.attendance-delete-dialog-backdrop{z-index:90;background:#121e2d6b;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.attendance-delete-dialog{background:#fff;border:1px solid #b3261e38;border-radius:18px;gap:1rem;width:min(100%,440px);padding:1rem;display:grid;box-shadow:0 26px 60px #24436238}.attendance-delete-dialog h3{color:var(--ink);margin:0;font-size:1.05rem;font-weight:850}.attendance-delete-dialog p{color:var(--ink-soft);margin:.35rem 0 0;font-size:.9rem;line-height:1.65}.attendance-delete-dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;display:flex}.staff-secondary-panel{overflow:hidden}.staff-secondary-panel summary{cursor:pointer;justify-content:space-between;align-items:center;gap:.8rem;padding:1rem 1.1rem;list-style:none;display:flex}.staff-secondary-panel summary::-webkit-details-marker{display:none}.staff-secondary-panel summary span{color:var(--ink);font-weight:850;display:block}.staff-secondary-panel summary small{color:var(--ink-muted);text-align:right;font-size:.78rem}.staff-secondary-panel[open] summary{border-bottom:1px solid var(--rule)}.staff-secondary-panel>:not(summary){margin:1rem}.admin-confirm-hero,.admin-confirm-panel{border-radius:var(--admin-radius);box-shadow:var(--admin-shadow);background:#fff;border:1px solid #cad8e2d9}.admin-confirm-hero{justify-content:space-between;align-items:flex-end;gap:1rem;padding:1.15rem 1.2rem;display:flex}.admin-confirm-hero h2{color:var(--ink);letter-spacing:-.03em;margin:0;font-size:clamp(1.45rem,3vw,2rem);font-weight:850}.admin-confirm-hero p:not(.eyebrow){max-width:42rem;color:var(--ink-muted);margin:.28rem 0 0;font-size:.92rem;font-weight:650}.admin-confirm-hero.tone-warn{background:#fffaf2;border-color:#d2882247}.admin-confirm-hero.tone-ok{background:#f4fbf7;border-color:#1f8c673d}.admin-confirm-hero-status{flex-direction:column;flex:none;align-items:flex-end;gap:.45rem;display:flex}.admin-confirm-hero-status span:last-child{color:var(--ink-muted);font-size:.86rem;font-weight:800}.admin-confirm-tile-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.75rem;display:grid}.admin-confirm-tile{border:1px solid var(--rule);border-radius:var(--admin-radius);min-height:128px;box-shadow:var(--admin-shadow);background:#fff;flex-direction:column;justify-content:space-between;gap:.35rem;padding:.95rem;display:flex}.admin-confirm-tile span{color:var(--ink-muted);font-size:.82rem;font-weight:850}.admin-confirm-tile strong{color:var(--ink);letter-spacing:-.04em;font-size:1.65rem;font-weight:850}.admin-confirm-tile small{color:var(--ink-muted);font-size:.82rem;font-weight:650;line-height:1.45}.admin-confirm-tile.tone-warn{background:#fffaf2;border-color:#d2882233}.admin-confirm-tile.tone-warn strong{color:var(--st-warn)}.admin-confirm-tile.tone-info{background:#f5f9ff;border-color:#2e7cf629}.admin-confirm-tile.tone-info strong{color:var(--st-info)}.admin-confirm-tile.tone-ok{background:#f4fbf7;border-color:#1f8c6729}.admin-confirm-tile.tone-ok strong{color:var(--st-ok)}.shift-workspace-tabs{overflow-anchor:none;background:#f1f7fcc7;border:1px solid #cad8e2c7;border-radius:12px;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;padding:.28rem;display:grid}.shift-workspace-tab{min-height:86px;color:var(--ink);cursor:pointer;touch-action:manipulation;background:linear-gradient(#fff 0%,#f8fbfd 100%);border:1px solid #b1c2d3d1;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.16rem .55rem;padding:.9rem .95rem .82rem;text-decoration:none;transition:background-color .14s,border-color .14s,box-shadow .14s,color .14s;display:grid;position:relative;box-shadow:inset 0 -2px #7e96b029,0 8px 18px #1f364e0f}.shift-workspace-tab:hover{background:linear-gradient(#fff 0%,#f2f7ff 100%);border-color:#2e7cf661;box-shadow:inset 0 -2px #2e7cf638,0 12px 24px #1f364e14}.shift-workspace-tab:focus-visible{outline-offset:3px;outline:3px solid #2e7cf657}.shift-workspace-tab.is-active{box-shadow:inset 0 0 0 2px #2e7cf633, inset 0 -3px 0 var(--accent-blue), 0 10px 22px #2e7cf61f;background:#eef5ff;border-color:#2e7cf675}.shift-workspace-tab span,.shift-workspace-tab strong,.shift-workspace-tab small,.shift-workspace-tab em{min-width:0;display:block}.shift-workspace-tab span{overflow-wrap:anywhere;font-size:.94rem;font-weight:900}.shift-workspace-tab strong{color:var(--accent-strong);justify-self:end;font-size:1.12rem;font-weight:900;line-height:1}.shift-workspace-tab small{color:var(--ink-muted);font-size:.76rem;font-weight:750}.shift-workspace-tab em{min-width:52px;color:var(--ink-muted);text-align:center;background:#fffc;border:1px solid #7e96b03d;border-radius:999px;justify-self:end;padding:.18rem .48rem;font-size:.7rem;font-style:normal;font-weight:900;line-height:1.25}.shift-workspace-tab.is-active em{color:var(--accent-strong);background:#fff;border-color:#2e7cf63d}.admin-confirm-layout{grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);gap:.85rem;display:grid}.admin-confirm-panel{padding:1rem}.admin-confirm-list{flex-direction:column;gap:.65rem;margin-top:.85rem;display:flex}.admin-confirm-person-row{border:1px solid var(--rule);border-radius:var(--admin-radius-sm);background:var(--surface-soft);justify-content:space-between;align-items:flex-start;gap:.9rem;padding:.86rem .9rem;display:flex}.admin-confirm-person-row>div{min-width:0}.admin-confirm-person-row h4{color:var(--ink);letter-spacing:-.02em;overflow-wrap:anywhere;margin:0;font-size:1rem;font-weight:850}.admin-confirm-person-row p,.admin-confirm-empty{color:var(--ink-muted);overflow-wrap:anywhere;margin:.24rem 0 0;font-size:.86rem;font-weight:650}.admin-confirm-person-row .is-alert{color:var(--st-danger);font-weight:800}.admin-confirm-source-badges{flex-wrap:wrap;gap:.35rem;margin-bottom:.28rem;display:flex}.admin-confirm-warning-meta{color:var(--ink-muted);letter-spacing:.02em;margin-right:.25rem;font-size:.72rem;font-weight:800;display:inline-block}.admin-confirm-warning-list{gap:.28rem;margin-top:.45rem;display:grid}.admin-confirm-warning{border:1px solid color-mix(in srgb, var(--st-danger) 22%, transparent);background:color-mix(in srgb, var(--st-danger-soft) 55%, transparent);border-radius:.7rem;padding:.42rem .58rem}.admin-confirm-warning summary{cursor:pointer;color:var(--st-danger);font-size:.86rem;font-weight:800;line-height:1.45}.admin-confirm-warning summary::marker{color:var(--st-danger)}.admin-confirm-warning p{color:var(--ink-muted);margin:.35rem 0 0;font-size:.82rem;font-weight:650;line-height:1.55}.admin-confirm-row-actions{flex-direction:column;flex:none;align-items:flex-end;gap:.5rem;min-width:min(11.5rem,100%);display:flex}.admin-confirm-row-actions .button{min-height:var(--control-sm);white-space:nowrap;padding:.46rem .72rem;font-size:.82rem}.admin-confirm-primary-action{min-width:8.6rem}.admin-confirm-secondary-actions{flex-wrap:wrap;justify-content:flex-end;gap:.42rem;display:flex}.admin-confirm-secondary-actions .button{min-height:36px;padding:.38rem .62rem;font-size:.76rem;font-weight:800}.admin-confirm-person-row.tone-danger{background:#fff7f6;border-color:#d8615833}.admin-confirm-person-row.tone-warn{background:#fffaf2;border-color:#d2882233}.admin-confirm-person-row.tone-info{background:#f5f9ff;border-color:#2e7cf629}.admin-confirm-person-row.tone-ok{background:#f4fbf7;border-color:#1f8c6729}.admin-confirm-empty{border-radius:var(--admin-radius-sm);background:#f8fbfdcc;border:1px dashed #cad8e2e6;padding:1rem}.staff-correction-form{box-shadow:none}.staff-request-history{margin-top:1rem}.attendance-action-grid{flex-wrap:wrap;gap:.7rem;margin-bottom:1rem;display:flex}.admin-attendance-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.65rem;display:flex}.admin-attendance-actions .compact-inline-form{flex:28rem;justify-content:flex-end}.admin-attendance-actions>.button{flex:none}.attendance-inline-form{align-items:center;gap:.55rem;margin:0;display:flex}.attendance-work-location{border:1px solid var(--rule);min-height:2.65rem;color:var(--ink-muted);white-space:nowrap;background:#fff;border-radius:999px;align-items:center;gap:.45rem;padding:.35rem .45rem .35rem .75rem;font-size:.82rem;font-weight:800;display:flex}.attendance-work-location select{border-radius:999px;min-width:6.2rem;height:2rem;padding:0 1.9rem 0 .7rem;font-size:.9rem}.attendance-work-location.is-compact{justify-content:space-between}.disclosure-card{border:1px solid var(--rule);background:var(--surface-soft);border-radius:16px}.disclosure-summary{cursor:pointer;color:var(--ink);padding:.95rem 1rem;font-weight:800;list-style:none}.disclosure-summary::-webkit-details-marker{display:none}.disclosure-card[open] .disclosure-summary{border-bottom:1px solid var(--rule)}.attendance-sticky-spacer,.attendance-sticky-bar{display:none}.attendance-timeline{flex-direction:column;gap:.55rem;display:flex}.attendance-timeline-row{border:1px solid var(--rule);background:var(--surface-soft);border-radius:16px;justify-content:space-between;align-items:flex-start;gap:.85rem;padding:.82rem .9rem;display:flex}.attendance-timeline-row strong{font-size:.94rem;display:block}.attendance-timeline-row p{color:var(--ink-muted);margin:.25rem 0 0;font-size:.84rem}.attendance-correction-banner{background:linear-gradient(#f0f7fffa 0%,#fffffffa 100%);border:1px solid #2e7cf629;border-radius:16px;justify-content:space-between;align-items:flex-start;gap:.9rem;margin-bottom:.9rem;padding:.95rem 1rem;display:flex}.attendance-correction-banner strong{letter-spacing:-.02em;font-size:1rem;font-weight:800;display:block}.attendance-correction-banner p{color:var(--ink-muted);margin:.25rem 0 0;font-size:.84rem}.attendance-correction-banner-eyebrow{color:var(--accent-blue);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:800}.attendance-selected-day-panel{background:#fffffff7;border:1px solid #2e7cf62e;border-radius:20px;gap:1rem;padding:1rem;display:grid;box-shadow:0 16px 36px #2443621a}.attendance-selected-day-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.attendance-selected-day-head>div{min-width:0}.attendance-selected-day-head h3{color:var(--ink);letter-spacing:0;margin:0;font-size:1.12rem;font-weight:850;line-height:1.35}.attendance-selected-day-head p{color:var(--ink-muted);margin:.24rem 0 0;font-size:.86rem;font-weight:700;line-height:1.55}.attendance-selected-day-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;display:grid}.attendance-selected-day-metrics div{border:1px solid var(--rule);background:var(--surface-soft);border-radius:12px;min-width:0;padding:.72rem .65rem}.attendance-selected-day-metrics span{color:var(--ink-muted);font-size:.72rem;font-weight:850;display:block}.attendance-selected-day-metrics strong{overflow-wrap:anywhere;color:var(--ink);font-variant-numeric:tabular-nums;margin-top:.18rem;font-size:.96rem;font-weight:900;display:block}.attendance-selected-day-actions{gap:.7rem;display:grid}.attendance-action-disclosure{background:#fff;border:1px solid #cad8e2db;border-radius:14px;overflow:hidden}.attendance-action-disclosure>summary{cursor:pointer;grid-template-columns:minmax(0,1fr);gap:.12rem;min-height:54px;padding:.78rem .9rem;list-style:none;display:grid}.attendance-action-disclosure>summary::-webkit-details-marker{display:none}.attendance-action-disclosure>summary span{color:var(--ink);font-size:.92rem;font-weight:850}.attendance-action-disclosure>summary small{color:var(--ink-muted);font-size:.78rem;font-weight:700;line-height:1.45}.attendance-action-disclosure[open]>summary{border-bottom:1px solid var(--rule);background:#f8fbfdeb}.attendance-action-disclosure>div{padding:.9rem}.attendance-action-disclosure .attendance-day-plan-panel,.attendance-action-disclosure .attendance-google-calendar-form,.attendance-action-disclosure .attendance-leave-request-form,.attendance-action-disclosure .staff-record-edit-form,.attendance-action-disclosure .staff-record-delete-form{margin:0}.attendance-action-disclosure .attendance-day-plan-panel,.attendance-action-disclosure .attendance-google-calendar-form,.attendance-action-disclosure .attendance-leave-request-form{box-shadow:none}.attendance-day-plan-panel{background:#fffffff5;border:1px solid #cad8e2d9;border-radius:16px;margin-bottom:.9rem;padding:.95rem 1rem}.attendance-day-plan-head,.attendance-leave-request-head{justify-content:space-between;align-items:center;gap:.8rem;display:flex}.attendance-day-plan-head span,.attendance-leave-request-head span{color:var(--ink-muted);letter-spacing:.08em;font-size:.74rem;font-weight:850;display:block}.attendance-day-plan-head strong,.attendance-leave-request-head strong{color:var(--ink);margin-top:.12rem;font-size:1rem;font-weight:850;display:block}.attendance-day-plan-list,.attendance-day-leave-list{flex-direction:column;gap:.55rem;margin-top:.85rem;display:flex}.attendance-day-plan-row,.attendance-day-leave-row{border:1px solid var(--rule);background:var(--surface-soft);border-radius:14px;justify-content:space-between;align-items:center;gap:.75rem;min-height:48px;padding:.68rem .75rem;display:flex}.attendance-day-plan-row span{color:var(--ink-muted);font-size:.78rem;font-weight:800}.attendance-day-plan-row strong{color:var(--st-ok);font-variant-numeric:tabular-nums;font-size:1rem;font-weight:900}.attendance-day-plan-empty{color:var(--ink-muted);margin:.85rem 0 0;font-size:.86rem;font-weight:700}.attendance-day-leave-row strong{color:var(--ink);font-size:.9rem;font-weight:850;display:block}.attendance-day-leave-row p{color:var(--ink-muted);margin:.16rem 0 0;font-size:.8rem;font-weight:650}.attendance-day-leave-row.tone-ok{background:var(--st-ok-soft);border-color:#1f8c672e}.attendance-day-leave-row.tone-warn{background:var(--st-warn-soft);border-color:#d2882233}.attendance-day-leave-row.tone-danger{background:var(--st-danger-soft);border-color:#d8615833}.attendance-leave-request-form{background:linear-gradient(#f7fafffa 0%,#fffffffa 100%);border:1px solid #2e7cf629;border-radius:16px;margin-bottom:1rem;padding:.95rem 1rem}.attendance-google-calendar-form{background:#f4fbf7f5;border:1px solid #1f8c672e;border-radius:16px;justify-content:space-between;align-items:center;gap:.85rem;margin-bottom:.9rem;padding:.85rem 1rem;display:flex}.attendance-google-calendar-form strong{color:var(--ink);font-size:.92rem;font-weight:850;display:block}.attendance-google-calendar-form p{color:var(--ink-muted);margin:.18rem 0 0;font-size:.8rem;font-weight:650}.attendance-google-calendar-form .button{white-space:nowrap;flex:none;min-height:38px}.attendance-leave-request-head .button{min-height:38px;padding:.5rem .85rem}.attendance-leave-request-grid{grid-template-columns:minmax(140px,.45fr) minmax(0,1fr);gap:.75rem;margin-top:.8rem;display:grid}.attendance-leave-request-form .field{margin:0}.attendance-leave-request-form .field>span{color:var(--ink-muted);margin-bottom:.3rem;font-size:.78rem;font-weight:800;display:block}.attendance-calendar-legend{flex-wrap:wrap;gap:.55rem;margin-bottom:.9rem;display:flex}.attendance-calendar-legend-item{border:1px solid var(--rule);min-width:32px;min-height:28px;color:var(--ink-soft);background:#ffffffeb;border-radius:999px;justify-content:center;align-items:center;padding:.3rem .62rem;font-size:.76rem;font-weight:700;display:inline-flex}.attendance-calendar-legend-item.tone-ok{color:var(--st-ok);background:var(--st-ok-soft);border-color:#1f8c672e}.attendance-calendar-legend-item.tone-info{color:var(--st-info);background:var(--st-info-soft);border-color:#2e7cf62e}.attendance-calendar-legend-item.tone-warn{color:var(--st-warn);background:var(--st-warn-soft);border-color:#d288222e}.attendance-calendar-legend-item.tone-danger{color:var(--st-danger);background:var(--st-danger-soft);border-color:#d8615833}.attendance-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.55rem;display:grid}.attendance-calendar-weekday{min-height:30px;color:var(--ink-muted);letter-spacing:.08em;justify-content:center;align-items:center;font-size:.76rem;font-weight:800;display:flex}.attendance-calendar-day{border:1px solid var(--rule);background:#f8fbfdeb;border-radius:16px;min-height:116px;padding:.72rem .65rem}.attendance-calendar-day-link{color:inherit;text-decoration:none;transition:transform .16s,box-shadow .16s,border-color .16s,background .16s;display:block}.attendance-calendar-day-link:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.attendance-calendar-day-link:focus-visible{box-shadow:0 0 0 3px #2e7cf624, var(--shadow-sm);outline:none}.attendance-calendar-day.is-placeholder{background:#f8fbfd73;border:1px dashed #cad8e28c;min-height:112px}.attendance-calendar-day.is-today{border-color:#2e7cf64d;box-shadow:inset 0 0 0 1px #2e7cf61f}.attendance-calendar-day-link.is-selected{box-shadow:inset 0 0 0 1px #2e7cf624, var(--shadow-sm);border-color:#2e7cf657}.attendance-calendar-day.is-future{opacity:.58}.attendance-calendar-day.is-future.has-shift,.attendance-calendar-day.is-future.has-leave{opacity:1}.attendance-calendar-day.is-empty{background:#ffffffd1}.attendance-calendar-day.has-shift{border-color:#1f8c6738}.attendance-calendar-day.tone-ok{background:linear-gradient(#f0fbf6f5 0%,#fffffff5 100%);border-color:#1f8c672e}.attendance-calendar-day.tone-info{background:linear-gradient(#f0f7fffa 0%,#fffffff5 100%);border-color:#2e7cf62e}.attendance-calendar-day.tone-warn{background:linear-gradient(#fff9effa 0%,#fffffff5 100%);border-color:#d2882233}.attendance-calendar-day.tone-danger{background:linear-gradient(#fff4f2fa 0%,#fffffff5 100%);border-color:#d8615833}.attendance-calendar-day-head{justify-content:space-between;align-items:flex-start;gap:.35rem;display:flex}.attendance-calendar-day-head strong{font-size:.94rem;font-weight:800}.attendance-calendar-flag{letter-spacing:0;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;min-width:22px;min-height:22px;padding:.15rem .42rem;font-size:.68rem;font-weight:800;line-height:1;display:inline-flex}.attendance-calendar-flag.is-pending{color:var(--st-warn);background:#fbe9c5f2}.attendance-calendar-flag.is-fixed{color:var(--st-info);background:#e0eefff2}.attendance-calendar-flag.is-locked{color:var(--ink-muted);background:#e4eaf1f2}.attendance-calendar-hours{letter-spacing:-.03em;margin:.45rem 0 0;font-size:1.05rem;font-weight:800}.attendance-calendar-shift,.attendance-calendar-leave{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.attendance-calendar-tags{flex-wrap:wrap;gap:.22rem;margin-top:.34rem;display:flex}.attendance-calendar-tag{text-overflow:ellipsis;white-space:nowrap;max-width:100%;min-height:20px;color:var(--ink-muted);background:#eff5f8eb;border-radius:999px;align-items:center;padding:.14rem .34rem;font-size:.64rem;font-weight:850;display:inline-flex;overflow:hidden}.attendance-calendar-tag.is-shift,.attendance-calendar-tag.tone-ok{color:var(--st-ok);background:var(--st-ok-soft)}.attendance-calendar-tag.tone-warn{color:var(--st-warn);background:var(--st-warn-soft)}.attendance-calendar-tag.tone-danger{color:var(--st-danger);background:var(--st-danger-soft)}.attendance-calendar-shift{color:var(--st-ok);font-variant-numeric:tabular-nums;background:#e8f8f0eb;border:1px solid #1f8c6729;border-radius:999px;align-items:center;gap:.25rem;margin:.42rem 0 0;padding:.24rem .42rem;font-size:.72rem;font-weight:850;display:inline-flex}.attendance-calendar-shift-dot{background:currentColor;border-radius:999px;flex:none;width:.42rem;height:.42rem}.attendance-calendar-leave{border-radius:999px;margin:.32rem 0 0;padding:.22rem .42rem;font-size:.68rem;font-weight:850}.attendance-calendar-leave.tone-ok{color:var(--st-ok);background:var(--st-ok-soft)}.attendance-calendar-leave.tone-warn{color:var(--st-warn);background:var(--st-warn-soft)}.attendance-calendar-leave.tone-danger{color:var(--st-danger);background:var(--st-danger-soft)}.attendance-calendar-state,.attendance-calendar-meta{color:var(--ink-muted);margin:.22rem 0 0;font-size:.76rem}.attendance-calendar-state{min-width:24px;min-height:22px;color:var(--ink-soft);white-space:nowrap;background:#eff5f8eb;border-radius:999px;justify-content:center;align-items:center;padding:.12rem .42rem;font-weight:700;display:inline-flex}.inline-alert{border:1px solid var(--rule);border-radius:14px;margin-bottom:1rem;padding:.8rem .9rem}.inline-alert.attendance-attention-alert{padding:0;overflow:hidden}.attendance-attention-alert summary{cursor:pointer;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem;min-height:42px;padding:.62rem .8rem;list-style:none;display:grid}.attendance-attention-alert summary::-webkit-details-marker{display:none}.attendance-attention-alert summary:after{content:"⌄";font-size:.82rem;font-weight:900;line-height:1;transition:transform .16s}.attendance-attention-alert[open] summary:after{transform:rotate(180deg)}.attendance-attention-alert summary strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.attendance-attention-alert-list{gap:.4rem;padding:0 .8rem .72rem;display:grid}.attendance-risk-warning-item{border:1px solid color-mix(in srgb, var(--rule) 82%, transparent);background:color-mix(in srgb, var(--surface) 60%, transparent);border-radius:12px;gap:.26rem;padding:.52rem .6rem;display:grid}.attendance-risk-warning-heading{justify-content:space-between;align-items:baseline;gap:.6rem;display:flex}.attendance-risk-warning-heading span{color:var(--ink-soft);flex:none;font-size:.75rem;font-weight:750}.attendance-risk-warning-item p{color:var(--ink-soft);line-height:1.45}.attendance-risk-warning-link{background:color-mix(in srgb, var(--accent) 12%, transparent);min-height:36px;color:var(--accent-strong,var(--accent));border-radius:9px;justify-self:start;align-items:center;padding:.3rem .55rem;font-size:.8rem;font-weight:850;text-decoration:none;display:inline-flex}.attendance-risk-warning-link:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 48%, transparent);outline-offset:2px}.attendance-attention-alert-list a{color:inherit;text-underline-offset:.16em;font-weight:850;text-decoration-thickness:.08em}.attendance-row-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.55rem;display:flex}.inline-alert p{margin:0;font-size:.86rem}.inline-alert.compact{margin-bottom:.85rem}.inline-alert-actions{flex-wrap:wrap;gap:.65rem;margin-top:.8rem;display:flex}.inline-alert.tone-danger{background:var(--st-danger-soft);color:var(--st-danger);border-color:#d861583d}.inline-alert.tone-warn{background:var(--st-warn-soft);color:var(--st-warn);border-color:#d288223d}.inline-alert.tone-ok{background:var(--st-ok-soft);color:var(--st-ok);border-color:#1f8c6738}.inline-alert.tone-info{background:var(--st-info-soft);color:var(--st-info);border-color:#3a84d638}.shift-rest-warning-panel{background:#fffaf2;border:1px solid #d288224d;border-radius:18px;gap:.9rem;margin-bottom:1rem;padding:1rem;display:grid}.shift-rest-warning-head{justify-content:space-between;align-items:flex-start;gap:.8rem;display:flex}.shift-rest-warning-head h2,.shift-rest-warning-head h3,.shift-rest-warning-card h4{margin:0}.shift-rest-warning-head p{color:var(--ink-muted);margin:.25rem 0 0;font-size:.86rem}.shift-rest-warning-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:.7rem;display:grid}.shift-rest-warning-card{background:#fff;border:1px solid #d2882233;border-radius:14px;padding:.85rem}.shift-rest-warning-card ul,.shift-rest-warning-employee-list{gap:.65rem;margin:.65rem 0 0;padding:0;list-style:none;display:grid}.shift-rest-warning-card li,.shift-rest-warning-employee-list li{border-left:3px solid var(--st-warn);gap:.18rem;padding-left:.65rem;display:grid}.shift-rest-warning-card li span,.shift-rest-warning-employee-list li span{color:var(--ink-muted);font-size:.82rem;line-height:1.55}.shift-rest-warning-panel.is-employee{background:linear-gradient(145deg,#fffaf2,#fff)}@media (max-width:640px){.shift-rest-warning-panel{border-radius:16px;padding:.85rem}.shift-rest-warning-head{align-items:flex-start}}.button-row{flex-wrap:wrap;gap:.65rem;display:flex}.compact-form{gap:.5rem;min-width:min(100%,260px);display:grid}.compact-form input,.compact-form select,.compact-form textarea,.shift-rule-grid input,.shift-rule-grid select{border:1px solid var(--rule);width:100%;min-height:36px;color:var(--ink);background:#fff;border-radius:12px;padding:.56rem .7rem}.pre-wrap{white-space:pre-wrap;color:var(--ink-soft);font:inherit;margin:0;font-size:.86rem}.shift-assignment-stack{gap:.7rem;display:grid}.shift-assignment-row{background:#f8fbfdc7;border:1px solid #cad8e2bd;border-radius:14px;gap:.55rem;padding:.72rem;display:grid}.shift-assignment-row>div:first-child{flex-wrap:wrap;align-items:baseline;gap:.65rem;display:flex}.shift-assignment-row span{color:var(--accent-strong);font-weight:800}.shift-assignment-row small{color:var(--ink-muted);overflow-wrap:anywhere}.shift-approval-console{grid-template-columns:minmax(0,1fr) minmax(260px,320px);align-items:start;gap:1rem;display:grid}.shift-approval-main{gap:.9rem;display:grid}.shift-approval-steps{grid-template-columns:repeat(5,minmax(0,1fr));gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.shift-approval-step{background:#f8fafc;border:1px solid #cad8e2c7;border-radius:8px;align-items:center;gap:.65rem;min-height:72px;padding:.75rem;display:flex}.shift-approval-step>span{width:28px;height:28px;color:var(--ink-muted);background:#dbe3ea;border-radius:999px;flex:none;justify-content:center;align-items:center;font-size:.82rem;font-weight:900;display:inline-flex}.shift-approval-step strong,.shift-approval-step small{display:block}.shift-approval-step strong{font-size:.88rem}.shift-approval-step small{color:var(--ink-muted);margin-top:.14rem;font-size:.72rem;line-height:1.35}.shift-approval-step.is-active{background:#f2f7ff;border-color:#3a84d64d}.shift-approval-step.is-active>span{background:var(--st-info);color:#fff}.shift-approval-step.is-done{background:#effaf3;border-color:#58b37e52}.shift-approval-step.is-done>span{background:var(--st-ok);color:#fff}.shift-approval-check-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;display:grid}.shift-approval-check{background:#f8fafc;border-left:4px solid #cfd8e3;padding:.7rem .75rem}.shift-approval-check span,.shift-approval-check strong,.shift-approval-check small{display:block}.shift-approval-check span{color:var(--ink-muted);font-size:.72rem;font-weight:900}.shift-approval-check strong{margin-top:.1rem;font-size:1.3rem;line-height:1}.shift-approval-check small{color:var(--ink-muted);margin-top:.22rem;font-size:.72rem;line-height:1.35}.shift-approval-check.tone-ok{border-color:#73c79a}.shift-approval-check.tone-warn{border-color:#e0b35f}.shift-approval-check.tone-danger{border-color:#d86158}.shift-approval-actions{background:#fff;border:1px solid #cad8e2c7;border-radius:8px;gap:.6rem;padding:.75rem;display:grid}.shift-approval-actions form,.shift-approval-actions .button{width:100%}.shift-result-notice{background:#fffaf0;border-left:4px solid #e0b35f;gap:.22rem;padding:.68rem .72rem;display:grid}.shift-result-notice strong,.shift-result-notice span,.shift-result-notice small{display:block}.shift-result-notice strong{font-size:.86rem}.shift-result-notice span{color:var(--ink-soft);font-size:.82rem;font-weight:900}.shift-result-notice small{color:var(--ink-muted);font-size:.74rem;line-height:1.35}.shift-result-notice.tone-ok{background:#effaf3;border-color:#73c79a}.shift-secondary-actions{gap:.5rem;display:grid}.shift-approval-review-list{border:1px solid #cad8e2c7;border-radius:8px;margin-top:1rem;display:grid;overflow:hidden}.shift-approval-review-item{background:#fff;border-bottom:1px solid #cad8e2ad}.shift-approval-review-item:last-child{border-bottom:0}.shift-approval-review-summary{cursor:pointer;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.8rem;min-height:58px;padding:.58rem .72rem;list-style:none;transition:background-color .12s;display:grid}.shift-approval-review-summary::-webkit-details-marker{display:none}.shift-approval-review-summary:hover{background:#f8fbfdd1}.shift-approval-review-summary h4,.shift-approval-review-summary p,.shift-approval-review-detail p{margin:0}.shift-approval-review-summary h4{font-size:.92rem}.shift-approval-review-summary p{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:.18rem;font-size:.8rem;line-height:1.4;overflow:hidden}.shift-approval-review-item.tone-warn>.shift-approval-review-summary{background:#fffaf0}.shift-approval-review-item.tone-danger>.shift-approval-review-summary{background:#fff4f4}.shift-approval-review-meta{color:var(--ink-muted);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.45rem;font-size:.76rem;font-weight:800;display:flex}.shift-approval-review-meta .is-alert{color:var(--st-danger)}.shift-candidate-form{margin-top:.65rem}.shift-accordion-caret{background:#ffffffd9;border:1px solid #cad8e2e6;border-radius:999px;flex:none;width:28px;height:28px;position:relative}.shift-accordion-caret:before{content:"";border-right:2px solid var(--ink-muted);border-bottom:2px solid var(--ink-muted);width:9px;height:9px;transition:transform .14s,top .14s;position:absolute;top:9px;left:8px;transform:rotate(45deg)}.shift-approval-review-item[open] .shift-accordion-caret:before{top:11px;transform:rotate(225deg)}.shift-approval-review-detail{background:#fff;border-top:1px solid #cad8e294;grid-template-columns:minmax(0,1.35fr) minmax(220px,.65fr);gap:.75rem;padding:.72rem;display:grid}.shift-approval-review-detail>div{gap:.36rem;min-width:0;display:grid}.shift-approval-review-detail span{color:var(--ink-muted);font-size:.72rem;font-weight:900}.shift-approval-review-detail pre,.shift-approval-review-detail p{color:var(--ink-soft);font-size:.82rem;line-height:1.45}.shift-approval-review-detail pre{max-height:132px;overflow:auto}.shift-approval-review-detail a{color:var(--accent-strong);font-size:.82rem;font-weight:900}.shift-overview-legend{color:var(--ink-muted);flex-wrap:wrap;gap:.75rem;margin-bottom:.85rem;font-size:.82rem;font-weight:800;display:flex}.shift-overview-legend span{align-items:center;gap:.35rem;display:inline-flex}.shift-bulk-review-bar{z-index:12;background:#fffffff0;border:1px solid #cad8e2e6;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.85rem;padding:.72rem;display:flex;position:sticky;top:.75rem;box-shadow:0 12px 28px #0f172a14}.shift-bulk-review-bar strong,.shift-bulk-review-bar span{display:block}.shift-bulk-review-bar strong{font-size:.9rem}.shift-bulk-review-bar span{color:var(--ink-muted);margin-top:.12rem;font-size:.78rem;line-height:1.35}.shift-bulk-review-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.45rem;display:flex}.shift-bulk-review-actions .button{min-height:34px;padding:.46rem .72rem;font-size:.78rem}.legend-dot{background:#cfd7df;border-radius:999px;width:10px;height:10px;display:inline-block}.legend-dot.is-assigned{background:#87ddb4}.legend-dot.is-pending{background:#e0b35f}.legend-dot.is-needs-change{background:#d98b58}.legend-dot.is-closed{background:#ef9a9a}.legend-dot.is-closed-working{background:#f0c56a}.legend-dot.is-empty,.legend-dot.is-off{background:#d8dde4}.legend-dot.is-unavailable{background:#f3b4b4}.legend-dot.is-unanswered{background:#d8dde4}.shift-calendar-board{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start;gap:.75rem;display:grid}.shift-calendar-day{background:#fff;border:1px solid #cad8e2d6;border-radius:8px;align-content:start;gap:.58rem;min-height:0;padding:.75rem;display:grid;overflow:visible}.shift-calendar-day.has-assignment{background:#effaf3;border-color:#58b37e52}.shift-calendar-day.needs-review{border-color:#e0b35f85;box-shadow:inset 0 0 0 1px #e0b35f29}.shift-calendar-day.is-closed{background:#fdecec;border-color:#c84b4b38}.shift-calendar-day.is-closed.has-assignment,.shift-calendar-day.is-closed-working{background:#fff8e8;border-color:#e0b35f6b}.shift-calendar-day-head{justify-content:space-between;align-items:flex-start;gap:.6rem;display:flex}.shift-calendar-day-head>div{gap:.08rem;display:grid}.shift-calendar-day-head strong{font-size:1.35rem;line-height:1}.shift-calendar-day-head span{color:var(--ink-muted);font-size:.78rem;font-weight:800}.shift-calendar-day-kpi{justify-items:end;gap:.18rem;display:grid}.shift-calendar-day-kpi small{color:var(--ink-muted);font-size:.7rem;font-weight:850}.shift-day-timeline{background:repeating-linear-gradient(90deg,#94a3b829 0 1px,#0000 1px 7.69231%),#fbfdff;border:1px solid #cad8e2bd;border-radius:8px;grid-template-columns:repeat(13,minmax(16px,1fr));gap:.32rem .22rem;padding:.5rem;display:grid;overflow:visible}.shift-day-scale{color:var(--ink-muted);grid-column:1/-1;grid-template-columns:repeat(5,minmax(0,1fr));font-size:.66rem;font-weight:850;display:grid}.shift-day-scale span:last-child{text-align:right}.shift-timebar{background:#ffffffeb;border:1px solid #cad8e2db;border-left:4px solid #e0b35f;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.32rem;min-width:0;min-height:42px;padding:.38rem .45rem;display:grid;position:relative;box-shadow:0 5px 14px #0f172a0d}.shift-timebar.review-approved{background:#f4fff8;border-left-color:#58b37e}.shift-timebar.review-needs-change{background:#fff8ea;border-left-color:#d98b58}.shift-timebar.review-rejected{opacity:.78;background:#fff3f3;border-left-color:#d86158}.shift-timebar-select{width:18px;height:18px;accent-color:var(--accent-blue);cursor:pointer;margin:0}.shift-timebar-select:focus-visible{outline-offset:2px;outline:3px solid #2e7cf652}.shift-timebar-main{align-items:center;gap:.35rem;min-width:0;display:flex}.shift-timebar-main strong,.shift-timebar-main span,.shift-timebar-main small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.shift-timebar-main strong{min-width:0;color:var(--ink);font-size:.78rem;font-weight:900}.shift-timebar-main span{color:var(--accent-strong);font-size:.72rem;font-weight:850}.shift-timebar-main small{color:var(--ink-muted);margin-left:auto;font-size:.66rem;font-weight:900}.shift-timebar .shift-review-status-line{display:none}.shift-timebar .shift-review-controls{width:auto}.shift-timebar .shift-review-action-menu summary{background:#f8fafce0;border-radius:8px;width:auto;min-width:46px;min-height:26px}.shift-calendar-assignments{gap:.38rem;display:grid}.shift-calendar-assignment-card{color:var(--ink);background:#ffffffb8;border:1px solid #cad8e2c7;border-radius:8px;gap:.42rem;padding:.52rem;font-size:.84rem;display:grid}.shift-calendar-assignment-card.review-approved{background:#f7fff9;border-color:#58b37e59}.shift-calendar-assignment-card.review-needs-change{background:#fffaf0;border-color:#e0b35f6b}.shift-calendar-assignment-card.review-rejected{opacity:.78;background:#fff3f3;border-color:#d8615859}.shift-calendar-assignment-main{flex-wrap:wrap;gap:.38rem;display:flex}.shift-calendar-assignment-main span,.shift-calendar-assignments span{color:var(--accent-strong);font-weight:800}.shift-calendar-day-review-form .button{width:100%;min-height:32px;padding:.42rem .6rem;font-size:.74rem}.shift-calendar-more{background:#ffffff9e;border:1px dashed #7481926b;border-radius:8px}.shift-calendar-more summary{min-height:34px;color:var(--accent-strong);cursor:pointer;justify-content:center;align-items:center;padding:.34rem .52rem;font-size:.76rem;font-weight:900;list-style:none;display:flex}.shift-calendar-more summary::-webkit-details-marker{display:none}.shift-calendar-more-list{gap:.38rem;padding:0 .42rem .42rem;display:grid}.shift-calendar-empty{color:var(--ink-muted);margin:0;font-size:.86rem;font-weight:800}.shift-calendar-alerts{border-top:1px solid #cad8e2b3;gap:.28rem;padding-top:.2rem;display:grid}.shift-calendar-alerts small{color:var(--ink-muted);font-size:.72rem;line-height:1.35}.shift-matrix-scroll{border:1px solid var(--rule);background:#fff;border-radius:8px;width:100%;max-height:min(78vh,820px);overflow:auto;box-shadow:inset 0 0 0 1px #ffffffbf}.shift-matrix-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%;min-width:1600px}.shift-matrix-table th,.shift-matrix-table td{text-align:center;vertical-align:top;border-bottom:1px solid #d7dde3;border-right:1px solid #d7dde3;width:108px;min-width:108px;padding:.28rem}.shift-matrix-table thead th{z-index:4;color:var(--ink);background:#eef1f4;padding-top:.42rem;padding-bottom:.42rem;font-weight:900;position:sticky;top:0}.shift-matrix-table thead th span,.shift-matrix-table thead th small{display:block}.shift-matrix-table thead th small{color:var(--ink-muted);margin-top:.12rem;font-size:.68rem;font-weight:850}.shift-matrix-table thead th.is-closed-day{color:#9b1c1c;background:#fdecec}.shift-matrix-sticky{z-index:5;background:#eef1f4;width:150px;min-width:150px;position:sticky;left:0}.shift-matrix-staff{text-align:left;padding:.5rem .6rem!important}.shift-matrix-staff strong,.shift-matrix-staff small,.shift-matrix-staff span{display:block}.shift-matrix-staff small{color:var(--ink-muted);margin-top:.2rem;font-size:.72rem}.shift-matrix-staff span{color:var(--accent-strong);margin-top:.32rem;font-size:.72rem;font-weight:900}.shift-matrix-cell{height:76px;color:var(--ink-muted);background:#f8fafc;position:relative;overflow:visible}.shift-matrix-cell.has-assignment{color:var(--ink);background:#effaf3}.shift-matrix-cell.review-approved.has-assignment{background:#ecfbf2}.shift-matrix-cell.review-needs-change.has-assignment{background:#fff8e8}.shift-matrix-cell.review-rejected.has-assignment{color:#9b1c1c;background:#fff0f0}.shift-matrix-cell.is-closed{color:#9b1c1c;background:#fde7e7;font-weight:900}.shift-matrix-cell.is-closed.has-assignment,.shift-matrix-cell.is-closed-working{color:var(--ink);background:#fff7df}.shift-matrix-cell.is-off.is-unavailable:not(.is-closed){background:#fff2f2}.shift-matrix-cell.is-off.is-available:not(.is-closed){background:#fbfdfc}.shift-matrix-cell.is-off.is-unanswered:not(.is-closed){background:#f3f6f9}.shift-matrix-cell.has-assignment.is-unavailable:not(.is-closed){box-shadow:inset 0 0 0 2px #dc262642}.shift-matrix-times{color:var(--ink);gap:.22rem;font-size:.78rem;line-height:1.25;display:grid}.shift-matrix-shift{gap:.2rem;display:grid;position:relative}.shift-matrix-shift-line{min-height:54px;box-shadow:none;background:0 0;border:1px solid #0000;border-radius:8px;grid-template-columns:1fr;justify-content:center;align-items:center;padding:.32rem .36rem;transition:background-color .12s,border-color .12s;display:grid;position:relative}.shift-matrix-shift-line:hover,.shift-matrix-shift:focus-within .shift-matrix-shift-line{background:#ffffffb8;border-color:#cad8e2c7}.shift-matrix-select{width:16px;height:16px;accent-color:var(--accent-strong);opacity:.12;margin:0;transition:opacity .12s,transform .12s;position:absolute;top:.32rem;left:.32rem}.shift-matrix-shift:hover .shift-matrix-select,.shift-matrix-select:focus-visible,.shift-matrix-select:checked{opacity:1}.shift-matrix-select:checked{transform:scale(1.04)}.shift-matrix-shift-line i{background:#e0b35f;border-radius:999px;width:7px;height:7px;position:absolute;top:50%;left:.38rem;transform:translateY(-50%)}.shift-matrix-shift.review-approved .shift-matrix-shift-line{background:0 0;border-color:#0000}.shift-matrix-shift.review-approved .shift-matrix-shift-line i{background:#58b37e}.shift-matrix-shift.review-approved .shift-matrix-review-chip{color:#1f8c67;background:#e4f7ed}.shift-matrix-shift.review-needs-change .shift-matrix-shift-line{background:0 0;border-color:#0000}.shift-matrix-shift.review-needs-change .shift-matrix-shift-line i{background:#d98b58}.shift-matrix-shift.review-needs-change .shift-matrix-review-chip{color:#a35e10;background:#fff0d8}.shift-matrix-shift.review-rejected .shift-matrix-shift-line{background:0 0;border-color:#0000}.shift-matrix-shift.review-rejected .shift-matrix-shift-line i{background:#d86158}.shift-matrix-shift.review-rejected .shift-matrix-review-chip{color:#b8322b;background:#ffe2e0}.shift-matrix-time-range{min-width:62px;color:var(--ink);font-variant-numeric:tabular-nums;text-align:center;white-space:normal;grid-template-rows:auto auto auto;justify-content:center;align-items:center;gap:.02rem;font-size:.9rem;font-weight:900;line-height:1;display:grid}.shift-matrix-time-range span,.shift-matrix-time-range small{display:block}.shift-matrix-time-range small{color:#7c8a9a;font-size:.66rem;line-height:1}.shift-matrix-closed-work{color:#99600e;white-space:nowrap;background:#fff0c6;border-radius:999px;padding:.08rem .28rem;font-size:.56rem;font-weight:900;line-height:1.2;position:absolute;bottom:.22rem;right:.28rem}.shift-matrix-review-chip{width:18px;min-width:18px;height:18px;color:var(--ink-muted);white-space:nowrap;background:#eef4f8;border-radius:999px;justify-content:center;place-self:start end;align-items:center;padding:0;font-size:.56rem;font-weight:900;line-height:1;display:inline-flex;position:absolute;top:.26rem;right:.26rem}.shift-matrix-shift.review-pending .shift-matrix-review-chip{opacity:0}.shift-matrix-shift.review-pending:hover .shift-matrix-review-chip,.shift-matrix-shift.review-pending:focus-within .shift-matrix-review-chip{opacity:.72}.shift-matrix-empty{min-height:40px;color:var(--ink-muted);opacity:.74;place-items:center;font-size:.8rem;font-weight:900;display:grid}.shift-matrix-pref{min-height:20px;color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;background:#ffffffbd;border-radius:999px;justify-content:center;align-items:center;padding:.08rem .28rem;font-size:.62rem;font-weight:850;line-height:1.25;display:inline-flex;position:absolute;bottom:.24rem;left:.28rem;right:.28rem;overflow:hidden}.shift-matrix-cell.is-unavailable .shift-matrix-pref{color:#9b1c1c;background:#ffffffd1;font-weight:900}.shift-matrix-cell.is-unanswered .shift-matrix-pref{color:var(--ink-muted);background:#ffffffd1;font-weight:900}.shift-matrix-warning{color:#a12a2a;background:#fff1f1;border-radius:999px;justify-content:center;align-items:center;min-height:22px;padding:.16rem .38rem;font-size:.66rem;font-weight:900;display:inline-flex;position:absolute;bottom:.28rem;right:.3rem}.shift-matrix-table tr:target .shift-matrix-staff,.shift-matrix-table tr:target td{box-shadow:inset 0 0 0 2px #3a84d657}.shift-review-controls{gap:.38rem;width:100%;display:grid}.shift-review-status-line{flex-wrap:wrap;justify-content:center;align-items:center;gap:.28rem;display:flex}.shift-review-status-line small{color:var(--ink-muted);overflow-wrap:anywhere;font-size:.68rem;line-height:1.3}.shift-review-action-menu summary{border:1px solid var(--rule);min-height:28px;color:var(--accent-strong);cursor:pointer;white-space:nowrap;background:#fff;border-radius:999px;justify-content:center;align-items:center;padding:.28rem .5rem;font-size:.68rem;font-weight:900;list-style:none;display:inline-flex}.shift-review-action-menu{position:relative}.shift-review-action-menu[open]{z-index:120}.shift-review-action-menu summary::-webkit-details-marker{display:none}.shift-review-menu-panel{z-index:130;background:#fff;border:1px solid #cad8e2e6;border-radius:8px;gap:.42rem;width:224px;min-width:200px;max-width:min(72vw,260px);margin-top:0;padding:.55rem;display:grid;position:absolute;top:calc(100% + .35rem);right:0;box-shadow:0 18px 40px #0f172a2e}.shift-review-menu-panel:before{content:"";background:#fff;border-top:1px solid #cad8e2e6;border-left:1px solid #cad8e2e6;width:12px;height:12px;position:absolute;top:-7px;right:18px;transform:rotate(45deg)}.shift-review-form{gap:.34rem;margin:0;display:grid}.shift-review-form input{border:1px solid var(--rule);border-radius:8px;width:100%;min-height:32px;padding:.42rem .48rem;font-size:.74rem}.shift-review-form .button{width:100%}.shift-review-form.is-approve{border-bottom:1px solid #cad8e2b8;padding-bottom:.42rem}.shift-review-controls.is-compact .status-badge{padding:.16rem .38rem;font-size:.66rem}.shift-matrix-actions{text-align:center;margin-top:0;position:relative}.shift-matrix-actions[open]{z-index:80}.shift-matrix-actions summary{cursor:pointer;width:28px;min-width:28px;min-height:28px;color:var(--accent-strong);opacity:.78;background:#ffffffe6;border:1px solid #cad8e2e6;border-radius:999px;justify-content:center;align-items:center;padding:0;font-size:.78rem;font-weight:900;line-height:1;list-style:none;transition:background-color .12s,border-color .12s,opacity .12s;display:inline-flex}.shift-matrix-actions summary:hover{opacity:1;background:#fff;border-color:#118a805c}.shift-matrix-actions summary::-webkit-details-marker{display:none}.shift-matrix-cell>.shift-matrix-actions{opacity:0;transition:opacity .12s;position:absolute;top:.34rem;right:.34rem}.shift-matrix-cell:hover>.shift-matrix-actions,.shift-matrix-cell:focus-within>.shift-matrix-actions,.shift-matrix-cell>.shift-matrix-actions[open]{opacity:1}.shift-matrix-shift>.shift-matrix-actions{position:absolute;top:.22rem;right:.22rem}.shift-matrix-shift>.shift-matrix-actions summary{width:26px;min-width:26px;min-height:26px;color:var(--ink-muted);background:#ffffffc7;font-size:.7rem}.shift-matrix-action-panel{background:#fff;border:1px solid #cad8e2eb;border-radius:8px;gap:.5rem;width:236px;max-width:min(78vw,260px);padding:.55rem;display:grid;position:absolute;top:calc(100% + .25rem);right:0;box-shadow:0 18px 40px #0f172a2e}.shift-matrix-review-block{background:#f8fbfd;border:1px solid #cad8e2e6;border-radius:8px;gap:.38rem;padding:.45rem;display:grid}.shift-matrix-form{background:#fbfdff;border:1px solid #cad8e2e6;border-radius:8px;gap:.34rem;margin-top:0;padding:.45rem;display:grid}.shift-matrix-form input{border:1px solid var(--rule);border-radius:8px;width:100%;min-height:32px;padding:.42rem .48rem;font-size:.74rem}.shift-matrix-form .button{min-height:32px;padding:.42rem .55rem;font-size:.74rem}.shift-rule-grid{grid-template-columns:repeat(auto-fit,minmax(118px,1fr));align-items:end;gap:.55rem;display:grid}.shift-rule-grid label{color:var(--ink-muted);flex-direction:column;gap:.26rem;font-size:.76rem;font-weight:800;display:flex}.shift-rule-grid input[type=checkbox]{justify-self:start;width:22px;min-height:22px}.line-code-panel{background:#f5f9ff;border:1px dashed #2e7cf647;border-radius:16px;gap:.65rem;padding:1rem;display:grid}.line-code-panel.is-linked{background:#f3fbf6;border-style:solid;border-color:#1f8c672e}.line-code-panel span{color:var(--ink-muted);font-size:.82rem;font-weight:800}.line-code-panel strong{color:var(--st-info);letter-spacing:.08em;font-size:clamp(1.8rem,6vw,2.7rem)}.line-code-panel.is-linked strong{color:var(--st-ok);letter-spacing:0;font-size:clamp(1.35rem,5vw,2rem)}.line-code-panel p{color:var(--ink-soft);margin:0;font-size:.9rem}.line-link-actions{flex-wrap:wrap;gap:.55rem;margin-top:.15rem;display:flex}.shift-line-invite-panel{background:linear-gradient(#f6fdfafa,#fffffff5);border:1px solid #2395792e;border-radius:8px;gap:1rem;padding:1rem;display:grid;box-shadow:0 14px 32px #1c3a500f}.shift-line-invite-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.shift-line-invite-head h3{letter-spacing:0;margin:.22rem 0 0;font-size:1.15rem;line-height:1.25}.shift-line-invite-head p{color:var(--ink-muted);margin:.38rem 0 0;font-size:.9rem;font-weight:700;line-height:1.55}.shift-line-invite-actions{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.shift-line-invite-list{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.75rem;display:grid}.shift-line-invite-card{background:#fff;border:1px solid #cfdde6eb;border-radius:8px;gap:.75rem;padding:.85rem;display:grid}.shift-line-invite-card-head{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.shift-line-invite-card h4{color:var(--ink);letter-spacing:0;margin:0;font-size:1rem;line-height:1.3}.shift-line-invite-card p{color:var(--ink-muted);overflow-wrap:anywhere;margin:.18rem 0 0;font-size:.78rem;font-weight:750;line-height:1.4}.shift-line-invite-code{background:#f5f9ff;border:1px dashed #2e7cf63d;border-radius:8px;justify-content:space-between;align-items:center;gap:.75rem;padding:.65rem .75rem;display:flex}.shift-line-invite-code span{color:var(--ink-muted);font-size:.76rem;font-weight:850}.shift-line-invite-code strong{color:var(--st-info);letter-spacing:.08em;font-size:1.15rem;line-height:1}.shift-line-invite-message{max-height:168px;color:var(--ink-muted);white-space:pre-wrap;background:#f8fbfd;border:1px solid #dee7eef5;border-radius:8px;margin:0;padding:.72rem;font-family:inherit;font-size:.78rem;font-weight:700;line-height:1.55;overflow:auto}.my-shift-page{gap:1rem;display:grid}.my-shift-hero{background:#f5f9ff;border:1px solid #2e7cf629;border-radius:20px;justify-content:space-between;align-items:flex-end;gap:1rem;padding:1.15rem;display:flex}.my-shift-hero h2{letter-spacing:0;margin:0;font-size:clamp(1.35rem,5vw,1.95rem);line-height:1.2}.my-shift-hero p:not(.eyebrow){color:var(--ink-muted);margin:.3rem 0 0;font-weight:650}.my-shift-month-list{gap:.85rem;display:grid}.my-shift-month-tabs{overscroll-behavior-x:contain;scrollbar-width:thin;gap:.55rem;padding:.15rem 0 .2rem;display:flex;overflow-x:auto}.my-shift-month-tab{min-width:132px;min-height:48px;color:var(--ink-muted);touch-action:manipulation;background:#fff;border:1px solid #cad8e2d9;border-radius:999px;flex:none;justify-content:space-between;align-items:center;gap:.55rem;padding:.58rem .78rem;font-size:.88rem;font-weight:850;text-decoration:none;display:inline-flex;box-shadow:0 10px 24px #2443620d}.my-shift-month-tab span{min-width:32px;min-height:28px;color:var(--ink-muted);background:#f2f6fa;border-radius:999px;justify-content:center;align-items:center;padding:0 .45rem;font-size:.74rem;font-weight:900;display:inline-flex}.my-shift-month-tab.is-active{color:var(--accent-strong);background:#ecfaf4;border-color:#1f8c6747;box-shadow:inset 0 0 0 1px #1f8c6714,0 12px 28px #1f8c6717}.my-shift-month-tab.is-active span{color:var(--accent-strong);background:#fff}.my-shift-month-card{background:#fff;border:1px solid #2e7cf629;border-radius:20px;overflow:hidden;box-shadow:0 18px 42px #24436214}.my-shift-month-card-header{justify-content:space-between;align-items:flex-start;gap:1rem;min-height:76px;padding:.95rem 1rem .8rem;display:flex}.my-shift-month-card-header span{color:var(--ink-muted);font-size:.78rem;font-weight:850;display:block}.my-shift-month-card-header strong{color:var(--ink);margin-top:.12rem;font-size:1.18rem;line-height:1.25;display:block}.my-shift-month-card-header p{max-width:520px;color:var(--ink-soft);margin:.22rem 0 0;font-size:.84rem;font-weight:650;line-height:1.45}.my-shift-month-card-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.my-shift-google-calendar-form{display:inline-flex}.my-shift-google-calendar-form .button{min-height:42px}.my-shift-month-card summary{cursor:pointer;justify-content:space-between;align-items:center;gap:.8rem;min-height:68px;padding:.95rem 1rem;list-style:none;display:flex}.my-shift-month-card summary::-webkit-details-marker{display:none}.my-shift-month-card summary span{color:var(--ink-muted);font-size:.78rem;font-weight:850;display:block}.my-shift-month-card summary strong{color:var(--ink);margin-top:.12rem;font-size:1.18rem;line-height:1.25;display:block}.my-shift-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.36rem;padding:0 .72rem .8rem;display:grid}.my-shift-calendar-weekday{min-height:28px;color:var(--ink-muted);place-items:center;font-size:.72rem;font-weight:850;display:grid}.my-shift-calendar-day{background:#f8fafc94;border:1px solid #cad8e2b8;border-radius:14px;flex-direction:column;gap:.3rem;min-width:0;min-height:86px;padding:.46rem .38rem;display:flex}.my-shift-calendar-day.is-placeholder{background:0 0;border-color:#0000}.my-shift-calendar-day.has-shift{background:#f2fbf6;border-color:#1f8c673d}.my-shift-calendar-day.is-today{box-shadow:inset 0 0 0 2px #2e7cf647}.my-shift-calendar-date{justify-content:space-between;align-items:baseline;gap:.22rem;display:flex}.my-shift-calendar-date strong{color:var(--ink);font-size:.9rem;font-weight:900;line-height:1}.my-shift-calendar-date span{color:var(--ink-muted);font-size:.62rem;font-weight:850}.my-shift-calendar-day p{color:var(--ink-muted);margin:auto 0 0;font-size:.62rem;font-weight:750;line-height:1.25}.my-shift-calendar-times{gap:.18rem;margin-top:auto;display:grid}.my-shift-calendar-times span,.my-shift-calendar-times small{min-width:0;color:var(--accent-strong);text-align:center;overflow-wrap:anywhere;background:#fff;border-radius:8px;padding:.16rem .22rem;font-size:.62rem;font-weight:900;line-height:1.18;display:block}.my-shift-calendar-times small{color:var(--ink-muted)}.my-shift-list{gap:.55rem;display:grid}.my-shift-list-toggle{overflow:hidden}.my-shift-list-toggle>summary{cursor:pointer;min-height:54px;margin-bottom:0;list-style:none}.my-shift-list-toggle>summary::-webkit-details-marker{display:none}.my-shift-list-toggle[open]>summary{margin-bottom:1rem}.my-shift-toggle-indicator{min-height:36px;color:var(--accent-strong);background:#fff;border:1px solid #cad8e2e6;border-radius:999px;justify-content:center;align-items:center;padding:.4rem .72rem;font-size:.82rem;font-weight:850;display:inline-flex}.my-shift-list-toggle[open] .my-shift-toggle-indicator{color:var(--ink-muted)}.my-shift-list-toggle[open] .my-shift-toggle-indicator:before{content:"閉じる"}.my-shift-list-toggle[open] .my-shift-toggle-indicator{font-size:0}.my-shift-list-toggle[open] .my-shift-toggle-indicator:before{font-size:.82rem}.my-shift-row{background:#fbfdff;border:1px solid #cad8e2b8;border-radius:16px;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:.72rem;padding:.72rem;display:grid}.my-shift-row-date{min-height:52px;color:var(--accent-strong);background:#eaf8f0;border-radius:14px;place-items:center;display:grid}.my-shift-row-date strong,.my-shift-row-date span{line-height:1;display:block}.my-shift-row-date strong{font-size:1.12rem;font-weight:900}.my-shift-row-date span{margin-top:-.1rem;font-size:.68rem;font-weight:850}.my-shift-row h4{color:var(--ink);margin:0;font-size:1rem;line-height:1.25}.my-shift-row p{color:var(--ink-muted);margin:.18rem 0 0;font-size:.82rem;font-weight:650}.liff-shift-page{min-height:100dvh;padding:max(1rem, env(safe-area-inset-top,0px)) 1rem max(1.2rem, env(safe-area-inset-bottom,0px));background:linear-gradient(#f7fbfe 0%,#eef7f4 48%,#f9fbfd 100%)}.liff-shift-shell{gap:.85rem;width:min(100%,560px);margin:0 auto;display:grid}.liff-shift-hero,.liff-shift-panel,.liff-shift-complete,.liff-shift-loading{background:#fffffff7;border:1px solid #cad8e2d1;border-radius:20px;box-shadow:0 18px 42px #24436214}.liff-shift-hero{justify-content:space-between;align-items:flex-end;gap:1rem;padding:1rem;display:flex}.liff-shift-hero h1{color:var(--ink);letter-spacing:0;margin:0;font-size:clamp(1.5rem,8vw,2.15rem);line-height:1.12}.liff-shift-hero p:not(.eyebrow){color:var(--ink-muted);margin:.26rem 0 0;font-size:.9rem;font-weight:750}.liff-shift-hero>span,.liff-shift-panel-head span{min-height:34px;color:var(--accent-strong);background:#ecfaf4;border-radius:999px;flex:none;justify-content:center;align-items:center;padding:.38rem .66rem;font-size:.78rem;font-weight:900;display:inline-flex}.liff-shift-notice{color:var(--st-info);background:#f4f8ff;border:1px solid #2e7cf629;border-radius:16px;padding:.72rem .85rem;font-size:.84rem;font-weight:850}.liff-shift-notice.tone-warn{background:var(--st-warn-soft);color:var(--st-warn);border-color:#d288223d}.liff-shift-panel{gap:.8rem;padding:.9rem;display:grid}.liff-shift-panel h2,.liff-shift-complete h1,.liff-shift-loading h1{color:var(--ink);letter-spacing:0;margin:0;font-size:1rem;line-height:1.3}.liff-shift-panel-head{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.liff-shift-panel-head span{color:var(--ink-muted);background:#f3f6f9}.liff-shift-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;display:grid}.liff-shift-mode-grid button,.liff-shift-preset-row button{min-height:48px;color:var(--ink-muted);font:inherit;cursor:pointer;touch-action:manipulation;background:#fff;border:1px solid #cad8e2f2;border-radius:14px;font-size:.88rem;font-weight:900}.liff-shift-mode-grid button.is-active{color:var(--accent-strong);background:#eaf8f1;border-color:#1f8c6747;box-shadow:inset 0 0 0 1px #1f8c671a}.liff-shift-calendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:.34rem;display:grid}.liff-shift-weekday{min-height:24px;color:var(--ink-muted);place-items:center;font-size:.7rem;font-weight:900;display:grid}.liff-shift-day{min-width:0;min-height:58px;color:var(--ink);font:inherit;cursor:pointer;touch-action:manipulation;background:#fbfdff;border:1px solid #cad8e2d1;border-radius:14px;place-items:center;gap:.16rem;display:grid}.liff-shift-day.is-empty{background:0 0;border-color:#0000}.liff-shift-day:disabled{cursor:default;opacity:.72}.liff-shift-day strong,.liff-shift-day span{line-height:1;display:block}.liff-shift-day strong{font-size:1rem;font-weight:950}.liff-shift-day span{color:var(--ink-muted);font-size:.62rem;font-weight:850}.liff-shift-day.is-selected.tone-ok{color:var(--accent-strong);background:#eaf8f1;border-color:#1f8c6752}.liff-shift-day.is-selected.tone-ng{color:var(--st-danger);background:#fff1ef;border-color:#d861583d}.liff-shift-preset-row{gap:.48rem;padding-bottom:.1rem;display:flex;overflow-x:auto}.liff-shift-preset-row button{border-radius:999px;flex:none;min-height:42px;padding:0 .74rem;font-size:.78rem}.liff-shift-time-list{gap:.55rem;display:grid}.liff-shift-time-row{background:#fbfdff;border:1px solid #cad8e2b8;border-radius:14px;grid-template-columns:minmax(84px,1fr) minmax(0,96px) minmax(0,96px);align-items:end;gap:.5rem;padding:.56rem;display:grid}.liff-shift-time-row>span{color:var(--ink);font-size:.86rem;font-weight:900}.liff-shift-time-row label{color:var(--ink-muted);gap:.22rem;font-size:.68rem;font-weight:850;display:grid}.liff-shift-time-row input{min-width:0;min-height:42px;color:var(--ink);font:inherit;border:1px solid #cad8e2f2;border-radius:12px;padding:.42rem;font-size:.86rem;font-weight:850}.liff-shift-preview{background:#f8fafc;border:1px solid #cad8e2b8;border-radius:14px;gap:.36rem;max-height:174px;padding:.62rem;display:grid;overflow:auto}.liff-shift-preview p,.liff-shift-error,.liff-shift-complete p{color:var(--ink-muted);margin:0;font-size:.9rem;font-weight:750;line-height:1.45}.liff-shift-error{color:var(--st-danger)}.liff-shift-submit{width:100%;min-height:52px}.liff-shift-complete,.liff-shift-loading{gap:.85rem;width:min(100%,520px);margin:0 auto;padding:1.1rem;display:grid}.liff-shift-complete h1,.liff-shift-loading h1{font-size:1.45rem}.liff-shift-complete.tone-danger{background:snow;border-color:#d8615847}.liff-shift-loading-board{background:#fbfdff;border:2px solid #1f8c6733;border-radius:16px;grid-template-columns:repeat(4,minmax(0,1fr));gap:.34rem;width:76px;padding:.62rem;display:grid;box-shadow:0 10px 22px #1f8c671a}.liff-shift-loading-cell{aspect-ratio:1;background:#eef4f7;border:1px solid #cad8e2f2;border-radius:6px;animation:1.2s ease-in-out infinite liff-shift-cell}.liff-shift-loading-cell:nth-child(2n){animation-delay:.12s}.liff-shift-loading-cell:nth-child(3n){animation-delay:.24s}.liff-shift-loading-cell.is-filled{background:#dff5eb;border-color:#1f8c6747}.liff-shift-actions{flex-wrap:wrap;gap:.55rem;display:flex}@keyframes liff-shift-cell{0%,to{opacity:.72;transform:translateY(0)}45%{opacity:1;transform:translateY(-3px)}}@media (prefers-reduced-motion:reduce){.liff-shift-loading-cell{opacity:.9;animation:none;transform:none}}.employee-hero-card{background:#f5f9ff;border:1px solid #2e7cf629;border-radius:20px;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1rem;padding:1.15rem;display:flex}.employee-hero-card h2{letter-spacing:-.03em;margin:0;font-size:clamp(1.4rem,5vw,2rem);line-height:1.2}.employee-hero-card p:not(.eyebrow){color:var(--ink-muted);margin:.3rem 0 0;font-weight:650}.invite-preview-callout{background:var(--st-info-soft);border:1px solid #2e7cf62e;border-radius:14px;margin-bottom:.9rem;padding:.8rem .9rem}.invite-preview-eyebrow{color:var(--st-info);letter-spacing:.06em;text-transform:uppercase;margin:0 0 .55rem;font-size:.78rem;font-weight:800}.bulk-form{flex-direction:column;gap:.8rem;display:flex}.bulk-toolbar,.table-scope-switch{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.table-scope-switch{justify-content:flex-end}.table-select-all{color:var(--ink-soft);align-items:center;gap:.55rem;font-size:.88rem;font-weight:700;display:inline-flex}.bulk-selection-note,.bulk-operation-note{color:var(--ink-muted);margin:0;font-size:.84rem}.bulk-toolbar-actions{flex-wrap:wrap;gap:.65rem;display:flex}.table-select-cell{width:52px}.table-select-cell input{width:16px;height:16px}.mobile-card-list{flex-direction:column;gap:.8rem;display:flex}.mobile-card-list.mobile-only{display:none}.record-card{border:1px solid var(--rule);background:#fffffff5;border-radius:18px;padding:.95rem}.record-card-head,.record-card-actions{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.record-card-body{margin-top:.8rem}.record-card-title{margin:0;font-size:1rem;font-weight:800}.record-card-meta{color:var(--ink-muted);margin:.22rem 0 0;font-size:.84rem}.record-card-statuses{flex-wrap:wrap;justify-content:flex-end;gap:.45rem;display:flex}.record-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:.95rem 0 0;display:grid}.record-card-grid div{flex-direction:column;gap:.18rem;display:flex}.record-card-grid dt{color:var(--ink-muted);font-size:.78rem;font-weight:700}.record-card-grid dd{color:var(--ink);margin:0;font-size:.88rem;font-weight:600}.record-card-actions{flex-wrap:wrap;margin-top:.95rem}.form-subsections{gap:1rem;display:grid}.form-subsection{border-radius:var(--admin-radius-sm);background:#f8fbfdad;border:1px solid #dce6eed9;padding:.95rem}.form-subsection h4{color:var(--ink);margin:0 0 .25rem;font-size:1rem;font-weight:850}.form-subsection>p{color:var(--ink-muted);margin:0 0 .85rem;font-size:.86rem}.required-label,.optional-label,.later-label{border-radius:999px;align-items:center;min-height:22px;margin-left:.35rem;padding:.16rem .45rem;font-size:.68rem;font-weight:850;display:inline-flex}.required-label{color:var(--st-danger);background:var(--st-danger-soft)}.optional-label{color:var(--ink-muted);background:var(--surface-muted)}.later-label{color:var(--st-warn);background:var(--st-warn-soft)}.onboarding-layout{grid-template-columns:minmax(0,1.55fr) minmax(280px,.85fr);align-items:start;gap:1rem;display:grid}.onboarding-card-list,.onboarding-check-list{flex-direction:column;gap:.85rem;display:flex}.onboarding-request-share{grid-template-columns:minmax(0,1.4fr) minmax(220px,.6fr);gap:.8rem;margin-bottom:1rem;display:grid}.onboarding-request-share>div{border-radius:var(--admin-radius-sm);background:#f8fbfdc2;border:1px solid #dce6eed1;min-width:0;padding:.85rem .9rem}.onboarding-request-share span,.onboarding-request-details dt,.onboarding-request-reject-form label{color:var(--ink-muted);font-size:.74rem;font-weight:850;display:block}.onboarding-request-share strong{color:var(--ink);overflow-wrap:anywhere;margin-top:.2rem;font-size:.92rem;font-weight:900;display:block}.onboarding-request-list{gap:.9rem;display:grid}.onboarding-request-card{border:1px solid var(--admin-card-border);border-radius:var(--admin-radius);box-shadow:var(--admin-shadow);background:#ffffffeb;overflow:hidden}.onboarding-request-head{border-bottom:1px solid var(--rule);justify-content:space-between;gap:.85rem;padding:1rem 1.08rem;display:flex}.onboarding-request-head h3{margin:0;font-size:1.05rem;font-weight:850}.onboarding-request-head p{color:var(--ink-muted);overflow-wrap:anywhere;margin:.2rem 0 0;font-size:.86rem}.onboarding-request-details{border-bottom:1px solid var(--rule);grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin:0;padding:.9rem 1.08rem;display:grid}.onboarding-request-details>div{min-width:0}.onboarding-request-details .span-2{grid-column:span 2}.onboarding-request-details dd{color:var(--ink);overflow-wrap:anywhere;margin:.18rem 0 0;font-size:.9rem;font-weight:800}.onboarding-request-actions{gap:.8rem;padding:.9rem 1.08rem 1.08rem;display:grid}.onboarding-request-actions .form-card{padding:.95rem}.onboarding-request-reject-form{border-radius:var(--admin-radius-sm);background:#fffafadb;border:1px solid #d861582e;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.55rem;padding:.8rem;display:grid}.onboarding-request-reject-form label{grid-column:1/-1}.onboarding-reviewed-requests{margin-top:1rem}.onboarding-reviewed-requests summary{cursor:pointer;color:var(--accent-blue);font-size:.86rem;font-weight:850}.onboarding-reviewed-requests .linked-list{margin-top:.7rem}.onboarding-candidate-card{border:1px solid var(--admin-card-border);border-radius:var(--admin-radius);box-shadow:var(--admin-shadow);background:#ffffffeb;overflow:hidden}.onboarding-candidate-head{border-bottom:1px solid var(--rule);justify-content:space-between;gap:.85rem;padding:1rem 1.08rem;display:flex}.onboarding-candidate-head h3{margin:0;font-size:1.05rem;font-weight:850}.onboarding-candidate-head p{color:var(--ink-muted);overflow-wrap:anywhere;margin:.2rem 0 0;font-size:.86rem}.check-row{border-bottom:1px solid #dce6eeb8;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.88rem 1.08rem;display:grid}.check-row:last-child{border-bottom:none}.check-mark{border-radius:8px;place-items:center;width:26px;height:26px;font-size:.8rem;font-weight:900;display:grid}.check-mark.tone-ok{color:var(--st-ok);background:var(--st-ok-soft);border:1px solid #1f8c673d}.check-mark.tone-warn{color:var(--st-warn);background:var(--st-warn-soft);border:1px solid #d2882242}.check-mark.tone-danger{color:var(--st-danger);background:var(--st-danger-soft);border:1px solid #d8615842}.check-row strong{font-size:.94rem;font-weight:850;display:block}.check-row small{color:var(--ink-muted);margin-top:.12rem;font-size:.8rem;display:block}.onboarding-progress-step{background:var(--surface);border-bottom:1px solid #dce6eeb8;padding:.85rem 1.08rem}.onboarding-progress-step:last-child{border-bottom:none}.onboarding-progress-step-head{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.onboarding-progress-step-head h4{margin:.12rem 0 0;font-size:.98rem}.onboarding-progress-step-head .eyebrow{color:var(--ink-muted);margin:0;font-size:.64rem}.onboarding-progress-step-note{color:var(--ink-muted);margin:.4rem 0 0;font-size:.8rem;line-height:1.45}.onboarding-progress-step-items{gap:.45rem;margin-top:.55rem;display:grid}.onboarding-progress-step-item{border-top:1px solid #dce6ee94;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.65rem;padding-top:.45rem;display:grid}.onboarding-progress-step-item strong,.onboarding-progress-step-item small{display:block}.onboarding-progress-step-item strong{font-size:.86rem}.onboarding-progress-step-item small{color:var(--ink-muted);margin-top:.1rem;font-size:.76rem}.audit-diff-pill{border:1px solid var(--rule);background:var(--surface-soft);max-width:28rem;color:var(--ink-soft);overflow-wrap:anywhere;border-radius:10px;padding:.48rem .62rem;font-size:.84rem;font-weight:700;display:inline-block}.audit-detail-list{margin-top:.55rem}.audit-detail-list summary{cursor:pointer;color:var(--accent-blue);font-size:.82rem;font-weight:800}.audit-detail-list dl{border:1px solid var(--rule);background:#f8fbfdc7;border-radius:12px;gap:.35rem;margin:.55rem 0 0;padding:.7rem;display:grid}.audit-detail-list div{grid-template-columns:8rem minmax(0,1fr);gap:.7rem;display:grid}.audit-detail-list dt{color:var(--ink-muted);font-size:.78rem;font-weight:800}.audit-detail-list dd{overflow-wrap:anywhere;min-width:0;margin:0}.impact-preview-root{flex-direction:column;gap:.25rem;min-width:0;display:inline-flex}.impact-disabled-reason{max-width:18rem;color:var(--ink-muted);font-size:.76rem;font-weight:700}.impact-dialog-backdrop{z-index:80;background:#1823305c;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.impact-dialog{background:#fff;border:1px solid #cad8e2e6;border-radius:18px;width:min(560px,100%);max-height:min(86vh,760px);overflow:auto;box-shadow:0 24px 72px #1823303d}.impact-dialog-head{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 1.1rem;display:flex}.impact-dialog-head strong{color:var(--ink);overflow-wrap:anywhere;margin-top:.15rem;font-size:1.08rem;display:block}.impact-dialog-close{border:1px solid var(--rule);width:2rem;height:2rem;color:var(--ink-muted);cursor:pointer;background:#fff;border-radius:999px;place-items:center;display:inline-grid}.impact-dialog-body,.impact-dialog-form,.impact-dialog-field{gap:.8rem;padding:1rem 1.1rem 0;display:grid}.impact-section{gap:.28rem;display:grid}.impact-section strong{color:var(--ink);font-size:.86rem}.impact-section span,.impact-section li{color:var(--ink-soft);font-size:.86rem;line-height:1.65}.impact-section ul{margin:0;padding-left:1.1rem}.impact-dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:.55rem;padding:1rem 1.1rem 1.1rem;display:flex}.payroll-period-summary{gap:.9rem;display:grid}.payroll-period-summary-head{justify-content:space-between;align-items:center;gap:1rem;display:flex}.payroll-period-summary-head h3{color:var(--ink);margin:.12rem 0 0;font-size:1rem}.payroll-period-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin:0;display:grid}.payroll-period-grid div{border:1px solid var(--rule);background:#f8fbfdd1;border-radius:12px;min-width:0;padding:.78rem}.payroll-period-grid dt{color:var(--ink-muted);margin-bottom:.25rem;font-size:.76rem;font-weight:800}.payroll-period-grid dd{color:var(--ink);overflow-wrap:anywhere;margin:0;font-size:.9rem;font-weight:800}.task-list-title{color:var(--ink);margin:0 0 .55rem;font-size:.9rem}.role-checkbox-pill.is-readonly{opacity:.78;background:#f8fbfde0}.payslip-status-hero{border:1px solid var(--rule);border-left:5px solid var(--accent-blue);border-radius:var(--admin-radius);box-shadow:var(--admin-shadow);background:#fff;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;margin-bottom:1rem;padding:1rem 1.1rem;display:grid}.payslip-status-hero h2{margin:0;font-size:1.22rem;font-weight:850}.payslip-status-hero p{color:var(--ink-muted);margin:.25rem 0 0;font-size:.9rem}.payslip-status-hero-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.sign-page{place-items:center;min-height:100vh;padding:2rem;display:grid}.sign-panel{text-align:left;width:min(560px,100%)}.sign-logo{width:min(340px,78vw);margin-bottom:1.1rem}.sign-panel h1{letter-spacing:-.05em;margin:0;font-size:clamp(2.2rem,7vw,3.6rem);font-weight:800;line-height:1.08}.sign-lead,.sign-help{color:var(--ink-muted)}.sign-lead{margin:1.15rem 0 0;font-size:1.08rem;font-weight:700}.sign-help{margin:1.1rem 0 0;font-size:.94rem;font-weight:650}.sign-legal-links{color:var(--ink-muted);flex-wrap:wrap;gap:.5rem;margin-top:1rem;font-size:.84rem;font-weight:750;display:flex}.sign-legal-links a{text-underline-offset:.18em;text-decoration:underline}.line-attendance-page{min-height:100dvh;padding:max(1rem, env(safe-area-inset-top,0px)) 1rem max(1.2rem, env(safe-area-inset-bottom,0px));background:linear-gradient(#e8f7f6e6,#f8fbfffa),#f7fafc;place-items:center;display:grid}.line-attendance-panel{background:#fffffff5;border:1px solid #cad8e2d1;border-radius:18px;width:min(460px,100%);padding:1.25rem;box-shadow:0 22px 54px #3f546c24}.line-attendance-logo{margin-bottom:1rem}.line-attendance-panel h1{color:var(--ink);letter-spacing:0;margin:0;font-size:clamp(1.6rem,8vw,2.2rem);line-height:1.18}.line-attendance-lead{color:var(--ink-soft);margin:.75rem 0 0;font-size:.96rem;line-height:1.72}.line-attendance-actions{gap:.65rem;margin-top:1.1rem;display:grid}.line-attendance-actions .button{min-height:48px}.line-attendance-note{background:#f5f9ff;border:1px solid #2e7cf629;border-radius:14px;margin-top:1rem;padding:.85rem .9rem}.line-attendance-note strong{color:var(--ink);font-size:.88rem;font-weight:900;display:block}.line-attendance-note p{color:var(--ink-muted);margin:.28rem 0 0;font-size:.84rem;line-height:1.58}.line-onboarding-page{min-height:100dvh;padding:max(1rem, env(safe-area-inset-top,0px)) 1rem max(1.2rem, env(safe-area-inset-bottom,0px));background:linear-gradient(#e8f7f6e6,#f8fbfffa),#f7fafc;place-items:center;display:grid}.line-onboarding-panel{background:#fffffff5;border:1px solid #cad8e2d1;border-radius:18px;width:100%;max-width:560px;padding:1.15rem;overflow:hidden;box-shadow:0 22px 54px #3f546c24}.line-onboarding-logo{width:min(100%,330px);margin-bottom:1rem}.line-onboarding-panel h1{color:var(--ink);letter-spacing:0;margin:0;font-size:clamp(1.6rem,8vw,2.2rem);line-height:1.18}.line-onboarding-lead{color:var(--ink-soft);overflow-wrap:anywhere;margin:.75rem 0 0;font-size:.96rem;line-height:1.72}.line-onboarding-state{background:#f8fafc;border:1px solid #cad8e2d1;border-radius:14px;gap:.45rem;margin-top:1rem;padding:.9rem;display:grid}.line-onboarding-state strong{color:var(--ink);font-size:.94rem;font-weight:900}.line-onboarding-state p{color:var(--ink-muted);overflow-wrap:anywhere;margin:0;font-size:.88rem;line-height:1.58}.line-onboarding-state.tone-ok{background:var(--st-ok-soft);border-color:#1f8c6738}.line-onboarding-state.tone-warn{background:var(--st-warn-soft);border-color:#d288223d}.line-onboarding-state.tone-danger{background:var(--st-danger-soft);border-color:#d861583d}.line-onboarding-form{gap:.78rem;margin-top:1rem;display:grid}.line-onboarding-submit{width:100%;min-height:50px}.page-loading-state{min-height:100dvh;padding:max(1rem, env(safe-area-inset-top,0px)) 1rem max(1.2rem, env(safe-area-inset-bottom,0px));background:linear-gradient(#e8f7f6e6,#f8fbfffa),#f7fafc;place-items:center;display:grid}.page-loading-panel{text-align:center;background:#fffffff5;border:1px solid #cad8e2d1;border-radius:18px;justify-items:center;gap:.75rem;width:min(420px,100%);padding:1.25rem;display:grid;box-shadow:0 22px 54px #3f546c24}.page-loading-logo{margin-bottom:.2rem}.page-loading-clock{background:radial-gradient(circle,#fff 0 9px,#0000 10px),conic-gradient(from -90deg,#2e7cf62e,#0f8c7642,#2e7cf62e);border:3px solid #2e7cf638;border-radius:999px;width:72px;height:72px;position:relative;box-shadow:inset 0 0 0 6px #fff,0 12px 26px #2e7cf61f}.page-loading-panel-shift{border-color:#1f8c6733}.page-loading-shift-board{background:#fbfdff;border:2px solid #1f8c6738;border-radius:18px;grid-template-columns:repeat(4,minmax(0,1fr));gap:.38rem;width:82px;padding:.72rem;display:grid;box-shadow:0 12px 26px #1f8c671f}.page-loading-shift-cell{aspect-ratio:1;background:#eef4f7;border:1px solid #cad8e2f2;border-radius:6px;animation:1.2s ease-in-out infinite page-loading-shift-cell}.page-loading-shift-cell:nth-child(2n){animation-delay:.12s}.page-loading-shift-cell:nth-child(3n){animation-delay:.24s}.page-loading-shift-cell.is-filled{background:#dff5eb;border-color:#1f8c6747}.page-loading-clock-face,.page-loading-clock-hour,.page-loading-clock-minute,.page-loading-clock-second,.page-loading-clock-center{position:absolute;top:50%;left:50%}.page-loading-clock-face{background:linear-gradient(var(--accent-blue), var(--accent-blue)) center 6px / 2px 8px no-repeat, linear-gradient(var(--accent-blue), var(--accent-blue)) center calc(100% - 6px) / 2px 8px no-repeat, linear-gradient(90deg, var(--accent-blue), var(--accent-blue)) 6px center / 8px 2px no-repeat, linear-gradient(90deg, var(--accent-blue), var(--accent-blue)) calc(100% - 6px) center / 8px 2px no-repeat;opacity:.68;border-radius:999px;inset:8px}.page-loading-clock-hour,.page-loading-clock-minute,.page-loading-clock-second{transform-origin:50% 100%;border-radius:999px;width:3px}.page-loading-clock-hour{background:var(--ink);height:18px;margin-top:-18px;margin-left:-1.5px;animation:9.6s linear infinite page-loading-hour-hand}.page-loading-clock-minute{background:var(--accent-strong);height:25px;margin-top:-25px;margin-left:-1.5px;animation:2.4s linear infinite page-loading-minute-hand}.page-loading-clock-second{background:var(--st-warn);width:2px;height:30px;margin-top:-30px;margin-left:-1px;animation:1.2s steps(12,end) infinite page-loading-second-hand}.page-loading-clock-center{background:var(--accent-blue);border-radius:999px;width:10px;height:10px;margin-top:-5px;margin-left:-5px;box-shadow:0 0 0 4px #fff}.page-loading-panel h1{color:var(--ink);letter-spacing:0;overflow-wrap:normal;word-break:keep-all;line-break:strict;text-wrap:balance;margin:0;font-size:clamp(1.25rem,6vw,1.7rem);line-height:1.25}.page-loading-panel p{color:var(--ink-muted);margin:0;font-size:.92rem;line-height:1.65}@keyframes page-loading-second-hand{to{transform:rotate(360deg)}}@keyframes page-loading-minute-hand{to{transform:rotate(360deg)}}@keyframes page-loading-hour-hand{to{transform:rotate(360deg)}}@keyframes page-loading-shift-cell{0%,to{opacity:.72;transform:translateY(0)}45%{opacity:1;transform:translateY(-3px)}}@media (prefers-reduced-motion:reduce){.page-loading-clock-hour,.page-loading-clock-minute,.page-loading-clock-second{animation:none}.page-loading-shift-cell{opacity:.88;animation:none;transform:none}}.sign-panel-actions{flex-wrap:wrap;gap:.75rem;margin-top:1.35rem;display:flex}.split-pane{grid-template-columns:minmax(0,1fr) 360px;gap:.85rem;display:grid}.payslip-page{min-height:100vh;padding:1.25rem}.payslip-toolbar{justify-content:space-between;align-items:flex-start;gap:1rem;max-width:1180px;margin:0 auto 1rem;display:flex}.payslip-page-title{letter-spacing:-.04em;margin:0;font-size:1.68rem;font-weight:800}.payslip-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:1rem;max-width:1180px;margin:0 auto;display:grid}.payslip-sheet,.payslip-meta-card,.payslip-side .section-card{background:#fffffff0;border:1px solid #cad8e2d9;border-radius:20px;box-shadow:0 12px 30px #24436214}.payslip-sheet{padding:1.4rem}.payslip-sheet-head{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:1rem;display:flex}.payslip-sheet-head h2{letter-spacing:-.03em;margin:.25rem 0 0;font-size:1.5rem;font-weight:800}.payslip-sheet-head p{color:var(--ink-muted);margin:.24rem 0 0}.payslip-statuses{flex-wrap:wrap;justify-content:flex-end;gap:.45rem;display:flex}.payslip-meta-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:1rem;display:grid}.payslip-meta-card{padding:.95rem}.payslip-meta-label{color:var(--ink-muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.76rem;font-weight:800}.payslip-meta-card h3{margin:.35rem 0 0;font-size:1.04rem;font-weight:800}.payslip-meta-card p:last-child{color:var(--ink-muted);margin:.24rem 0 0}.payslip-line-items{flex-direction:column;gap:.65rem;margin-top:1rem;display:flex}.payslip-line-item{border:1px solid var(--rule);background:var(--surface-soft);border-radius:16px;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.9rem .95rem;display:flex}.payslip-line-item.is-deduction{background:var(--st-warn-soft);border-color:#d288223d}.payslip-line-item h4{margin:0;font-size:.96rem;font-weight:800}.payslip-line-item p{color:var(--ink-muted);margin:.24rem 0 0;font-size:.84rem}.payslip-line-item strong{white-space:nowrap;font-size:1rem;font-weight:800}.payslip-totals{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:1rem;display:grid}.payslip-totals div{background:#eaf2ffad;border:1px solid #2e7cf624;border-radius:18px;padding:1rem}.payslip-totals span{color:var(--ink-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:800;display:block}.payslip-totals strong{letter-spacing:-.03em;margin-top:.36rem;font-size:1.42rem;font-weight:800;display:block}.payslip-notes{margin-top:1rem}.payslip-notes h3{margin:0;font-size:1rem;font-weight:800}.payslip-note-list{color:var(--ink-soft);margin:.6rem 0 0;padding-left:1.1rem}.payslip-note-list li+li{margin-top:.35rem}.payslip-deduction-section{margin-top:1rem}.payslip-footer{border-top:1px solid var(--rule);color:var(--ink-muted);margin-top:1rem;padding-top:.85rem;font-size:.86rem}.payslip-footer p{margin:.18rem 0 0}.payslip-side{flex-direction:column;gap:1rem;display:flex}.payslip-side-form{box-shadow:none;background:0 0;border:none;padding:0}.no-print{-webkit-print-color-adjust:exact;print-color-adjust:exact}code{background:var(--surface-soft);color:var(--ink-soft);border-radius:8px;padding:.15rem .4rem}@media (max-width:1200px){.three-column-grid,.employee-detail-layout,.employee-detail-overview-grid{grid-template-columns:minmax(0,1fr)}.profile-card{order:-1}}@media (max-width:1100px){.admin-app{grid-template-columns:1fr}.employee-header{flex-wrap:wrap;align-items:flex-start}.employee-header-actions{justify-content:flex-start;max-width:100%}.sidebar{display:none}.main-content,.employee-app{padding-bottom:7rem}.admin-mobile-nav,.mobile-nav{display:flex}.employee-workspace-link{display:none}.dashboard-grid,.two-column-grid,.three-column-grid,.admin-confirm-layout,.split-pane,.payslip-layout,.payslip-meta-grid,.payslip-totals,.admin-priority-grid,.access-card-grid,.comparison-grid,.decision-action-grid,.operation-board,.admin-confirm-tile-grid,.shift-workspace-tabs,.template-download-grid,.workspace-card-grid,.onboarding-layout,.onboarding-request-share,.onboarding-request-details,.metric-grid,.form-grid,.shift-approval-console{grid-template-columns:1fr}.shift-approval-steps,.shift-approval-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{padding-top:.7rem;padding-bottom:.55rem}.topbar-main .eyebrow,.topbar-subtitle,.topbar-actions .chip-link:not(.chip-link-home){display:none}.topbar-actions{width:auto}.topbar-title{font-size:1.18rem}.page-head,.section-head{flex-direction:column;align-items:flex-start}.action-summary,.payslip-status-hero,.payroll-period-grid{grid-template-columns:1fr}.action-summary-actions,.payslip-status-hero-actions{justify-content:flex-start}.page-head .eyebrow{display:none}.page-title{font-size:1.28rem}.page-actions,.admin-attendance-actions,.table-scope-switch,.shift-period-toolbar,.compact-inline-form,.section-actions{flex-wrap:nowrap;justify-content:flex-start;width:100%;padding-bottom:.1rem;overflow-x:auto}.page-actions .button,.admin-attendance-actions .button,.table-scope-switch .button,.shift-period-toolbar .button,.section-actions .button,.compact-inline-form .button{white-space:nowrap;flex:none}.shift-period-switch-form,.shift-period-create-form{flex:none}.admin-shift-period-tools>.shift-period-toolbar{flex-direction:column;align-items:stretch;overflow-x:visible}.admin-shift-period-tools .shift-period-switch-form,.admin-shift-period-tools .shift-period-create-form{flex:auto;width:100%}.admin-shift-period-tools .shift-period-create-form{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;display:grid}.admin-shift-period-tools .shift-period-create-form .shift-period-form-title,.admin-shift-period-tools .shift-period-create-form .shift-period-create-note,.admin-shift-period-tools .shift-period-create-form .button{grid-column:1/-1}.admin-shift-period-tools .shift-period-create-form label,.admin-shift-period-tools .shift-period-create-form input,.admin-shift-period-tools .shift-period-create-form select{width:100%;min-width:0}.admin-shift-period-tools .shift-period-switch-form select{flex:100%;min-width:0;max-width:100%}.admin-attendance-actions .compact-inline-form{flex:none;width:auto}.hero-card{padding:1rem 1rem 1.05rem}.hero-card h2{font-size:1.46rem}.hero-card p{max-width:none;font-size:.92rem}.linked-row,.task-row{align-items:center}.operation-step{min-height:auto}}@media (max-width:720px){.admin-app .main-content{padding-bottom:calc(8.5rem + env(safe-area-inset-bottom,0px))}.employee-app .employee-content{padding-bottom:calc(6.5rem + env(safe-area-inset-bottom,0px))}.employee-app{padding:calc(.95rem + env(safe-area-inset-top,0px)) .75rem calc(8.5rem + env(safe-area-inset-bottom,0px))}.employee-content,.staff-timecard-page{padding-bottom:calc(5.5rem + env(safe-area-inset-bottom,0px))}.bottom-tab-nav{left:max(.65rem, env(safe-area-inset-left,0px));right:max(.65rem, env(safe-area-inset-right,0px));bottom:calc(.65rem + env(safe-area-inset-bottom,0px));background:#fff;border-radius:20px;gap:.22rem;padding:.34rem;box-shadow:0 12px 30px #2443621f}.bottom-tab-link{border-radius:15px;min-height:46px;padding:.48rem .22rem;font-size:.78rem}.bottom-tab-nav.tab-count-2{width:min(100vw - 1.5rem,520px);left:50%;right:auto;transform:translate(-50%)}.bottom-tab-nav.tab-count-2 .bottom-tab-link{min-height:44px;font-size:.88rem}.topbar,.page-head,.employee-header,.payslip-toolbar{flex-direction:column;align-items:flex-start}.main-content,.topbar{padding-left:1rem;padding-right:1rem}.employee-header{margin-bottom:.65rem;padding:.85rem .85rem 0}.employee-title{font-size:clamp(1.9rem,10vw,2.42rem);line-height:1.16}.employee-subtitle{font-size:clamp(.98rem,4.2vw,1.1rem);line-height:1.35}.employee-header-actions{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.65rem;width:100%;display:grid}.employee-header-actions .button{width:100%;min-height:48px;padding-inline:.8rem}.topbar-inner{flex-direction:column;width:100%}.topbar-actions{flex-wrap:nowrap;width:100%;padding-bottom:.15rem;overflow-x:auto}.chip-link{white-space:nowrap}.shortcut-grid{grid-template-columns:1fr 1fr}.desktop-only{display:none}.mobile-only,.mobile-card-list.mobile-only{display:flex}.section-card,.table-card,.form-card,.profile-card,.sign-panel,.empty-state,.hero-card{border-radius:20px}.data-table{min-width:720px}.table-card{overflow-x:auto}.check-row{grid-template-columns:auto minmax(0,1fr)}.check-row .button{grid-column:1/-1;width:100%}.onboarding-progress-step{padding:.78rem .8rem}.onboarding-progress-step-head{align-items:flex-start}.onboarding-progress-step-item{grid-template-columns:auto minmax(0,1fr)}.onboarding-progress-step-item .button{grid-column:1/-1;width:100%;min-height:44px}.audit-detail-list div{grid-template-columns:1fr;gap:.15rem}.attendance-action-grid{flex-direction:column}.attendance-inline-form,.attendance-inline-form .button{width:100%}.attendance-inline-form{flex-direction:column;align-items:stretch}.staff-clock-actions{grid-template-columns:1fr}.staff-clock-actions:has(.staff-clock-form:nth-child(2)){grid-template-columns:1fr}.staff-timecard-page{gap:.75rem;width:100%}.attendance-language-switcher{justify-content:flex-start;gap:.45rem;padding-inline:.2rem}.attendance-language-switcher>span{flex:0 0 100%}.language-chip{align-items:center;min-height:42px;padding:.42rem .66rem;font-size:.84rem;display:inline-flex}.staff-timecard-card,.staff-record-card,.staff-secondary-panel{border-radius:20px}.staff-timecard-card{padding:.95rem}.attendance-month-switcher{border-radius:15px;margin:-.22rem -.28rem 0;top:.5rem}.attendance-month-switcher summary{min-height:36px;padding:.42rem .58rem;font-size:.9rem}.attendance-month-switcher summary em{min-height:22px;padding:.12rem .38rem;font-size:.62rem}.attendance-month-switcher[open] nav{gap:.46rem;padding:0 .3rem .34rem}.attendance-month-primary{gap:.42rem}.attendance-month-chip{border-radius:12px;padding:.5rem}.attendance-month-chip strong{font-size:.88rem}.attendance-month-chip em{font-size:.62rem}.attendance-month-compact{font-size:.72rem}.attendance-month-compact-link{min-height:32px;padding:.3rem .58rem}.attendance-month-confirmation{border-radius:14px;flex-direction:column;gap:.72rem;padding:.78rem}.attendance-month-confirmation h3{font-size:.98rem}.attendance-month-confirmation p{font-size:.78rem;line-height:1.45}.attendance-month-confirmation-action{text-align:left;align-items:stretch;width:100%}.attendance-month-confirmation-action .button{width:100%}.inline-alert.compact{border-radius:12px;margin-bottom:.62rem;padding:.62rem .7rem}.inline-alert.attendance-attention-alert{padding:0}.attendance-attention-alert summary{min-height:36px;padding:.5rem .64rem}.attendance-attention-alert-list{gap:.32rem;padding:0 .64rem .58rem}.attendance-risk-warning-item{padding:.5rem}.attendance-risk-warning-heading{flex-direction:column;align-items:flex-start;gap:.1rem}.attendance-risk-warning-link{justify-content:center;width:100%;min-height:44px}.live-clock{border-radius:20px;margin:.9rem 0 .85rem;padding:.95rem .7rem}.live-clock time{font-size:clamp(2.6rem,14.8vw,3.55rem);line-height:1.02}.staff-clock-button{border-radius:20px;min-height:76px}.staff-clock-dialog-backdrop{align-items:end;padding:.75rem}.staff-clock-dialog{border-radius:20px;width:100%;max-height:calc(100dvh - 1.5rem);padding:.95rem}.staff-clock-dialog-actions{flex-direction:column;align-items:stretch}.staff-clock-dialog-actions .button{width:100%;min-height:48px}.attendance-work-location{justify-content:space-between;width:100%}.attendance-work-location select{flex:1}.attendance-calendar-hours{font-size:.92rem}.attendance-sticky-spacer{height:8.25rem;display:block}.attendance-sticky-bar{left:1rem;right:1rem;bottom:calc(5.85rem + env(safe-area-inset-bottom,0px));z-index:15;box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff5;border:1px solid #2e7cf624;border-radius:20px;flex-direction:column;gap:.8rem;padding:.9rem 1rem;display:flex;position:fixed}.attendance-sticky-bar.is-complete{border-color:#cad8e2e6}.attendance-sticky-copy strong{font-size:1rem;font-weight:800;display:block}.attendance-sticky-copy p{color:var(--ink-muted);margin:.18rem 0 0;font-size:.84rem}.attendance-sticky-eyebrow{color:var(--accent-blue);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .25rem;font-size:.72rem;font-weight:800}.attendance-sticky-actions{flex-direction:column;gap:.6rem;display:flex}.attendance-sticky-actions .attendance-inline-form,.attendance-sticky-actions .attendance-inline-form .button,.attendance-sticky-actions .button{width:100%}.attendance-correction-banner{flex-direction:column;align-items:stretch}.attendance-selected-day-panel{bottom:calc(.85rem + env(safe-area-inset-bottom,0px));z-index:5;border-radius:18px;max-height:min(78dvh,720px);padding:.9rem;position:sticky;overflow-y:auto}.attendance-selected-day-head{flex-direction:column;align-items:stretch;gap:.7rem}.attendance-selected-day-head .button{width:100%}.attendance-selected-day-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.attendance-selected-day-metrics div{padding:.64rem .58rem}.attendance-action-disclosure{border-radius:12px}.attendance-day-plan-head,.attendance-leave-request-head,.attendance-day-plan-row,.attendance-day-leave-row{align-items:flex-start}.attendance-day-plan-row,.attendance-day-leave-row{flex-direction:column}.attendance-google-calendar-form{flex-direction:column;align-items:stretch}.attendance-google-calendar-form .button{width:100%}.attendance-day-plan-panel,.attendance-leave-request-form{border-radius:18px;padding:.9rem}.attendance-leave-request-head{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.65rem;display:grid}.attendance-leave-request-head .button{border-radius:15px;min-width:4.8rem;min-height:44px;padding:.55rem .82rem}.line-link-actions,.line-link-actions .button{width:100%}.line-link-actions{flex-direction:column;align-items:stretch}.onboarding-request-head,.onboarding-request-reject-form{grid-template-columns:1fr}.onboarding-request-head{flex-direction:column}.onboarding-request-details .span-2{grid-column:auto}.line-onboarding-page{padding:max(.75rem, env(safe-area-inset-top,0px)) .75rem max(.95rem, env(safe-area-inset-bottom,0px));align-items:start}.line-onboarding-panel{border-radius:18px;width:100%;max-width:calc(100vw - 1.5rem);padding:1rem}.my-shift-hero,.my-shift-month-card-header,.my-shift-row{align-items:stretch}.my-shift-hero{flex-direction:column}.my-shift-month-tabs{margin-right:-1rem;padding-right:1rem}.my-shift-month-tab{min-width:124px}.my-shift-month-card-header{flex-direction:column;min-height:64px}.my-shift-month-card-actions,.my-shift-google-calendar-form,.my-shift-google-calendar-form .button{width:100%}.my-shift-month-card-actions{justify-content:flex-start;align-items:stretch}.my-shift-calendar-grid{gap:.28rem;padding:0 .55rem .65rem}.my-shift-calendar-day{border-radius:12px;min-height:78px;padding:.4rem .3rem}.my-shift-calendar-times span,.my-shift-calendar-times small{font-size:.56rem}.my-shift-row{grid-template-columns:46px minmax(0,1fr)}.my-shift-row .status-badge{grid-column:2;justify-self:start}.liff-shift-page{padding:max(.75rem, env(safe-area-inset-top,0px)) .75rem max(.95rem, env(safe-area-inset-bottom,0px))}.liff-shift-hero{flex-direction:column;align-items:stretch}.liff-shift-panel,.liff-shift-hero,.liff-shift-complete,.liff-shift-loading{border-radius:18px}.liff-shift-panel{padding:.78rem}.liff-shift-mode-grid{gap:.44rem}.liff-shift-mode-grid button{min-height:46px;font-size:.82rem}.liff-shift-calendar{gap:.26rem}.liff-shift-day{border-radius:12px;min-height:52px}.liff-shift-time-row{grid-template-columns:1fr 1fr}.liff-shift-time-row>span{grid-column:1/-1}.liff-shift-actions,.liff-shift-actions .button{width:100%}.liff-shift-actions{flex-direction:column}.attendance-leave-request-grid{grid-template-columns:1fr}.admin-confirm-hero,.admin-confirm-person-row{flex-direction:column;align-items:stretch}.admin-confirm-hero-status{align-items:flex-start}.admin-confirm-tile,.admin-confirm-panel{border-radius:var(--admin-radius)}.admin-confirm-person-row .status-badge{width:fit-content}.admin-confirm-row-actions{flex-direction:column;justify-content:flex-start;align-items:stretch;width:100%}.admin-confirm-row-actions .status-badge{align-self:flex-start}.admin-confirm-primary-action{width:100%}.admin-confirm-secondary-actions{justify-content:flex-start}.admin-confirm-secondary-actions .button{flex:8rem}.shift-approval-steps,.shift-approval-check-grid,.shift-approval-review-summary,.shift-approval-review-detail{grid-template-columns:1fr}.shift-approval-review-meta{justify-content:flex-start}.admin-app .section-card,.admin-app .table-card,.admin-app .form-card,.admin-app .profile-card,.admin-app .empty-state,.admin-app .admin-mobile-nav{border-radius:var(--admin-radius)}.staff-record-edit-actions{flex-direction:column;align-items:stretch}.staff-record-editor>summary{padding:.95rem}.staff-section-head,.staff-secondary-panel summary{align-items:flex-start}.staff-secondary-panel summary{grid-template-columns:1fr;gap:.22rem;padding:.95rem;display:grid}.staff-secondary-panel summary small{text-align:left;line-height:1.5}.staff-timecard-head{flex-direction:column;gap:.7rem}.staff-timecard-head .status-badge{align-self:flex-start}.staff-timecard-head h2{font-size:clamp(1.38rem,6.25vw,1.56rem);line-height:1.28}.page-loading-panel h1{font-size:clamp(1.32rem,5.4vw,1.48rem)}.staff-record-edit-actions .button,.staff-record-delete-form .button,.staff-record-edit-row input,.staff-record-edit-row select{width:100%}.staff-record-edit-form{gap:0;padding:.45rem .95rem 1.1rem}.staff-record-edit-row{grid-template-columns:minmax(0,1fr);justify-content:stretch;align-items:stretch;gap:.45rem;min-height:0;padding:.82rem 0;display:grid}.staff-record-edit-row span{color:var(--ink-muted);white-space:normal;word-break:keep-all;overflow-wrap:anywhere;font-size:.9rem;line-height:1.35;display:block}.staff-record-edit-row input,.staff-record-edit-row select{border-radius:16px;min-height:54px;padding:.72rem .9rem;font-size:1.05rem}.staff-record-edit-row input{text-align:center}.staff-record-edit-row select{text-align:left}.staff-record-edit-check{grid-template-columns:32px minmax(0,1fr);align-items:center;column-gap:.75rem}.staff-record-edit-check span{grid-area:1/2}.staff-record-edit-check input{grid-area:1/1;justify-self:start;width:24px;height:24px;min-height:24px;margin:0}.staff-record-edit-actions{margin-top:.45rem;padding-top:.9rem;padding-bottom:.35rem}.staff-record-delete-form{flex-direction:column;align-items:stretch;margin-inline:.95rem;padding:.85rem}.disclosure-summary{padding:.88rem .95rem}.attendance-calendar-legend{gap:.45rem}.attendance-calendar-legend-item{min-height:24px;padding:.22rem .5rem;font-size:.68rem}.attendance-calendar-grid{gap:.3rem}.attendance-calendar-weekday{min-height:24px;font-size:.68rem}.attendance-calendar-day,.attendance-calendar-day.is-placeholder{border-radius:12px;min-height:92px;padding:.5rem .38rem}.attendance-calendar-day-head strong{font-size:.78rem}.attendance-calendar-flag{min-width:18px;min-height:18px;padding:.1rem .32rem;font-size:.58rem}.attendance-calendar-hours{margin-top:.32rem;font-size:.8rem}.attendance-calendar-tags{gap:.16rem;margin-top:.24rem}.attendance-calendar-tag{min-height:17px;padding:.08rem .26rem;font-size:.56rem}.attendance-calendar-shift{gap:.18rem;margin-top:.26rem;padding:.16rem .28rem;font-size:.58rem}.attendance-calendar-shift-dot{width:.34rem;height:.34rem}.attendance-calendar-leave{margin-top:.22rem;padding:.16rem .32rem;font-size:.58rem}.attendance-calendar-state,.attendance-calendar-meta{font-size:.62rem}.attendance-calendar-state{min-width:20px;min-height:18px;padding:.08rem .3rem}.hero-card{padding:.95rem}.hero-card:after{width:150px;height:150px;inset:auto -12% -24% auto}.hero-card h2{font-size:1.3rem}.hero-cta,.workspace-inline-heading{flex-direction:column;align-items:flex-start}.hero-cta .button,.linked-row .button,.task-row .button{width:100%}.linked-row,.task-row{flex-direction:column;align-items:flex-start}.operation-step{padding:.85rem .9rem}.operation-step strong{font-size:1.24rem}.attendance-row-actions{justify-content:flex-start;width:100%}.template-import-note{flex-direction:column;align-items:flex-start}.template-import-note code{white-space:normal;overflow-wrap:anywhere;width:100%}.record-card-grid{grid-template-columns:1fr}.payslip-page,.payslip-sheet{padding:1rem}.payslip-sheet-head,.payslip-line-item{flex-direction:column}.kv-row{grid-template-columns:1fr;gap:.25rem}.kv-row dd{text-align:left;max-width:none}.bottom-tab-link{padding-left:.18rem;padding-right:.18rem;font-size:.78rem}}@media print{body{background:#fff}.no-print{display:none!important}.payslip-page{padding:0}.payslip-layout{max-width:none;display:block}.payslip-sheet{box-shadow:none;border:none;border-radius:0;padding:0}}.daily-work-report-form{border-radius:var(--radius-md);min-width:0;box-shadow:var(--shadow-sm);background:linear-gradient(#f8fbff 0%,#fff 100%);border:1px solid #2e7cf633;gap:1rem;padding:clamp(1rem,3vw,1.35rem);display:grid}.staff-clock-form:has(.daily-work-report-form){grid-column:1/-1}.staff-clock-form:has(.daily-work-report-form)>.staff-clock-button{min-height:64px}.daily-work-report-heading,.daily-work-report-attachments-heading{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.daily-work-report-kicker{color:var(--accent-blue);letter-spacing:.08em;margin:0 0 .2rem;font-size:.72rem;font-weight:850}.daily-work-report-heading h3{color:var(--ink);margin:0;font-size:clamp(1.05rem,4vw,1.25rem);line-height:1.4}.daily-work-report-required-note{color:var(--st-danger);background:var(--st-danger-soft);border-radius:999px;flex:none;padding:.25rem .55rem;font-size:.72rem;font-weight:800}.daily-work-report-intro,.daily-work-report-attachment-note{color:var(--ink-muted);margin:0;font-size:.82rem;line-height:1.65}.daily-work-report-error,.daily-work-report-field-error{color:var(--st-danger);margin:0;font-size:.8rem;font-weight:750;line-height:1.55}.daily-work-report-error{border-radius:var(--radius-sm);background:var(--st-danger-soft);border:1px solid #b3261e38;padding:.7rem .8rem}.daily-work-report-blocker{gap:.65rem;margin:0;display:grid}.daily-work-report-blocker .button{justify-self:start;min-height:44px}.daily-work-report-fields{gap:.85rem;display:grid}.daily-work-report-field{gap:.35rem;min-width:0;display:grid}.daily-work-report-field-heading{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.daily-work-report-field-heading strong{color:var(--ink);font-size:.95rem}.daily-work-report-field-heading>span{color:var(--ink-muted);font-variant-numeric:tabular-nums;font-size:.72rem}.daily-work-report-field-help{color:var(--ink-muted);font-size:.78rem;line-height:1.55}.daily-work-report-field textarea{resize:vertical;border:1px solid var(--rule-strong);border-radius:var(--radius-sm);width:100%;min-height:7.5rem;color:var(--ink);background:#fff;padding:.8rem .85rem;font-size:1rem;line-height:1.65;transition:border-color .15s,box-shadow .15s,background-color .15s;box-shadow:inset 0 1px 2px #24436209}.daily-work-report-field textarea::placeholder{color:#7a8997;opacity:1}.daily-work-report-field textarea[aria-invalid=true]{background:snow;border-color:#b3261ead}.daily-work-report-field textarea:disabled,.daily-work-report-field textarea[readonly]{cursor:wait;opacity:.68;background:var(--surface-muted)}.daily-work-report-attachments{gap:.55rem;min-width:0;padding-top:.2rem;display:grid}.daily-work-report-attachments-heading>div{align-items:center;gap:.5rem;display:flex}.daily-work-report-attachments-heading strong{color:var(--ink);font-size:.95rem}.daily-work-report-attachments-heading span{color:var(--ink-muted);font-size:.75rem;font-weight:750}.daily-work-report-dropzone{border:1.5px dashed var(--rule-strong);border-radius:var(--radius-sm);min-height:88px;color:var(--ink-soft);background:var(--surface-soft);text-align:left;cursor:pointer;justify-content:center;align-items:center;gap:.75rem;padding:.85rem;transition:border-color .15s,background-color .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden}.daily-work-report-dropzone:hover,.daily-work-report-dropzone.is-dragging{border-color:var(--accent-blue);background:var(--accent-blue-soft)}.daily-work-report-dropzone:has(.daily-work-report-file-input:focus-visible){outline:3px solid var(--focus-ring);outline-offset:3px;box-shadow:0 0 0 5px var(--focus-ring-soft)}.daily-work-report-dropzone.is-disabled{cursor:not-allowed;opacity:.62}.daily-work-report-dropzone>svg{width:28px;height:28px;color:var(--accent-blue);fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none}.daily-work-report-dropzone>span{gap:.1rem;display:grid}.daily-work-report-dropzone strong{color:var(--ink);font-size:.88rem}.daily-work-report-dropzone small{color:var(--ink-muted);font-size:.76rem}.daily-work-report-file-input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.daily-work-report-file-input:disabled{cursor:not-allowed}.daily-work-report-preview-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin:.2rem 0 0;padding:0;list-style:none;display:grid}.daily-work-report-preview{border:1px solid var(--rule);border-radius:var(--radius-sm);background:#fff;grid-template-columns:56px minmax(0,1fr) 44px;align-items:center;gap:.55rem;min-width:0;padding:.45rem;display:grid;position:relative}.daily-work-report-preview img{object-fit:cover;background:var(--surface-muted);border-radius:10px;width:56px;height:56px}.daily-work-report-preview>.daily-work-report-file-type{width:56px;height:56px;color:var(--accent-blue);background:var(--accent-blue-soft);letter-spacing:.04em;border-radius:10px;place-items:center;font-size:.68rem;font-weight:850;display:grid}.daily-work-report-preview>div{min-width:0;display:grid}.daily-work-report-preview strong{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;line-height:1.4;overflow:hidden}.daily-work-report-preview span{color:var(--ink-muted);font-variant-numeric:tabular-nums;font-size:.7rem}.daily-work-report-preview button{width:44px;height:44px;color:var(--st-danger);background:var(--st-danger-soft);cursor:pointer;border:0;border-radius:999px;place-items:center;display:inline-grid}.daily-work-report-preview button:hover{background:#ffe2df}.daily-work-report-preview button:disabled{cursor:wait;opacity:.5}.daily-work-report-preview button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:19px;height:19px}@media (max-width:1100px){.employee-app:has(.daily-work-report-form){padding-bottom:1.5rem}.employee-app:has(.daily-work-report-form) .mobile-nav{width:100%;margin:1rem 0 0;position:static;inset:auto;transform:none}}@media (max-width:640px){.daily-work-report-form{border-radius:18px;gap:.9rem;padding:.9rem}.daily-work-report-heading{display:grid}.daily-work-report-required-note{justify-self:start}.daily-work-report-field textarea{height:6.5rem;min-height:6.5rem}.daily-work-report-preview-list{grid-template-columns:1fr}.daily-work-report-blocker .button{width:100%}}@media (prefers-reduced-motion:reduce){.daily-work-report-field textarea,.daily-work-report-dropzone{transition:none}}.company-holiday-workspace{color:#3c2b08;background:#fff8e8;border:2px solid #f2b84b;border-radius:22px;margin:18px 0;overflow:hidden}.company-holiday-registration-panel,.company-holiday-list-panel{border:1px solid var(--rule);background:var(--surface);border-radius:18px;gap:14px;padding:18px;display:grid}.company-holiday-list-panel{background:var(--surface-soft);margin-top:18px}.company-holiday-panel-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.company-holiday-panel-heading h3,.company-holiday-panel-heading p{margin:0}.company-holiday-panel-heading h3{font-size:1.1rem}.company-holiday-panel-heading .eyebrow{margin-bottom:3px}.holiday-work-request-group{gap:14px}.holiday-work-request-list{gap:9px;display:grid}.holiday-work-request-list>.eyebrow{margin:0}.holiday-work-request-item{border:1px solid var(--rule);background:var(--surface-soft);border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:12px;display:grid}.holiday-work-request-item p{margin:4px 0 0}.holiday-work-request-item .decision-action-grid{min-width:180px}.holiday-work-approved-details{border-top:1px solid var(--rule);padding-top:10px}.holiday-work-approved-details summary{cursor:pointer;color:var(--ink-muted);font-weight:700}.holiday-work-approved-details[open]{gap:10px;display:grid}.company-holiday-attention{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;padding:22px;list-style:none;display:flex}.company-holiday-attention::-webkit-details-marker{display:none}.company-holiday-attention h3{margin:3px 0 6px;font-size:1.35rem}.company-holiday-attention p{margin:0}.company-holiday-attention small{color:#74551a;margin-top:6px;font-size:.82rem;font-weight:700;line-height:1.5;display:block}.company-holiday-attention-action{color:#fff;white-space:nowrap;background:#9a5a00;border-radius:999px;flex:none;justify-content:center;align-items:center;min-height:44px;padding:.65rem 1rem;font-size:.88rem;font-weight:850;display:inline-flex}.company-holiday-workspace[open] .company-holiday-attention{border-bottom:1px solid #9a5a0038}.company-holiday-request-list{background:#ffffff9e;gap:12px;padding:16px;display:grid}.company-holiday-disclosure,.company-holiday-workspace{scroll-margin-top:20px}.company-holiday-request-card{gap:12px;min-width:0;display:grid}.company-holiday-request-status{background:#ffffffc2;border:1px solid #2e7cf629;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.company-holiday-request-status p{margin:0}.company-holiday-shift-conflict,.company-holiday-admin-conflict{color:#503706;background:#fff8e8;border:1px solid #e3ad43;border-radius:14px;gap:6px;padding:12px 14px;display:grid}.company-holiday-shift-conflict p,.company-holiday-admin-conflict p{margin:0}.company-holiday-shift-conflict small,.company-holiday-admin-conflict small{color:#74551a;line-height:1.55}.company-holiday-application{background:#fff;border:1px solid #bdd1e8;border-radius:14px;overflow:hidden}.company-holiday-application>summary{cursor:pointer;min-height:48px;color:var(--accent-strong);padding:.75rem .9rem;font-weight:850}.company-holiday-application[open]>summary{border-bottom:1px solid var(--rule);background:#f7fbff}.company-holiday-application .attendance-leave-request-form{box-shadow:none;border:0;border-radius:0;margin:0}.holiday-work-date-selector{background:#fff;border:1px solid #bdd1e8;border-radius:16px;margin:0;padding:14px}.holiday-work-date-selector legend{padding:0 6px;font-weight:700}.holiday-work-date-selector>div{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:8px;display:grid}.holiday-work-date-selector label{cursor:pointer;background:#f7fbff;border:1px solid #d7e2ef;border-radius:12px;align-items:center;gap:8px;min-height:44px;padding:8px 10px;display:flex}.holiday-work-date-selector label.has-shift-conflict{color:#503706;background:#fff4d8;border-color:#d99b25;font-weight:800}@media (max-width:720px){.staff-clock-grid,#company-holidays .attendance-leave-request-grid{grid-template-columns:1fr}#company-holidays .admin-confirm-person-row,#company-holidays .admin-confirm-person-row>form{width:100%}#company-holidays .admin-confirm-person-row{flex-direction:column;align-items:stretch}#company-holidays .button{width:100%}#company-holidays .company-holiday-registration-panel,#company-holidays .company-holiday-list-panel{border-radius:16px;padding:14px}#company-holidays .company-holiday-panel-heading{flex-direction:column;align-items:flex-start;gap:8px}#holiday-work-requests .holiday-work-request-item{grid-template-columns:1fr}#holiday-work-requests .holiday-work-request-item .decision-action-grid{min-width:0}.company-holiday-attention{flex-direction:column;align-items:stretch;gap:14px;padding:18px}.company-holiday-attention-action,.company-holiday-request-status .button,.company-holiday-application .button{width:100%}.company-holiday-request-list{padding:12px}.company-holiday-request-status{flex-direction:column;align-items:stretch}.holiday-work-date-selector>div{grid-template-columns:1fr}.admin-attendance-actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid;overflow:visible}.admin-attendance-actions .compact-inline-form{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid;overflow:visible}.admin-attendance-actions .compact-inline-form input{grid-column:1/-1;width:100%;min-width:0;font-size:16px}.admin-attendance-actions .button,.admin-attendance-actions .compact-inline-form .button{white-space:normal;width:100%;min-width:0}}.attendance-view-controls{gap:.75rem;display:grid}.staff-timecard-card{flex-direction:column;display:flex}.staff-timecard-card>.staff-clock-grid{order:1}.staff-timecard-card>.attendance-record-attention,.staff-timecard-card>.company-holiday-workspace{order:2}.attendance-view-controls .attendance-month-switcher{margin:0;position:static}.staff-clock-button{touch-action:manipulation}.staff-clock-button:not(:disabled):active{transform:scale(.985);box-shadow:0 10px 22px #2443621f}@media (max-width:720px){.system-settings-nav{border-radius:15px;grid-template-columns:repeat(2,minmax(0,1fr))}.system-settings-nav-item{min-height:60px;padding:9px 10px}.shift-work-mode-strip{border-radius:16px;padding:13px}.shift-work-mode-heading{flex-direction:column;align-items:flex-start;gap:7px}.shift-work-mode-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.shift-work-mode-link{min-height:64px;padding:10px}.employee-app:has(.staff-timecard-page){padding-top:calc(.55rem + env(safe-area-inset-top,0px))}.employee-app:has(.staff-timecard-page) .employee-header{flex-direction:row;justify-content:space-between;align-items:center;gap:0;margin-bottom:.35rem;padding:.45rem .35rem 0}:is(.employee-app:has(.staff-timecard-page) .employee-subtitle,.employee-app:has(.staff-timecard-page) .attendance-own-shifts-link){display:none}.employee-app:has(.staff-timecard-page) .employee-header-actions{gap:.45rem;width:auto;display:flex}.employee-app:has(.staff-timecard-page) .attendance-admin-shifts-link{width:auto;min-height:44px;padding:.5rem .8rem;font-size:.84rem}.employee-app:has(.staff-timecard-page) .employee-heading .eyebrow{letter-spacing:.08em;margin-bottom:.1rem;font-size:.68rem}.employee-app:has(.staff-timecard-page) .employee-title{font-size:clamp(1.7rem,8.5vw,2rem);line-height:1.12}.staff-timecard-page{gap:.75rem}.staff-timecard-card{border-radius:22px;padding:.85rem;box-shadow:0 10px 28px #24436212}.staff-timecard-head{flex-direction:row;align-items:center;gap:.65rem}.staff-timecard-head .eyebrow{display:none}.staff-timecard-head h2{font-size:1.05rem;line-height:1.3}.staff-timecard-head .status-badge{flex:none;margin-top:0}.live-clock{border-radius:18px;margin:.7rem 0;padding:.8rem .65rem}.live-clock time{font-size:clamp(2.7rem,15vw,3.4rem)}.attendance-attention-alert summary{min-height:44px;padding:.58rem .7rem}.language-chip{min-height:44px}.company-holiday-attention{gap:.65rem;padding:.9rem}.company-holiday-attention h3{margin:.15rem 0 .25rem;font-size:1.05rem}.company-holiday-attention small{display:none}.company-holiday-attention-action{min-height:44px}}@media (prefers-reduced-motion:reduce){.staff-clock-button{transition:none}.staff-clock-button:not(:disabled):active{transform:none}}@media (max-width:720px){:where(.admin-app,.employee-app) :where(button,input[type=button],input[type=submit],input[type=reset],.button,[role=button]){min-height:var(--control-md)}.admin-app .main-content,.employee-app .employee-content{padding-bottom:calc(8.5rem + env(safe-area-inset-bottom,0px))}}.attendance-shift-availability-card,.shift-availability-form-card{gap:1rem;display:grid}.attendance-shift-availability-card>summary{cursor:pointer;list-style:none}.attendance-shift-availability-card>summary::-webkit-details-marker{display:none}.attendance-shift-availability-card.is-overdue{border:2px solid color-mix(in srgb, var(--st-danger) 58%, transparent);background:linear-gradient(180deg, var(--st-danger-soft), var(--surface) 42%);box-shadow:0 16px 38px #b3261e24}.attendance-shift-availability-summary{gap:.35rem;display:grid}.attendance-shift-availability-summary-hint{color:var(--ink-muted);font-size:.8rem}.attendance-shift-availability-summary-deadline{color:var(--ink);font-size:.92rem;line-height:1.4}.attendance-shift-availability-card.is-overdue .attendance-shift-availability-summary-deadline{color:var(--st-danger)}.attendance-shift-availability-overdue-alert{gap:.35rem;margin:0;display:grid}.attendance-shift-availability-list{gap:.75rem;display:grid}.attendance-shift-availability-row{border:1px solid var(--rule);background:var(--surface-soft);border-radius:1rem;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.attendance-shift-availability-row>div{gap:.25rem;display:grid}.attendance-shift-availability-row span,.attendance-shift-availability-row small{color:var(--ink-muted)}.attendance-shift-availability-row.is-overdue{border:2px solid color-mix(in srgb, var(--st-danger) 48%, transparent);background:var(--st-danger-soft);box-shadow:inset .35rem 0 0 var(--st-danger)}.attendance-shift-availability-row.is-overdue span,.attendance-shift-availability-row.is-overdue small{color:var(--st-danger);font-weight:800}.shift-availability-page{gap:1rem;display:grid}.shift-availability-intro{max-width:38rem;color:var(--ink-muted);margin:.35rem 0 0}.shift-availability-page-header,.shift-availability-form-card .section-card-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.shift-availability-mode-grid,.shift-availability-date-grid{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.75rem;display:grid}.shift-availability-app-form{gap:.9rem;display:grid}.shift-availability-app-form fieldset{border:1px solid var(--rule);background:var(--surface-soft);border-radius:1rem;min-width:0;margin:0;padding:.9rem}.shift-availability-app-form legend{max-width:100%;color:var(--ink-soft);padding:0 .4rem;font-size:.9rem;font-weight:800}.shift-availability-mode-grid .button{text-align:left;gap:.25rem;min-height:4.5rem;display:grid}.shift-availability-mode-grid .button span{opacity:.8;font-size:.85rem}.shift-availability-date-grid .button{min-height:2.75rem}.shift-availability-selection-summary{color:var(--ink-muted);margin:0 0 .55rem;font-size:.9rem;font-weight:700}.shift-availability-time-list{gap:.75rem;display:grid}.shift-availability-time-list label{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.shift-availability-time-controls{align-items:center;gap:.5rem;display:flex}.shift-availability-time-field{gap:.2rem;display:grid}.shift-availability-time-field-label{color:var(--ink-muted);font-size:.75rem;font-weight:700;line-height:1}.shift-availability-time-separator{color:var(--ink-muted);padding-top:1rem}.shift-availability-time-list input{min-height:2.75rem}.shift-availability-submit-note,.shift-availability-deadline{color:var(--ink-muted)}.shift-availability-validation-note{color:var(--ink-muted);margin:0;font-size:.9rem;font-weight:700}.shift-availability-confirmation{border:1px solid var(--accent);background:var(--accent-soft);border-radius:1rem;gap:.65rem;padding:1rem;display:grid}.shift-availability-confirmation p{margin:0}.shift-availability-confirmation-actions{flex-wrap:wrap;gap:.75rem;display:flex}.shift-availability-period-nav{flex-wrap:wrap;gap:.5rem;display:flex}.shift-availability-period-nav a{border:1px solid var(--rule);border-radius:999px;align-items:center;min-height:2.75rem;padding:.5rem .85rem;display:inline-flex}.shift-availability-period-nav a.is-active{color:var(--accent-strong);border-color:var(--accent);background:var(--accent-soft)}@media (max-width:720px){.attendance-shift-availability-row,.shift-availability-page-header,.shift-availability-form-card .section-card-heading,.shift-availability-time-list label{flex-direction:column;align-items:stretch}.attendance-shift-availability-row .button,.shift-availability-page-header .button,.shift-availability-app-form>.button{width:100%}.shift-availability-mode-grid,.shift-availability-date-grid{grid-template-columns:1fr 1fr}.shift-availability-mode-grid .button{min-height:3.85rem;padding:.55rem .65rem}.shift-availability-mode-grid .button strong{font-size:.95rem}.shift-availability-mode-grid .button span{font-size:.74rem;line-height:1.25}.shift-availability-date-grid .button{min-height:2.55rem;padding:.5rem .3rem}.shift-availability-page{gap:.75rem}.shift-availability-page-header{gap:.55rem}.shift-availability-page-header h1{margin:0;font-size:clamp(2rem,9vw,2.4rem);line-height:1.12}.shift-availability-intro{margin-top:.2rem;font-size:.9rem;line-height:1.55}.shift-availability-form-card{border-radius:1.15rem;gap:.75rem;padding:.85rem}.shift-availability-form-card .section-card-heading h2{font-size:1.3rem;line-height:1.25}.shift-availability-app-form{gap:.7rem}.shift-availability-app-form fieldset{border-radius:.9rem;padding:.75rem}.shift-availability-app-form legend{font-size:.82rem}.shift-availability-time-list label{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:.5rem;display:grid}.shift-availability-time-list label>span:first-child{font-size:.85rem;font-weight:700}.shift-availability-time-controls{grid-template-columns:minmax(0,1fr);gap:.35rem;width:auto;min-width:0;max-width:100%;display:grid}.shift-availability-time-field{grid-template-columns:2.5rem minmax(0,1fr);align-items:center;gap:.35rem}.shift-availability-time-field-label{font-size:.8rem}.shift-availability-time-separator{display:none}.shift-availability-time-list input{box-sizing:border-box;width:100%;min-width:0;max-width:100%;padding-inline:.35rem;font-size:.9rem}.shift-availability-confirmation-actions .button{width:100%}}
