.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:10;top:var(--space-4);left:var(--space-4);padding:var(--space-2) var(--space-4);border-radius:var(--radius-control);color:var(--surface-solid);background:var(--dark);transition:transform var(--transition-fast);text-decoration:none;position:fixed;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.app-viewport{min-height:100svh;padding:var(--space-8) var(--space-8) 0;flex-direction:column;display:flex}.app-shell{background:var(--surface);border-radius:var(--radius-shell);width:min(100%,1440px);min-height:auto;box-shadow:var(--shadow-shell);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid #ffffffb8;flex:1;grid-template-columns:210px minmax(0,1fr);margin:0 auto;display:grid;overflow:hidden}.app-sidebar{border-right:1px solid var(--divider);background:#ffffff73;padding:30px 18px}.app-brand{align-items:flex-start;gap:var(--space-2);border-bottom:1px solid var(--divider);padding:0 0 28px;display:flex}.app-brand__symbol{flex:0 0 48px;width:48px;height:48px;position:relative;overflow:hidden}.app-brand__symbol img{max-width:none;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.app-brand__copy{min-width:0}.app-brand__title,.app-brand__caption{margin:0}.app-brand__title{font-size:var(--font-size-panel-title);white-space:nowrap;font-weight:650;line-height:1.45}.app-brand__caption{margin-top:var(--space-1);color:var(--text-secondary);font-size:var(--font-size-helper)}.sidebar-menu{gap:var(--space-2);padding:var(--space-6) 0 0;margin:0;list-style:none;display:grid}.sidebar-menu__item{padding:10px var(--space-3);border-radius:var(--radius-control);color:var(--text-secondary);font-size:var(--font-size-body);transition:color var(--transition-fast), background-color var(--transition-fast);font-weight:500;line-height:1.5;text-decoration:none;display:block}.sidebar-menu__item:hover{color:var(--text-primary);background:var(--background-soft)}.sidebar-menu__item--current{color:var(--surface-solid);background:var(--dark);font-weight:600}.sidebar-menu__item--current:hover{color:var(--surface-solid);background:var(--dark-soft)}.app-workspace{background:#ffffff2e;min-width:0}.app-header{border-bottom:1px solid var(--divider);min-height:128px;padding:28px 36px 24px}.app-header__context,.app-header__school,.page-heading__context{color:var(--text-secondary);font-size:var(--font-size-helper);margin:0}.app-header__context,.page-heading__context{letter-spacing:.02em;font-weight:600}.app-header h1{margin:var(--space-1) 0 0;font-size:var(--font-size-page-title);letter-spacing:-.02em;font-weight:700;line-height:1.35}.app-header__school{margin-top:var(--space-1)}.app-content{min-width:0;padding:36px}.site-footer{margin-top:var(--space-8);color:var(--text-muted);text-align:center;font-size:.75rem;line-height:1.7}.site-footer nav{justify-content:center;align-items:center;gap:0 var(--space-2);flex-wrap:wrap;display:flex}.site-footer a{color:var(--text-secondary);text-underline-offset:.2em}.app-viewport>.site-footer{width:min(100%,1440px);padding:var(--space-3) 20px var(--space-4);margin-top:0;margin-inline:auto}.app-viewport>.site-footer a{color:inherit}.page-heading h2{margin:var(--space-1) 0 0;font-size:var(--font-size-section-title);font-weight:650;line-height:1.4}.placeholder-message{max-width:720px;margin-top:var(--space-6);border-top:1px solid var(--divider);border-bottom:1px solid var(--divider);padding:30px 0}.placeholder-message p{color:var(--text-secondary);font-size:var(--font-size-body);margin:0}.route-viewport{min-height:100svh;padding:var(--space-8);background:var(--background);place-items:center;display:grid}.route-stack{width:min(100%,560px)}.route-stack--public{width:min(100%,520px)}.route-viewport--login{background:#eff4f1}.route-stack--login{width:min(100%,400px)}.auth-layout,.public-layout{border-radius:var(--radius-shell);width:100%;box-shadow:var(--shadow-shell);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:#fffc;border:1px solid #ffffffc2;padding:48px}.public-layout{padding-block:40px}.auth-layout--login{background:var(--surface-solid);border-color:var(--divider);-webkit-backdrop-filter:none;backdrop-filter:none;padding:40px;box-shadow:0 12px 36px #1932230f}.login-card{text-align:center}.login-card__symbol{width:112px;height:112px;margin:0 auto var(--space-4);position:relative;top:4px;overflow:hidden}.login-card__symbol img{max-width:none;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.auth-skeleton.login-card h1{margin-top:var(--space-1);font-size:2rem;font-weight:700}.login-card .route-lead{margin-top:var(--space-4);line-height:1.65}.login-card .auth-primary-link{align-items:center;column-gap:var(--space-2);min-height:48px;padding-inline:var(--space-3);margin-top:var(--space-8);grid-template-columns:32px minmax(0,1fr) 32px;display:grid}.login-card .auth-primary-link:after{content:""}.login-google-mark{background:var(--surface-solid);border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.login-google-label{white-space:nowrap}.route-stack--login>.site-footer{margin-top:var(--space-6)}.legal-viewport{min-height:100svh;padding:56px var(--space-8) var(--space-8);background:var(--background)}.legal-layout,.legal-viewport>.site-footer{width:min(100%,840px);margin-inline:auto}.legal-document{color:var(--text-primary)}.legal-document>header{padding-bottom:var(--space-8);border-bottom:1px solid var(--divider)}.legal-document h1{margin:var(--space-2) 0 0;letter-spacing:-.025em;font-size:clamp(1.75rem,4vw,2.25rem);line-height:1.35}.legal-document__effective-date{margin:var(--space-3) 0 0;color:var(--text-secondary);font-size:var(--font-size-helper)}.legal-document__lead,.legal-document section{margin-top:var(--space-8)}.legal-document h2{margin:0 0 var(--space-3);font-size:1.125rem;line-height:1.5}.legal-document h3{margin:var(--space-6) 0 var(--space-2);font-size:1rem;line-height:1.5}.legal-document p,.legal-document li{font-size:var(--font-size-body);line-height:1.85}.legal-document p{margin:var(--space-2) 0 0}.legal-document ul{margin:var(--space-2) 0 0;padding-left:1.4rem}.legal-document a{color:inherit;text-underline-offset:.2em}.route-context,.route-helper{color:var(--text-secondary);font-size:var(--font-size-helper);margin:0}.route-context{letter-spacing:.02em;font-weight:600}.auth-skeleton h1,.public-skeleton h1,.print-skeleton h1{margin:var(--space-1) 0 0;color:var(--text-primary);font-size:var(--font-size-page-title);letter-spacing:-.02em;font-weight:700;line-height:1.35}.route-lead{margin:var(--space-4) 0 0;color:var(--text-secondary);font-size:var(--font-size-body)}.auth-skeleton button,.auth-primary-link{width:100%;margin-top:var(--space-8)}.auth-primary-link{min-height:42px;padding:0 var(--space-4);color:var(--surface-solid);background:var(--accent-hover);border:1px solid var(--accent-hover);border-radius:var(--radius-control);text-align:center;place-items:center;font-weight:600;text-decoration:none;display:grid}.auth-primary-link:hover{background:var(--dark-soft);border-color:var(--dark-soft)}.auth-skeleton button:disabled{color:var(--text-muted);background:var(--background-soft);cursor:not-allowed}.route-helper{margin-top:var(--space-3);text-align:center}.route-link{margin-top:var(--space-6);color:var(--accent-hover);text-underline-offset:3px;font-weight:600;display:inline-block}.setup-steps{gap:var(--space-3);padding:var(--space-8) 0 var(--space-6);border-bottom:1px solid var(--divider);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;list-style:none;display:grid}.setup-steps li{color:var(--text-muted);font-size:var(--font-size-helper)}.setup-steps li span{margin-bottom:var(--space-1);font-weight:600;display:block}.setup-steps .setup-steps__item--current{color:var(--text-primary);font-weight:600}.setup-steps .setup-steps__item--complete{color:var(--accent-hover)}.setup-panel{padding-top:var(--space-6)}.setup-panel h2{font-size:var(--font-size-panel-title);margin:0;line-height:1.5}.setup-panel>p,.setup-helper{margin:var(--space-2) 0 0;color:var(--text-secondary)}.setup-form{gap:var(--space-4);display:grid}.setup-form label{margin-bottom:var(--space-2);font-size:var(--font-size-label);font-weight:600;display:block}.setup-form input{width:100%;min-height:48px;padding:0 var(--space-4)}.setup-password-field{position:relative}.setup-password-field input{padding-right:3rem}.setup-password-field__toggle{top:50%;right:var(--space-2);width:36px;height:36px;color:var(--text-secondary);border-radius:var(--radius-control);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;transform:translateY(-50%)}.setup-password-field__toggle:hover{color:var(--text-primary);background:var(--background-soft)}.setup-password-field__toggle:focus-visible{box-shadow:var(--focus-ring);outline:0}.setup-password-field__toggle svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.setup-primary-action,.setup-primary-link{width:100%;min-height:44px;margin-top:var(--space-6);color:var(--surface-solid);background:var(--accent-hover);border:1px solid var(--accent-hover);border-radius:var(--radius-control);text-align:center;place-items:center;font-weight:600;text-decoration:none;display:grid}.setup-form .setup-primary-action{margin-top:var(--space-2)}.setup-action-loading{min-height:36px;margin-top:var(--space-5);place-items:center;display:grid}.setup-form .setup-action-loading{margin-top:0}.setup-action-loading__spinner{border:3px solid var(--divider);border-top-color:var(--accent-hover);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite setup-action-loading-spin}@keyframes setup-action-loading-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.setup-action-loading__spinner{animation-duration:1.6s}}.setup-primary-action:hover:not(:disabled),.setup-primary-link:hover{background:var(--dark-soft);border-color:var(--dark-soft)}.setup-primary-action:disabled{color:var(--text-muted);background:var(--background-soft);border-color:var(--border);cursor:not-allowed}.settings-page{max-width:920px}.settings-page>.setup-form{gap:var(--space-2) var(--space-3);max-width:680px;margin-top:var(--space-6);grid-template-columns:minmax(0,1fr) auto}.settings-page>.setup-form label{grid-column:1/-1;margin-bottom:0}.settings-page>.setup-form .setup-primary-action{width:auto;min-height:48px;padding-inline:var(--space-4);white-space:nowrap;margin-top:0}.service-withdrawal{padding-top:var(--space-8);margin-top:var(--space-10);border-top:1px solid var(--divider)}.service-withdrawal h3{margin:0 0 var(--space-3);font-size:var(--font-size-panel-title)}.service-withdrawal p{max-width:680px;margin:var(--space-2) 0;color:var(--text-secondary);font-size:var(--font-size-helper)}.service-withdrawal__guidance{font-weight:650;color:var(--text-primary)!important}.service-withdrawal__button{min-height:42px;padding:0 var(--space-4);margin-top:var(--space-4);color:var(--danger);background:var(--surface-solid);border:1px solid var(--danger);border-radius:var(--radius-control);font-weight:650}.service-withdrawal__button:disabled{color:var(--text-muted);border-color:var(--border);cursor:not-allowed}.service-withdrawal__backdrop{z-index:30;padding:var(--space-5);background:#141b2375;place-items:center;display:grid;position:fixed;inset:0}.service-withdrawal__dialog{box-sizing:border-box;width:min(100%,480px);padding:var(--space-6);background:var(--surface-solid);border-radius:var(--radius-panel);box-shadow:var(--shadow-shell)}.service-withdrawal__dialog h4{margin:0 0 var(--space-4);font-size:var(--font-size-section-title)}.service-withdrawal__dialog p{margin:var(--space-3) 0}.service-withdrawal__dialog label{align-items:center;gap:var(--space-2);margin-top:var(--space-5);display:flex}.service-withdrawal__actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-5);display:flex}.service-withdrawal__actions button{min-height:40px;padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface-solid)}.service-withdrawal__actions button:last-child{color:var(--danger);border-color:var(--danger);font-weight:650}.service-withdrawal__actions button:disabled{opacity:.5;cursor:not-allowed}.operator-console{max-width:1400px;padding:var(--space-8);color:var(--text-primary);margin:0 auto}.operator-console header h1{margin:var(--space-2) 0}.operator-counts{gap:var(--space-4);margin:var(--space-8) 0;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.operator-counts>div{padding:var(--space-5);background:var(--surface-solid);border:1px solid var(--divider);border-radius:var(--radius-panel)}.operator-counts dt{color:var(--text-secondary)}.operator-counts dd{margin:var(--space-3) 0 0;font-size:1.8rem;font-weight:700}.operator-search{margin-bottom:var(--space-4);display:block}.operator-search input{width:min(100%,380px);min-height:42px;margin-top:var(--space-2);padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-control);display:block}.operator-table-wrap{background:var(--surface-solid);border:1px solid var(--divider);border-radius:var(--radius-panel);overflow-x:auto}.operator-table{border-collapse:collapse;text-align:left;width:100%}.operator-table th,.operator-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--divider);white-space:nowrap}.operator-table th{color:var(--text-secondary)}.operator-school-id{color:var(--text-muted);display:block}.operator-table button,.operator-confirm button{min-height:38px;padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface-solid);cursor:pointer}.operator-confirm-backdrop{z-index:40;padding:var(--space-5);background:#141b2375;place-items:center;display:grid;position:fixed;inset:0}.operator-confirm{width:min(100%,500px);padding:var(--space-6);background:var(--surface-solid);border-radius:var(--radius-panel)}.operator-confirm__actions{justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-6);display:flex}.operator-confirm__submit{color:var(--danger);border-color:var(--danger)!important}.operator-feedback{z-index:50;right:var(--space-5);bottom:var(--space-5);box-sizing:border-box;max-width:min(480px, calc(100vw - 2 * var(--space-5)));padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface-solid);box-shadow:var(--shadow-shell);margin:0;position:fixed}.operator-feedback--success{border-color:var(--success)}.operator-feedback--error,.operator-feedback--warning{border-color:var(--danger)}@media (width<=700px){.operator-counts{grid-template-columns:repeat(2,minmax(0,1fr))}}.manager-management{padding-top:var(--space-8);margin-top:var(--space-10);border-top:1px solid var(--divider)}.manager-management h3,.manager-management h4,.manager-management p{margin:0}.manager-management h3{margin-top:var(--space-1);font-size:var(--font-size-panel-title)}.manager-management h4{margin-top:var(--space-8);font-size:var(--font-size-body)}.manager-list{margin:var(--space-3) 0 0;border-top:1px solid var(--divider);padding:0;list-style:none}.manager-list li{justify-content:space-between;align-items:center;gap:var(--space-4);min-height:70px;padding:var(--space-3) 0;border-bottom:1px solid var(--divider);display:flex}.manager-list strong,.manager-list span{display:block}.manager-list li>div:first-child span{margin-top:var(--space-1);color:var(--text-secondary);font-size:var(--font-size-helper)}.manager-list__actions{align-items:center;gap:var(--space-2);flex:none;display:flex}.manager-list__actions button,.invitation-page__login{padding:var(--space-2) var(--space-3);color:var(--accent-hover);background:0 0;border:0;font-weight:600;text-decoration:none}.manager-role{padding:var(--space-1) var(--space-2);color:var(--text-secondary);background:var(--background-soft);border-radius:var(--radius-control);font-size:var(--font-size-helper);font-weight:650}.manager-management__empty,.manager-management__message{color:var(--text-secondary);margin-top:var(--space-3)!important}.manager-invite-form{margin-top:var(--space-6)}.manager-invite-form label{margin-bottom:var(--space-2);font-weight:650;display:block}.manager-invite-form>div{gap:var(--space-2);display:flex}.manager-invite-form input{min-width:0;min-height:44px;padding-inline:var(--space-3);flex:1}.manager-invite-form button{min-height:44px;padding-inline:var(--space-4);color:var(--surface-solid);background:var(--accent-hover);border:1px solid var(--accent-hover);border-radius:var(--radius-control);font-weight:650}.invitation-page>p:not(.route-context){margin-top:var(--space-4);color:var(--text-secondary)}.invitation-page>button,.invitation-page>.invitation-page__login{width:100%;min-height:44px;margin-top:var(--space-5);border:1px solid var(--accent-hover);border-radius:var(--radius-control);place-items:center;display:grid}@media (width<=640px){.manager-list li,.manager-invite-form>div{flex-direction:column;align-items:stretch}.manager-list__actions{justify-content:flex-end}}.setup-error{color:var(--danger)!important}.staff-types-page{max-width:920px}.records-page{max-width:1240px}.records-page__school{margin:var(--space-1) 0 0;color:var(--text-secondary);font-size:var(--font-size-body)}.records-filter{align-items:center;gap:var(--space-3);padding:var(--space-4) 0;margin-top:var(--space-4);border-top:1px solid var(--divider);border-bottom:1px solid var(--divider);flex-wrap:wrap;display:flex}.records-filter__field,.records-filter__periods,.records-filter__actions,.records-results__actions,.records-pagination{align-items:center;gap:var(--space-2);flex-wrap:nowrap;display:flex}.records-filter__field>span{color:var(--text-primary);font-size:var(--font-size-helper);white-space:nowrap;flex:none;font-weight:650}.records-filter__field select,.records-filter__field input{box-sizing:border-box;min-height:36px;padding-inline:var(--space-2);font-size:var(--font-size-helper)}.records-filter__field--staff-type select{width:170px}.records-filter__field--worker input{width:175px}.records-filter__periods button{min-height:34px;color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-control);font-size:var(--font-size-helper);white-space:nowrap;background:0 0;padding:0 9px}.records-filter__periods button:hover{color:var(--text-primary);background:var(--background-soft)}.records-filter__periods button[aria-pressed=true]{color:var(--text-primary);background:var(--background-soft);border-color:var(--text-secondary)}.records-filter__periods input{width:132px}.records-filter__actions{flex:none;margin-left:auto}.records-filter__actions .staff-type-primary-action,.records-filter__actions .staff-type-secondary-action{min-height:36px;padding-inline:var(--space-3);font-size:var(--font-size-helper)}.records-results{margin-top:var(--space-4)}.records-results__heading{justify-content:space-between;align-items:baseline;gap:var(--space-4);display:flex}.records-results__heading h3,.records-results__heading p,.records-empty,.records-error,.records-notice{margin:0}.records-results__heading h3{font-size:var(--font-size-panel-title)}.records-results__actions{margin-left:auto}.records-period-action{align-items:center;gap:var(--space-2);display:flex}.records-period-status{color:var(--text-secondary);font-size:var(--font-size-helper);white-space:nowrap}.records-period-status--complete{color:var(--success)}.records-period-status--resign_required,.records-period-status--error{color:var(--warning)}.records-results__heading p,.records-empty{color:var(--text-secondary);font-size:var(--font-size-helper)}.records-error{padding:var(--space-3) 0;color:var(--danger);font-size:var(--font-size-body)}.records-notice{padding:var(--space-3) 0;color:var(--success);font-size:var(--font-size-body)}.records-empty{border-bottom:1px solid var(--divider);padding:32px 0}.records-table-wrap{margin-top:var(--space-3);border-top:1px solid var(--divider);border-bottom:1px solid var(--divider);overflow-x:auto}.records-table{border-collapse:collapse;width:100%;min-width:820px;font-size:var(--font-size-helper);text-align:left}.records-table th,.records-table td{padding:10px var(--space-2);border-bottom:1px solid var(--divider);white-space:nowrap}.records-table th{color:var(--text-secondary);font-size:var(--font-size-helper);font-weight:650}.records-table tr:last-child td{border-bottom:0}.records-signature{object-fit:contain;object-position:left center;width:72px;height:28px;display:block}.records-signature--empty{color:var(--text-secondary)}.records-detail-button{min-height:34px;padding:0 var(--space-3);color:var(--text-primary);background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--radius-control);font:inherit;font-weight:600}.records-detail-button:hover{background:var(--background-soft);border-color:var(--text-muted)}.records-print{display:none}.records-pagination{margin-top:var(--space-3);color:var(--text-secondary);font-size:var(--font-size-helper);justify-content:end}.record-detail-backdrop{z-index:20;padding:var(--space-5);background:#141b2375;place-items:center;display:grid;position:fixed;inset:0}.record-detail{width:min(100%,720px);max-height:calc(100svh - 40px);padding:var(--space-6);background:var(--surface);border-radius:var(--radius-panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid #ffffffb8;overflow-y:auto;box-shadow:0 22px 60px #19191933}.record-detail__heading{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.record-detail__heading h3{font-size:var(--font-size-section-title);margin:2px 0 0}.record-detail__heading button{width:36px;height:36px;color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-control);background:#ffffff8f;flex:none;font-size:1.4rem}.record-detail__status{margin:var(--space-6) 0 0;color:var(--text-secondary)}.record-detail__status p{margin:0 0 var(--space-3)}.record-detail__source{margin:var(--space-4) 0 0;color:var(--text-secondary);font-size:var(--font-size-helper)}.record-detail__facts{margin:var(--space-5) 0 0;border-top:1px solid var(--divider);display:grid}.record-detail__facts>div{gap:var(--space-4);border-bottom:1px solid var(--divider);grid-template-columns:120px minmax(0,1fr);margin:0;padding:11px 0;display:grid}.record-detail__facts dt{color:var(--text-secondary);font-size:var(--font-size-helper);font-weight:650}.record-detail__facts dd{overflow-wrap:anywhere;min-width:0;margin:0}.record-detail__memo dd{white-space:pre-wrap}.record-detail__signatures{gap:var(--space-5);margin-top:var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.record-detail__signatures section{min-width:0}.record-detail__signatures h4{margin:0 0 var(--space-2);font-size:var(--font-size-helper)}.record-detail__signature-image,.record-detail__signature-empty,.record-detail__signature-error{box-sizing:border-box;width:100%;min-height:150px;padding:var(--space-3);background:var(--surface-solid);border:1px solid var(--divider);border-radius:var(--radius-control);margin:0}.record-detail__signature-image{object-fit:contain;height:150px;display:block}.record-detail__signature-empty,.record-detail__signature-error{color:var(--text-secondary);font-size:var(--font-size-helper);text-align:center;place-items:center;display:grid}.record-detail__signature-error{color:var(--danger)}.record-detail__actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-6);display:flex}.record-detail__actions a{align-items:center;text-decoration:none;display:inline-flex}.manual-record-backdrop{z-index:20;padding:var(--space-5);background:#141b2375;place-items:center;display:grid;position:fixed;inset:0}.manual-record{width:min(100%,620px);max-height:calc(100svh - 40px);padding:var(--space-6);background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel);overflow-y:auto}.manual-record__heading{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.manual-record__heading h3{font-size:var(--font-size-panel-title);margin:2px 0 0}.manual-record__heading button{width:36px;height:36px;color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-control);background:0 0;font-size:1.4rem}.manual-record__lead{margin:var(--space-3) 0 var(--space-5);color:var(--text-secondary);font-size:var(--font-size-helper)}.manual-record form{gap:var(--space-4);display:grid}.manual-record__field{gap:var(--space-2);color:var(--text-primary);font-size:var(--font-size-helper);font-weight:650;display:grid}.manual-record__field small{color:var(--text-secondary);font-weight:500}.manual-record__field input,.manual-record__field select,.manual-record__field textarea{box-sizing:border-box;width:100%;min-height:40px;color:var(--text-primary);background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--radius-control);font:inherit;padding:9px 11px;font-weight:400}.manual-record__field textarea{resize:vertical}.manual-record__time,.manual-record__signature{min-width:0;padding:var(--space-4);border:1px solid var(--divider);border-radius:var(--radius-control);margin:0}.manual-record__time legend,.manual-record__signature legend{padding-inline:var(--space-2);font-size:var(--font-size-helper);font-weight:650}.manual-record__signature>button{min-height:34px;padding-inline:var(--space-3);margin-top:var(--space-2);color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-control);background:0 0}.manual-record__error{color:var(--danger);font-size:var(--font-size-helper);margin:0;font-weight:500}.manual-record__note{padding:var(--space-3);color:var(--text-secondary);background:var(--background-soft);border-radius:var(--radius-control);font-size:var(--font-size-helper);margin:0}.manual-record__actions{justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-2);display:flex}.period-signature-backdrop{z-index:20;padding:var(--space-5);background:#141b2375;place-items:center;display:grid;position:fixed;inset:0}.period-signature{width:min(100%,820px);max-height:calc(100svh - 40px);padding:var(--space-6);background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel);overflow-y:auto}.period-signature__heading{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.period-signature__heading h3{font-size:var(--font-size-panel-title);margin:2px 0 0}.period-signature__heading>button{width:36px;height:36px;color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-control);background:0 0;place-items:center;padding:0;font-size:1.4rem;line-height:1;display:grid}.period-signature__target{align-items:end;gap:var(--space-3);margin-top:var(--space-5);grid-template-columns:1.2fr 1.2fr 1fr 1fr auto;display:grid}.period-signature__target label{gap:var(--space-2);color:var(--text-primary);font-size:var(--font-size-helper);font-weight:650;display:grid}.period-signature__target input,.period-signature__target select{box-sizing:border-box;width:100%;min-height:40px;color:var(--text-primary);background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--radius-control);font:inherit;padding:9px 11px;font-weight:400}.period-signature__summary{gap:var(--space-2) var(--space-4);padding:var(--space-4);margin-top:var(--space-5);background:var(--background-soft);border-radius:var(--radius-control);flex-wrap:wrap;display:flex}.period-signature__records{margin-top:var(--space-4)}.period-signature__records>p{margin:0 0 var(--space-2)}.period-signature__table-wrap{border:1px solid var(--divider);border-radius:var(--radius-control);max-height:260px;overflow:auto}.period-signature__table-wrap table{border-collapse:collapse;width:100%;font-size:var(--font-size-helper)}.period-signature__table-wrap th,.period-signature__table-wrap td{border-bottom:1px solid var(--divider);text-align:left;white-space:nowrap;padding:9px 11px}.period-signature__table-wrap tbody tr:last-child td{border-bottom:0}.period-signature__notice,.period-signature__warning,.period-signature__error,.period-signature__assurance{margin:var(--space-4) 0 0;padding:var(--space-3);border-radius:var(--radius-control);font-size:var(--font-size-helper)}.period-signature__notice{color:var(--text-secondary);background:var(--background-soft)}.period-signature__warning{color:var(--warning);background:#a77a421a}.period-signature__error{color:var(--danger);background:#ad58581a}.period-signature__signing{gap:var(--space-4);margin-top:var(--space-4);display:grid}.period-signature__consent{align-items:flex-start;gap:var(--space-2);color:var(--text-primary);font-size:var(--font-size-helper);display:flex}.period-signature__consent input{margin-top:2px}.period-signature__signing fieldset{min-width:0;padding:var(--space-4);border:1px solid var(--divider);border-radius:var(--radius-control);margin:0}.period-signature__signing legend{padding-inline:var(--space-2);font-size:var(--font-size-helper);font-weight:650}.period-signature__signing fieldset>button{min-height:34px;padding-inline:var(--space-3);margin-top:var(--space-2);color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-control);background:0 0}.period-signature__signing fieldset>p{margin:var(--space-2) 0 0;color:var(--danger);font-size:var(--font-size-helper)}.period-signature__actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-4);display:flex}.period-signature__complete{margin-top:var(--space-6)}.period-signature__complete p{color:var(--text-secondary)}@media (width<=1100px){.records-filter{flex-wrap:wrap}.records-filter__actions{margin-left:0}}.staff-types-page__heading{justify-content:space-between;align-items:end;gap:var(--space-5);display:flex}.staff-type-primary-action,.staff-type-secondary-action{min-height:40px;padding:0 var(--space-4);border-radius:var(--radius-control);font-weight:600}.staff-type-primary-action{color:var(--surface-solid);background:var(--accent-hover);border:1px solid var(--accent-hover)}.staff-type-primary-action:hover:not(:disabled){background:var(--dark-soft);border-color:var(--dark-soft)}.staff-type-secondary-action{color:var(--text-primary);border:1px solid var(--border);background:0 0}.staff-type-form{gap:var(--space-4);padding:var(--space-6) 0;margin-top:var(--space-6);border-top:1px solid var(--divider);border-bottom:1px solid var(--divider);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.staff-type-form__field--wide,.staff-type-form__time-settings,.staff-type-form__checks,.staff-type-form__actions{grid-column:1/-1}.staff-type-form label,.staff-type-form legend{margin-bottom:var(--space-2);font-size:var(--font-size-label);font-weight:600;display:block}.staff-type-form input:not([type=checkbox]),.staff-type-form select{width:100%;min-height:42px;padding-inline:var(--space-3)}.staff-type-form__time-settings{gap:var(--space-4);min-width:0;padding:var(--space-4) 0 0;border:0;border-top:1px solid var(--divider);margin:0;display:grid}.staff-type-form__time-settings legend{grid-column:1/-1;padding:0}.staff-type-form__time-presets{gap:var(--space-2);min-width:0;display:grid}.staff-type-form__time-preset{align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-2) 0;border-bottom:1px solid var(--divider);grid-template-columns:minmax(72px,1fr) minmax(48px,.6fr) auto minmax(48px,.6fr) auto minmax(48px,.6fr) auto minmax(48px,.6fr) auto;display:grid}.staff-type-form__time-preset-label{min-width:0;color:var(--text-secondary);font-size:var(--font-size-label);font-weight:600}.staff-type-form__time-preset label{min-width:0;margin:0}.staff-type-form__time-preset select{width:100%;min-width:0;min-height:38px;padding:0 var(--space-2)}.staff-type-form__time-add,.staff-type-form__time-remove{min-height:38px;padding:0 var(--space-3);color:var(--accent-hover);border:1px solid var(--border);background:0 0;font-weight:600}.staff-type-form__time-remove:disabled{color:var(--text-muted);cursor:not-allowed}.staff-type-form__time-edit{align-items:center;gap:var(--space-2);width:fit-content;color:var(--text-secondary);margin:0!important;font-weight:500!important;display:inline-flex!important}.staff-type-form__time-helper{margin:calc(var(--space-2) * -1) 0 0;color:var(--text-secondary);font-size:var(--font-size-helper)}.staff-type-form__checks{gap:var(--space-3) var(--space-5);border:0;flex-wrap:wrap;margin:0;padding:0;display:flex}.staff-type-form__checks legend{width:100%}.staff-type-form__checks label{align-items:center;gap:var(--space-2);color:var(--text-secondary);margin:0;font-weight:500;display:inline-flex}.staff-type-form__actions{justify-content:end;gap:var(--space-3);display:flex}.staff-type-list{margin:var(--space-6) 0 0;border-top:1px solid var(--divider);padding:0;list-style:none}.staff-type-list li{justify-content:space-between;align-items:center;gap:var(--space-5);min-height:72px;padding:var(--space-4) 0;border-bottom:1px solid var(--divider);display:flex}.staff-type-list h3,.staff-type-list p{margin:0}.staff-type-list h3{font-size:var(--font-size-body);font-weight:650}.staff-type-list p{margin-top:var(--space-1);color:var(--text-secondary);font-size:var(--font-size-helper)}.staff-type-list__item--inactive{opacity:.56}.staff-type-list__actions{gap:var(--space-2);flex:none;display:flex}.staff-type-list__actions button{padding:var(--space-2) var(--space-3);color:var(--accent-hover);background:0 0;border:0;font-weight:600}.staff-type-error{margin-top:var(--space-4);color:var(--danger)}.submission-links-page{max-width:920px}.submission-links-page__lead{max-width:680px;margin:var(--space-3) 0 0;color:var(--text-secondary)}.submission-link-list{margin:var(--space-6) 0 0;border-top:1px solid var(--divider);padding:0;list-style:none}.submission-link-list li{justify-content:space-between;align-items:center;gap:var(--space-5);min-height:76px;padding:var(--space-4) 0;border-bottom:1px solid var(--divider);display:flex}.submission-link-list h3,.submission-link-list p{margin:0}.submission-link-list h3{font-size:var(--font-size-body)}.submission-link-list p{margin-top:var(--space-1);color:var(--text-secondary);font-size:var(--font-size-helper)}.submission-link-list__item--inactive{opacity:.56}.submission-link-list__actions,.submission-link-dialog__actions{gap:var(--space-2);flex:none;display:flex}.submission-link-list__actions button:not(.staff-type-primary-action){padding:var(--space-2) var(--space-3);color:var(--accent-hover);background:0 0;border:0;font-weight:600}.submission-link-dialog{z-index:20;padding:var(--space-6);background:#19211d61;place-items:center;display:grid;position:fixed;inset:0}.submission-link-dialog__card{width:min(100%,400px);padding:var(--space-6);background:var(--surface-solid);border-radius:var(--radius-shell);box-shadow:var(--shadow-shell)}.submission-link-dialog__card h3,.submission-link-dialog__card p{margin:0}.submission-link-dialog__card h3{margin-top:var(--space-1);font-size:var(--font-size-panel-title)}.submission-link-dialog__card>p:not(.page-heading__context){margin-top:var(--space-3);color:var(--text-secondary)}.submission-link-dialog canvas{width:240px;max-width:100%;height:auto;margin:var(--space-5) auto;display:block}.submission-link-dialog__actions{justify-content:end}.public-submission__header{padding-bottom:var(--space-5);border-bottom:1px solid var(--divider)}.public-submission__header h1,.public-submission__header p{margin:0}.public-submission__header h1{margin-top:var(--space-1);font-size:var(--font-size-page-title);letter-spacing:-.02em;line-height:1.35}.public-submission__staff-type{margin-top:var(--space-2);color:var(--accent-hover);font-size:var(--font-size-body);font-weight:650;line-height:1.45}.public-form{gap:var(--space-5);padding-top:var(--space-5);display:grid}.public-submission,.public-form,.public-form__field,.public-form__time-group,.public-form__privacy,.public-form__custom-time{min-width:0}.public-form__field>label,.public-form__time-group legend{margin-bottom:var(--space-2);font-weight:650;display:block}.public-form__field input,.public-form__field textarea,.public-form__time-fields input{width:100%;min-height:52px;padding:0 var(--space-4);font-size:1rem}.public-form__field textarea{min-height:104px;padding-block:var(--space-3);resize:vertical}.public-form__optional{margin-left:var(--space-1);color:var(--text-secondary);font-size:var(--font-size-helper);font-weight:500}.public-form__time-group{border:0;margin:0;padding:0}.public-form__helper{margin:calc(var(--space-2) * -1) 0 var(--space-3);color:var(--text-secondary);font-size:var(--font-size-helper)}.public-form__time-fields{align-items:end;column-gap:var(--space-2);grid-template-columns:minmax(0,1fr) min-content minmax(0,1fr);display:grid}.public-form__time-options{border-top:1px solid var(--divider);min-width:0;display:grid}.public-form__time-option{align-items:center;gap:var(--space-3);min-width:0;min-height:52px;padding:var(--space-2) 0;border-bottom:1px solid var(--divider);color:var(--text-primary);cursor:pointer;grid-template-columns:24px minmax(0,1fr);font-weight:600;display:grid}.public-form__time-option input{width:20px;height:20px;accent-color:var(--accent-hover);margin:0}.public-form__custom-time{padding-top:var(--space-4)}.public-form__custom-time .public-form__helper{margin-top:0}.public-form__time-field{min-width:0}.public-form__time-fields input{box-sizing:border-box;min-width:0;max-width:100%}.public-form__time-fields label{margin-bottom:var(--space-1);color:var(--text-secondary);font-size:var(--font-size-helper);display:block}.public-form__time-separator{color:var(--text-secondary);align-self:end;padding:0 0 17px;font-size:1.125rem;line-height:1}.public-form__fixed-time{color:var(--text-primary);letter-spacing:-.01em;margin:0;font-size:1.125rem;font-weight:650}.public-form__privacy{padding:var(--space-5) 0 0;border:0;border-top:1px solid var(--divider);background:0 0;border-radius:0;margin:0}.public-form__privacy legend,.public-form__privacy p{margin:0}.public-form__privacy legend{font-size:var(--font-size-panel-title);padding:0;font-weight:650}.public-form__privacy>p{margin-top:var(--space-2);color:var(--text-secondary);font-size:var(--font-size-helper);line-height:1.55}.public-form__consent{align-items:flex-start;gap:var(--space-3);min-height:48px;margin-top:var(--space-4);cursor:pointer;font-weight:600;line-height:1.45;display:flex}.public-form__consent input{width:22px;height:22px;accent-color:var(--accent-hover);flex:none;margin:1px 0 0}.public-form__error{margin:var(--space-1) 0 0;color:var(--danger);font-size:var(--font-size-helper);font-weight:600}.public-form [aria-invalid=true]{border-color:var(--danger)}.public-form__privacy--invalid{border-top-color:var(--danger)}.public-form__next{width:100%;min-height:56px;color:var(--surface-solid);background:var(--accent-hover);border-color:var(--accent-hover);margin-top:var(--space-2);font-size:1rem;font-weight:650}.public-form__next:hover{background:var(--dark-soft);border-color:var(--dark-soft)}.public-form__ready{padding:var(--space-3) var(--space-4);color:var(--success);background:var(--background-soft);border-left:3px solid var(--success);margin:0}.public-signature-step,.public-submission-ready,.signature-pad,.public-signature-step__actions{min-width:0}.public-signature-step,.public-submission-ready{gap:var(--space-4);padding-top:var(--space-5);display:grid}.public-signature-step h2,.public-signature-step p,.public-submission-ready h2,.public-submission-ready p{margin:0}.public-signature-step h2,.public-submission-ready h2{font-size:var(--font-size-panel-title)}.public-signature-step__progress{color:var(--accent-hover);font-size:var(--font-size-helper);font-weight:650}.public-signature-step__description,.public-submission-ready>p:not(.public-form__ready){color:var(--text-secondary);line-height:1.55}.public-submission-complete{gap:var(--space-5);padding-top:var(--space-4);display:grid}.public-submission-complete>p,.public-submission-complete h1,.public-submission-complete dl,.public-submission-complete dd{margin:0}.public-submission-complete h1{font-size:var(--font-size-page-title);letter-spacing:-.02em;line-height:1.35}.public-submission-complete__message{color:var(--text-secondary);line-height:1.55}.public-submission-complete__summary{border-top:1px solid var(--divider);display:grid}.public-submission-complete__summary>div{gap:var(--space-3);padding:var(--space-4) 0;border-bottom:1px solid var(--divider);grid-template-columns:minmax(84px,.4fr) minmax(0,1fr);display:grid}.public-submission-complete__summary dt{color:var(--text-secondary);font-size:var(--font-size-helper);font-weight:650}.public-submission-complete__summary dd{overflow-wrap:anywhere;min-width:0;color:var(--text-primary);font-weight:650}.public-submission-complete__close{padding:var(--space-4);color:var(--success);background:var(--background-soft);border-left:3px solid var(--success);line-height:1.5}.signature-pad__hint{margin:0 0 var(--space-2);color:var(--text-secondary);font-size:var(--font-size-helper)}.signature-pad,.signature-pad__canvas{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.signature-pad__canvas{box-sizing:border-box;touch-action:none;background:var(--surface-solid);border:1px solid var(--divider);border-radius:var(--radius-control);cursor:crosshair;width:100%;max-width:100%;height:220px;display:block;box-shadow:inset 0 1px 3px #17211b14}.signature-pad__canvas[aria-invalid=true]{border-color:var(--danger)}.public-signature-step__actions{gap:var(--space-3);padding-bottom:calc(var(--space-5) + env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.public-signature-step__clear,.public-signature-step__actions .public-form__next{min-width:0;min-height:56px;margin-top:0}.public-signature-step__clear{color:var(--accent-hover);background:var(--surface-solid);border-color:var(--accent-soft);font-weight:650}.public-form__required-note{margin:calc(var(--space-2) * -1) 0 0;color:var(--text-secondary);font-size:var(--font-size-helper);text-align:right}.route-placeholder{padding-top:var(--space-6);color:var(--text-secondary)}.route-placeholder p,.public-skeleton p,.print-skeleton p{margin-bottom:0}.print-layout{min-height:100svh;color:var(--text-primary);background:var(--surface-solid)}.print-sheet{box-sizing:border-box;background:var(--surface-solid);width:min(100%,210mm);min-height:100svh;margin:0 auto;padding:20mm}.print-skeleton{padding-bottom:var(--space-6);border-bottom:1px solid var(--border)}.print-skeleton>p:last-child{color:var(--text-secondary)}.official-print-page{color:#111}.official-document{box-sizing:border-box;border:1px solid #bbb;min-height:257mm;padding:14mm}.official-document header{text-align:center;padding-bottom:10mm}.official-document header p{margin:0 0 3mm;font-size:12pt}.official-document header h1{color:#000;margin:0;font-size:22pt}.official-document header .official-document__source{color:#555;margin:3mm 0 0;font-size:9pt}.official-document__facts,.official-document__summary{border-top:1px solid #444;margin:0}.official-document__facts>div,.official-document__summary>div{border-bottom:1px solid #888;grid-template-columns:35mm minmax(0,1fr);margin:0;display:grid}.official-document__facts dt,.official-document__facts dd,.official-document__summary dt,.official-document__summary dd{margin:0;padding:3.5mm}.official-document__facts dt,.official-document__summary dt{background:#f3f3f3;font-weight:700}.official-document__memo dd{white-space:pre-wrap;overflow-wrap:anywhere;min-height:18mm}.official-document__signatures{grid-template-columns:repeat(2,minmax(0,1fr));gap:12mm;margin-top:14mm;display:grid}.official-document__signatures section{break-inside:avoid}.official-document__signatures h2{text-align:center;margin:0 0 3mm;font-size:12pt}.official-document__signatures img,.official-document__signature-empty{box-sizing:border-box;object-fit:contain;border:1px solid #888;width:100%;height:32mm;margin:0;padding:3mm;display:block}.official-document__signature-empty{color:#555;place-items:center;display:grid}.official-document__attendance-table{border-collapse:collapse;width:100%;margin-top:8mm}.official-document__attendance-table th,.official-document__attendance-table td{text-align:center;border:1px solid #666;padding:3mm}.official-document__attendance-table th{background:#f3f3f3}.official-document__signed-at{text-align:right;margin:8mm 0 0}.official-document__signatures--period{margin-top:8mm}.official-print-actions{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) 0;color:var(--text-secondary);display:flex}.official-print-actions p{font-size:var(--font-size-helper);margin:0}.official-print-actions>div{gap:var(--space-2);display:flex}.official-print-actions>div:first-child{display:grid}.official-print-actions__error{color:var(--danger)}.official-print-actions button{min-height:40px;padding-inline:var(--space-4);color:var(--text-primary);background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--radius-control);font-weight:650}.official-print-error{text-align:center;padding:20mm 0}.official-print-error p{color:var(--danger)}@media (width<=960px){.app-viewport{padding:20px 20px 0}.app-shell{grid-template-columns:176px minmax(0,1fr)}.app-sidebar{padding-inline:14px}.app-header,.app-content{padding-inline:var(--space-6)}}@media (width<=700px){.app-viewport{padding:0}.app-shell{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border:0;border-radius:0;display:block}.app-sidebar{display:none}.app-header{min-height:auto;padding:var(--space-6) 20px}.app-header h1{font-size:1.5rem}.app-content{padding:28px 20px}.route-viewport{align-items:stretch;padding:0}.route-stack{flex-direction:column;width:100%;min-height:100svh;display:flex}.route-viewport--login{align-items:center;padding:24px 16px}.route-stack--login{width:min(100%,400px);min-height:0}.auth-layout,.public-layout{width:100%;padding:28px 20px calc(48px + env(safe-area-inset-bottom));box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border:0;border-radius:0;flex:1}.auth-layout--login{flex:initial;border:1px solid var(--divider);border-radius:var(--radius-shell);padding:32px 24px;box-shadow:0 12px 36px #1932230f}.auth-skeleton.login-card h1{font-size:1.875rem}.login-card .route-lead{font-size:clamp(.8125rem, 3.6vw, var(--font-size-body))}.route-stack.route-stack--login>.site-footer{padding:0 4px env(safe-area-inset-bottom)}.route-stack>.site-footer{padding:0 20px calc(var(--space-6) + env(safe-area-inset-bottom))}.legal-viewport{padding:36px 20px calc(var(--space-6) + env(safe-area-inset-bottom))}.legal-document>header{padding-bottom:var(--space-6)}.legal-document__lead,.legal-document section{margin-top:var(--space-6)}.auth-skeleton h1,.public-skeleton h1,.print-skeleton h1{font-size:1.5rem}.setup-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-types-page__heading,.staff-type-list li,.submission-link-list li{flex-direction:column;align-items:stretch}.records-filter,.records-filter__field,.records-filter__periods{flex-wrap:wrap;align-items:flex-start}.records-filter__field--worker input{width:min(175px,100%)}.staff-type-form{grid-template-columns:1fr}.staff-type-form__time-preset{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr)}.staff-type-form__time-preset-label{grid-column:1/-1}.staff-type-form__time-remove{grid-column:1/-1;justify-self:start}.staff-type-list__actions{justify-content:end}.records-filter__actions,.records-pagination{justify-content:flex-start}.records-results__heading{align-items:flex-start;gap:var(--space-2);flex-direction:column}.records-results__actions{flex-wrap:wrap;margin-left:0}.manual-record-backdrop{align-items:end;padding:0}.manual-record{max-height:92svh;padding:var(--space-5) 20px calc(var(--space-5) + env(safe-area-inset-bottom));border-radius:var(--radius-panel) var(--radius-panel) 0 0}.record-detail-backdrop{align-items:end;padding:0}.record-detail{max-height:92svh;padding:var(--space-5) 20px calc(var(--space-5) + env(safe-area-inset-bottom));border-radius:var(--radius-panel) var(--radius-panel) 0 0}.record-detail__facts>div{grid-template-columns:96px minmax(0,1fr)}.record-detail__signatures{grid-template-columns:1fr}.period-signature-backdrop{align-items:end;padding:0}.period-signature{max-height:92svh;padding:var(--space-5) 20px calc(var(--space-5) + env(safe-area-inset-bottom));border-radius:var(--radius-panel) var(--radius-panel) 0 0}.period-signature__target{grid-template-columns:1fr 1fr}.print-sheet{padding:32px 20px}.public-submission__header{padding-bottom:var(--space-4)}.public-submission__header h1{font-size:1.375rem}.public-form{gap:var(--space-5);padding-top:var(--space-5)}.public-form__next{min-height:56px}}@media print{@page{size:A4 portrait;margin:15mm}body,.route-viewport,.print-layout,.print-sheet{background:#fff}.app-viewport{padding:0}.app-shell{background:var(--surface-solid);min-height:auto;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border:0;border-radius:0;display:block}.app-sidebar,.app-header,.skip-link,.site-footer,.records-page>.page-heading,.records-filter,.records-results,.manual-record-backdrop,.record-detail-backdrop,.service-withdrawal__backdrop,.period-signature-backdrop{display:none}.app-content{padding:0}.records-print{color:#111;display:block}.records-print h1{text-align:center;margin:0 0 14px;font-size:18px}.records-print p{margin:4px 0;font-size:11px}.records-print__count{font-weight:700;margin-top:12px!important}.records-print .records-table-wrap{border-color:#555;margin-top:10px;overflow:visible}.records-print .records-table{table-layout:fixed;min-width:0;font-size:9px}.records-print .records-table th,.records-print .records-table td{white-space:normal;vertical-align:middle;border-color:#777;padding:6px 4px}.records-print .records-table th{color:#111;background:#f4f4f4}.records-print .records-table thead{display:table-header-group}.records-print .records-table th:first-child,.records-print .records-table td:first-child{text-align:center;width:5%}.records-print .records-table th:nth-child(2),.records-print .records-table td:nth-child(2){width:13%}.records-print .records-table th:nth-child(3),.records-print .records-table td:nth-child(3){width:16%}.records-print .records-table th:nth-child(4),.records-print .records-table td:nth-child(4){width:12%}.records-print .records-table th:nth-child(5),.records-print .records-table td:nth-child(5){width:14%}.records-print .records-table th:nth-child(6),.records-print .records-table td:nth-child(6),.records-print .records-table th:nth-child(7),.records-print .records-table td:nth-child(7){width:15%}.records-print .records-signature{width:62px;height:26px;margin:0 auto}.records-print__period-signatures{break-inside:avoid;border-top:1px solid #555;margin-top:18px;padding-top:14px}.records-print__period-signatures h2{text-align:center;margin:0 0 10px;font-size:14px}.records-print__period-signatures>div{justify-content:center;gap:28px;display:flex}.records-print__period-signatures section{width:190px}.records-print__period-signatures h3{text-align:center;margin:0 0 5px;font-size:11px}.records-print__period-signatures img{box-sizing:border-box;object-fit:contain;border:1px solid #777;width:100%;height:62px;padding:4px;display:block}.print-sheet{width:auto;min-height:auto;padding:0}.official-print-actions{display:none}.official-document{border:0;min-height:0;padding:0}.official-document header{break-after:avoid}.official-document__attendance-table thead{display:table-header-group}.official-document__attendance-table tr,.official-document__signatures,.official-document__signed-at{break-inside:avoid}}:root{--background:#f2f0ec;--background-soft:#f6f5f2;--surface:#ffffffbd;--surface-solid:#fff;--text-primary:#20201e;--text-secondary:#74716c;--text-muted:#9a9792;--border:#e4e1dc;--divider:#ece9e4;--accent:#6f8f78;--accent-hover:#5e7d67;--dark:#242423;--dark-soft:#30302e;--success:#5f8067;--warning:#a77a42;--danger:#ad5858;--font-family:Pretendard, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-page-title:1.75rem;--font-size-section-title:1.25rem;--font-size-panel-title:1rem;--font-size-body:.875rem;--font-size-label:.8125rem;--font-size-helper:.8125rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--radius-shell:1.5rem;--radius-panel:1rem;--radius-control:.75rem;--shadow-shell:0 20px 60px #19191914;--shadow-panel:0 8px 24px #1919190d;--focus-ring:0 0 0 3px #6f8f7847;--transition-fast:.16s ease;font-family:var(--font-family);color:var(--text-primary);background:var(--background);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{background:var(--background);min-width:320px;min-height:100svh;font-size:var(--font-size-body);margin:0;line-height:1.6}button,input,select,textarea{font:inherit;border:1px solid var(--border);border-radius:var(--radius-control)}button{min-height:42px;padding:0 var(--space-4);color:var(--text-primary);background:var(--surface-solid);cursor:pointer}input,select,textarea{color:var(--text-primary);background:var(--background-soft);box-shadow:inset 1px 1px 3px #0000000a,inset -1px -1px 3px #ffffffe6}table{border-collapse:collapse;width:100%}th,td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--divider);text-align:left}th{background:var(--background-soft);font-size:var(--font-size-label);font-weight:600}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;box-shadow:var(--focus-ring)}::selection{color:var(--surface-solid);background:var(--accent)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
