:root{--ink: #123b5a;--ink-soft: #4f6f88;--line: #d7e7f3;--bg: #eef6fd;--card: #ffffff;--brand-a: #0e67b3;--brand-b: #29a9df;--danger: #c7424f}html,body,#app{margin:0;min-height:100%}body{font-family:Avenir Next,Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif;color:var(--ink);background:radial-gradient(circle at 10% -20%,rgba(41,169,223,.22),transparent 40%),radial-gradient(circle at 90% 0%,rgba(14,103,179,.2),transparent 34%),linear-gradient(160deg,#f2f9ff 0%,#ecf6ff 50%,#f7fbff 100%)}.app-shell{min-height:100vh}.booting{min-height:100vh;display:grid;place-items:center;color:var(--ink-soft)}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:420px;max-width:100%;background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:0 20px 44px #123b5a2e}.brand{display:grid;justify-items:center;gap:8px}.brand img{height:34px}.brand h1{margin:0;font-size:1.35rem}.subtitle{text-align:center;color:var(--ink-soft);margin:8px 0 18px}.login-form{display:grid;gap:10px}label{font-size:.84rem;font-weight:700;color:#1a4d72}input{border:1px solid #c9dff0;border-radius:10px;padding:10px 12px;font:inherit}input:focus{outline:0;border-color:var(--brand-a);box-shadow:0 0 0 3px #0e67b329}.primary-btn,.ghost-btn{border:0;border-radius:10px;padding:10px 14px;font:inherit;font-weight:700;cursor:pointer}.primary-btn{color:#fff;background:linear-gradient(100deg,var(--brand-a),var(--brand-b))}.primary-btn:disabled{opacity:.65;cursor:wait}.ghost-btn{color:var(--brand-a);background:rgba(14,103,179,.12)}.hint{margin-top:12px;font-size:.78rem;color:var(--ink-soft)}.error-message{margin-top:8px;font-size:.85rem;color:var(--danger);font-weight:700}.top-page{min-height:100vh;padding:24px;display:grid;gap:16px}.top-header,.welcome-card,.link-card{background:var(--card);border:1px solid var(--line);border-radius:14px}.top-header{display:flex;justify-content:space-between;align-items:center;padding:12px 14px}.header-left{display:flex;align-items:center;gap:10px}.header-left img{height:30px}.header-left h2{margin:0;font-size:1.2rem}.header-left p{margin:2px 0 0;color:var(--ink-soft);font-size:.82rem}.welcome-card{padding:16px;box-shadow:0 12px 24px #123b5a14}.welcome-card h3{margin:0 0 8px}.welcome-card p{margin:4px 0;color:var(--ink-soft)}.link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.link-card{text-decoration:none;color:inherit;padding:14px;display:grid;gap:6px;box-shadow:0 10px 18px #123b5a14}.link-card strong{font-size:1rem}.link-card span{color:var(--ink-soft);font-size:.85rem}.link-card:hover{border-color:#a8cbe7;transform:translateY(-1px)}@media (max-width: 860px){.top-page{padding:12px}.top-header{flex-direction:column;align-items:flex-start;gap:10px}.link-grid{grid-template-columns:1fr}}:root{--ink-900: #12314d;--ink-700: #1b4f74;--ink-500: #3f6b8d;--line: #d9e6f1;--paper: #f7fbff;--white: #ffffff;--brand-blue: #0d66b1;--brand-cyan: #28a8e0;--brand-navy: #0b2f4f;--brand-pink: #e64e8a;--ok: #1d8a62;--warn: #dc8a00;--danger: #d04353;--shadow: 0 16px 42px rgba(17, 61, 102, .16);--radius-lg: 20px;--radius-md: 14px;--radius-sm: 10px}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{font-family:Avenir Next,Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif;color:var(--ink-900);background:radial-gradient(circle at 90% -10%,rgba(40,168,224,.22),transparent 36%),radial-gradient(circle at 2% 12%,rgba(230,78,138,.15),transparent 32%),linear-gradient(160deg,#f3f9ff 0%,#eef7ff 48%,#f8fcff 100%)}h1,h2,h3{font-family:Avenir Next Condensed,Arial Narrow,Hiragino Kaku Gothic ProN,sans-serif;letter-spacing:.02em;margin:0}p{margin:0;color:var(--ink-500)}a{color:inherit;text-decoration:none}.topbar{height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:rgba(255,255,255,.85);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--brand-navy)}.brand img{height:30px}.page-title{font-size:1.45rem;line-height:1.2}.subtle{color:var(--ink-500);font-size:.92rem}.shell{display:grid;grid-template-columns:250px 1fr;min-height:calc(100vh - 68px)}.main{min-width:0}.sidebar{display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.2);background:linear-gradient(198deg,#0e5c9c 0%,#14456d 62%,#153a5e 100%);color:#eaf6ff;padding:20px 16px;transition:padding .2s ease}.sidebar-logout{margin-top:auto;padding-top:10px;border-top:1px solid rgba(255,255,255,.2)}.menu-collapse-btn{width:100%;border:1px solid rgba(255,255,255,.35);border-radius:10px;background:rgba(255,255,255,.16);color:#fff;font-size:.82rem;font-weight:700;padding:8px 10px;cursor:pointer;margin-bottom:12px}.menu-collapse-btn:hover{background:rgba(255,255,255,.25)}.shell.menu-collapsed{grid-template-columns:74px 1fr}.shell.menu-collapsed .sidebar{padding:20px 8px}.shell.menu-collapsed .sidebar h3{display:none}.shell.menu-collapsed .menu-collapse-btn{font-size:0;padding:8px 0}.shell.menu-collapsed .menu-collapse-btn:before{content:">";font-size:.86rem}.shell.menu-collapsed .nav-link{font-size:0;padding:9px 0;display:flex;align-items:center;justify-content:center}.shell.menu-collapsed .nav-link:before{content:attr(data-icon);width:24px;height:24px;border-radius:8px;display:grid;place-items:center;background:rgba(255,255,255,.18);color:#fff;font-size:.84rem;line-height:1}.shell.menu-collapsed .nav-link.active:before{background:rgba(255,255,255,.33)}.shell.menu-collapsed .sidebar section+section{margin-top:10px}.sidebar section+section{margin-top:16px}.sidebar h3{font-size:.8rem;text-transform:uppercase;opacity:.84;margin-bottom:10px}.nav-link{display:block;padding:10px 12px;border-radius:10px;font-size:.9rem;transition:transform .18s ease,background-color .18s ease}.nav-link:hover{background:rgba(255,255,255,.14);transform:translate(2px)}.nav-link.active{background:rgba(255,255,255,.25);font-weight:700}.main{padding:24px;animation:lift .45s ease}.grid{display:grid;gap:16px}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow);padding:18px}.card h2{font-size:1.05rem;margin-bottom:8px}.kpi{display:flex;align-items:baseline;gap:8px}.kpi strong{font-size:1.9rem;color:var(--brand-navy)}.kpi span{color:var(--ink-500);font-size:.9rem}.ribbon{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:100px;font-size:.78rem;font-weight:700}.ribbon.ok{color:var(--ok);background:rgba(29,138,98,.14)}.ribbon.warn{color:var(--warn);background:rgba(220,138,0,.14)}.ribbon.danger{color:var(--danger);background:rgba(208,67,83,.14)}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px}table{width:100%;border-collapse:collapse;min-width:760px;background:#fff}th,td{border-bottom:1px solid #edf3f9;padding:10px 12px;text-align:left;font-size:.9rem}th{background:#f3f9ff;color:var(--ink-700);position:sticky;top:0;z-index:1}tr:hover td{background:#f8fcff}.badge{border-radius:999px;padding:4px 9px;font-size:.75rem;font-weight:700;border:1px solid transparent;display:inline-block}.badge.blue{color:#0c5da0;background:rgba(13,102,177,.12)}.badge.cyan{color:#14779e;background:rgba(40,168,224,.14)}.badge.pink{color:#b23367;background:rgba(230,78,138,.12)}.badge.gray{color:#4b657b;background:rgba(86,121,151,.14)}.field-group{display:grid;gap:10px;margin-bottom:12px}label{font-size:.82rem;color:var(--ink-700);font-weight:700}input,select,textarea{width:100%;border:1px solid #c8dcef;border-radius:10px;padding:10px 12px;font:inherit;background:#ffffff;color:var(--ink-900)}input:focus,select:focus,textarea:focus{outline:0;border-color:var(--brand-blue);box-shadow:0 0 0 3px #0d66b12e}.btn-row{display:flex;gap:10px;flex-wrap:wrap}.btn{border:0;border-radius:10px;font:inherit;font-weight:700;padding:9px 14px;cursor:pointer}.btn.primary{color:#fff;background:linear-gradient(100deg,var(--brand-blue),var(--brand-cyan))}.btn.ghost{color:var(--brand-blue);background:rgba(13,102,177,.1)}.btn.danger{color:#fff;background:linear-gradient(100deg,#c13a45,#e35663)}.shift-matrix-card{padding:0;overflow:hidden}.shift-matrix-head{background:#2f70cb;color:#fff;padding:12px 16px}.shift-matrix-head h2{margin:0;font-size:1rem}.shift-matrix-toolbar{background:#f8fbff;border-bottom:1px solid #d9e7f5;padding:10px 16px}.shift-month-nav{display:flex;justify-content:center;align-items:center;gap:10px;margin-bottom:10px}.shift-month-btn{width:28px;height:28px;border:1px solid #9fc2e3;color:#2d6ca7;background:#fff;border-radius:6px;font-weight:700}.shift-month-label{min-width:110px;text-align:center;border:1px solid #9fc2e3;border-radius:8px;padding:4px 10px;font-size:.84rem;font-weight:700;color:#245b8e;background:#fff}.shift-legend{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.shift-legend-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;border:1px solid #d5e5f5;font-size:.7rem;color:#446985;background:#fff}.shift-dot{width:14px;height:14px;display:grid;place-items:center;border-radius:6px;border:1px solid transparent;font-size:.64rem;font-weight:700;line-height:1}.shift-dot.orange{color:#c5742d;border-color:#ebb27d;background:#fff2e7}.shift-dot.blue{color:#2f6aa3;border-color:#89b6e4;background:#e9f4ff}.shift-dot.green{color:#3b885d;border-color:#9dd4b2;background:#ebfbf2}.shift-dot.violet{color:#795cae;border-color:#c3afe7;background:#f3ecff}.shift-dot.pink{color:#ac4f7b;border-color:#e5acc8;background:#ffeef7}.shift-table-wrap{border-top:1px solid #dce8f4;overflow:auto;background:#fff}.shift-table{width:100%;border-collapse:separate;border-spacing:0;min-width:1500px}.shift-table th,.shift-table td{border-bottom:1px solid #edf3f9;border-right:1px solid #f1f6fb;padding:6px 4px;text-align:center;font-size:.74rem}.shift-table thead th{position:sticky;top:0;z-index:2;background:#f8fbff;color:#547592;font-weight:700;vertical-align:bottom}.shift-table th.staff-col,.shift-table td.staff-col{position:sticky;left:0;z-index:3;text-align:left;background:#fff;padding-left:10px;min-width:82px}.shift-table thead th.staff-col{background:#f1f7fd;color:#436888}.shift-staff-name{display:block;font-size:.78rem;font-weight:700;color:#1f4768}.shift-staff-meta{display:block;margin-top:2px;font-size:.64rem;color:#6d8ba4}.shift-table th.summary-col,.shift-table td.summary-col{background:#f6fbff;min-width:44px;font-weight:700;color:#396282}.shift-day-head{display:grid;gap:2px;justify-items:center}.shift-day-head .week{font-size:.64rem;color:#8aa5be}.shift-day-head .week.sun{color:#d3757e}.shift-day-head .week.sat{color:#5d88c4}.shift-day-head .num{font-size:.78rem;color:#446a8b}.shift-day-head .date{font-size:.62rem;color:#8aa2ba}.shift-cell-token{display:inline-grid;place-items:center;min-width:26px;height:19px;border-radius:6px;border:1px solid transparent;font-size:.66rem;font-weight:700;line-height:1;padding:0 4px}.shift-cell-token.orange{color:#c3762d;border-color:#ebb47f;background:#fff1e4}.shift-cell-token.blue{color:#2f6da5;border-color:#8eb8e2;background:#e8f3ff}.shift-cell-token.green{color:#3a885e;border-color:#9fd4b3;background:#eafbf2}.shift-cell-token.violet{color:#7b5eaf;border-color:#c5b2e9;background:#f4eeff}.shift-cell-token.pink{color:#aa4f7b;border-color:#e5afcb;background:#fff0f7}.shift-cell-token.gray{color:#68809a;border-color:#cedae6;background:#f5f9fd}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.day{border:1px solid #d9e9f8;background:#ffffff;border-radius:12px;min-height:132px;padding:8px;box-shadow:0 8px 16px #113d6612}.day .num{font-size:.8rem;color:var(--ink-500);margin-bottom:6px;font-weight:700}.shift-chip{display:block;border-radius:8px;font-size:.74rem;padding:4px 6px;margin-bottom:4px;font-weight:700}.shift-chip.day{background:rgba(13,102,177,.12);color:#0d4f84}.shift-chip.night{background:rgba(11,47,79,.13);color:#153f67}.shift-chip.alert{background:rgba(208,67,83,.14);color:#8a2231}.timeline{display:grid;gap:10px}.timeline-item{padding:10px;border-left:4px solid #88b9de;border-radius:8px;background:#f7fbff}.timeline-item strong{display:block;font-size:.9rem}.alert-box{border:1px solid #f2ced3;background:#fff6f7;border-radius:12px;padding:12px}.alert-box h3{font-size:.94rem;margin-bottom:6px;color:#9a3142}.mobile-stage{min-height:100vh;display:grid;place-items:center;padding:22px}.phone{width:390px;max-width:100%;min-height:760px;background:#f1f8ff;border:1px solid #d4e4f2;border-radius:28px;box-shadow:0 24px 45px #113d663d;overflow:hidden;position:relative}.phone:before{content:"";position:absolute;top:0;left:0;right:0;height:130px;background:linear-gradient(125deg,var(--brand-blue) 0%,var(--brand-cyan) 74%,#a9ddf7 100%)}.mobile-header{position:relative;z-index:2;color:#fff;padding:22px 20px 12px}.mobile-header h1{font-size:1.2rem;margin-bottom:4px}.mobile-body{position:relative;z-index:2;padding:12px 16px 86px;display:grid;gap:12px}.mobile-card{background:#fff;border-radius:14px;border:1px solid #dcebf8;padding:14px;box-shadow:0 10px 20px #113d661a}.mobile-card h2{font-size:1rem;margin-bottom:6px}.list{margin:0;padding:0;list-style:none;display:grid;gap:8px}.list li{background:#f4f9ff;border:1px solid #dceaf7;border-radius:10px;padding:10px;font-size:.88rem}.bottom-nav{position:absolute;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid #d4e5f5;background:rgba(255,255,255,.95)}.bottom-nav a{padding:12px 8px;font-size:.68rem;text-align:center;color:#4f6f89;font-weight:700}.bottom-nav a.active{color:var(--brand-blue);background:rgba(13,102,177,.1)}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:22px}.login-box{width:430px;max-width:100%;padding:26px;border-radius:22px;border:1px solid var(--line);background:rgba(255,255,255,.95);box-shadow:var(--shadow)}.login-box .brand{justify-content:center;margin-bottom:14px}.login-box h1{text-align:center;font-size:1.4rem;margin-bottom:4px}.login-box p{text-align:center;margin-bottom:18px}@keyframes lift{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1120px){.shell,.shell.menu-collapsed{grid-template-columns:1fr}.sidebar{display:flex;flex-direction:row;gap:14px;overflow:auto}.menu-collapse-btn{min-width:120px;margin-bottom:0}.sidebar section{min-width:200px}.sidebar-logout{margin-top:0;padding-top:0;border-top:0}.shell.menu-collapsed .sidebar{padding:20px 16px}.shell.menu-collapsed .sidebar h3{display:block}.shell.menu-collapsed .menu-collapse-btn{font-size:.82rem;padding:8px 10px}.shell.menu-collapsed .menu-collapse-btn:before{content:none}.shell.menu-collapsed .nav-link{font-size:.9rem;padding:10px 12px;display:block}.shell.menu-collapsed .nav-link:before{content:none}.grid.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 768px){.topbar{height:auto;padding:12px;flex-wrap:wrap;gap:10px}.main{padding:14px}.grid.cols-2,.grid.cols-3{grid-template-columns:1fr}.calendar{grid-template-columns:repeat(2,minmax(0,1fr))}.shift-matrix-toolbar{padding:10px}.shift-legend{justify-content:flex-start}}.design-nav-toggle{position:fixed;right:14px;bottom:14px;z-index:9999;border:0;border-radius:999px;background:linear-gradient(120deg,#0d66b1,#29a9e0);color:#fff;padding:10px 14px;font-weight:700;font-size:12px;cursor:pointer;box-shadow:0 12px 24px #113d6640}.design-nav-panel{position:fixed;right:14px;bottom:56px;width:320px;max-height:min(72vh,560px);overflow:auto;border:1px solid #d0e1f0;border-radius:14px;background:rgba(255,255,255,.97);box-shadow:0 18px 36px #113d664d;z-index:9999;padding:12px;display:none}.design-nav-panel.open{display:block}.design-nav-head{margin-bottom:8px}.design-nav-head strong{display:block;font-size:14px;color:#163f62}.design-nav-head span{font-size:11px;color:#537490}.design-nav-group{border:1px solid #e1ecf6;border-radius:10px;margin-bottom:8px;overflow:hidden}.design-nav-group h4{margin:0;font-size:12px;color:#1b4f74;background:#f4faff;padding:7px 9px;border-bottom:1px solid #e1ecf6}.design-nav-links{padding:6px}.design-nav-link{display:block;font-size:12px;color:#244f72;border-radius:8px;padding:6px 8px;margin-bottom:4px;border:1px solid transparent}.design-nav-link:hover{border-color:#b8d3e9;background:#f5fbff}.design-nav-link.active{background:rgba(13,102,177,.12);border-color:#9ec6e6;color:#0f4f83;font-weight:700}@media (max-width: 720px){.design-nav-panel{left:12px;right:12px;width:auto;max-height:64vh}}.logout-section[data-v-6e6474da]{margin-top:24px;padding-top:8px;border-top:1px solid #e5e7eb}.logout-btn[data-v-6e6474da]{width:100%;padding:10px 12px;border:none;border-radius:10px;background:#ef4444;color:#fff;font-weight:700;cursor:pointer;transition:opacity .2s ease}.logout-btn[data-v-6e6474da]:hover{opacity:.92}.assign-condition-page[data-v-4ad73243]{display:flex;flex-direction:column;gap:16px}.card[data-v-4ad73243]{background:#fff;border:1px solid #d9e2f1;border-radius:12px;padding:18px}.card-header[data-v-4ad73243]{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}.subtext[data-v-4ad73243]{margin-top:4px;color:#666;font-size:14px}.btn-row[data-v-4ad73243]{display:flex;gap:10px;flex-wrap:wrap}.period-info[data-v-4ad73243]{margin-top:10px;padding:10px 12px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px}.period-row[data-v-4ad73243]{display:flex;flex-wrap:wrap;gap:8px;line-height:1.7}.period-row+.period-row[data-v-4ad73243]{margin-top:4px}.period-label[data-v-4ad73243]{font-weight:700;color:#334155;min-width:150px}.period-value[data-v-4ad73243]{color:#0f172a}.loading-box[data-v-4ad73243],.error-box[data-v-4ad73243]{padding:16px;border-radius:8px}.loading-box[data-v-4ad73243]{background:#f8fafc;border:1px solid #e5e7eb}.error-box[data-v-4ad73243]{background:#fff5f5;border:1px solid #f3c7c7;color:#b42318}.table-wrap[data-v-4ad73243]{overflow-x:auto}.rule-table[data-v-4ad73243]{width:100%;border-collapse:collapse}.rule-table th[data-v-4ad73243],.rule-table td[data-v-4ad73243]{padding:10px;border-bottom:1px solid #e5e7eb;vertical-align:middle}.priority-cell[data-v-4ad73243]{display:flex;gap:6px;align-items:center}.priority-no[data-v-4ad73243]{min-width:20px;text-align:center;font-weight:700}.icon-btn[data-v-4ad73243]{width:26px;height:26px;border:1px solid #ccc;background:#fff;border-radius:6px;cursor:pointer}.icon-btn[data-v-4ad73243]:disabled{opacity:.4;cursor:not-allowed}.toggle-btn[data-v-4ad73243]{min-width:58px;padding:6px 10px;border-radius:999px;border:1px solid transparent;font-weight:700;cursor:pointer;font-size:12px}.toggle-btn.on[data-v-4ad73243]{background:#e8f7ee;color:#127a43;border-color:#b7e3c3}.toggle-btn.off[data-v-4ad73243]{background:#f1f5f9;color:#64748b;border-color:#cbd5e1}.rule-name[data-v-4ad73243]{font-weight:700}.rule-key[data-v-4ad73243]{font-size:12px;color:#777}.row-disabled .rule-name[data-v-4ad73243],.row-disabled .rule-key[data-v-4ad73243],.row-disabled .priority-no[data-v-4ad73243]{opacity:.55}.shift-card[data-v-4ad73243]{overflow:hidden}.shift-head[data-v-4ad73243]{display:flex;justify-content:space-between;gap:16px;margin-bottom:12px}.shift-head-right[data-v-4ad73243]{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.shift-legend[data-v-4ad73243]{display:flex;flex-wrap:wrap;gap:8px;align-content:flex-start;justify-content:flex-end}.legend-chip[data-v-4ad73243]{display:inline-flex;align-items:center;gap:8px;padding:5px 10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;font-size:12px}.legend-icon[data-v-4ad73243]{width:20px;height:20px;min-width:20px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;box-shadow:inset 0 0 0 1px #ffffff2e}.legend-text[data-v-4ad73243]{color:#334155;font-weight:600;line-height:1}.legend-icon.orange[data-v-4ad73243]{background:#f59e0b}.legend-icon.blue[data-v-4ad73243]{background:#3b82f6}.legend-icon.emerald[data-v-4ad73243]{background:#10b981}.legend-icon.violet[data-v-4ad73243]{background:#8b5cf6}.legend-icon.rose[data-v-4ad73243]{background:#f43f5e}.legend-icon.amber[data-v-4ad73243]{background:#d97706}.legend-icon.cyan[data-v-4ad73243]{background:#06b6d4}.legend-icon.lime[data-v-4ad73243]{background:#65a30d}.legend-icon.indigo[data-v-4ad73243]{background:#6366f1}.legend-icon.pink[data-v-4ad73243]{background:#ec4899}.legend-icon.gray[data-v-4ad73243]{background:#6b7280}.legend-icon.off[data-v-4ad73243]{background:#64748b}.legend-icon.paid[data-v-4ad73243]{background:#16a34a}.legend-icon.horizontal-alert[data-v-4ad73243]{background:#dc2626}.shift-table-wrap[data-v-4ad73243]{height:65vh;overflow:auto;border:1px solid #e5e7eb;border-radius:10px}.shift-table[data-v-4ad73243]{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;background:#fff}.shift-table th[data-v-4ad73243],.shift-table td[data-v-4ad73243]{border-right:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb;padding:0;text-align:center;vertical-align:middle;background:#fff}.shift-table thead th[data-v-4ad73243]{position:sticky;top:0;z-index:4;background:#f8fafc}.staff-col[data-v-4ad73243]{width:102px;min-width:100px;max-width:120px;padding:8px 10px!important;text-align:left!important}.last-col[data-v-4ad73243]{width:38px;min-width:38px;max-width:39px}.date-col[data-v-4ad73243],.request-col[data-v-4ad73243]{width:38px;min-width:37px;max-width:39px}.summary-col[data-v-4ad73243]{width:55px;min-width:55px;max-width:55px}.sticky-left[data-v-4ad73243]{position:sticky;left:0;z-index:5;background:#fff!important}.shift-table thead .sticky-left[data-v-4ad73243]{z-index:6;background:#f8fafc!important}.shift-day-head[data-v-4ad73243],.last-head[data-v-4ad73243],.summary-head[data-v-4ad73243]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:54px;padding:6px 4px;gap:2px}.shift-day-head .week[data-v-4ad73243],.last-head .week[data-v-4ad73243],.summary-head .week[data-v-4ad73243]{font-size:11px;font-weight:700;color:#475569}.shift-day-head .date[data-v-4ad73243],.last-head .date[data-v-4ad73243],.summary-head .date[data-v-4ad73243]{font-size:12px;color:#0f172a}.week.sun[data-v-4ad73243]{color:#dc2626!important}.week.sat[data-v-4ad73243]{color:#2563eb!important}.staff-name[data-v-4ad73243]{display:block;font-weight:700;color:#0f172a;line-height:1.35}.staff-meta[data-v-4ad73243]{display:block;margin-top:2px;font-size:12px;color:#64748b}.staff-alert-note[data-v-4ad73243]{display:block;margin-top:4px;font-size:11px;font-weight:700;color:#dc2626}.last-day-token[data-v-4ad73243]{min-height:48px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}.request-cell[data-v-4ad73243]{display:flex;flex-direction:column;min-height:48px}.request-cell.alert-cell[data-v-4ad73243]{background:#fff7f7}.request-cell.horizontal-alert-cell[data-v-4ad73243]{background:#fff1f2}.request-col.col-alert[data-v-4ad73243]{box-shadow:inset 0 0 0 1px #fecaca;background:#fff7f7}.request-col.cell-horizontal-danger[data-v-4ad73243]{box-shadow:inset 0 0 0 1px #fca5a5,inset 0 -3px #dc2626}.shift-table tbody tr.row-horizontal-danger>td[data-v-4ad73243]{background:#fffaf9}.request-select[data-v-4ad73243]{width:100%;border:none;border-bottom:1px solid #e5e7eb;border-radius:0;padding:2px 4px;font-size:12px;text-align:center;height:28px;appearance:none;-webkit-appearance:none;-moz-appearance:none;font-weight:700;transition:background-color .15s ease,color .15s ease,box-shadow .15s ease}.request-select.none[data-v-4ad73243]{background:#fff;color:#0f172a}.request-select[data-v-4ad73243]:disabled{cursor:not-allowed}.request-select.restricted-select[data-v-4ad73243]{box-shadow:inset 0 0 0 1px #fbbf24}.request-select.orange[data-v-4ad73243]{background:#fff7ed;color:#c2410c}.request-select.blue[data-v-4ad73243]{background:#eff6ff;color:#1d4ed8}.request-select.emerald[data-v-4ad73243]{background:#ecfdf5;color:#047857}.request-select.violet[data-v-4ad73243]{background:#f5f3ff;color:#6d28d9}.request-select.rose[data-v-4ad73243]{background:#fff1f2;color:#be123c}.request-select.amber[data-v-4ad73243]{background:#fffbeb;color:#b45309}.request-select.cyan[data-v-4ad73243]{background:#ecfeff;color:#0e7490}.request-select.lime[data-v-4ad73243]{background:#f7fee7;color:#4d7c0f}.request-select.indigo[data-v-4ad73243]{background:#eef2ff;color:#4338ca}.request-select.pink[data-v-4ad73243]{background:#fdf2f8;color:#be185d}.request-select.gray[data-v-4ad73243]{background:#f3f4f6;color:#374151}.request-select.off[data-v-4ad73243]{background:#f1f5f9;color:#334155}.request-select.paid[data-v-4ad73243]{background:#f0fdf4;color:#15803d}.request-select:disabled.orange[data-v-4ad73243]{background:#fff7ed;color:#c2410c}.request-select:disabled.blue[data-v-4ad73243]{background:#eff6ff;color:#1d4ed8}.request-select:disabled.emerald[data-v-4ad73243]{background:#ecfdf5;color:#047857}.request-select:disabled.violet[data-v-4ad73243]{background:#f5f3ff;color:#6d28d9}.request-select:disabled.rose[data-v-4ad73243]{background:#fff1f2;color:#be123c}.request-select:disabled.amber[data-v-4ad73243]{background:#fffbeb;color:#b45309}.request-select:disabled.cyan[data-v-4ad73243]{background:#ecfeff;color:#0e7490}.request-select:disabled.lime[data-v-4ad73243]{background:#f7fee7;color:#4d7c0f}.request-select:disabled.indigo[data-v-4ad73243]{background:#eef2ff;color:#4338ca}.request-select:disabled.pink[data-v-4ad73243]{background:#fdf2f8;color:#be185d}.request-select:disabled.gray[data-v-4ad73243]{background:#f3f4f6;color:#374151}.request-select:disabled.off[data-v-4ad73243]{background:#f1f5f9;color:#334155}.request-select:disabled.paid[data-v-4ad73243]{background:#f0fdf4;color:#15803d}.request-result[data-v-4ad73243]{height:20px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700}.summary-cell[data-v-4ad73243]{min-height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:12px;font-weight:700}.summary-top[data-v-4ad73243]{color:#15803d}.summary-bottom[data-v-4ad73243]{color:#475569}.request-result.none[data-v-4ad73243],.last-day-token.none[data-v-4ad73243]{color:#cbd5e1}.request-result.orange[data-v-4ad73243],.last-day-token.orange[data-v-4ad73243]{background:#fff7ed;color:#c2410c}.request-result.blue[data-v-4ad73243],.last-day-token.blue[data-v-4ad73243]{background:#eff6ff;color:#1d4ed8}.request-result.emerald[data-v-4ad73243],.last-day-token.emerald[data-v-4ad73243]{background:#ecfdf5;color:#047857}.request-result.violet[data-v-4ad73243],.last-day-token.violet[data-v-4ad73243]{background:#f5f3ff;color:#6d28d9}.request-result.rose[data-v-4ad73243],.last-day-token.rose[data-v-4ad73243]{background:#fff1f2;color:#be123c}.request-result.amber[data-v-4ad73243],.last-day-token.amber[data-v-4ad73243]{background:#fffbeb;color:#b45309}.request-result.cyan[data-v-4ad73243],.last-day-token.cyan[data-v-4ad73243]{background:#ecfeff;color:#0e7490}.request-result.lime[data-v-4ad73243],.last-day-token.lime[data-v-4ad73243]{background:#f7fee7;color:#4d7c0f}.request-result.indigo[data-v-4ad73243],.last-day-token.indigo[data-v-4ad73243]{background:#eef2ff;color:#4338ca}.request-result.pink[data-v-4ad73243],.last-day-token.pink[data-v-4ad73243]{background:#fdf2f8;color:#be185d}.request-result.gray[data-v-4ad73243],.last-day-token.gray[data-v-4ad73243]{background:#f3f4f6;color:#374151}.request-result.off[data-v-4ad73243],.last-day-token.off[data-v-4ad73243]{background:#f1f5f9;color:#334155}.request-result.paid[data-v-4ad73243],.last-day-token.paid[data-v-4ad73243]{background:#f0fdf4;color:#15803d}.action-panel[data-v-4ad73243]{margin-top:16px}.warning-box[data-v-4ad73243]{margin-bottom:12px;padding:10px 12px;border:1px solid #fecaca;background:#fff5f5;border-radius:10px}.warning-line[data-v-4ad73243]{color:#b42318;font-size:13px;line-height:1.6;font-weight:600}.warning-line+.warning-line[data-v-4ad73243]{margin-top:4px}.action-row[data-v-4ad73243]{display:flex;justify-content:flex-end}.btn[data-v-4ad73243]{padding:10px 16px;border-radius:8px;cursor:pointer;border:none}.btn.primary[data-v-4ad73243]{background:#2563eb;color:#fff}.btn.ghost[data-v-4ad73243]{background:#fff;border:1px solid #2563eb;color:#2563eb}@media (max-width: 960px){.card-header[data-v-4ad73243],.shift-head[data-v-4ad73243]{flex-direction:column;align-items:stretch}.shift-head-right[data-v-4ad73243]{align-items:stretch}.shift-legend[data-v-4ad73243]{justify-content:flex-start}}.assign-result-page[data-v-fe550572]{display:flex;flex-direction:column;gap:16px}.card[data-v-fe550572]{background:#fff;border:1px solid #d9e2f1;border-radius:12px;padding:18px}.card-header[data-v-fe550572]{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}.summary-header[data-v-fe550572]{margin-bottom:10px}.subtext[data-v-fe550572]{margin-top:4px;color:#666;font-size:14px}.btn-row[data-v-fe550572]{display:flex;gap:10px;flex-wrap:wrap}.period-info[data-v-fe550572]{margin-top:10px;padding:10px 12px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px}.period-row[data-v-fe550572]{display:flex;flex-wrap:wrap;gap:8px;line-height:1.7}.period-row+.period-row[data-v-fe550572]{margin-top:4px}.period-label[data-v-fe550572]{font-weight:700;color:#334155;min-width:150px}.period-value[data-v-fe550572]{color:#0f172a}.loading-box[data-v-fe550572],.error-box[data-v-fe550572]{padding:16px;border-radius:8px}.loading-box[data-v-fe550572]{background:#f8fafc;border:1px solid #e5e7eb}.error-box[data-v-fe550572]{background:#fff5f5;border:1px solid #f3c7c7;color:#b42318}.shift-head[data-v-fe550572]{display:flex;justify-content:space-between;gap:16px;margin-top:20px;margin-bottom:12px}.shift-head-right[data-v-fe550572]{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.shift-legend[data-v-fe550572]{display:flex;flex-wrap:wrap;gap:8px;align-content:flex-start;justify-content:flex-end}.legend-chip[data-v-fe550572]{display:inline-flex;align-items:center;gap:8px;padding:5px 10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;font-size:12px}.legend-icon[data-v-fe550572]{width:20px;height:20px;min-width:20px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;box-shadow:inset 0 0 0 1px #ffffff2e}.legend-text[data-v-fe550572]{color:#334155;font-weight:600;line-height:1}.legend-icon.orange[data-v-fe550572]{background:#f59e0b}.legend-icon.blue[data-v-fe550572]{background:#3b82f6}.legend-icon.emerald[data-v-fe550572]{background:#10b981}.legend-icon.violet[data-v-fe550572]{background:#8b5cf6}.legend-icon.rose[data-v-fe550572]{background:#f43f5e}.legend-icon.amber[data-v-fe550572]{background:#d97706}.legend-icon.cyan[data-v-fe550572]{background:#06b6d4}.legend-icon.lime[data-v-fe550572]{background:#65a30d}.legend-icon.indigo[data-v-fe550572]{background:#6366f1}.legend-icon.pink[data-v-fe550572]{background:#ec4899}.legend-icon.gray[data-v-fe550572]{background:#6b7280}.legend-icon.off[data-v-fe550572]{background:#64748b}.legend-icon.paid[data-v-fe550572]{background:#16a34a}.legend-icon.horizontal-alert[data-v-fe550572]{background:#dc2626}.legend-icon.virtual[data-v-fe550572]{background:#0ea5e9}.shift-table-wrap[data-v-fe550572]{overflow:auto;border:1px solid #e5e7eb;border-radius:10px}.shift-table[data-v-fe550572]{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;background:#fff}.shift-table th[data-v-fe550572],.shift-table td[data-v-fe550572]{border-right:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb;padding:0;text-align:center;vertical-align:middle;background:#fff}.shift-table thead th[data-v-fe550572]{position:sticky;top:0;z-index:4;background:#f8fafc}.staff-col[data-v-fe550572]{width:102px;min-width:100px;max-width:120px;padding:8px 10px!important;text-align:left!important}.last-col[data-v-fe550572]{width:38px;min-width:38px;max-width:39px}.date-col[data-v-fe550572],.request-col[data-v-fe550572]{width:38px;min-width:37px;max-width:39px}.summary-col[data-v-fe550572]{width:55px;min-width:55px;max-width:55px}.sticky-left[data-v-fe550572]{position:sticky;left:0;z-index:5;background:#fff!important}.shift-table thead .sticky-left[data-v-fe550572]{z-index:6;background:#f8fafc!important}.shift-day-head[data-v-fe550572],.last-head[data-v-fe550572],.summary-head[data-v-fe550572]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:54px;padding:6px 4px;gap:2px}.shift-day-head .week[data-v-fe550572],.last-head .week[data-v-fe550572],.summary-head .week[data-v-fe550572]{font-size:11px;font-weight:700;color:#475569}.shift-day-head .date[data-v-fe550572],.last-head .date[data-v-fe550572],.summary-head .date[data-v-fe550572]{font-size:12px;color:#0f172a}.week.sun[data-v-fe550572]{color:#dc2626!important}.week.sat[data-v-fe550572]{color:#2563eb!important}.staff-name[data-v-fe550572]{display:block;font-weight:700;color:#0f172a;line-height:1.35}.staff-meta[data-v-fe550572]{display:block;margin-top:2px;font-size:12px;color:#64748b}.staff-alert-note[data-v-fe550572]{display:block;margin-top:4px;font-size:11px;font-weight:700;color:#dc2626}.staff-alert-note.set-alert[data-v-fe550572]{color:#c2410c}.staff-alert-note.single-alert[data-v-fe550572]{color:#7c3aed}.staff-alert-note.virtual-note[data-v-fe550572]{color:#0369a1}.last-day-token[data-v-fe550572]{min-height:48px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}.request-cell[data-v-fe550572]{display:flex;flex-direction:column;min-height:48px}.request-cell.alert-cell[data-v-fe550572]{background:#fff7f7}.request-cell.horizontal-alert-cell[data-v-fe550572]{background:#fff1f2}.request-col.col-alert[data-v-fe550572]{box-shadow:inset 0 0 0 1px #fecaca;background:#fff7f7}.request-col.cell-horizontal-danger[data-v-fe550572]{box-shadow:inset 0 0 0 1px #fca5a5,inset 0 -3px #dc2626}.shift-table tbody tr.row-horizontal-danger>td[data-v-fe550572]{background:#fffaf9}.result-top[data-v-fe550572]{width:100%;height:28px;min-height:28px;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;padding:2px 4px}.result-bottom[data-v-fe550572]{height:20px;min-height:20px;display:flex;align-items:center;justify-content:center}.result-warning-code[data-v-fe550572]{min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#fff7ed;color:#c2410c;border:1px solid #fdba74;display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;line-height:1}.summary-cell[data-v-fe550572]{min-height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:12px;font-weight:700}.summary-top[data-v-fe550572]{color:#15803d}.summary-bottom[data-v-fe550572]{color:#475569}.result-top.none[data-v-fe550572],.last-day-token.none[data-v-fe550572]{color:#cbd5e1}.result-top.orange[data-v-fe550572],.last-day-token.orange[data-v-fe550572]{background:#fff7ed;color:#c2410c}.result-top.blue[data-v-fe550572],.last-day-token.blue[data-v-fe550572]{background:#eff6ff;color:#1d4ed8}.result-top.emerald[data-v-fe550572],.last-day-token.emerald[data-v-fe550572]{background:#ecfdf5;color:#047857}.result-top.violet[data-v-fe550572],.last-day-token.violet[data-v-fe550572]{background:#f5f3ff;color:#6d28d9}.result-top.rose[data-v-fe550572],.last-day-token.rose[data-v-fe550572]{background:#fff1f2;color:#be123c}.result-top.amber[data-v-fe550572],.last-day-token.amber[data-v-fe550572]{background:#fffbeb;color:#b45309}.result-top.cyan[data-v-fe550572],.last-day-token.cyan[data-v-fe550572]{background:#ecfeff;color:#0e7490}.result-top.lime[data-v-fe550572],.last-day-token.lime[data-v-fe550572]{background:#f7fee7;color:#4d7c0f}.result-top.indigo[data-v-fe550572],.last-day-token.indigo[data-v-fe550572]{background:#eef2ff;color:#4338ca}.result-top.pink[data-v-fe550572],.last-day-token.pink[data-v-fe550572]{background:#fdf2f8;color:#be185d}.result-top.gray[data-v-fe550572],.last-day-token.gray[data-v-fe550572]{background:#f3f4f6;color:#374151}.result-top.off[data-v-fe550572],.last-day-token.off[data-v-fe550572]{background:#f1f5f9;color:#334155}.result-top.paid[data-v-fe550572],.last-day-token.paid[data-v-fe550572]{background:#f0fdf4;color:#15803d}.support-row>td[data-v-fe550572]{background:#f8fafc}.support-staff-col[data-v-fe550572]{background:#eef6ff!important}.support-blank-cell[data-v-fe550572]{background:#f8fafc!important}.support-cell[data-v-fe550572]{background:#f8fafc}.support-cell-box[data-v-fe550572]{min-height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:2px}.support-main[data-v-fe550572]{font-size:13px;font-weight:800;line-height:1}.support-sub[data-v-fe550572]{font-size:10px;color:#64748b;line-height:1}.support-ok .support-main[data-v-fe550572]{color:#94a3b8}.support-caution[data-v-fe550572]{background:#fff7ed!important}.support-caution .support-main[data-v-fe550572]{color:#c2410c}.support-warn[data-v-fe550572]{background:#fff1f2!important}.support-warn .support-main[data-v-fe550572]{color:#be123c}.support-danger[data-v-fe550572]{background:#fee2e2!important}.support-danger .support-main[data-v-fe550572]{color:#b91c1c}.support-total-col[data-v-fe550572]{background:#eef6ff!important}.virtual-row>td[data-v-fe550572]{background:#f0f9ff!important}.virtual-row>td.sticky-left[data-v-fe550572]{background:#e0f2fe!important}.virtual-staff-col[data-v-fe550572]{background:#e0f2fe!important}.virtual-cell[data-v-fe550572],.virtual-cell-col[data-v-fe550572]{background:#f0f9ff}.virtual-token[data-v-fe550572]{box-shadow:inset 0 0 0 1px #0ea5e940}.virtual-summary-cell .summary-top[data-v-fe550572]{color:#0369a1}.virtual-summary-cell .summary-bottom[data-v-fe550572]{color:#0f766e}.shift-warning-box[data-v-fe550572]{margin-top:16px}.compact-summary-card[data-v-fe550572]{padding:14px 16px}.compact-summary-header[data-v-fe550572]{margin-bottom:8px}.compact-check-area[data-v-fe550572]{margin-top:6px}.compact-check-area h3[data-v-fe550572],.compact-rule-rate-area h3[data-v-fe550572]{margin:0 0 8px;font-size:14px;color:#0f172a}.compact-check-grid[data-v-fe550572]{display:flex;flex-wrap:wrap;gap:8px}.compact-check-item[data-v-fe550572]{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;border:1px solid #dbe2ea;background:#fff;font-size:12px;font-weight:700;line-height:1}.compact-check-item.ok[data-v-fe550572]{background:#f3fbf6;border-color:#b7e4c7;color:#127a43}.compact-check-item.ng[data-v-fe550572]{background:#fff5f5;border-color:#f3c7c7;color:#b42318}.compact-check-label[data-v-fe550572]{white-space:nowrap}.compact-check-value[data-v-fe550572]{white-space:nowrap;opacity:.95}.compact-rule-rate-area[data-v-fe550572]{margin-top:14px}.compact-rule-rate-grid[data-v-fe550572]{display:flex;flex-wrap:wrap;gap:8px}.compact-rule-rate-item[data-v-fe550572]{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;border:1px solid #dbe2ea;background:#f8fafc;font-size:12px;font-weight:700;line-height:1}.compact-rule-rate-name[data-v-fe550572]{color:#334155;white-space:nowrap}.compact-rule-rate-value[data-v-fe550572]{display:inline-flex;align-items:center;justify-content:center;min-width:44px;padding:3px 8px;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:11px;font-weight:800;white-space:nowrap}.warning-box[data-v-fe550572]{padding:10px 12px;border:1px solid #fecaca;background:#fff5f5;border-radius:10px}.warning-line[data-v-fe550572]{color:#b42318;font-size:13px;line-height:1.6;font-weight:600}.warning-line+.warning-line[data-v-fe550572]{margin-top:4px}.action-row[data-v-fe550572]{margin-top:16px;display:flex;gap:10px;justify-content:flex-end}.compact-action-row[data-v-fe550572]{margin-top:14px}.btn[data-v-fe550572]{padding:10px 16px;border-radius:8px;cursor:pointer;border:none}.btn.primary[data-v-fe550572]{background:#2563eb;color:#fff}.btn.success[data-v-fe550572]{background:#15803d;color:#fff}.btn.ghost[data-v-fe550572]{background:#fff;border:1px solid #2563eb;color:#2563eb}.btn[data-v-fe550572]:disabled{opacity:.55;cursor:not-allowed}@media (max-width: 960px){.card-header[data-v-fe550572],.shift-head[data-v-fe550572]{flex-direction:column;align-items:stretch}.shift-head-right[data-v-fe550572]{align-items:stretch}.shift-legend[data-v-fe550572]{justify-content:flex-start}.period-label[data-v-fe550572]{min-width:auto}.action-row[data-v-fe550572]{justify-content:stretch;flex-direction:column}.compact-check-grid[data-v-fe550572],.compact-rule-rate-grid[data-v-fe550572]{gap:6px}.compact-check-item[data-v-fe550572],.compact-rule-rate-item[data-v-fe550572]{font-size:11px}.request-col.cell-set-warning[data-v-fe550572]{box-shadow:inset 0 0 0 1px #fdba74,inset 0 -3px #ea580c}.request-col.cell-single-warning[data-v-fe550572]{box-shadow:inset 0 0 0 1px #c4b5fd,inset 0 -3px #7c3aed}.request-col.cell-shortage-warning[data-v-fe550572]{box-shadow:inset 0 0 0 1px #fecaca,inset 0 -3px #dc2626}}.shift-editor-page[data-v-fe6d32c6]{display:flex;flex-direction:column;gap:16px}.card[data-v-fe6d32c6]{background:#fff;border:1px solid #d9e2f1;border-radius:12px;padding:18px}.shift-card[data-v-fe6d32c6]{overflow:hidden}.shift-head[data-v-fe6d32c6]{display:flex;justify-content:space-between;gap:16px;margin-bottom:12px}.shift-head-left h2[data-v-fe6d32c6]{margin:0}.shift-head-right[data-v-fe6d32c6]{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.month-nav[data-v-fe6d32c6]{display:flex;gap:10px;flex-wrap:wrap}.month-btn[data-v-fe6d32c6]{min-width:140px}.btn-row[data-v-fe6d32c6]{display:flex;gap:10px;flex-wrap:wrap}.loading-box[data-v-fe6d32c6],.error-box[data-v-fe6d32c6]{padding:16px;border-radius:8px}.loading-box[data-v-fe6d32c6]{background:#f8fafc;border:1px solid #e5e7eb}.error-box[data-v-fe6d32c6]{background:#fff5f5;border:1px solid #f3c7c7;color:#b42318}.shift-legend[data-v-fe6d32c6]{display:flex;flex-wrap:wrap;gap:8px;align-content:flex-start;justify-content:flex-end}.legend-chip[data-v-fe6d32c6]{display:inline-flex;align-items:center;gap:8px;padding:5px 10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;font-size:12px}.legend-icon[data-v-fe6d32c6]{width:20px;height:20px;min-width:20px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;box-shadow:inset 0 0 0 1px #ffffff2e}.legend-text[data-v-fe6d32c6]{color:#334155;font-weight:600;line-height:1}.legend-icon.orange[data-v-fe6d32c6]{background:#f59e0b}.legend-icon.blue[data-v-fe6d32c6]{background:#3b82f6}.legend-icon.emerald[data-v-fe6d32c6]{background:#10b981}.legend-icon.violet[data-v-fe6d32c6]{background:#8b5cf6}.legend-icon.rose[data-v-fe6d32c6]{background:#f43f5e}.legend-icon.amber[data-v-fe6d32c6]{background:#d97706}.legend-icon.cyan[data-v-fe6d32c6]{background:#06b6d4}.legend-icon.lime[data-v-fe6d32c6]{background:#65a30d}.legend-icon.indigo[data-v-fe6d32c6]{background:#6366f1}.legend-icon.pink[data-v-fe6d32c6]{background:#ec4899}.legend-icon.gray[data-v-fe6d32c6]{background:#6b7280}.legend-icon.off[data-v-fe6d32c6]{background:#64748b}.legend-icon.paid[data-v-fe6d32c6]{background:#16a34a}.shift-table-wrap[data-v-fe6d32c6]{overflow:auto;border:1px solid #e5e7eb;border-radius:10px}.shift-table[data-v-fe6d32c6]{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;background:#fff}.shift-table th[data-v-fe6d32c6],.shift-table td[data-v-fe6d32c6]{border-right:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb;padding:0;text-align:center;vertical-align:middle;background:#fff}.shift-table thead th[data-v-fe6d32c6]{position:sticky;top:0;z-index:4;background:#f8fafc}.staff-col[data-v-fe6d32c6]{width:132px;min-width:132px;max-width:132px;padding:8px 10px!important;text-align:left!important}.last-col[data-v-fe6d32c6]{width:38px;min-width:38px;max-width:39px}.date-col[data-v-fe6d32c6],.request-col[data-v-fe6d32c6]{width:38px;min-width:37px;max-width:39px}.sticky-left[data-v-fe6d32c6]{position:sticky;left:0;z-index:5;background:#fff!important}.shift-table thead .sticky-left[data-v-fe6d32c6]{z-index:6;background:#f8fafc!important}.shift-day-head[data-v-fe6d32c6],.last-head[data-v-fe6d32c6]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:54px;padding:6px 4px;gap:2px}.shift-day-head .week[data-v-fe6d32c6],.last-head .week[data-v-fe6d32c6]{font-size:11px;font-weight:700;color:#475569}.shift-day-head .date[data-v-fe6d32c6],.last-head .date[data-v-fe6d32c6]{font-size:12px;color:#0f172a}.week.sun[data-v-fe6d32c6]{color:#dc2626!important}.week.sat[data-v-fe6d32c6]{color:#2563eb!important}.staff-name[data-v-fe6d32c6]{display:block;font-weight:700;color:#0f172a;line-height:1.35}.staff-meta[data-v-fe6d32c6]{display:block;margin-top:2px;font-size:12px;color:#64748b;line-height:1.35}.last-day-token[data-v-fe6d32c6]{min-height:48px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}.result-top[data-v-fe6d32c6]{width:100%;min-height:48px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;padding:2px 4px}.empty-cell[data-v-fe6d32c6]{padding:18px!important;text-align:center!important;color:#64748b;background:#fff}.result-top.none[data-v-fe6d32c6],.last-day-token.none[data-v-fe6d32c6]{color:#cbd5e1}.result-top.orange[data-v-fe6d32c6],.last-day-token.orange[data-v-fe6d32c6]{background:#fff7ed;color:#c2410c}.result-top.blue[data-v-fe6d32c6],.last-day-token.blue[data-v-fe6d32c6]{background:#eff6ff;color:#1d4ed8}.result-top.emerald[data-v-fe6d32c6],.last-day-token.emerald[data-v-fe6d32c6]{background:#ecfdf5;color:#047857}.result-top.violet[data-v-fe6d32c6],.last-day-token.violet[data-v-fe6d32c6]{background:#f5f3ff;color:#6d28d9}.result-top.rose[data-v-fe6d32c6],.last-day-token.rose[data-v-fe6d32c6]{background:#fff1f2;color:#be123c}.result-top.amber[data-v-fe6d32c6],.last-day-token.amber[data-v-fe6d32c6]{background:#fffbeb;color:#b45309}.result-top.cyan[data-v-fe6d32c6],.last-day-token.cyan[data-v-fe6d32c6]{background:#ecfeff;color:#0e7490}.result-top.lime[data-v-fe6d32c6],.last-day-token.lime[data-v-fe6d32c6]{background:#f7fee7;color:#4d7c0f}.result-top.indigo[data-v-fe6d32c6],.last-day-token.indigo[data-v-fe6d32c6]{background:#eef2ff;color:#4338ca}.result-top.pink[data-v-fe6d32c6],.last-day-token.pink[data-v-fe6d32c6]{background:#fdf2f8;color:#be185d}.result-top.gray[data-v-fe6d32c6],.last-day-token.gray[data-v-fe6d32c6]{background:#f3f4f6;color:#374151}.result-top.off[data-v-fe6d32c6],.last-day-token.off[data-v-fe6d32c6]{background:#f1f5f9;color:#334155}.result-top.paid[data-v-fe6d32c6],.last-day-token.paid[data-v-fe6d32c6]{background:#f0fdf4;color:#15803d}.btn[data-v-fe6d32c6]{padding:10px 16px;border-radius:8px;cursor:pointer;border:none}.btn.ghost[data-v-fe6d32c6]{background:#fff;border:1px solid #2563eb;color:#2563eb}.btn[data-v-fe6d32c6]:disabled{opacity:.55;cursor:not-allowed}@media (max-width: 960px){.shift-head[data-v-fe6d32c6]{flex-direction:column;align-items:stretch}.shift-head-right[data-v-fe6d32c6]{align-items:stretch}.shift-legend[data-v-fe6d32c6],.month-nav[data-v-fe6d32c6]{justify-content:flex-start}}.page-header[data-v-1d846a36]{margin-bottom:18px}.card-soft[data-v-1d846a36]{border:1px solid #e5e7eb;border-radius:18px;box-shadow:0 10px 28px #0f172a0d;background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%)}.form-card[data-v-1d846a36],.list-card[data-v-1d846a36]{padding:22px}.tab-switch[data-v-1d846a36]{display:flex;gap:10px}.tab-btn[data-v-1d846a36]{min-width:140px;padding:11px 18px;border:1px solid #d7dee7;border-radius:12px;background:#f8fafc;color:#334155;cursor:pointer;font-weight:700;transition:all .2s ease}.tab-btn[data-v-1d846a36]:hover{background:#eef5ff;border-color:#bfd5ff}.tab-btn.active[data-v-1d846a36]{background:linear-gradient(135deg,#1f6feb 0%,#4285f4 100%);color:#fff;border-color:#1f6feb;box-shadow:0 8px 18px #1f6feb38}.section-head[data-v-1d846a36]{margin-bottom:18px}.section-head h2[data-v-1d846a36]{margin:0;font-size:22px;line-height:1.3;color:#0f172a}.section-sub[data-v-1d846a36]{margin:6px 0 0;color:#64748b;font-size:13px}.form-block[data-v-1d846a36]{padding:16px;border:1px solid #edf2f7;border-radius:16px;background:#fcfdff;margin-bottom:14px}.compact-grid[data-v-1d846a36]{display:grid;gap:14px}.form-grid[data-v-1d846a36]{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-form-grid[data-v-1d846a36]{grid-template-columns:1.3fr 1fr 1fr 1fr}.reason-bottom-field[data-v-1d846a36]{margin-top:0}.filter-grid[data-v-1d846a36]{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-filter-grid[data-v-1d846a36]{grid-template-columns:1fr 1fr 1fr 1.4fr 1fr}.compact-field label[data-v-1d846a36]{font-size:12px;margin-bottom:7px;display:block;color:#334155;font-weight:700}.compact-field input[data-v-1d846a36],.compact-field select[data-v-1d846a36],.compact-field textarea[data-v-1d846a36]{width:100%;font-size:14px;border:1px solid #d8e0ea;border-radius:12px;background:#fff;box-sizing:border-box;transition:border-color .2s ease,box-shadow .2s ease}.compact-field input[data-v-1d846a36]:focus,.compact-field select[data-v-1d846a36]:focus,.compact-field textarea[data-v-1d846a36]:focus{outline:none;border-color:#6ea8fe;box-shadow:0 0 0 4px #4285f41f}.compact-field input[data-v-1d846a36],.compact-field select[data-v-1d846a36]{min-height:42px;padding:9px 12px}.compact-field textarea[data-v-1d846a36]{min-height:98px;padding:12px 14px;resize:vertical}.reason-top-field[data-v-1d846a36]{max-width:280px}.reason-bottom-field[data-v-1d846a36]{margin-top:4px}.filter-box[data-v-1d846a36]{margin-bottom:16px;padding:16px;border:1px solid #edf2f7;border-radius:16px;background:linear-gradient(180deg,#f8fbff 0%,#fdfefe 100%)}.action-row[data-v-1d846a36]{display:flex;gap:10px}.compact-actions[data-v-1d846a36]{margin-top:4px}.submit-btn[data-v-1d846a36]{min-width:140px;border-radius:12px}.table-wrap-compact[data-v-1d846a36]{margin-top:4px;border:1px solid #edf2f7;border-radius:16px;overflow:hidden;background:#fff}.request-table[data-v-1d846a36]{width:100%;border-collapse:collapse}.request-table thead th[data-v-1d846a36]{background:#f8fafc;color:#334155;font-weight:700;font-size:13px;padding:13px 12px;border-bottom:1px solid #e5e7eb;white-space:nowrap}.request-table tbody td[data-v-1d846a36]{padding:13px 12px;border-bottom:1px solid #f1f5f9;vertical-align:middle}.request-table tbody tr[data-v-1d846a36]:hover{background:#fafcff}.disabledRow[data-v-1d846a36]{opacity:.58;background:#fcfcfc}.name-cell[data-v-1d846a36]{font-weight:700;white-space:nowrap;color:#0f172a}.mini-type[data-v-1d846a36]{font-size:13px;color:#475569;white-space:nowrap}.status-button-group[data-v-1d846a36]{display:flex;gap:6px;flex-wrap:wrap}.status-btn[data-v-1d846a36]{min-width:64px;padding:6px 10px;font-size:12px;font-weight:700;border:1px solid #d1d5db;border-radius:999px;background:#fff;color:#4b5563;cursor:pointer;transition:all .2s ease}.status-btn[data-v-1d846a36]:hover{background:#f8fafc}.status-btn.active[data-v-1d846a36]{background:#1f6feb;border-color:#1f6feb;color:#fff}.status-btn.approve.active[data-v-1d846a36]{background:#16a34a;border-color:#16a34a;color:#fff}.status-btn.reject.active[data-v-1d846a36]{background:#dc2626;border-color:#dc2626;color:#fff}.toggle-switch[data-v-1d846a36]{position:relative;display:inline-block;width:46px;height:26px}.toggle-switch input[data-v-1d846a36]{opacity:0;width:0;height:0}.toggle-slider[data-v-1d846a36]{position:absolute;top:0;right:0;bottom:0;left:0;cursor:pointer;background:#cbd5e1;border-radius:999px;transition:.25s}.toggle-slider[data-v-1d846a36]:before{content:"";position:absolute;width:20px;height:20px;left:3px;top:3px;background:white;border-radius:50%;transition:.25s;box-shadow:0 1px 4px #0000002e}.toggle-switch input:checked+.toggle-slider[data-v-1d846a36]{background:#22c55e}.toggle-switch input:checked+.toggle-slider[data-v-1d846a36]:before{transform:translate(20px)}.mini-active-badge[data-v-1d846a36]{display:inline-flex;align-items:center;justify-content:center;min-width:52px;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:700}.mini-active-badge.on[data-v-1d846a36]{background:#dcfce7;color:#166534}.mini-active-badge.off[data-v-1d846a36]{background:#f1f5f9;color:#64748b}.edit-btn[data-v-1d846a36]{border-radius:10px}.btn-sm[data-v-1d846a36]{padding:6px 12px;font-size:13px}.empty-cell[data-v-1d846a36]{text-align:center;padding:28px 0;color:#64748b}.badge.green[data-v-1d846a36]{background:#dcfce7;color:#166534}.badge.danger[data-v-1d846a36]{background:#fee2e2;color:#991b1b}@media (max-width: 1200px){.form-grid[data-v-1d846a36],.admin-form-grid[data-v-1d846a36],.filter-grid[data-v-1d846a36],.admin-filter-grid[data-v-1d846a36]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 760px){.form-grid[data-v-1d846a36],.admin-form-grid[data-v-1d846a36],.filter-grid[data-v-1d846a36],.admin-filter-grid[data-v-1d846a36]{grid-template-columns:1fr}.status-button-group[data-v-1d846a36],.tab-switch[data-v-1d846a36]{flex-direction:column}.tab-btn[data-v-1d846a36]{width:100%}.reason-top-field[data-v-1d846a36]{max-width:none}}.card-soft[data-v-6b2cd128]{border:1px solid #e5e7eb;border-radius:18px;box-shadow:0 10px 28px #0f172a0d;background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%)}.edit-card[data-v-6b2cd128]{padding:22px}.section-head[data-v-6b2cd128]{margin-bottom:18px}.section-head h2[data-v-6b2cd128]{margin:0;font-size:22px;line-height:1.3;color:#0f172a}.section-sub[data-v-6b2cd128]{margin:6px 0 0;color:#64748b;font-size:13px}.form-block[data-v-6b2cd128]{padding:16px;border:1px solid #edf2f7;border-radius:16px;background:#fcfdff;margin-bottom:14px}.compact-grid[data-v-6b2cd128]{display:grid;gap:14px}.form-grid[data-v-6b2cd128]{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-form-grid[data-v-6b2cd128]{grid-template-columns:1.3fr 1fr 1fr 1fr}.compact-field label[data-v-6b2cd128]{font-size:12px;margin-bottom:7px;display:block;color:#334155;font-weight:700}.compact-field input[data-v-6b2cd128],.compact-field select[data-v-6b2cd128],.compact-field textarea[data-v-6b2cd128]{width:100%;font-size:14px;border:1px solid #d8e0ea;border-radius:12px;background:#fff;box-sizing:border-box}.compact-field input[data-v-6b2cd128],.compact-field select[data-v-6b2cd128]{min-height:42px;padding:9px 12px}.compact-field textarea[data-v-6b2cd128]{min-height:98px;padding:12px 14px;resize:vertical}.info-box[data-v-6b2cd128]{margin-bottom:16px;padding:14px 16px;border:1px solid #e5e7eb;border-radius:12px;background:#f8fafc;color:#334155;display:grid;gap:6px}.action-row[data-v-6b2cd128]{display:flex;gap:10px}.loading-box[data-v-6b2cd128],.error-box[data-v-6b2cd128]{padding:16px;border-radius:10px}.loading-box[data-v-6b2cd128]{background:#f8fafc;border:1px solid #e5e7eb}.error-box[data-v-6b2cd128]{background:#fff5f5;border:1px solid #f3c7c7;color:#b42318}.btn[data-v-6b2cd128]{padding:10px 16px;border-radius:8px;cursor:pointer;border:none}.btn.primary[data-v-6b2cd128]{background:#2563eb;color:#fff}.btn.ghost[data-v-6b2cd128]{background:#fff;border:1px solid #2563eb;color:#2563eb}@media (max-width: 1200px){.form-grid[data-v-6b2cd128],.admin-form-grid[data-v-6b2cd128]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 760px){.form-grid[data-v-6b2cd128],.admin-form-grid[data-v-6b2cd128]{grid-template-columns:1fr}}.page-toolbar[data-v-7c8bcfb3]{margin-bottom:16px}.toolbar-top[data-v-7c8bcfb3]{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.type-switch[data-v-7c8bcfb3]{display:inline-flex;align-items:center;gap:8px;padding:6px;border:1px solid #d0d7de;border-radius:14px;background:#fff}.type-switch-btn[data-v-7c8bcfb3]{min-width:100px;height:38px;padding:0 16px;border:none;border-radius:10px;background:transparent;color:#334155;font-size:14px;font-weight:700;cursor:pointer;transition:background-color .18s ease,color .18s ease}.type-switch-btn.active[data-v-7c8bcfb3]{background:#2563eb;color:#fff}.toolbar-actions[data-v-7c8bcfb3]{display:flex;justify-content:flex-end;align-items:center;gap:12px;flex-wrap:wrap}.toolbar-btn[data-v-7c8bcfb3]{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:136px;height:42px;padding:0 16px;border:none;border-radius:12px;color:#fff;font-size:14px;font-weight:700;cursor:pointer;box-shadow:0 8px 20px #0f172a1f;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}.toolbar-btn[data-v-7c8bcfb3]:hover{transform:translateY(-1px);box-shadow:0 12px 24px #0f172a29;opacity:.95}.toolbar-btn-create[data-v-7c8bcfb3]{background:linear-gradient(135deg,#2563eb 0%,#1d4ed8 100%)}.toolbar-btn-team[data-v-7c8bcfb3]{background:linear-gradient(135deg,#0f766e 0%,#0d9488 100%)}.toolbar-btn-role[data-v-7c8bcfb3]{background:linear-gradient(135deg,#7c3aed 0%,#9333ea 100%)}.toolbar-btn-icon[data-v-7c8bcfb3]{font-size:16px;line-height:1}.list-head[data-v-7c8bcfb3]{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:10px}.head-left[data-v-7c8bcfb3]{flex:1}.head-right[data-v-7c8bcfb3]{display:flex;align-items:center;gap:12px}.search-block[data-v-7c8bcfb3]{min-width:280px}.search-input[data-v-7c8bcfb3]{width:100%;height:38px;padding:0 12px;border:1px solid #d0d7de;border-radius:10px;font-size:14px;background:#fff}.table-scroll[data-v-7c8bcfb3]{max-height:740px;overflow-y:auto;overflow-x:auto}.table-wrap table[data-v-7c8bcfb3]{width:100%;border-collapse:collapse}.table-wrap thead th[data-v-7c8bcfb3]{position:sticky;top:0;z-index:1;background:#fff}.sortable[data-v-7c8bcfb3]{cursor:pointer;-webkit-user-select:none;user-select:none}.employment-badge[data-v-7c8bcfb3]{display:inline-flex;align-items:center;justify-content:center;min-width:56px;padding:4px 10px;border-radius:9999px;font-size:12px;font-weight:700}.employment-badge.active[data-v-7c8bcfb3]{background:#dcfce7;color:#166534}.employment-badge.leave[data-v-7c8bcfb3]{background:#fef3c7;color:#92400e}.employment-badge.retired[data-v-7c8bcfb3]{background:#e5e7eb;color:#374151}.status-toggle[data-v-7c8bcfb3]{display:inline-flex;align-items:center;gap:10px;min-width:90px;padding:0;border:none;background:transparent;cursor:pointer}.status-toggle[data-v-7c8bcfb3]:disabled{cursor:not-allowed;opacity:.6}.status-toggle-track[data-v-7c8bcfb3]{position:relative;width:48px;height:28px;border-radius:9999px;background:#cbd5e1;transition:background-color .2s ease;flex-shrink:0}.status-toggle-thumb[data-v-7c8bcfb3]{position:absolute;top:3px;left:4px;width:22px;height:22px;border-radius:9999px;background:#fff;box-shadow:0 2px 8px #0f172a29;transition:left .2s ease}.status-toggle-text[data-v-7c8bcfb3]{font-size:13px;font-weight:700;color:#334155}.status-toggle.is-on .status-toggle-track[data-v-7c8bcfb3]{background:#2563eb}.status-toggle.is-on .status-toggle-thumb[data-v-7c8bcfb3]{left:22px}.status-toggle.is-off .status-toggle-track[data-v-7c8bcfb3]{background:#94a3b8}.status-toggle.is-saving .status-toggle-track[data-v-7c8bcfb3]{background:#64748b}.edit-btn[data-v-7c8bcfb3]{display:inline-block;padding:6px 12px;border:1px solid #d0d7de;border-radius:8px;background:#fff;font-size:13px;line-height:1.4;cursor:pointer;transition:background-color .2s ease}.edit-btn[data-v-7c8bcfb3]:hover{background:#f6f8fa}.password-btn[data-v-7c8bcfb3]{display:inline-block;padding:6px 12px;border:1px solid #7c3aed;border-radius:8px;background:#f5f3ff;color:#6d28d9;font-size:13px;line-height:1.4;cursor:pointer;transition:background-color .2s ease}.password-btn[data-v-7c8bcfb3]:hover{background:#ede9fe}.empty-cell[data-v-7c8bcfb3]{text-align:center;padding:16px 8px;color:#6b7280}.error-text[data-v-7c8bcfb3]{margin-top:12px;color:#dc2626;font-size:14px}.modal-overlay[data-v-7c8bcfb3]{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(15,23,42,.45);display:flex;align-items:center;justify-content:center;padding:24px;z-index:1000}.team-modal[data-v-7c8bcfb3]{width:100%;max-width:640px;max-height:85vh;background:#fff;border-radius:18px;box-shadow:0 24px 64px #0f172a2e;overflow:hidden}.modal-head[data-v-7c8bcfb3]{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid #e5e7eb}.modal-head h3[data-v-7c8bcfb3]{margin:0;font-size:20px}.modal-close[data-v-7c8bcfb3]{width:36px;height:36px;border:1px solid #d0d7de;border-radius:9999px;background:#fff;font-size:20px;line-height:1;cursor:pointer}.modal-close[data-v-7c8bcfb3]:hover{background:#f6f8fa}.modal-body[data-v-7c8bcfb3]{padding:20px}.modal-summary[data-v-7c8bcfb3]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px}.summary-card[data-v-7c8bcfb3]{padding:14px 16px;border:1px solid #e5e7eb;border-radius:12px;background:#f8fafc}.summary-label[data-v-7c8bcfb3]{display:block;margin-bottom:6px;color:#64748b;font-size:13px}.summary-card strong[data-v-7c8bcfb3]{font-size:24px}.modal-table-box[data-v-7c8bcfb3]{border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.modal-table[data-v-7c8bcfb3]{width:100%;border-collapse:collapse;table-layout:fixed}.modal-table th[data-v-7c8bcfb3],.modal-table td[data-v-7c8bcfb3]{padding:12px 14px;border-bottom:1px solid #eef2f7;text-align:left}.modal-table th[data-v-7c8bcfb3]:last-child,.modal-table td[data-v-7c8bcfb3]:last-child{width:120px;text-align:right}.modal-table tbody tr:last-child td[data-v-7c8bcfb3]{border-bottom:none}@media (max-width: 768px){.toolbar-top[data-v-7c8bcfb3]{flex-direction:column;align-items:stretch}.type-switch[data-v-7c8bcfb3]{width:100%;justify-content:stretch}.type-switch-btn[data-v-7c8bcfb3]{flex:1}.toolbar-actions[data-v-7c8bcfb3]{justify-content:stretch}.toolbar-btn[data-v-7c8bcfb3]{width:100%}.list-head[data-v-7c8bcfb3]{flex-direction:column;align-items:stretch}.head-right[data-v-7c8bcfb3]{width:100%}.search-block[data-v-7c8bcfb3]{min-width:0;width:100%}.modal-overlay[data-v-7c8bcfb3]{padding:12px}.team-modal[data-v-7c8bcfb3]{max-height:90vh}.modal-summary[data-v-7c8bcfb3]{grid-template-columns:1fr}}.page[data-v-b98fec1f]{display:block}.card[data-v-b98fec1f]{background:#fff;border:1px solid #dcdfe6;border-radius:16px;padding:18px;box-shadow:0 4px 14px #0000000a}.card-head[data-v-b98fec1f]{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}.card-head h2[data-v-b98fec1f]{margin:0;font-size:20px;font-weight:700}.subtle[data-v-b98fec1f]{margin:6px 0 0;color:#6b7280;font-size:13px}.table-wrap[data-v-b98fec1f]{overflow-x:auto;margin-top:10px}table[data-v-b98fec1f]{width:100%;border-collapse:collapse;min-width:1450px}th[data-v-b98fec1f],td[data-v-b98fec1f]{border-bottom:1px solid #e5e7eb;padding:10px 12px;text-align:left;white-space:nowrap;font-size:13px}th[data-v-b98fec1f]{background:#f8fafc;font-weight:700}.state-box[data-v-b98fec1f]{margin-top:12px;padding:14px;border-radius:10px;background:#f8fafc;border:1px solid #e5e7eb}.state-box.error[data-v-b98fec1f]{background:#fff5f5;border-color:#fecaca;color:#b91c1c}.empty-cell[data-v-b98fec1f]{text-align:center;color:#6b7280;padding:24px 12px}.btn-row[data-v-b98fec1f]{display:flex;gap:8px;align-items:center}.btn[data-v-b98fec1f]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:10px;padding:10px 14px;font-size:13px;font-weight:700;cursor:pointer}.btn.primary[data-v-b98fec1f]{background:#2563eb;color:#fff}.btn.ghost[data-v-b98fec1f]{background:#fff;color:#111827;border:1px solid #d1d5db}.btn.sm[data-v-b98fec1f]{padding:7px 10px;font-size:12px}.color-chip[data-v-b98fec1f]{display:inline-flex;align-items:center;justify-content:center;min-width:68px;border-radius:9999px;padding:4px 10px;font-size:12px;font-weight:700;color:#fff}.color-orange[data-v-b98fec1f]{background:#f59e0b}.color-blue[data-v-b98fec1f]{background:#3b82f6}.color-green[data-v-b98fec1f]{background:#10b981}.color-violet[data-v-b98fec1f]{background:#8b5cf6}.color-gray[data-v-b98fec1f]{background:#6b7280}.page[data-v-b2c2bc7f]{display:block}.card[data-v-b2c2bc7f]{background:#fff;border:1px solid #dcdfe6;border-radius:18px;padding:20px;box-shadow:0 6px 18px #0000000d}.card-head[data-v-b2c2bc7f]{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}.card-head h2[data-v-b2c2bc7f]{margin:0;font-size:22px;font-weight:700}.subtle[data-v-b2c2bc7f]{margin:6px 0 0;color:#6b7280;font-size:13px}.btn-row[data-v-b2c2bc7f]{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.btn[data-v-b2c2bc7f]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:10px;padding:10px 14px;font-size:13px;font-weight:700;cursor:pointer}.btn.primary[data-v-b2c2bc7f]{background:#2563eb;color:#fff}.btn.ghost[data-v-b2c2bc7f]{background:#fff;color:#111827;border:1px solid #d1d5db}.btn.danger[data-v-b2c2bc7f]{background:#fff1f2;color:#be123c;border:1px solid #fecdd3}.btn.sm[data-v-b2c2bc7f]{padding:7px 10px;font-size:12px}.btn[data-v-b2c2bc7f]:disabled{opacity:.6;cursor:not-allowed}.state-box[data-v-b2c2bc7f]{margin-bottom:14px;padding:14px;border-radius:10px;background:#f8fafc;border:1px solid #e5e7eb}.state-box.error[data-v-b2c2bc7f]{background:#fff5f5;border-color:#fecaca;color:#b91c1c}.state-box.success[data-v-b2c2bc7f]{background:#f0fdf4;border-color:#86efac;color:#166534}.summary-box[data-v-b2c2bc7f]{display:grid;grid-template-columns:120px 120px 1fr;gap:12px;margin-bottom:16px}.summary-item[data-v-b2c2bc7f]{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:12px 14px}.summary-item.wide[data-v-b2c2bc7f]{min-width:0}.summary-label[data-v-b2c2bc7f]{display:block;font-size:12px;color:#6b7280;margin-bottom:6px}.pattern-text[data-v-b2c2bc7f]{display:block;font-size:13px;color:#111827;line-height:1.6;word-break:break-word}.table-wrap[data-v-b2c2bc7f]{overflow-x:auto}table[data-v-b2c2bc7f]{width:100%;border-collapse:collapse;min-width:980px}th[data-v-b2c2bc7f],td[data-v-b2c2bc7f]{border-bottom:1px solid #e5e7eb;padding:10px 12px;text-align:left;white-space:nowrap;font-size:13px;vertical-align:middle}th[data-v-b2c2bc7f]{background:#f8fafc;font-weight:700}.day-input[data-v-b2c2bc7f],.code-select[data-v-b2c2bc7f]{width:100%;min-height:40px;border:1px solid #d1d5db;border-radius:10px;padding:8px 10px;font-size:14px;box-sizing:border-box;background:#fff}.day-label[data-v-b2c2bc7f]{display:inline-block;font-weight:700;color:#374151}.desc-text[data-v-b2c2bc7f]{color:#4b5563;white-space:normal;line-height:1.5}.empty-cell[data-v-b2c2bc7f]{text-align:center;color:#6b7280;padding:24px 12px}.help-box[data-v-b2c2bc7f]{margin-top:14px;padding:12px 14px;border-radius:10px;background:#f8fafc;border:1px solid #e5e7eb;color:#4b5563;font-size:13px;line-height:1.7}@media (max-width: 900px){.card-head[data-v-b2c2bc7f]{flex-direction:column;align-items:stretch}.summary-box[data-v-b2c2bc7f]{grid-template-columns:1fr}}.settings-page[data-v-4a20b6fd]{display:flex;flex-direction:column;gap:16px}.page-head[data-v-4a20b6fd]{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.page-head h1[data-v-4a20b6fd]{margin:0;font-size:24px;color:#0f172a}.subtext[data-v-4a20b6fd]{margin:6px 0 0;color:#64748b;font-size:14px}.grid[data-v-4a20b6fd]{display:grid;gap:16px}.grid.cols-2[data-v-4a20b6fd]{grid-template-columns:minmax(0,2fr) minmax(280px,1fr)}.card[data-v-4a20b6fd]{background:#fff;border:1px solid #d9e2f1;border-radius:14px;padding:20px;box-shadow:0 2px 10px #0f172a0a}.card-head[data-v-4a20b6fd]{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.card h2[data-v-4a20b6fd]{margin:0;font-size:18px;color:#0f172a}.badge[data-v-4a20b6fd]{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:12px;font-weight:700}.field-group[data-v-4a20b6fd]{display:flex;flex-direction:column;gap:6px;margin-top:14px}.field-group label[data-v-4a20b6fd]{font-weight:700;color:#334155}.input-wrap[data-v-4a20b6fd]{display:flex;align-items:center;gap:10px}.input-wrap input[data-v-4a20b6fd]{width:160px;height:42px;padding:0 12px;border:1px solid #cbd5e1;border-radius:10px;font-size:15px;background:#fff}.input-wrap input[data-v-4a20b6fd]:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.unit[data-v-4a20b6fd]{color:#64748b;font-size:14px;font-weight:600}.field-note[data-v-4a20b6fd]{margin:0;color:#64748b;font-size:12px}.action-row[data-v-4a20b6fd]{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.btn[data-v-4a20b6fd]{min-width:120px;height:42px;padding:0 16px;border:none;border-radius:10px;cursor:pointer;font-weight:700;font-size:14px}.btn.primary[data-v-4a20b6fd]{background:#2563eb;color:#fff}.btn.ghost[data-v-4a20b6fd]{background:#fff;color:#2563eb;border:1px solid #2563eb}.btn[data-v-4a20b6fd]:disabled{opacity:.6;cursor:not-allowed}.info-box[data-v-4a20b6fd],.error-box[data-v-4a20b6fd],.success-box[data-v-4a20b6fd]{padding:12px 14px;border-radius:10px;font-size:14px}.info-box[data-v-4a20b6fd]{background:#f8fafc;border:1px solid #e2e8f0;color:#334155}.error-box[data-v-4a20b6fd]{background:#fff5f5;border:1px solid #fecaca;color:#b42318}.success-box[data-v-4a20b6fd]{margin-top:14px;background:#f0fdf4;border:1px solid #bbf7d0;color:#15803d}.inline-error[data-v-4a20b6fd]{margin-top:12px}.side-card[data-v-4a20b6fd]{align-self:start}.preview-list[data-v-4a20b6fd]{list-style:none;padding:0;margin:14px 0 0;display:flex;flex-direction:column;gap:10px}.preview-list li[data-v-4a20b6fd]{display:flex;justify-content:space-between;gap:10px;padding:10px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.preview-list li span[data-v-4a20b6fd]{color:#475569}.preview-list li strong[data-v-4a20b6fd]{color:#0f172a}@media (max-width: 900px){.grid.cols-2[data-v-4a20b6fd]{grid-template-columns:1fr}.page-head[data-v-4a20b6fd]{flex-direction:column;align-items:stretch}.action-row[data-v-4a20b6fd]{flex-direction:column}.btn[data-v-4a20b6fd]{width:100%}}.card[data-v-0d906057]{background:#fff;border:1px solid #dcdfe6;border-radius:12px;padding:14px;box-shadow:0 4px 12px #0000000a}.page-head[data-v-0d906057]{margin-bottom:10px}.page-head h2[data-v-0d906057]{margin:0;font-size:20px;font-weight:700}.subtle[data-v-0d906057]{margin:4px 0 0;color:#6b7280;font-size:12px}.toolbar[data-v-0d906057]{margin-bottom:10px;display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}.toolbar-left[data-v-0d906057]{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.type-switch[data-v-0d906057]{display:inline-flex;align-items:center;gap:6px;padding:4px;border:1px solid #d0d7de;border-radius:12px;background:#fff}.type-switch-btn[data-v-0d906057]{min-width:82px;height:32px;padding:0 12px;border:none;border-radius:8px;background:transparent;color:#334155;font-size:12px;font-weight:700;cursor:pointer;transition:background-color .18s ease,color .18s ease}.type-switch-btn.active[data-v-0d906057]{background:#2563eb;color:#fff}.search-input[data-v-0d906057]{width:280px;max-width:100%;height:34px;padding:0 10px;border:1px solid #d0d7de;border-radius:8px;font-size:13px;background:#fff}.bulk-actions[data-v-0d906057]{display:flex;gap:6px;flex-wrap:wrap}.bulk-btn[data-v-0d906057]{display:inline-block;padding:6px 10px;border:1px solid #2563eb;border-radius:7px;background:#eff6ff;color:#1d4ed8;font-size:12px;cursor:pointer}.bulk-btn[data-v-0d906057]:hover{background:#dbeafe}.bulk-btn.danger[data-v-0d906057]{border-color:#ef4444;background:#fef2f2;color:#dc2626}.bulk-btn.danger[data-v-0d906057]:hover{background:#fee2e2}.state-box[data-v-0d906057]{margin-bottom:10px;padding:10px 12px;border-radius:8px;background:#f8fafc;border:1px solid #e5e7eb;font-size:13px}.state-box.error[data-v-0d906057]{background:#fff5f5;border-color:#fecaca;color:#b91c1c}.state-box.success[data-v-0d906057]{background:#f0fdf4;border-color:#86efac;color:#166534}.table-wrap[data-v-0d906057]{overflow:auto;max-height:72vh;border:1px solid #e5e7eb;border-radius:10px}table[data-v-0d906057]{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0}th[data-v-0d906057],td[data-v-0d906057]{border-bottom:1px solid #e5e7eb;border-right:1px solid #eef2f7;padding:7px 8px;text-align:left;white-space:nowrap;font-size:12px;vertical-align:middle;background:#fff}th[data-v-0d906057]{position:sticky;top:0;z-index:20;background:#f8fafc;font-weight:700}.col-name[data-v-0d906057],.col-login[data-v-0d906057]{min-width:120px;max-width:120px;width:120px}.col-role[data-v-0d906057]{min-width:96px;max-width:96px;width:96px}.sticky-col[data-v-0d906057]{position:sticky;left:0;z-index:15;background:#fff}th.sticky-col[data-v-0d906057]{z-index:30;background:#f8fafc}.sticky-col-2[data-v-0d906057]{position:sticky;left:120px;z-index:15;background:#fff}th.sticky-col-2[data-v-0d906057]{z-index:30;background:#f8fafc}.sticky-col-3[data-v-0d906057]{position:sticky;left:240px;z-index:15;background:#fff}th.sticky-col-3[data-v-0d906057]{z-index:30;background:#f8fafc}.sticky-save[data-v-0d906057]{position:sticky;right:0;z-index:15;background:#fff;min-width:72px;width:72px}th.sticky-save[data-v-0d906057]{z-index:30;background:#f8fafc}.menu-head[data-v-0d906057]{white-space:normal;min-width:108px;max-width:108px;width:108px}.menu-head-inner[data-v-0d906057]{display:flex;flex-direction:column;gap:5px}.menu-head-label[data-v-0d906057]{line-height:1.25;font-size:11px;min-height:28px}.menu-head-actions[data-v-0d906057]{display:flex;gap:4px}.head-mini-btn[data-v-0d906057]{padding:2px 6px;border:1px solid #2563eb;border-radius:5px;background:#eff6ff;color:#1d4ed8;font-size:10px;cursor:pointer}.head-mini-btn[data-v-0d906057]:hover{background:#dbeafe}.head-mini-btn.danger[data-v-0d906057]{border-color:#ef4444;background:#fef2f2;color:#dc2626}.head-mini-btn.danger[data-v-0d906057]:hover{background:#fee2e2}.check-cell[data-v-0d906057]{text-align:center;padding:6px 4px}.check-cell input[type=checkbox][data-v-0d906057]{width:14px;height:14px}.save-btn[data-v-0d906057]{display:inline-block;padding:5px 8px;border:1px solid #2563eb;border-radius:6px;background:#eff6ff;color:#1d4ed8;font-size:11px;cursor:pointer}.save-btn[data-v-0d906057]:hover{background:#dbeafe}.empty-cell[data-v-0d906057]{text-align:center;color:#6b7280;padding:18px 12px}@media (max-width: 768px){.toolbar-left[data-v-0d906057]{width:100%}.type-switch[data-v-0d906057]{width:100%;justify-content:stretch}.type-switch-btn[data-v-0d906057]{flex:1}.search-input[data-v-0d906057]{width:100%}}.shift-run-list-page[data-v-faf736ed]{display:flex;flex-direction:column;gap:16px}.card[data-v-faf736ed]{background:#fff;border:1px solid #d9e2f1;border-radius:12px;padding:18px}.card-header[data-v-faf736ed]{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}.subtext[data-v-faf736ed]{margin-top:4px;color:#64748b;font-size:14px}.filter-box[data-v-faf736ed]{padding:14px;border:1px solid #e5e7eb;border-radius:10px;background:#f8fafc;margin-bottom:14px}.filter-grid[data-v-faf736ed]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.filter-item[data-v-faf736ed]{display:flex;flex-direction:column;gap:6px}.filter-item label[data-v-faf736ed]{font-size:13px;font-weight:700;color:#334155}.filter-item input[data-v-faf736ed],.filter-item select[data-v-faf736ed]{height:38px;border:1px solid #cbd5e1;border-radius:8px;padding:0 10px;background:#fff}.filter-actions[data-v-faf736ed]{margin-top:12px;display:flex;gap:10px}.loading-box[data-v-faf736ed],.error-box[data-v-faf736ed]{padding:16px;border-radius:8px}.loading-box[data-v-faf736ed]{background:#f8fafc;border:1px solid #e5e7eb}.error-box[data-v-faf736ed]{background:#fff5f5;border:1px solid #f3c7c7;color:#b42318}.table-wrap[data-v-faf736ed]{overflow:auto;border:1px solid #e5e7eb;border-radius:10px}.run-table[data-v-faf736ed]{width:100%;border-collapse:collapse;min-width:1100px}.run-table th[data-v-faf736ed],.run-table td[data-v-faf736ed]{border-bottom:1px solid #e5e7eb;padding:10px 12px;text-align:left;vertical-align:middle;white-space:nowrap}.run-table thead th[data-v-faf736ed]{background:#f8fafc;font-size:13px;color:#334155}.empty-cell[data-v-faf736ed]{text-align:center!important;color:#64748b;padding:20px 0!important}.badge[data-v-faf736ed]{display:inline-flex;align-items:center;justify-content:center;min-width:72px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700}.badge.gray[data-v-faf736ed]{background:#f1f5f9;color:#475569}.badge.green[data-v-faf736ed]{background:#ecfdf5;color:#047857}.badge.amber[data-v-faf736ed]{background:#fffbeb;color:#b45309}.badge.blue[data-v-faf736ed]{background:#eff6ff;color:#1d4ed8}.action-buttons[data-v-faf736ed]{display:flex;gap:8px;flex-wrap:wrap}.pagination-row[data-v-faf736ed]{margin-top:14px;display:flex;align-items:center;justify-content:center;gap:12px}.page-info[data-v-faf736ed]{font-size:14px;font-weight:700;color:#334155}.btn[data-v-faf736ed]{padding:10px 16px;border-radius:8px;cursor:pointer;border:none}.btn.small[data-v-faf736ed]{padding:7px 10px;font-size:12px}.btn.primary[data-v-faf736ed]{background:#2563eb;color:#fff}.btn.success[data-v-faf736ed]{background:#15803d;color:#fff}.btn.ghost[data-v-faf736ed]{background:#fff;border:1px solid #2563eb;color:#2563eb}.btn[data-v-faf736ed]:disabled{opacity:.55;cursor:not-allowed}@media (max-width: 960px){.filter-grid[data-v-faf736ed]{grid-template-columns:repeat(2,minmax(0,1fr))}}.assign-result-page[data-v-59e4536b]{display:flex;flex-direction:column;gap:16px}.card[data-v-59e4536b]{background:#fff;border:1px solid #d9e2f1;border-radius:12px;padding:18px}.card-header[data-v-59e4536b]{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}.subtext[data-v-59e4536b]{margin-top:4px;color:#666;font-size:14px}.btn-row[data-v-59e4536b]{display:flex;gap:10px;flex-wrap:wrap}.period-info[data-v-59e4536b]{margin-top:10px;padding:10px 12px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px}.period-row[data-v-59e4536b]{display:flex;flex-wrap:wrap;gap:8px;line-height:1.7}.period-row+.period-row[data-v-59e4536b]{margin-top:4px}.period-label[data-v-59e4536b]{font-weight:700;color:#334155;min-width:150px}.period-value[data-v-59e4536b]{color:#0f172a}.loading-box[data-v-59e4536b],.error-box[data-v-59e4536b]{padding:16px;border-radius:8px}.loading-box[data-v-59e4536b]{background:#f8fafc;border:1px solid #e5e7eb}.error-box[data-v-59e4536b]{background:#fff5f5;border:1px solid #f3c7c7;color:#b42318}.success-box[data-v-59e4536b]{margin-top:12px;padding:12px 14px;border-radius:8px;background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}.shift-head[data-v-59e4536b]{display:flex;justify-content:space-between;gap:16px;margin-top:20px;margin-bottom:12px}.shift-head-right[data-v-59e4536b]{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.shift-legend[data-v-59e4536b]{display:flex;flex-wrap:wrap;gap:8px;align-content:flex-start;justify-content:flex-end}.legend-chip[data-v-59e4536b]{display:inline-flex;align-items:center;gap:8px;padding:5px 10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;font-size:12px}.legend-icon[data-v-59e4536b]{width:20px;height:20px;min-width:20px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff}.legend-text[data-v-59e4536b]{color:#334155;font-weight:600;line-height:1}.shift-table-wrap[data-v-59e4536b]{overflow:auto;border:1px solid #e5e7eb;border-radius:10px;background:#fff}.shift-table[data-v-59e4536b]{width:100%;border-collapse:collapse;table-layout:fixed;min-width:max-content}.shift-table th[data-v-59e4536b],.shift-table td[data-v-59e4536b]{border:1px solid #e5e7eb;padding:0;text-align:center;vertical-align:middle}.shift-table thead th[data-v-59e4536b]{position:sticky;top:0;z-index:5;background:#f8fafc}.staff-col[data-v-59e4536b]{width:102px;min-width:100px;max-width:120px;padding:8px 10px!important;text-align:left!important;background:#fff}.sticky-left[data-v-59e4536b]{position:sticky;left:0;z-index:4;background:#fff}.shift-table thead .sticky-left[data-v-59e4536b]{z-index:8;background:#f8fafc}.last-col[data-v-59e4536b]{width:38px;min-width:38px;max-width:39px}.date-col[data-v-59e4536b],.request-col[data-v-59e4536b]{width:38px;min-width:37px;max-width:39px}.summary-col[data-v-59e4536b]{width:55px;min-width:55px;max-width:55px}.last-head[data-v-59e4536b],.shift-day-head[data-v-59e4536b],.summary-head[data-v-59e4536b]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:54px;padding:6px 4px;gap:2px}.week[data-v-59e4536b]{font-size:10px;color:#64748b;font-weight:700}.week.sun[data-v-59e4536b]{color:#dc2626}.week.sat[data-v-59e4536b]{color:#2563eb}.date[data-v-59e4536b]{font-size:11px;color:#0f172a;font-weight:700}.staff-name[data-v-59e4536b]{display:block;font-weight:700;color:#0f172a;line-height:1.35}.last-day-token[data-v-59e4536b]{min-height:48px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}.request-cell[data-v-59e4536b]{display:flex;flex-direction:column;min-height:48px}.request-cell.single-line[data-v-59e4536b]{justify-content:center;align-items:center}.request-select.simple[data-v-59e4536b]{width:100%;height:48px;border:none;border-radius:0;padding:0;margin:0;text-align:center;text-align-last:center;font-size:13px;font-weight:700;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;box-shadow:none;outline:none;cursor:pointer}.compact-summary-cell[data-v-59e4536b]{min-height:48px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700}.warning-box[data-v-59e4536b]{margin-top:12px;padding:14px 16px;border-radius:10px;background:#fff7ed;border:1px solid #fdba74}.warning-line[data-v-59e4536b]{font-size:13px;color:#9a3412;line-height:1.7}.action-panel[data-v-59e4536b]{margin-top:14px}.action-row[data-v-59e4536b]{display:flex;gap:10px;justify-content:flex-end}.btn[data-v-59e4536b]{padding:10px 16px;border-radius:8px;cursor:pointer;border:none}.btn.primary[data-v-59e4536b]{background:#2563eb;color:#fff}.btn.success[data-v-59e4536b]{background:#15803d;color:#fff}.btn.ghost[data-v-59e4536b]{background:#fff;border:1px solid #2563eb;color:#2563eb}.btn[data-v-59e4536b]:disabled{opacity:.55;cursor:not-allowed}.legend-icon.orange[data-v-59e4536b]{background:#f59e0b;color:#fff}.legend-icon.blue[data-v-59e4536b]{background:#3b82f6;color:#fff}.legend-icon.emerald[data-v-59e4536b]{background:#10b981;color:#fff}.legend-icon.violet[data-v-59e4536b]{background:#8b5cf6;color:#fff}.legend-icon.rose[data-v-59e4536b]{background:#f43f5e;color:#fff}.legend-icon.amber[data-v-59e4536b]{background:#d97706;color:#fff}.legend-icon.cyan[data-v-59e4536b]{background:#06b6d4;color:#fff}.legend-icon.lime[data-v-59e4536b]{background:#65a30d;color:#fff}.legend-icon.indigo[data-v-59e4536b]{background:#6366f1;color:#fff}.legend-icon.pink[data-v-59e4536b]{background:#ec4899;color:#fff}.legend-icon.gray[data-v-59e4536b]{background:#6b7280;color:#fff}.legend-icon.off[data-v-59e4536b]{background:#64748b;color:#fff}.legend-icon.paid[data-v-59e4536b]{background:#16a34a;color:#fff}.request-select.simple.orange[data-v-59e4536b]{background:#fff7ed;color:#9a3412}.request-select.simple.blue[data-v-59e4536b]{background:#eff6ff;color:#1d4ed8}.request-select.simple.emerald[data-v-59e4536b]{background:#ecfdf5;color:#047857}.request-select.simple.violet[data-v-59e4536b]{background:#f5f3ff;color:#6d28d9}.request-select.simple.rose[data-v-59e4536b]{background:#fff1f2;color:#be123c}.request-select.simple.amber[data-v-59e4536b]{background:#fffbeb;color:#b45309}.request-select.simple.cyan[data-v-59e4536b]{background:#ecfeff;color:#0e7490}.request-select.simple.lime[data-v-59e4536b]{background:#f7fee7;color:#4d7c0f}.request-select.simple.indigo[data-v-59e4536b]{background:#eef2ff;color:#4338ca}.request-select.simple.pink[data-v-59e4536b]{background:#fdf2f8;color:#be185d}.request-select.simple.gray[data-v-59e4536b]{background:#f3f4f6;color:#374151}.request-select.simple.off[data-v-59e4536b]{background:#f8fafc;color:#475569}.request-select.simple.paid[data-v-59e4536b]{background:#f0fdf4;color:#166534}.request-select.simple.none[data-v-59e4536b]{background:#ffffff;color:#94a3b8}.set-warning-select[data-v-59e4536b]{box-shadow:inset 0 0 0 2px #ef4444}.none[data-v-59e4536b]{background:#ffffff;color:#94a3b8}@media (max-width: 768px){.card-header[data-v-59e4536b],.shift-head[data-v-59e4536b]{flex-direction:column;align-items:flex-start}.shift-head-right[data-v-59e4536b]{align-items:flex-start}}.page-head[data-v-32a38a2c]{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.edit-form[data-v-32a38a2c]{margin-top:8px}.form-grid[data-v-32a38a2c]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-group[data-v-32a38a2c]{display:flex;flex-direction:column;gap:6px}.form-group label[data-v-32a38a2c]{font-weight:600;font-size:14px}.form-group input[data-v-32a38a2c],.form-group select[data-v-32a38a2c]{height:40px;padding:0 12px;border:1px solid #d0d7de;border-radius:8px;font-size:14px;background:#fff}.form-actions[data-v-32a38a2c]{margin-top:20px}.save-btn[data-v-32a38a2c],.back-btn[data-v-32a38a2c]{display:inline-block;padding:10px 16px;border:1px solid #d0d7de;border-radius:8px;background:#fff;cursor:pointer}.save-btn[data-v-32a38a2c]:hover,.back-btn[data-v-32a38a2c]:hover{background:#f6f8fa}.save-btn[data-v-32a38a2c]:disabled{opacity:.6;cursor:not-allowed}.error-text[data-v-32a38a2c]{margin-top:16px;color:#dc2626}.success-text[data-v-32a38a2c]{margin-top:16px;color:#16a34a}@media (max-width: 768px){.form-grid[data-v-32a38a2c]{grid-template-columns:1fr}}.page-head[data-v-527d7645]{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.edit-form[data-v-527d7645]{margin-top:8px}.form-grid[data-v-527d7645]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-group[data-v-527d7645]{display:flex;flex-direction:column;gap:6px}.form-group label[data-v-527d7645]{font-weight:600;font-size:14px}.form-group input[data-v-527d7645],.form-group select[data-v-527d7645]{height:40px;padding:0 12px;border:1px solid #d0d7de;border-radius:8px;font-size:14px;background:#fff}.form-actions[data-v-527d7645]{margin-top:20px}.save-btn[data-v-527d7645],.back-btn[data-v-527d7645]{display:inline-block;padding:10px 16px;border:1px solid #d0d7de;border-radius:8px;background:#fff;cursor:pointer}.save-btn[data-v-527d7645]:hover,.back-btn[data-v-527d7645]:hover{background:#f6f8fa}.save-btn[data-v-527d7645]:disabled{opacity:.6;cursor:not-allowed}.info-text[data-v-527d7645]{color:#6b7280}.error-text[data-v-527d7645]{margin-top:16px;color:#dc2626}.success-text[data-v-527d7645]{margin-top:16px;color:#16a34a}@media (max-width: 768px){.form-grid[data-v-527d7645]{grid-template-columns:1fr}}.page-head[data-v-530b25f7]{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.driver-summary[data-v-530b25f7]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:20px}.summary-item[data-v-530b25f7]{padding:14px 16px;border:1px solid #e5e7eb;border-radius:12px;background:#f8fafc}.summary-label[data-v-530b25f7]{display:block;margin-bottom:6px;color:#64748b;font-size:13px}.edit-form[data-v-530b25f7]{margin-top:8px}.form-grid.one-column[data-v-530b25f7]{display:grid;grid-template-columns:1fr;gap:16px}.form-group[data-v-530b25f7]{display:flex;flex-direction:column;gap:6px}.form-group label[data-v-530b25f7]{font-weight:600;font-size:14px}.form-group input[data-v-530b25f7]{height:40px;padding:0 12px;border:1px solid #d0d7de;border-radius:8px;font-size:14px;background:#fff}.input-hint[data-v-530b25f7]{margin:0;color:#64748b;font-size:12px}.form-actions[data-v-530b25f7]{margin-top:20px}.save-btn[data-v-530b25f7],.back-btn[data-v-530b25f7]{display:inline-block;padding:10px 16px;border:1px solid #d0d7de;border-radius:8px;background:#fff;cursor:pointer}.save-btn[data-v-530b25f7]:hover,.back-btn[data-v-530b25f7]:hover{background:#f6f8fa}.save-btn[data-v-530b25f7]:disabled{opacity:.6;cursor:not-allowed}.info-text[data-v-530b25f7]{color:#6b7280}.error-text[data-v-530b25f7]{margin-top:16px;color:#dc2626}.success-text[data-v-530b25f7]{margin-top:16px;color:#16a34a}@media (max-width: 768px){.driver-summary[data-v-530b25f7]{grid-template-columns:1fr}}.change-password-card[data-v-98905836]{max-width:400px;margin:40px auto}.form-group[data-v-98905836]{margin-bottom:12px}input[data-v-98905836]{width:100%;height:36px}button[data-v-98905836]{margin-top:12px}.error[data-v-98905836]{color:red}.success[data-v-98905836]{color:green}.page[data-v-dbffa542]{display:block}.card[data-v-dbffa542]{background:#fff;border:1px solid #dcdfe6;border-radius:16px;padding:18px;box-shadow:0 4px 14px #0000000a}.card-head[data-v-dbffa542]{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}.card-head h2[data-v-dbffa542]{margin:0;font-size:20px;font-weight:700}.subtle[data-v-dbffa542]{margin:6px 0 0;color:#6b7280;font-size:13px}.form-wrap[data-v-dbffa542]{margin-top:10px}.form-grid[data-v-dbffa542]{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:16px}.field-group[data-v-dbffa542]{display:flex;flex-direction:column;gap:6px}.field-group label[data-v-dbffa542]{font-size:13px;font-weight:700;color:#374151}.field-group input[data-v-dbffa542],.field-group select[data-v-dbffa542]{width:100%;min-height:42px;border:1px solid #d1d5db;border-radius:10px;padding:10px 12px;font-size:14px;box-sizing:border-box;background:#fff}.checkbox-group[data-v-dbffa542]{justify-content:flex-end}.checkbox-label[data-v-dbffa542]{display:inline-flex;align-items:center;gap:8px;min-height:42px;font-size:14px;font-weight:700;color:#111827}.checkbox-label input[data-v-dbffa542]{width:18px;height:18px}.preview-box[data-v-dbffa542]{margin-top:18px;padding:14px 16px;border:1px solid #e5e7eb;border-radius:12px;background:#f8fafc}.preview-row[data-v-dbffa542]{display:flex;align-items:center;justify-content:space-between;gap:12px}.preview-label[data-v-dbffa542]{font-size:13px;color:#6b7280}.preview-value[data-v-dbffa542]{font-size:15px;font-weight:700;color:#111827}.state-box[data-v-dbffa542]{margin-bottom:14px;padding:14px;border-radius:10px;background:#f8fafc;border:1px solid #e5e7eb}.state-box.error[data-v-dbffa542]{background:#fff5f5;border-color:#fecaca;color:#b91c1c}.state-box.success[data-v-dbffa542]{background:#f0fdf4;border-color:#86efac;color:#166534}.btn-row[data-v-dbffa542]{display:flex;gap:8px;align-items:center}.submit-row[data-v-dbffa542]{justify-content:flex-end;margin-top:20px}.btn[data-v-dbffa542]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:10px;padding:10px 14px;font-size:13px;font-weight:700;cursor:pointer}.btn.primary[data-v-dbffa542]{background:#2563eb;color:#fff}.btn.ghost[data-v-dbffa542]{background:#fff;color:#111827;border:1px solid #d1d5db}.btn[data-v-dbffa542]:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 900px){.form-grid[data-v-dbffa542]{grid-template-columns:1fr}.card-head[data-v-dbffa542]{flex-direction:column;align-items:stretch}.submit-row[data-v-dbffa542]{justify-content:stretch}.submit-row .btn[data-v-dbffa542]{flex:1}}.page-head[data-v-b5cfb1f4]{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.edit-form[data-v-b5cfb1f4]{margin-top:8px}.form-grid[data-v-b5cfb1f4]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-group[data-v-b5cfb1f4]{display:flex;flex-direction:column;gap:6px}.form-group label[data-v-b5cfb1f4]{font-weight:600;font-size:14px}.form-group input[data-v-b5cfb1f4],.form-group select[data-v-b5cfb1f4]{height:40px;padding:0 12px;border:1px solid #d0d7de;border-radius:8px;font-size:14px;background:#fff}.form-actions[data-v-b5cfb1f4]{margin-top:20px}.save-btn[data-v-b5cfb1f4],.back-btn[data-v-b5cfb1f4]{display:inline-block;padding:10px 16px;border:1px solid #d0d7de;border-radius:8px;background:#fff;cursor:pointer}.save-btn[data-v-b5cfb1f4]:hover,.back-btn[data-v-b5cfb1f4]:hover{background:#f6f8fa}.save-btn[data-v-b5cfb1f4]:disabled{opacity:.6;cursor:not-allowed}.error-text[data-v-b5cfb1f4]{margin-top:16px;color:#dc2626}.success-text[data-v-b5cfb1f4]{margin-top:16px;color:#16a34a}@media (max-width: 768px){.form-grid[data-v-b5cfb1f4]{grid-template-columns:1fr}}.page-head[data-v-6c7929fb]{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.edit-form[data-v-6c7929fb]{margin-top:8px}.form-grid[data-v-6c7929fb]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-group[data-v-6c7929fb]{display:flex;flex-direction:column;gap:6px}.form-group label[data-v-6c7929fb]{font-weight:600;font-size:14px}.form-group input[data-v-6c7929fb],.form-group select[data-v-6c7929fb]{height:40px;padding:0 12px;border:1px solid #d0d7de;border-radius:8px;font-size:14px;background:#fff}.form-actions[data-v-6c7929fb]{margin-top:20px}.save-btn[data-v-6c7929fb],.back-btn[data-v-6c7929fb]{display:inline-block;padding:10px 16px;border:1px solid #d0d7de;border-radius:8px;background:#fff;cursor:pointer}.save-btn[data-v-6c7929fb]:hover,.back-btn[data-v-6c7929fb]:hover{background:#f6f8fa}.save-btn[data-v-6c7929fb]:disabled{opacity:.6;cursor:not-allowed}.error-text[data-v-6c7929fb]{margin-top:16px;color:#dc2626}.success-text[data-v-6c7929fb]{margin-top:16px;color:#16a34a}.loading-text[data-v-6c7929fb]{color:#475569}@media (max-width: 768px){.form-grid[data-v-6c7929fb]{grid-template-columns:1fr}}
