/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.hidden{display:none}.table{display:table}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}:root{--ink:#182039;--muted:#7b8294;--line:#e8eaf0;--blue:#2754d7;--blue-dark:#173dac;--bg:#f5f6f9;--green:#15905e;--amber:#c78109}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--ink);margin:0;font-family:Arial,Noto Sans JP,sans-serif}button,input,textarea{font:inherit}button{cursor:pointer}.app-shell{grid-template-columns:244px 1fr;min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);z-index:10;background:#fff;flex-direction:column;height:100vh;padding:22px 14px 16px;display:flex;position:sticky;top:0}.brand{text-align:left;color:var(--ink);background:0 0;border:0;align-items:center;gap:11px;padding:0 9px 22px;display:flex}.brand-logo{background:#f8dfe1;border:1px solid #efdadd;border-radius:11px;flex:0 0 46px;width:46px;height:46px;display:block;position:relative;overflow:hidden;box-shadow:0 3px 10px #193a7a16}.brand-logo img{object-fit:contain;width:100%;height:100%;display:block}.brand b{letter-spacing:1.6px;font-size:14px;display:block}.brand small{letter-spacing:2.7px;color:#9ba0ad;margin-top:2px;font-size:8px;display:block}.role-indicator{background:#f0f4ff;border:1px solid #dce5ff;border-radius:8px;justify-content:space-between;align-items:center;margin:0 6px 24px;padding:9px 11px;display:flex}.role-indicator span{color:var(--blue);font-size:11px;font-weight:800}.role-indicator small{color:#8993aa;font-size:8px}.nav-label{color:#a1a6b2;text-transform:uppercase;letter-spacing:1.3px;margin:0 0 7px;padding:0 13px;font-size:9px;font-weight:700}.nav-item{color:#151923;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;width:100%;min-height:43px;margin:2px 0;padding:0 12px;font-size:14px;font-weight:700;display:flex}.nav-item.active{color:var(--blue);background:#edf2ff;font-weight:700}.side-icon{text-align:center;width:22px;font-size:18px}.badge{color:#fff;background:#ec4f5f;border-radius:10px;place-items:center;min-width:18px;height:18px;margin-left:auto;font-size:9px;display:grid}.sidebar-help{background:#f7f8fb;border-radius:9px;align-items:center;gap:10px;margin-top:auto;padding:12px;display:flex}.sidebar-help>span{color:#7c8495;border:1px solid #dfe3eb;border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.sidebar-help b,.sidebar-help small,.profile-card b,.profile-card small{font-size:10px;display:block}.sidebar-help small,.profile-card small{color:#9aa0ad;margin-top:3px;font-size:9px}.profile-card{border:0;border-top:1px solid var(--line);text-align:left;background:#fff;grid-template-columns:34px 1fr auto;align-items:center;gap:9px;margin-top:15px;padding:15px 7px 0;display:grid}.avatar,.mini-avatar{color:#3654aa;background:#e5eaff;border-radius:50%;place-items:center;font-weight:700;display:inline-grid}.avatar{width:34px;height:34px;font-size:10px}.profile-card i{color:#a1a6b0}main{min-width:0}header{border-bottom:1px solid var(--line);z-index:5;background:#fff;align-items:center;height:82px;padding:0 32px;display:flex;position:sticky;top:0}.header-title h1{letter-spacing:-.3px;margin:0 0 5px;font-size:20px}.header-title p{color:#8e94a2;margin:0;font-size:10px}.header-actions{align-items:center;gap:12px;margin-left:auto;display:flex}.logout-button{color:#626b7d;background:#fff;border:1px solid #dfe3eb;border-radius:8px;height:36px;padding:0 13px;font-size:9px;font-weight:700}.logout-button:hover{color:#bd3f4b;background:#fff5f6;border-color:#efc8cc}.icon-button,.lang{border:1px solid var(--line);background:#fff;border-radius:7px;height:34px}.icon-button{width:36px;position:relative}.icon-button span{background:#ef5260;border-radius:50%;width:6px;height:6px;position:absolute;top:7px;right:8px}.lang{color:#697083;padding:0 12px;font-size:10px}.lang b{color:#a5abb7;margin-left:10px}.mobile-brand{display:none}.content{max-width:1450px;margin:auto;padding:26px 32px 45px}.panel,.today-card{border:1px solid var(--line);background:#fff;border-radius:12px;box-shadow:0 2px 6px #34446a08}.today-card{overflow:hidden}.today-top{justify-content:space-between;align-items:center;padding:16px 22px 0;display:flex}.eyebrow{color:var(--blue);letter-spacing:1.5px;font-size:9px;font-weight:800}.status-pill{white-space:nowrap;border-radius:20px;justify-content:center;align-items:center;padding:5px 9px;font-size:9px;font-style:normal;display:inline-flex}.status-pill.green{color:#15875a;background:#e9f7f0}.status-pill.amber{color:#b1760e;background:#fff4dc}.status-pill.gray{color:#737a89;background:#f0f2f5}.status-pill.red{color:#d44752;background:#fff0f1}.status-pill.blue{color:#3156c3;background:#eaf0ff}.route-summary{grid-template-columns:1fr 1.7fr 1fr;align-items:end;max-width:690px;margin:12px auto 14px;padding:0 20px;display:grid}.route-summary div:not(.route-line){flex-direction:column;display:flex}.route-summary small{color:#8e95a4;font-size:9px}.route-summary strong{letter-spacing:-1px;font-size:34px;line-height:1.2}.route-summary span{color:#6f7688;font-size:10px}.align-right{text-align:right;align-items:flex-end}.route-line{justify-content:center;align-items:center;padding-bottom:17px;display:flex}.route-line i{background:#b8c4df;width:44px;height:1px}.route-line span,.route-line b{color:#3155be;background:#eaf0ff;border-radius:4px;place-items:center;width:30px;height:20px;font-size:7px;display:grid}.route-line b{background:var(--blue);color:#fff;border-radius:50%;width:24px;height:24px}.route-name{justify-content:center;align-items:center;gap:10px;padding:0 15px 20px;display:flex}.mark{color:#4664c0;background:#eef2ff;border-radius:4px;padding:5px 7px;font-size:8px;font-weight:800}.route-name b{font-size:13px}.route-name>span:last-child{color:#8d93a1;font-size:9px}.today-actions{border-top:1px solid var(--line);background:#fbfbfc;justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.deadline{align-items:center;gap:10px;display:flex}.alert-dot{color:#d4575f;background:#fff0f1;border-radius:50%;place-items:center;width:30px;height:30px;font-weight:800;display:grid}.deadline p{margin:0}.deadline b,.deadline small{font-size:10px;display:block}.deadline small{color:#9298a6;margin-top:4px;font-size:9px}.primary,.secondary,.review-btn,.delete-btn{border:0;border-radius:7px;padding:10px 16px;font-size:10px;font-weight:700}.primary{background:var(--blue);color:#fff;box-shadow:0 3px 8px #2754d733}.primary:hover{background:var(--blue-dark)}.primary span{margin-left:25px}.secondary{color:#656d7e;background:#fff;border:1px solid #dfe2e9}.delete-btn{color:#c63d49;background:#fff0f1;padding:7px 10px}.delete-btn:hover{background:#ffe2e5}.row-actions{align-items:center;gap:6px;display:flex}.grid-two{grid-template-columns:1.5fr 1fr;gap:18px;margin-top:18px;display:grid}.stack{gap:18px;display:grid}.panel-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:57px;padding:0 18px;display:flex}.panel-head h2{margin:0;font-size:12px}.panel-head p{color:#9399a7;margin:4px 0 0;font-size:9px}.panel-head button{color:var(--blue);background:0 0;border:0;font-size:9px}.schedule-row{border-bottom:1px solid #f0f1f4;grid-template-columns:45px 1fr auto;align-items:center;gap:12px;min-height:62px;padding:9px 18px;display:grid}.schedule-row:last-child{border:0}.date-box{border-right:1px solid var(--line)}.date-box b,.date-box span{display:block}.date-box b{font-size:16px}.date-box span{color:#969caa;font-size:8px}.schedule-info b,.schedule-info span,.schedule-time b{font-size:10px;display:block}.schedule-info span{color:#969ca9;margin-top:5px;font-size:9px}.schedule-time{text-align:right}.schedule-time b{margin-bottom:5px}.mini-panel{min-height:143px}.safety-score{align-items:center;gap:18px;padding:13px 22px;display:flex}.ring{text-align:center;border:7px solid #2cb97e;border-left-color:#d9f1e7;border-radius:50%;place-content:center;width:65px;height:65px;display:grid}.ring b{font-size:18px}.ring small{font-size:7px}.safety-score>div:last-child b,.safety-score>div:last-child span,.safety-score>div:last-child small{font-size:10px;display:block}.safety-score>div:last-child span{color:#747b8c;margin-top:6px;font-size:9px}.safety-score>div:last-child small{color:var(--green);margin-top:4px;font-size:8px}.notice{gap:12px;padding:16px 20px;display:flex}.notice-icon{width:28px;height:28px;color:var(--blue);background:#eef2ff;border-radius:7px;place-items:center;font-weight:800;display:grid}.notice b,.notice small{font-size:10px}.notice p{color:#6f7688;margin:5px 0;font-size:9px}.notice small{color:#a0a5b1;font-size:8px}.form-layout{grid-template-columns:1fr 1fr;gap:16px;max-width:920px;display:grid}.form-panel{padding-bottom:20px}.step-head{border-bottom:1px solid var(--line);grid-template-columns:32px 1fr auto;align-items:center;gap:10px;min-height:65px;padding:0 20px;display:grid}.step-head>span{width:30px;height:30px;color:var(--blue);background:#edf2ff;border-radius:50%;place-items:center;font-weight:800;display:grid}.step-head h2{margin:0;font-size:13px}.step-head p{color:#949aa7;margin:4px 0 0;font-size:9px}.step-head>b{color:#d65260;background:#fff0f1;border-radius:4px;padding:5px 7px;font-size:8px}.field-label{margin:18px 20px 7px;font-size:10px;font-weight:700;display:block}.measure{align-items:center;margin:0 20px;display:flex;position:relative}.measure input{border:1px solid #dfe2e9;border-radius:7px;outline:none;width:150px;height:42px;padding:0 12px;font-size:16px;font-weight:700}.measure input:focus,textarea:focus{border-color:var(--blue)}.measure span{color:#9298a5;margin-left:-42px;font-size:9px}.measure em{color:var(--green);margin-left:50px;font-size:8px;font-style:normal}.measure.short input{width:130px}.upload-zone{color:#737b8f;background:#fafbff;border:1px dashed #b9c3dc;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;width:calc(100% - 40px);min-height:108px;margin:18px 20px 0;display:flex}.upload-zone>span{width:30px;height:30px;color:var(--blue);background:#eaf0ff;border-radius:50%;place-items:center;font-size:17px;display:grid}.upload-zone b{margin-top:8px;font-size:10px}.upload-zone small{color:#a1a6b2;margin-top:4px;font-size:8px}.upload-zone.uploaded{background:#f2fbf7;border-color:#6dc69e}.upload-zone.uploaded>span{color:var(--green);background:#ddf5e9}.choices{grid-template-columns:repeat(3,1fr);gap:8px;padding:18px 20px 0;display:grid}.choices button{color:#697083;background:#fff;border:1px solid #dfe2e9;border-radius:7px;min-height:42px;font-size:10px}.choices button span{border:1px solid #ced2dc;border-radius:50%;place-items:center;width:16px;height:16px;margin-right:6px;display:inline-grid}.choices button.selected{border-color:var(--blue);color:var(--blue);background:#f5f7ff;font-weight:700}.choices button.selected span{color:#fff;border-color:var(--blue);background:var(--blue);font-size:8px}textarea{resize:vertical;border:1px solid #dfe2e9;border-radius:7px;outline:none;width:calc(100% - 40px);min-height:76px;margin:16px 20px 0;padding:11px;font-size:10px}.submit-bar{grid-column:1/-1;justify-content:flex-end;align-items:center;gap:9px;padding:15px 0;display:flex}.submit-bar p{color:#8c93a2;margin-right:auto;font-size:9px}.tabs{background:#e9ebf0;border-radius:8px;gap:4px;width:max-content;margin-bottom:17px;padding:3px;display:flex}.tabs button{color:#626b7d;background:0 0;border:0;border-radius:6px;padding:8px 18px;font-size:10px;font-weight:700}.tabs button.active{color:var(--blue);background:#fff;font-weight:800;box-shadow:0 1px 4px #c9ced8}.attendance-toolbar{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.month-picker{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:center;gap:8px;padding:6px 10px;display:flex}.month-picker span{color:#596174;font-size:8px;font-weight:700}.month-picker input{color:#30384b;background:0 0;border:0;outline:0;font-size:10px;font-weight:700}.calendar-panel{overflow:hidden}.calendar-head{justify-content:center;align-items:center;gap:35px;height:62px;display:flex}.calendar-head h2{color:#182039;font-size:14px;font-weight:800}.calendar-head button{background:#f1f3f6;border:0;border-radius:6px;width:29px;height:29px}.week-row,.calendar-grid{grid-template-columns:repeat(7,1fr);display:grid}.week-row{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fafbfc}.week-row b{color:#303747;text-align:center;padding:10px;font-size:9px;font-weight:800}.calendar-grid>div{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:92px;padding:8px;font-size:10px}.calendar-grid>div>span{color:#273044;font-weight:800}.calendar-grid .today>span{color:#fff;background:var(--blue);border-radius:50%;place-items:center;width:22px;height:22px;display:grid}.calendar-grid em{color:#123fae;background:#dce8ff;border-left:3px solid #2754d7;border-radius:3px;margin-top:5px;padding:5px 6px;font-size:8px;font-style:normal;font-weight:800;display:block}.calendar-grid em.work{color:#123fae;background:#dce8ff;border-color:#2754d7}.calendar-grid em.temp{color:#8b5900;background:#fff5df;border-color:#e2a431}.calendar-grid em.off{color:#b42332;background:#ffe4e7;border-color:#dc3f4e}.calendar-grid em.paid-leave{color:#5f2ca5;background:#eee6ff;border-color:#8b5dcc}.calendar-grid em.standby{color:#434b58;background:#eceef2;border-color:#8e96a3}.calendar-grid em small{margin-top:3px;font-weight:600;display:block}.calendar-legend{color:#41495a;gap:18px;padding:14px 18px;font-size:9px;font-weight:700;display:flex}.calendar-legend i{border-radius:2px;width:8px;height:8px;margin-right:5px;display:inline-block}.confirmed{background:var(--blue)}.temporary{background:#e3a532}.holiday{background:#dc3f4e}.request-grid{grid-template-columns:1fr 1fr 1.3fr;gap:16px;display:grid}.leave-deadline{background:#fffaf0;border-color:#f0d9aa;grid-column:1/-1;align-items:center;gap:15px;padding:14px 18px;display:flex}.leave-deadline b{color:#9a670b;font-size:11px}.leave-deadline span{color:#675b46;font-size:9px;font-weight:600}.leave-card{text-align:center;padding:28px}.big-icon{width:45px;height:45px;color:var(--blue);background:#edf2ff;border-radius:50%;place-items:center;margin:auto;font-size:20px;display:grid}.leave-card h2{font-size:13px}.leave-card p{color:#687184;font-size:10px}.leave-card p b{color:var(--ink);margin:6px;font-size:22px;display:block}.history-card{padding:20px}.history-card h2{font-size:13px}.history-card p{border-top:1px solid var(--line);grid-template-columns:1fr auto;margin:0;padding:14px 0;font-size:10px;display:grid}.history-card small{color:#687184;margin-top:4px}.salary-layout{gap:18px;max-width:840px;display:grid}.salary-summary{color:#fff;background:linear-gradient(120deg,#1c316a,#2857d8);justify-content:space-between;align-items:end;padding:28px;display:flex}.salary-summary span,.salary-summary small{opacity:.8;font-size:9px;display:block}.salary-summary h2{opacity:.9;margin:18px 0 4px;font-size:11px}.salary-summary strong{font-size:34px;font-weight:900;display:block}.salary-summary small{margin-top:8px}.salary-summary .primary{color:var(--blue);background:#fff}.payslip{overflow:hidden}.lock{color:#626b7d;letter-spacing:1px;font-size:8px}.pay-row,.pay-total{justify-content:space-between;padding:12px 22px;font-size:10px;display:flex}.pay-row b,.pay-total b,.received-total b,.cash-payment>strong{font-weight:900}.pay-row b{color:#182039;font-size:11px}.pay-row.divider{border-top:1px dashed #cfd3dc;margin-top:6px;padding-top:18px}.pay-total{color:var(--blue);background:#f1f4fc;margin-top:6px;padding:17px 22px;font-size:13px}.cash-payment{background:#fff9ec;border:1px solid #f0cf86;border-radius:9px;justify-content:space-between;align-items:center;margin:18px 22px 0;padding:15px 16px;display:flex}.cash-payment>div{align-items:center;gap:10px;display:flex}.cash-icon{color:#fff;background:#f3a91f;border-radius:50%;place-items:center;width:31px;height:31px;font-weight:800;display:grid}.cash-payment p{margin:0}.cash-payment p b,.cash-payment p small{font-size:10px;display:block}.cash-payment p small{color:#8b621b;margin-top:4px;font-size:8px}.cash-payment>strong{color:#875600;font-size:16px}.received-total{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin-top:10px;padding:17px 22px;font-size:12px;display:flex}.received-total span small{color:#70788a;margin-top:4px;font-size:8px;display:block}.received-total b{color:var(--ink);font-size:17px}.cash-value{color:#8b5900}.tax-note{background:#fff4dc;border-radius:4px;padding:3px 5px;color:#8b621b!important;margin-left:5px!important;display:inline!important}.salary-history-selector{justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex}.salary-history-selector>div b,.salary-history-selector>div small{display:block}.salary-history-selector>div b{font-size:12px}.salary-history-selector>div small{color:#8b92a0;margin-top:4px;font-size:8px}.salary-history-selector label>span{color:#818897;margin-bottom:5px;font-size:8px;display:block}.salary-history-selector select,.month-select select{color:#3f485b;background:#fff;border:1px solid #dfe2e9;border-radius:7px;min-width:160px;height:35px;padding:0 9px;font-size:10px}.payroll-filters .month-select{padding:7px 9px}.payroll-filters .month-select select{border:0;height:24px;padding:0}.metrics{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px;display:grid}.metric{align-items:center;gap:13px;min-height:92px;padding:18px;display:flex}.metric-icon{color:#89909d;background:#eef0f4;border-radius:9px;place-items:center;width:38px;height:38px;display:grid}.metric-icon.blue{color:#3158ca;background:#eaf0ff}.metric-icon.green{color:#17905e;background:#e8f7f0}.metric-icon.amber{color:#c68209;background:#fff4dc}.metric-icon.violet{color:#8059c5;background:#f1ecfc}.metric p{color:#888f9e;margin:0;font-size:9px}.metric b{margin:5px 8px 0 0;font-size:20px;display:inline-block}.metric small{color:#89909d;font-size:8px}.manager-grid{grid-template-columns:1.8fr 1fr;gap:18px;margin-bottom:18px;display:grid}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:9px}th{text-align:left;color:#969ca9;letter-spacing:.4px;background:#fafbfc;padding:10px 14px;font-size:8px}td{color:#5f6678;white-space:nowrap;border-top:1px solid #f0f1f4;padding:12px 14px}.mini-avatar{vertical-align:middle;width:26px;height:26px;margin-right:8px;font-size:8px}td small{color:#a0a6b2;margin:3px 0 0 36px;font-size:8px;display:block}.activity{padding-bottom:7px}.activity-item{gap:11px;padding:12px 18px;display:flex}.activity-item i{background:#38b47e;border-radius:50%;width:8px;height:8px;margin-top:3px;box-shadow:0 0 0 4px #e9f7f0}.activity-item i.warn{background:#e59c25;box-shadow:0 0 0 4px #fff3dc}.activity-item p{margin:0}.activity-item b,.activity-item small{font-size:9px;display:block}.activity-item small{color:#9ba1ae;margin-top:4px;font-size:8px}.operation-panel{overflow:hidden}.search{color:#999fab;border:1px solid #dfe2e9;border-radius:7px;align-items:center;height:32px;padding:0 9px;display:flex}.search input{border:0;outline:0;width:170px;margin-left:6px;font-size:9px}.filter-bar,.action-strip{align-items:center;gap:10px;margin-bottom:17px;display:flex}.filter-bar{border-bottom:1px solid var(--line);margin:0;padding:15px}.filter-bar .search{margin-right:auto}.photo-btn{color:var(--blue);background:#edf2ff;border:0;border-radius:4px;padding:4px 6px;font-size:8px}.danger-text{color:#d34551}.review-btn{color:var(--blue);background:#eef2ff;padding:7px 10px}.action-strip .primary{margin-left:auto}.month-select{border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px 14px}.month-select small,.month-select b{font-size:8px;display:block}.month-select b{margin-top:3px;font-size:11px}.monthly-roster{overflow:auto}.monthly-roster .panel-head{justify-content:center;gap:30px;position:sticky;left:0}.monthly-roster .panel-head button{color:#666;background:#f1f3f6;border-radius:6px;width:28px;height:28px}.monthly-roster-grid{min-width:max-content;display:grid}.roster-name,.roster-day{border-right:1px solid var(--line);border-top:1px solid var(--line);align-items:center;min-height:66px;padding:7px;font-size:9px;display:flex}.roster-day{justify-content:center}.monthly-roster-grid .head{color:#8c93a1;background:#fafbfc;justify-content:center;min-height:42px;font-weight:700}.monthly-roster-grid .head small{text-align:center;margin:3px 0 0;display:block}.roster-name.head{justify-content:flex-start}.roster-entry{color:#3156bd;background:#eaf0ff;border:0;border-radius:5px;width:100%;min-height:46px;padding:5px;font-size:8px;font-weight:700}.roster-entry small{margin-top:3px;font-weight:400;display:block}.roster-entry.temp{color:#a66b05;background:#fff4dd}.roster-entry.off{color:#7d8491;background:#f1f2f5}.roster-entry:not(.temp):not(.off):has(small){border-left:2px solid var(--blue)}.empty-row{color:#8f96a3;padding:24px;font-size:10px}.kebab{color:#9298a5;background:0 0;border:0}.toast{color:#fff;z-index:30;background:#19213a;border-radius:9px;padding:13px 18px;font-size:10px;animation:.25s slideIn;position:fixed;bottom:24px;right:26px;box-shadow:0 10px 30px #18203955}.toast span{background:#33af79;border-radius:50%;place-items:center;width:19px;height:19px;margin-right:9px;display:inline-grid}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}}.leave-rule{color:#767e8f;background:#f4f6fa;border-radius:6px;min-height:30px;margin:9px 0 14px;padding:7px 8px;font-size:8px;line-height:1.5}.disabled-button{cursor:not-allowed;box-shadow:none!important;background:#afb5c1!important}.expense-layout{gap:16px;display:grid}.approval-flow{justify-content:center;align-items:center;gap:18px;padding:17px 20px;display:flex}.approval-flow>i{color:#bcc2ce;font-style:normal}.flow-step{align-items:center;gap:9px;min-width:135px;display:flex}.flow-step>span{color:#858c9a;background:#eef0f4;border-radius:50%;place-items:center;width:28px;height:28px;font-size:9px;font-weight:800;display:grid}.flow-step b,.flow-step small{font-size:10px;display:block}.flow-step small{color:#979daa;margin-top:3px;font-size:8px}.flow-step.active>span{background:var(--blue);color:#fff;box-shadow:0 0 0 5px #eaf0ff}.flow-step.active b{color:var(--blue)}.expense-form{max-width:920px;overflow:hidden}.expense-fields{grid-template-columns:repeat(3,1fr);gap:15px;padding:20px;display:grid}.expense-fields label>span{margin-bottom:7px;font-size:9px;font-weight:700;display:block}.expense-fields input,.expense-fields select{color:#4e5669;background:#fff;border:1px solid #dfe2e9;border-radius:7px;outline:none;width:100%;height:40px;padding:0 10px;font-size:10px}.expense-fields .wide{grid-column:1/-1}.expense-fields textarea{width:100%;min-height:65px;margin:0}.yen-input{position:relative}.yen-input b{font-size:11px;position:absolute;top:12px;left:11px}.yen-input input{padding-left:27px}.receipt-upload{color:#6f7789;background:#fafbfe;border:1px dashed #bdc6d9;border-radius:8px;justify-content:center;align-items:center;gap:9px;width:calc(100% - 40px);min-height:78px;margin:0 20px 20px;display:flex}.receipt-upload>span{width:27px;height:27px;color:var(--blue);background:#eaf0ff;border-radius:50%;place-items:center;display:grid}.receipt-upload b{font-size:10px}.receipt-upload small{color:#9da3af;font-size:8px}.receipt-upload.done{background:#f2fbf7;border-color:#6ec69f}.expense-submit{border-top:1px solid var(--line);background:#fafbfc;align-items:center;gap:9px;padding:14px 20px;display:flex}.expense-submit p{color:#8f96a4;margin:0 auto 0 0;font-size:9px}.expense-history{overflow:hidden}.expense-metrics{margin:0}.muted-action{opacity:.55;cursor:not-allowed}.expense-category{align-items:center;gap:8px;padding:14px 18px;display:flex}.expense-category>div{margin-right:auto}.expense-category b,.expense-category small{font-size:10px;display:block}.expense-category small{color:#9299a7;margin-top:4px;font-size:8px}.expense-category>span{color:#656d7d;background:#f1f3f7;border-radius:5px;padding:6px 9px;font-size:8px}.permission-hierarchy{justify-content:center;align-items:center;gap:15px;margin-bottom:17px;padding:18px;display:flex}.permission-hierarchy>i{color:#aeb5c2;font-size:20px}.hierarchy-item{border:1px solid var(--line);background:#fafbfc;border-radius:8px;align-items:center;gap:9px;min-width:170px;padding:11px 13px;display:flex}.hierarchy-item>span{color:#526078;background:#e9edf5;border-radius:7px;place-items:center;width:28px;height:28px;font-size:8px;font-weight:800;display:grid}.hierarchy-item b,.hierarchy-item small{font-size:10px;display:block}.hierarchy-item small{color:#939aa8;margin-top:3px;font-size:8px}.hierarchy-item.president{background:#fffbef;border-color:#d3c18f}.hierarchy-item.president>span{color:#fff;background:#d8b75a}.hierarchy-item.manager{background:#f5f8ff;border-color:#b8c8f2}.hierarchy-item.manager>span{background:var(--blue);color:#fff}.hierarchy-branch{gap:7px;display:grid}@media (width<=1050px){.grid-two,.manager-grid{grid-template-columns:1fr}.metrics,.request-grid{grid-template-columns:1fr 1fr}.history-card{grid-column:1/-1}.form-layout{grid-template-columns:1fr}.approval-flow,.permission-hierarchy{justify-content:flex-start;overflow:auto}}@media (width<=760px){.app-shell{display:block}.sidebar{border:0;border-top:1px solid var(--line);z-index:20;width:100%;height:65px;padding:5px 8px;display:block;position:fixed;inset:auto 0 0}.brand,.role-switch,.nav-label,.sidebar-help,.profile-card{display:none}.sidebar nav{justify-content:flex-start;display:flex;overflow:auto}.nav-item{color:#151923;flex-direction:column;flex-shrink:0;justify-content:center;gap:2px;width:auto;min-width:64px;height:54px;padding:3px;font-size:9px;font-weight:800;display:flex}.side-icon{font-size:17px}.nav-item .badge{margin:-31px 0 0 27px;position:absolute}header{height:68px;padding:0 16px}.mobile-brand{background:0 0;border:0;margin-right:10px;padding:0;display:block}.mobile-brand .brand-logo{border-radius:9px;flex-basis:38px;width:38px;height:38px}.header-title h1{font-size:15px}.header-title p{font-size:8px}.lang{display:none}.content{padding:15px 12px 86px}.today-top{padding:14px 14px 0}.route-summary{grid-template-columns:1fr 1fr;gap:10px;margin:15px 0}.route-line{display:none}.route-summary strong{font-size:27px}.route-name{flex-wrap:wrap;justify-content:flex-start;padding:0 14px 16px}.route-name>span:last-child{width:100%;margin-left:0}.today-actions{flex-direction:column;align-items:stretch;gap:12px}.today-actions .primary{width:100%}.grid-two{gap:12px;margin-top:12px}.schedule-row{padding:8px 12px}.schedule-time b{font-size:8px}.metrics{grid-template-columns:1fr 1fr;gap:8px}.metric{min-height:80px;padding:12px}.metric b{font-size:16px}.form-layout{gap:12px}.submit-bar{border-top:1px solid var(--line);z-index:4;background:#fff;flex-wrap:wrap;padding:10px;position:sticky;bottom:67px}.submit-bar p{width:100%;margin:0}.calendar-grid>div{min-height:65px;padding:4px}.calendar-grid em{padding:3px;font-size:6px}.request-grid{grid-template-columns:1fr}.history-card{grid-column:auto}.salary-summary{flex-direction:column;align-items:flex-start;gap:20px}.salary-history-selector{flex-direction:column;align-items:stretch}.salary-history-selector select{width:100%}.manager-grid{gap:12px}.action-strip{flex-direction:column;align-items:stretch}.action-strip .primary{margin:0}.tabs{max-width:100%;overflow:auto}.operation-panel .panel-head{flex-direction:column;align-items:flex-start;padding:12px}.filter-bar{overflow:auto}.choices{gap:5px;padding:15px 12px 0}.choices button{font-size:8px}.measure{margin:0 12px}.field-label{margin-left:12px}.upload-zone,textarea{width:calc(100% - 24px);margin-left:12px}.step-head{padding:0 12px}.expense-fields{grid-template-columns:1fr;padding:14px}.expense-fields .wide{grid-column:auto}.expense-submit{flex-direction:column;align-items:stretch}.receipt-upload{flex-direction:column;align-items:flex-start;padding:13px}.approval-flow{gap:10px}.flow-step{min-width:120px}.expense-category{flex-wrap:wrap;align-items:flex-start}.expense-category>div{width:100%}}.account-form{margin-bottom:17px;overflow:hidden}.access-screen{background:linear-gradient(145deg,#eef3ff,#f7f8fb 55%,#fff8e7);place-items:center;min-height:100vh;padding:24px;display:grid}.access-card{text-align:center;border:1px solid var(--line);background:#fff;border-radius:18px;width:min(440px,100%);padding:36px;box-shadow:0 18px 60px #1d32651b}.access-logo{aspect-ratio:504/398;background:#f8dfe1;border:1px solid #efdadd;border-radius:14px;width:190px;margin:0 auto 18px;display:block;overflow:hidden;box-shadow:0 8px 24px #ad66731a}.access-logo img{object-fit:contain;width:100%;height:100%;display:block}.access-card h1{margin:10px 0;font-size:22px}.access-card p:not(.eyebrow){color:#5f687b;font-size:12px}.access-card small{color:#9299a8;margin:16px 0 22px;font-size:10px;display:block}.access-card a{color:#fff;background:var(--blue);border-radius:8px;padding:11px 18px;font-size:11px;font-weight:700;text-decoration:none;display:inline-block}.auth-card{text-align:left;width:min(460px,100%);padding:34px 40px}.auth-card .access-logo,.auth-card>.eyebrow,.auth-card>h1,.auth-card>p{text-align:center}.auth-form{gap:15px;margin-top:22px;display:grid}.auth-form label>span{color:#4f586b;margin-bottom:7px;font-size:10px;font-weight:700;display:block}.auth-form input:not([type=hidden]){color:#26304a;background:#fff;border:1px solid #dfe3eb;border-radius:8px;outline:none;width:100%;height:44px;padding:0 12px}.auth-form input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2754d714}.auth-form .primary{height:44px;margin-top:4px}.auth-card .auth-link{color:var(--blue);text-align:center;background:0 0;margin:17px auto 0;padding:0;font-size:10px;display:block}.auth-card>small{text-align:center;margin:16px 0 0;line-height:1.6}.auth-message{border-radius:7px;margin:16px 0 0;padding:10px 12px;font-size:10px;line-height:1.5}.auth-message.error{color:#b73f4a;background:#fff0f1;border:1px solid #f5d7da}.auth-message.success{color:#14754f;background:#eaf8f1;border:1px solid #cfeedd}.file-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.upload-zone,.receipt-upload{cursor:pointer}.file-link,.photo-btn{color:var(--blue);font-size:9px;font-weight:700;text-decoration:none}.leave-date{color:#30384b;appearance:auto;background:#fff;border:1px solid #dfe2e9;border-radius:7px;width:100%;min-width:0;height:44px;margin:0 0 10px;padding:0 9px;font-size:16px;font-weight:700;display:block}.leave-date::-webkit-date-and-time-value{text-align:left}.empty-state{text-align:center;padding:42px}.empty-state h2{margin:0 0 8px;font-size:16px}.empty-state p{color:#8a91a0;font-size:10px}.leave-approval-list{margin-bottom:16px;overflow:hidden}.approval-row{border-top:1px solid var(--line);align-items:center;gap:8px;padding:12px 18px;display:flex}.approval-row>div{margin-right:auto}.approval-row b,.approval-row small{font-size:10px;display:block}.approval-row small{color:#9299a7;margin-top:4px;font-size:8px}.alcohol-time-field{max-width:260px;padding:14px 20px 0}.alcohol-time-field label>span{margin-bottom:7px;font-size:9px;font-weight:700;display:block}.alcohol-time-field input{color:#4e5669;background:#fff;border:1px solid #dfe2e9;border-radius:7px;width:100%;height:40px;padding:0 10px;font-size:10px}.date-column{min-width:82px;color:var(--blue);background:#f4f7ff}.future-month-tabs{border:1px solid var(--line);background:#fff;border-radius:10px;gap:6px;padding:4px;display:flex;overflow:auto}.future-month-tabs button{color:#697185;white-space:nowrap;background:0 0;border:0;border-radius:7px;min-height:34px;padding:0 12px;font-size:9px;font-weight:700}.future-month-tabs button.active{background:var(--blue);color:#fff;box-shadow:0 4px 12px #2754d72b}.manager-calendar{overflow:hidden}.manager-calendar-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:14px;padding:16px 18px;display:flex}.manager-calendar-toolbar label>span{color:#3f4859;margin-bottom:6px;font-size:10px;font-weight:900;display:block}.manager-calendar-toolbar select{color:#182039;background:#fff;border:2px solid #cbd2df;border-radius:8px;min-width:220px;height:42px;padding:0 11px;font-size:12px;font-weight:800}.manager-calendar .calendar-head{justify-content:space-between;padding:0 18px}.manager-calendar .calendar-head h2{font-size:17px}.manager-calendar .calendar-head small{color:#4f5869;font-size:10px;font-weight:700}.manager-calendar .week-row b{color:#182039;padding:12px 8px;font-size:11px;font-weight:900}.manager-calendar-grid>div{background:#fff;min-height:108px;padding:9px}.manager-calendar-grid>div:nth-child(7n),.manager-calendar-grid>div:nth-child(7n-1){background:#fffafb}.manager-calendar-grid>div>span{color:#101728;font-size:12px;font-weight:900}.calendar-entry{color:#0b3698;background:#cfe0ff;border:1px solid #b7c8f5;border-left:5px solid #1d4ed8;border-radius:8px;width:100%;min-height:66px;margin-top:6px;padding:8px 6px;font-size:10px;font-weight:900;line-height:1.4;box-shadow:0 2px 5px #18203912}.calendar-entry small{color:inherit;margin-top:5px;font-size:9px;font-weight:800;display:block}.calendar-entry.work{color:#0b3698;background:#cfe0ff;border-color:#9bb8ff #9bb8ff #9bb8ff #1d4ed8}.calendar-entry.temp{color:#704600;background:#ffedb8;border-color:#e7bd4a #e7bd4a #e7bd4a #d18a00}.calendar-entry.off{color:#9f1827;background:#ffd8dd;border-color:#f19aa4 #f19aa4 #f19aa4 #d62f40}.calendar-entry.paid-leave{color:#512091;background:#e9dcff;border-color:#b391e5 #b391e5 #b391e5 #7040b5}.calendar-entry.standby{color:#343b46;background:#dfe2e7;border-color:#aeb5c0 #aeb5c0 #aeb5c0 #747d8b}.manager-calendar-legend{border-top:1px solid var(--line);background:#fafbfc;font-size:10px}.manager-calendar-legend i{vertical-align:-2px;border:1px solid #0000;width:12px;height:12px}.legend-work{background:#cfe0ff;border-color:#1d4ed8!important}.legend-temp{background:#ffedb8;border-color:#d18a00!important}.legend-off{background:#ffd8dd;border-color:#d62f40!important}.legend-paid{background:#e9dcff;border-color:#7040b5!important}.legend-standby{background:#dfe2e7;border-color:#747d8b!important}.manager-expense-stack{gap:28px;display:grid}.header-actions{position:relative}.notification-panel{border:1px solid var(--line);z-index:30;background:#fff;border-radius:12px;width:290px;position:absolute;top:44px;right:0;overflow:hidden;box-shadow:0 16px 45px #17254724}.notification-head{border-bottom:1px solid var(--line);justify-content:space-between;padding:14px 16px;display:flex}.notification-head b{font-size:12px}.notification-head small{color:#8f96a5;font-size:9px}.notification-item{border-bottom:1px solid #f0f1f4;gap:10px;padding:13px 16px;display:flex}.notification-item i{background:var(--blue);border-radius:50%;width:8px;height:8px;margin-top:3px;box-shadow:0 0 0 4px #eaf0ff}.notification-item b,.notification-item small{font-size:10px;display:block}.notification-item small{color:#9299a7;margin-top:4px;font-size:8px}.notification-panel>p{text-align:center;color:#9299a7;margin:0;padding:24px;font-size:10px}.quick-form{margin-bottom:17px;overflow:hidden}.audit-panel{margin-top:17px}.data-center{gap:17px;display:grid}.data-hero{background:linear-gradient(130deg,#fff,#f4f7ff);justify-content:space-between;align-items:center;padding:24px;display:flex}.data-hero h2{margin:7px 0 6px;font-size:19px}.data-hero p{color:#7e8697;margin:0;font-size:10px}.data-hero label span{color:#777f91;margin-bottom:6px;font-size:9px;display:block}.data-hero input{color:#4d566b;background:#fff;border:1px solid #dfe3ec;border-radius:8px;height:38px;padding:0 10px}.data-grid{grid-template-columns:1.35fr 1fr;gap:17px;display:grid}.export-panel,.readiness-panel{overflow:hidden}.export-row{border-top:1px solid #f0f1f4;align-items:center;gap:15px;padding:14px 18px;display:flex}.export-row>div{margin-right:auto}.export-row b,.export-row small{font-size:10px;display:block}.export-row small{color:#9299a7;margin-top:4px;font-size:8px}.export-row a{white-space:nowrap;text-decoration:none}.check-row{border-top:1px solid #f0f1f4;align-items:center;gap:11px;padding:12px 17px;display:flex}.check-row>span{border-radius:50%;place-items:center;width:25px;height:25px;font-size:10px;font-weight:800;display:grid}.check-row>span.ok{color:#16865b;background:#e8f7f0}.check-row>span.warn{color:#b6780c;background:#fff3d8}.check-row b,.check-row small{font-size:9px;display:block}.check-row small{color:#959ba8;margin-top:3px;font-size:8px}.security-note{background:#f7f9ff;border-color:#d9e2f7;align-items:flex-start;gap:13px;padding:17px 20px;display:flex}.security-note>span{width:30px;height:30px;color:var(--blue);background:#e7edff;border-radius:50%;place-items:center;display:grid}.security-note b{font-size:10px}.security-note p{color:#727b8e;margin:5px 0 0;font-size:9px;line-height:1.6}.report-meta-panel{grid-column:1/-1;overflow:hidden}.report-meta-fields{grid-template-columns:1fr 1fr;gap:15px;padding:20px;display:grid}.report-meta-fields label>span{margin-bottom:7px;font-size:9px;font-weight:700;display:block}.report-meta-fields label.wide{grid-column:1/-1}.report-meta-fields input{color:#4e5669;background:#fff;border:1px solid #dfe2e9;border-radius:7px;outline:none;width:100%;height:42px;padding:0 11px;font-size:11px}.report-meta-fields input:focus{border-color:var(--blue)}.report-meta-fields input[readonly]{color:#697185;background:#f5f7fa}.report-note{white-space:normal;max-width:190px;line-height:1.45;color:#71798a!important;margin:5px 0 0!important}@media (width<=900px){.data-grid{grid-template-columns:1fr}}@media (width<=760px){.role-indicator{display:none}.report-meta-fields{grid-template-columns:1fr;padding:14px}.report-meta-fields label.wide{grid-column:auto}.attendance-toolbar{flex-direction:column}.attendance-toolbar .tabs{margin-bottom:0}.attendance-toolbar .future-month-tabs{width:100%}.future-month-tabs button{flex:1;padding:0 8px}.month-picker{justify-content:space-between;width:100%}.leave-deadline{flex-direction:column;align-items:flex-start;gap:5px}.attendance-actions .month-picker{width:100%}.monthly-roster .panel-head{position:static}.manager-calendar-toolbar{flex-direction:column;align-items:stretch;padding:12px}.manager-calendar-toolbar select{width:100%;min-width:0;font-size:14px}.manager-calendar-toolbar .future-month-tabs{width:100%}.manager-calendar-grid>div{min-height:84px;padding:5px 3px}.manager-calendar-grid>div>span{font-size:11px}.calendar-entry{border-left-width:4px;min-height:52px;padding:6px 3px;font-size:9px;line-height:1.3}.calendar-entry small{font-size:8px}.manager-calendar .calendar-head{flex-direction:column;align-items:flex-start;gap:4px;height:auto;padding:15px 12px}.manager-calendar .calendar-head h2{font-size:15px}.manager-calendar .week-row b{padding:9px 3px;font-size:10px}.manager-calendar-legend{white-space:nowrap;gap:10px;padding:12px;overflow:auto}.calendar-grid em b{margin-bottom:2px;font-size:6px;display:block}}.batch-expense-list{padding:16px 20px;overflow:auto}.batch-expense-head,.batch-expense-row{grid-template-columns:42px 130px 130px 120px minmax(220px,1fr) 130px 62px;align-items:center;gap:8px;min-width:940px;display:grid}.batch-expense-head{color:#5f6879;padding:0 8px 8px;font-size:9px;font-weight:800}.batch-expense-row{border-top:1px solid #edf0f4;padding:8px}.batch-expense-row>b{text-align:center;color:var(--blue);font-size:11px}.batch-expense-row input:not(.file-input),.batch-expense-row select{color:#283147;background:#fff;border:1px solid #d7dce6;border-radius:7px;width:100%;height:38px;padding:0 9px;font-size:10px}.batch-expense-row .yen-input b{top:11px}.row-receipt{color:#3158ca;cursor:pointer;background:#f6f9ff;border:1px dashed #b9c7e8;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;height:42px;padding:3px 6px;display:flex;overflow:hidden}.row-receipt.done{color:#18764f;background:#eefaf4;border-style:solid;border-color:#9bd4ba}.row-receipt span{font-size:10px;font-weight:800}.row-receipt small{text-overflow:ellipsis;white-space:nowrap;max-width:115px;font-size:8px;display:block;overflow:hidden}.add-expense-row{margin:12px 8px 0}.batch-expense-notes{padding:0 20px 15px}.batch-expense-notes span{margin-bottom:7px;font-size:9px;font-weight:800;display:block}.batch-expense-notes textarea{width:100%;margin:0}.expense-month-head{gap:12px;min-height:72px}.expense-month-head>div:first-child{margin-right:auto}.expense-month-head .month-select{margin:0}.expense-month-head .month-select input{color:#26304a;background:0 0;border:0;font-size:11px;font-weight:700}.export-link{white-space:nowrap;text-decoration:none;display:inline-block}.expense-form{max-width:none}@media (width<=760px){.batch-expense-list{padding:12px}.batch-expense-head,.batch-expense-row{grid-template-columns:34px 125px 115px 105px 200px 125px 58px;min-width:820px}.batch-expense-row input:not(.file-input),.batch-expense-row select{font-size:16px}.expense-month-head{flex-direction:column;align-items:stretch;padding:12px}.expense-month-head .month-select,.expense-month-head .export-link{width:100%}.expense-month-head .export-link{text-align:center}.batch-expense-notes{padding:0 12px 12px}}.announcement-board{margin-bottom:17px;overflow:hidden}.announcement-form{background:#fafbfe;border-top:1px solid #edf0f5;gap:9px;padding:15px 18px;display:grid}.announcement-form input,.announcement-form textarea,.expense-export-controls input,.expense-export-controls select{color:#283147;background:#fff;border:1px solid #d9dee8;border-radius:8px;font-size:10px}.announcement-form input{height:39px;padding:0 11px}.announcement-form textarea{resize:vertical;min-height:90px;padding:10px 11px}.announcement-form>div{justify-content:flex-end;gap:8px;display:flex}.announcement-list article{border-top:1px solid #edf0f5;gap:12px;padding:14px 18px;display:flex}.announcement-list article>span{color:#3158ca;background:#edf2ff;border-radius:12px;height:23px;padding:0 8px;font-size:8px;font-weight:800;line-height:23px}.announcement-list h3{margin:0 0 5px;font-size:11px}.announcement-list p{color:#596275;white-space:pre-wrap;margin:0 0 6px;font-size:9px;line-height:1.55}.announcement-list small{color:#959cab;font-size:8px}.expense-export-head{gap:12px}.expense-export-controls{align-items:center;gap:8px;display:flex}.expense-export-controls input,.expense-export-controls select{height:36px;padding:0 9px}.expense-export-controls .export-link{line-height:36px}@media (width<=760px){.announcement-board .panel-head,.expense-export-head{flex-direction:column;align-items:stretch}.announcement-board .panel-head .primary{width:100%}.expense-export-controls{grid-template-columns:1fr 1.5fr;display:grid}.expense-export-controls .export-link{text-align:center;grid-column:1/-1}.announcement-form input,.announcement-form textarea,.expense-export-controls input,.expense-export-controls select{font-size:16px}}.affiliation-select{color:#2c3549;background:#fff;border:1px solid #d8deea;border-radius:7px;min-width:86px;height:34px;padding:0 8px;font-size:9px;font-weight:700}@media (width<=760px){input:not(.file-input),select,textarea{font-size:16px!important}.search input{min-width:170px}.table-wrap{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;max-width:100%}}body{font-size:12px;line-height:1.55}.brand b{font-size:16px}.brand small{font-size:10px}.role-indicator span{font-size:12px}.role-indicator small,.nav-label{font-size:10px}.header-title h1{font-size:22px}.header-title p{font-size:12px}.panel-head h2{font-size:14px}.panel-head p,.panel-head button{font-size:11px}.primary,.secondary,.review-btn,.delete-btn{font-size:12px}.logout-button,.lang,.status-pill,.eyebrow,.metric p,.metric small{font-size:11px}.metric b{font-size:20px}.field-label,.expense-fields label>span,.report-meta-fields label>span,.alcohol-time-field label>span,.batch-expense-notes span{font-size:12px}.expense-fields input,.expense-fields select,.report-meta-fields input,.alcohol-time-field input,.batch-expense-row input,.batch-expense-row select,.month-picker input{font-size:13px}textarea{font-size:13px;line-height:1.6}.choices button,.tabs button,.upload-zone b,.receipt-upload b{font-size:12px}.upload-zone small,.receipt-upload small,.submit-bar p,.expense-submit p{font-size:11px}table th{font-size:11px;line-height:1.4}table td{font-size:12px;line-height:1.5}table td small{font-size:10px;line-height:1.45}.file-link,.photo-btn{font-size:11px}.calendar-head h2{font-size:16px}.week-row b{font-size:11px}.calendar-grid>div{font-size:12px}.calendar-grid em{font-size:10px;line-height:1.4}.calendar-legend{font-size:11px}.leave-card h2,.history-card h2{font-size:15px}.leave-card p,.history-card p{font-size:12px}.approval-row b,.approval-row small,.expense-category b,.expense-category small{font-size:11px}.access-card p:not(.eyebrow){font-size:14px}.access-card small,.auth-form label>span,.auth-card .auth-link,.auth-message,.notification-item b,.notification-panel>p{font-size:12px}.notification-item small{font-size:10px}.sidebar-help b,.sidebar-help small,.profile-card b,.profile-card small{font-size:11px}.search input{font-size:12px}.step-head p,.step-head>b,.measure span,.measure em,.future-month-tabs button,.manager-calendar-toolbar label>span,.manager-calendar .calendar-head small,.calendar-entry{font-size:11px}.calendar-entry small{font-size:10px}.manager-calendar-legend{font-size:11px}.flow-step b{font-size:12px}.flow-step small{font-size:10px}.batch-expense-head,.salary-history-selector>div small,.salary-history-selector label>span,.month-select small{font-size:11px}.salary-history-selector select,.month-select select{font-size:13px}.receipt-upload small{font-size:11px}@media (width<=760px){body{font-size:14px;line-height:1.6}.header-title h1{font-size:18px}.header-title p{font-size:11px}.panel-head h2{font-size:15px}.panel-head p,.panel-head button{font-size:12px}.primary,.secondary,.review-btn,.delete-btn{font-size:13px}.logout-button,.status-pill{font-size:11px}table th{font-size:12px}table td{font-size:13px}table td small{font-size:11px}.field-label,.expense-fields label>span,.report-meta-fields label>span,.alcohol-time-field label>span,.batch-expense-notes span,.choices button,.tabs button,.upload-zone b,.receipt-upload b{font-size:13px}.upload-zone small,.receipt-upload small{font-size:11px}.submit-bar p,.expense-submit p,.calendar-grid>div{font-size:12px}.calendar-grid em,.calendar-grid em b{font-size:9px}.calendar-entry,.calendar-legend,.manager-calendar-legend{font-size:11px}.metric p,.metric small{font-size:12px}.metric b{font-size:18px}.auth-form label>span,.auth-card .auth-link,.auth-message{font-size:13px}.nav-item,.step-head p,.step-head>b,.measure span,.measure em,.future-month-tabs button,.calendar-entry{font-size:11px}.calendar-entry small{font-size:10px}.flow-step b{font-size:12px}.flow-step small{font-size:10px}.batch-expense-head,.salary-history-selector>div small,.salary-history-selector label>span,.month-select small{font-size:11px}}@media print{.sidebar,header,.salary-summary button{display:none}.app-shell{display:block}.content{padding:0}.salary-layout{max-width:none}.panel{box-shadow:none}}.dispatch-page{gap:16px;display:grid}.dispatch-notice{color:#59667e;background:#f6f9ff;border:1px solid #d7e2ff;border-radius:10px;align-items:center;gap:14px;padding:13px 16px;display:flex}.dispatch-notice b{color:#29488d;white-space:nowrap}.dispatch-toolbar{align-items:flex-end;gap:10px;display:flex}.dispatch-toolbar label{margin-right:auto}.dispatch-toolbar label span{color:#4e586b;margin-bottom:6px;font-size:11px;font-weight:800;display:block}.dispatch-toolbar input{color:#202a40;background:#fff;border:1px solid #d9dfea;border-radius:8px;height:40px;padding:0 11px;font-weight:800}.dispatch-master{overflow:hidden}.master-chips{flex-wrap:wrap;gap:9px;padding:15px 18px;display:flex}.master-chips>span{background:#fafbfc;border:1px solid #e0e5ed;border-radius:9px;align-items:center;gap:9px;padding:9px 10px;display:flex}.master-chips b,.master-chips small{font-size:11px}.master-chips small{color:#7c8596}.master-chips button{color:#c04451;cursor:pointer;background:0 0;border:0;font-size:10px;font-weight:800}.dispatch-board{overflow:hidden}.dispatch-table{min-width:980px;overflow:auto}.dispatch-head,.dispatch-row{grid-template-columns:105px repeat(3,minmax(235px,1fr)) 85px;display:grid}.dispatch-head{text-align:center;border-bottom:1px solid var(--line);background:#fafbfc;align-items:center;height:46px}.dispatch-head>b{border-right:1px solid var(--line);place-items:center;height:100%;font-size:12px;display:grid}.dispatch-head .morning{color:#3158bd;background:#f4f7ff}.dispatch-head .afternoon{color:#147c57;background:#f1faf6}.dispatch-head .night{color:#7040a7;background:#faf5ff}.dispatch-row{border-bottom:1px solid var(--line);min-height:154px}.dispatch-row:last-child{border-bottom:0}.dispatch-row>div{border-right:1px solid var(--line)}.dispatch-vehicle{flex-direction:column;justify-content:center;padding:12px;display:flex}.dispatch-vehicle b{color:#27417d;font-size:16px}.dispatch-vehicle small{color:#8a93a4;margin-top:5px}.dispatch-slot{align-content:center;gap:8px;padding:10px;display:grid}.dispatch-slot.morning{background:#eef3ff}.dispatch-slot.afternoon{background:#edf9f3}.dispatch-slot.night{background:#f7f0ff}.dispatch-slot label{background:#fff;border:1px solid #d9dfea;border-radius:8px;padding:7px 9px;display:block}.dispatch-slot label span{color:#7e889a;margin-bottom:4px;font-size:10px;font-weight:700;display:block}.dispatch-slot select{color:#20283b;background:#fff;border:0;outline:none;width:100%;height:28px;font-size:12px;font-weight:800}.dispatch-slot label+label{border-color:#ead29c}.dispatch-state{place-items:center;padding:6px;display:grid}.dispatch-state .status-pill{white-space:nowrap}@media (width<=760px){.dispatch-notice{flex-direction:column;align-items:flex-start;gap:4px}.dispatch-toolbar{flex-wrap:wrap;align-items:stretch}.dispatch-toolbar label{width:100%;margin:0}.dispatch-toolbar input{width:100%;font-size:16px}.dispatch-toolbar button{flex:1}.dispatch-board{overflow:auto}.dispatch-table{min-width:920px}.master-chips{padding:12px}.dispatch-slot select{font-size:16px!important}}.dispatch-date-control{align-items:flex-end;gap:7px;margin-right:auto;display:flex}.dispatch-toolbar .dispatch-date-control label{margin-right:0}.dispatch-toolbar .date-step{white-space:nowrap;height:40px}.dispatch-toolbar .date-step:disabled{cursor:not-allowed;opacity:.45}.dispatch-stat-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.dispatch-stat-card{padding:18px}.dispatch-stat-title h2{color:#1d315e;margin:0;font-size:16px}.dispatch-stat-title p{color:#8992a3;margin:3px 0 0;font-size:10px}.vehicle-rate-list,.driver-days-list{gap:9px;margin-top:15px;display:grid}.vehicle-rate{grid-template-columns:54px 1fr 42px 34px;align-items:center;gap:9px;display:grid}.vehicle-rate>b,.vehicle-rate>strong{color:#203c76;font-size:12px}.vehicle-rate>strong{text-align:right}.vehicle-rate>small{text-align:right;color:#8c95a5}.vehicle-rate>span{background:#e5e9f0;border-radius:99px;height:7px;overflow:hidden}.vehicle-rate>span i{background:#3671dc;border-radius:99px;height:100%;display:block}.driver-days{border-bottom:1px dashed #e2e6ed;grid-template-columns:1fr 48px 62px;align-items:center;min-height:34px;display:grid}.driver-days>b{color:#26395f}.driver-days>strong{text-align:right;color:#203c76;font-size:13px}.driver-days>span{color:#fff;background:#e85962;border-radius:5px;justify-self:end;padding:3px 7px;font-size:9px;font-weight:800}.driver-days.warning>strong{color:#d83f4b}.dispatch-row.row-blue>div{background:#edf4ff}.dispatch-row.row-red>div{background:#fff0f1}.dispatch-row.row-blue .dispatch-vehicle{box-shadow:inset 5px 0 #3f73d8}.dispatch-row.row-red .dispatch-vehicle{box-shadow:inset 5px 0 #df6872}.dispatch-row.row-blue .dispatch-vehicle b{color:#285bb8}.dispatch-row.row-red .dispatch-vehicle b{color:#b84a55}.dispatch-row .dispatch-slot label{background:#fff}@media (width<=760px){.dispatch-date-control{grid-template-columns:auto 1fr auto;align-items:end;width:100%;margin:0;display:grid}.dispatch-date-control label{width:100%}.dispatch-stat-grid{grid-template-columns:1fr}.dispatch-stat-card{padding:14px}}.dispatch-month-control{align-items:center;gap:10px;margin-right:auto;display:flex}.dispatch-month-control strong{text-align:center;color:#1d315e;min-width:110px;font-size:15px}.dispatch-range-editor{overflow:hidden}.dispatch-range-fields{grid-template-columns:repeat(3,minmax(180px,1fr));gap:12px;padding:18px;display:grid}.dispatch-range-fields label>span{color:#4f596c;margin-bottom:6px;font-size:11px;font-weight:800;display:block}.dispatch-range-fields input,.dispatch-range-fields select{color:#1e2940;background:#fff;border:1px solid #d4dbe7;border-radius:8px;width:100%;height:42px;padding:0 10px;font-size:12px;font-weight:800}.driver-off-summary{overflow:hidden}.driver-off-list{gap:9px;padding:14px 18px;display:grid}.driver-off-list>div{grid-template-columns:120px 1fr;align-items:start;gap:10px;display:grid}.driver-off-list>div>b{color:#23365f;padding-top:5px;font-size:12px}.driver-off-list>div>span{flex-wrap:wrap;gap:6px;display:flex}.driver-off-list i{color:#aa2837;background:#ffe1e5;border-radius:6px;padding:5px 8px;font-size:10px;font-style:normal;font-weight:800}.driver-off-list i.paid{color:#5e3294;background:#eadfff}.driver-off-list>p{color:#788295;font-size:11px}.monthly-dispatch-board{overflow:hidden}.dispatch-month-scroll{border-top:1px solid var(--line);max-width:100%;overflow:auto}.dispatch-month-grid{min-width:max-content;display:grid}.dispatch-month-grid>div{border-bottom:1px dotted #9ca4b1;border-right:1px dotted #9ca4b1}.dispatch-month-corner{z-index:4;color:#31405e;background:#e9edf4;place-items:center;min-height:54px;font-size:11px;font-weight:900;display:grid;position:sticky;left:0}.dispatch-day-head{color:#707886;background:#f3f4f6;justify-content:center;align-items:baseline;gap:2px;min-height:54px;padding-top:14px;display:flex}.dispatch-day-head b{font-size:14px}.dispatch-day-head span{font-size:10px}.dispatch-day-head.weekday-土{color:#245cdb}.dispatch-day-head.weekday-日{color:#df3546}.dispatch-month-vehicle{z-index:3;flex-direction:column;justify-content:center;min-height:112px;padding:12px;display:flex;position:sticky;left:0;box-shadow:4px 0 8px #1d315e12;background:#eff5ff!important}.dispatch-month-vehicle.row-red{background:#fff1f2!important}.dispatch-month-vehicle b{color:#2857ad;font-size:14px}.dispatch-month-vehicle.row-red b{color:#b74d58}.dispatch-month-vehicle small{color:#7b8598;margin-top:4px;font-size:10px}.dispatch-day-cell{cursor:pointer;background:#f7faff;flex-direction:column;gap:4px;min-height:112px;padding:4px;display:flex}.dispatch-day-cell.row-red{background:#fff8f8}.dispatch-day-cell:hover{outline-offset:-2px;outline:2px solid #4a73da}.dispatch-empty{color:#b3bac7;cursor:pointer;background:0 0;border:0;width:100%;height:100%;min-height:102px;font-size:18px}.dispatch-booking{color:#594b00;text-align:left;cursor:pointer;background:#fff7a8;border:1px solid #d8bf15;border-left:4px solid #d1a900;border-radius:5px;width:100%;padding:6px 5px}.dispatch-booking.afternoon{color:#155d47;background:#dcf5e9;border-color:#72b9a0 #72b9a0 #72b9a0 #258b68}.dispatch-booking.night{color:#55317e;background:#eee3fa;border-color:#b99ad7 #b99ad7 #b99ad7 #7650a4}.dispatch-booking b,.dispatch-booking span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.dispatch-booking b{font-size:9px}.dispatch-booking span{margin-top:2px;font-size:8px}@media (width<=760px){.dispatch-month-control{justify-content:space-between;width:100%}.dispatch-range-fields{grid-template-columns:1fr;padding:12px}.dispatch-range-fields input,.dispatch-range-fields select{font-size:16px}.driver-off-list>div{grid-template-columns:1fr}.dispatch-month-corner,.dispatch-day-head{min-height:48px}.dispatch-toolbar .dispatch-month-control button{flex:0 auto}}.dispatch-booking.alt{color:#155d47;background:#dcf5e9;border-color:#72b9a0 #72b9a0 #72b9a0 #258b68}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
