*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scrollbar-gutter:stable}:root{--page-narrow: 680px;--page-wide: 1180px;--page-full: 1440px;--bg: #F7F6F3;--surface: #FFFFFF;--primary: #0F766E;--primary-soft: #DFF3EE;--primary-hover: #0D6B63;--text-primary: #1F2937;--text-secondary: #6B7280;--text-tertiary: #4B5563;--border: #E5E7EB;--success: #16A34A;--success-soft: #D1FAE5;--danger: #DC2626;--danger-soft: #FEE2E2;--danger-strong: #991B1B;--warning: #D97706;--warning-soft: #FFF7ED;--info: #3B82F6;--info-soft: #EFF6FF;--neutral-soft: #F3F4F6;--amber-soft: #FEF3C7;--urgent-soft: #FCA5A5;--success-strong: #065F46;--warning-strong: #92400E;--danger-border: #EF4444;--success-banner-bg: #ECFDF5;--success-banner-text: #047857;--success-banner-border: #A7F3D0;--chart-1: #2563eb;--chart-2: #16a34a;--chart-3: #0891b2;--chart-4: #4f46e5;--chart-5: #d97706;--chart-6: #0f766e;--chart-7: #7c3aed;--chart-8: #15803d;--chart-9: #db2777;--chart-10: #dc2626;--chart-11: #ca8a04;--chart-12: #059669;--chart-13: #ea580c;--amber: #D97706;--cool-gray: #9CA3AF;--error: #DC2626;--urgent: #DC2626;--radius: 12px;--radius-sm: 8px;--shadow: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 12px rgba(0,0,0,.08);--shadow-hover: 0 4px 16px rgba(0,0,0,.12);--shadow-lg: 0 8px 24px rgba(0,0,0,.14);--state-hover-overlay: rgba(17, 24, 39, .04);--state-hover-strong: rgba(17, 24, 39, .08);--state-active-overlay: rgba(17, 24, 39, .12);--state-focus-ring: rgba(15, 118, 110, .28);--state-focus-border: var(--primary);--state-focus-offset: 2px;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-hover: cubic-bezier(.2, 0, .2, 1);--duration-fast: .15s;--duration-normal: .25s;--duration-hover: .15s;--font-display: "Pretendard", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body: "Pretendard", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}body{font-family:var(--font-body);background:var(--bg);color:var(--text-primary);line-height:1.55;-webkit-font-smoothing:antialiased;min-width:320px}#root{min-height:100vh}.layout-narrow{--page-width: var(--page-narrow)}.layout-wide{--page-width: var(--page-wide)}.layout-full{--page-width: var(--page-full)}.status-badge{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600;white-space:nowrap;flex-shrink:0}.badge-pending{background:var(--info-soft);color:var(--info)}.badge-approved{background:var(--success-soft);color:var(--success-strong)}.badge-rejected{background:var(--danger-soft);color:var(--danger-strong)}.badge-cancelled{background:var(--neutral-soft);color:var(--cool-gray)}.badge-noshow{background:var(--danger-soft);color:var(--danger)}.badge-late,.badge-leftearly{background:var(--warning-soft);color:var(--warning-strong)}.badge-superseded{background:var(--neutral-soft);color:var(--cool-gray);text-decoration:line-through}.badge-expired{background:var(--neutral-soft);color:var(--cool-gray)}a{color:var(--primary);text-decoration:none}a:focus-visible{outline:2px solid var(--state-focus-ring);outline-offset:var(--state-focus-offset)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border-radius:var(--radius-sm);font-size:14px;font-weight:500;text-decoration:none;border:none;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background-color var(--duration-hover) var(--ease-hover),border-color var(--duration-hover) var(--ease-hover),color var(--duration-hover) var(--ease-hover),box-shadow var(--duration-hover) var(--ease-hover),transform var(--duration-hover) var(--ease-hover)}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-hover)}.btn-ghost{background:transparent;color:var(--text-secondary);border:1px solid var(--border)}.btn-ghost:hover{background:var(--state-hover-overlay);color:var(--text-primary);border-color:var(--cool-gray)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:var(--danger-strong);transform:translateY(-1px);box-shadow:var(--shadow-hover)}.btn-ghost-danger{background:transparent;color:var(--danger);border:1px solid var(--danger)}.btn-ghost-danger:hover{background:var(--danger-soft)}.btn-icon{display:inline-flex;align-items:center;gap:6px}.btn:active{transform:translateY(1px);box-shadow:none}.btn:focus-visible{outline:2px solid var(--state-focus-ring);outline-offset:var(--state-focus-offset)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.input{width:100%;padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:14px;font-family:inherit;outline:none;transition:border-color var(--duration-hover) var(--ease-hover),box-shadow var(--duration-hover) var(--ease-hover),background-color var(--duration-hover) var(--ease-hover);background:var(--surface)}select.input{font-family:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 24px center;padding-right:36px}.input:hover{border-color:var(--cool-gray)}.input:focus{border-color:var(--state-focus-border);box-shadow:0 0 0 3px var(--state-focus-ring)}.input:focus-visible{border-color:var(--state-focus-border);box-shadow:0 0 0 3px var(--state-focus-ring)}.label{display:block;font-size:13px;font-weight:600;color:var(--text-secondary);margin-bottom:4px}.form-group{margin-bottom:16px}.btn-sm{padding:6px 12px;font-size:12px}.app-header{background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100}.app-header-inner{max-width:var(--page-wide);margin:0 auto;padding:12px 20px;display:flex;align-items:center;justify-content:space-between}.app-header-actions{display:flex;align-items:center;gap:8px}.app-header-user{font-size:13px;font-weight:500;color:var(--text-primary);margin-right:4px;white-space:nowrap}.app-header-menu-toggle{display:none;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;background:transparent;color:var(--text-primary);cursor:pointer}.app-header-menu-icon{display:flex;flex-direction:column;gap:4px;width:20px}.app-header-menu-icon span{display:block;width:100%;height:2px;border-radius:999px;background:currentColor}.app-header-mobile-menu-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.app-header-mobile-menu-title{margin:0;font-size:16px;font-weight:700;color:var(--text-primary)}.app-header-mobile-menu-close{padding:4px;border:none;background:transparent;font-size:18px;line-height:1;color:var(--text-secondary);cursor:pointer}.app-header-mobile-menu-user{padding-bottom:12px;margin:0 0 12px;border-bottom:1px solid var(--border);font-size:13px;color:var(--text-secondary)}.app-header-mobile-menu-nav{display:flex;flex-direction:column}.app-header-mobile-menu-link{display:block;width:100%;padding:14px 4px;border:none;border-bottom:1px solid var(--border);background:transparent;font:inherit;font-size:15px;color:var(--text-primary);text-align:left;text-decoration:none;cursor:pointer}.app-header-mobile-menu-link:last-child{border-bottom:none}.app-header-mobile-menu-logout{color:var(--danger)}.app-header-mobile-menu-primary{color:var(--primary);font-weight:700}.app-header-menu-toggle:focus-visible,.app-header-mobile-menu-close:focus-visible,.app-header-mobile-menu-link:focus-visible{outline:2px solid var(--state-focus-border);outline-offset:var(--state-focus-offset)}@media(max-width:640px){.app-header-actions{display:none}.app-header-menu-toggle{display:inline-flex}.modal-shell.app-header-mobile-menu{width:82vw;max-width:300px;height:100%;max-height:none;margin-left:auto;border-radius:0;animation:app-header-mobile-menu-enter var(--duration-normal) var(--ease-out) both}.modal-shell-backdrop:has(.app-header-mobile-menu){justify-content:flex-end;align-items:stretch;padding:0}}@keyframes app-header-mobile-menu-enter{0%{transform:translate3d(100%,0,0)}to{transform:translateZ(0)}}@media(prefers-reduced-motion:reduce){.modal-shell.app-header-mobile-menu{animation:none}}.empty-state-block{display:flex;flex-direction:column;align-items:center;padding:60px 20px;color:var(--text-secondary);text-align:center}.empty-state-icon{color:var(--cool-gray);margin-bottom:12px}.empty-state-title{font-size:14px;font-weight:600;color:var(--text-secondary)}.empty-state-desc{font-size:13px;color:var(--cool-gray);margin-top:4px}.empty-state-action{margin-top:16px}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-cell,.skeleton-line{height:14px;border-radius:4px;background:linear-gradient(90deg,var(--border) 25%,var(--neutral-soft) 50%,var(--border) 75%);background-size:200% 100%;animation:shimmer 1.4s infinite}.skeleton-row td{padding:14px 12px;border-bottom:1px solid var(--border)}.skeleton-card-list{display:flex;flex-direction:column;gap:12px}.skeleton-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px}.skeleton-line{height:12px}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}.page-enter,.empty-state-block,.skeleton-cell,.skeleton-line{animation:none}}.shift-card{display:block;width:100%;background:var(--surface);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--border);color:inherit;text-decoration:none;transition:box-shadow .15s ease,border-color .15s ease,opacity .15s ease}.shift-card--button{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;font:inherit;text-align:left}.shift-card--clickable{cursor:pointer}.shift-card--clickable:hover{box-shadow:var(--shadow-md);border-color:var(--primary)}.shift-card--clickable:focus-visible{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.shift-card--closed{opacity:.72}.shift-card--closed.shift-card--clickable:hover{border-color:var(--border);box-shadow:var(--shadow)}.shift-card--unavailable{cursor:default}.card-body{padding:14px 16px;display:flex;flex-direction:column;gap:6px}.card-header{display:flex;justify-content:space-between;align-items:flex-start}.card-title{font-size:16px;font-weight:700;color:var(--text-primary);line-height:1.35}.card-workplace{font-size:13px;font-weight:500;color:var(--text-secondary);line-height:1.3;margin-top:2px}.card-task{font-size:13px;color:var(--text-secondary);margin-top:1px}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600;flex-shrink:0;margin-left:8px}.badge-open{background:var(--primary-soft);color:var(--primary)}.badge-closing{background:var(--amber-soft);color:var(--amber)}.badge-closed{background:var(--neutral-soft);color:var(--cool-gray)}.badge-urgent{background:var(--danger-soft);color:var(--urgent)}.shift-card--urgent{border-color:var(--urgent-soft)}.card-tags{display:flex;flex-wrap:wrap;gap:4px}.tag{font-size:11px;font-weight:500;color:var(--primary);background:var(--primary-soft);padding:2px 8px;border-radius:4px}.tag.neutral{color:var(--text-secondary);background:var(--neutral-soft)}.card-info{display:flex;flex-wrap:wrap;gap:4px 12px}.card-info-item{font-size:12px;color:var(--text-secondary);display:flex;align-items:center;gap:3px}.card-pay-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-top:2px}.card-pay-copy{min-width:0}.card-pay{font-size:15px;font-weight:700;color:var(--primary)}.card-tax-reference{display:grid;gap:2px;margin-top:3px;color:var(--text-secondary);font-size:11px;line-height:1.35}.card-tax-reference small{font-size:10px}.card-daily{flex-shrink:0;font-size:12px;color:var(--text-secondary);background:var(--bg);padding:1px 6px;border-radius:3px}.card-daily strong{color:var(--text-primary);font-weight:600}.card-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:auto;padding-top:8px;border-top:1px solid var(--border)}.card-bottom-meta{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.card-slots{font-size:12px;color:var(--text-secondary)}.card-slots strong{color:var(--primary);font-weight:600}.card-dday{font-size:11px;font-weight:600;color:var(--primary);background:var(--primary-soft);padding:2px 7px;border-radius:4px}.card-dday.soon{color:var(--amber);background:var(--amber-soft)}.card-link-hint{font-size:12px;font-weight:700;color:var(--primary);white-space:nowrap}.card-link-hint.unavailable{color:var(--cool-gray)}.site-footer{padding:28px 20px;font-size:12px;color:var(--cool-gray);border-top:1px solid var(--border);background:var(--surface)}.site-footer-biz{max-width:720px;margin:0 auto 12px;display:flex;flex-direction:column;gap:4px}.site-footer-line{display:flex;flex-wrap:wrap;justify-content:center;line-height:1.7}.site-footer-line strong{color:var(--text-secondary);font-weight:600}.site-footer-line>*+*:before{content:"·";margin:0 8px;color:var(--border)}.site-footer-legal{max-width:720px;margin:0 auto;padding-top:12px;border-top:1px solid var(--border);text-align:center}.site-footer-legal a{color:inherit;text-decoration:underline}@media(max-width:640px){.site-footer-line{flex-direction:column}.site-footer-line>*+*:before{content:none}}.header{background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100}.header-inner{max-width:960px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;justify-content:space-between}.logo{font-size:20px;font-weight:700;color:var(--primary);text-decoration:none;letter-spacing:-.5px}.header-actions{display:flex;gap:8px;align-items:center}.header-user-info{font-size:13px;color:var(--text-secondary);padding:0 4px}.hero{background:var(--surface);padding:60px 20px 48px;overflow:hidden;position:relative}.hero:before{content:"";position:absolute;top:0;right:0;width:50%;height:100%;background:radial-gradient(circle at top right,var(--primary-soft) 0%,transparent 60%);pointer-events:none}.hero-inner{max-width:960px;margin:0 auto;display:flex;align-items:center;gap:40px}.hero-text{flex:6;min-width:0}.hero-visual{flex:4;display:flex;justify-content:flex-end;align-items:center}.hero h1{font-size:32px;font-weight:800;letter-spacing:-.02em;margin-bottom:12px;line-height:1.25;animation:fadeUp .4s var(--ease-out, cubic-bezier(.16, 1, .3, 1)) both}.hero p{font-size:15px;color:var(--text-secondary);margin-bottom:20px;animation:fadeUp .4s var(--ease-out, cubic-bezier(.16, 1, .3, 1)) .12s both}.hero-count{font-size:13px;color:var(--primary);font-weight:600;margin-bottom:20px;animation:fadeUp .4s var(--ease-out, cubic-bezier(.16, 1, .3, 1)) .12s both}.landing-cta-bar{max-width:440px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;animation:fadeUp .4s var(--ease-out, cubic-bezier(.16, 1, .3, 1)) .24s both}.landing-cta-helper{font-size:13px;color:var(--text-secondary)}.hero-preview{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;width:100%;max-width:280px;box-shadow:var(--shadow-md);opacity:.9}.hero-preview-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin-bottom:12px}.hero-preview-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--border);font-size:13px}.hero-preview-row:last-child{border-bottom:none}.hero-preview-label{color:var(--text-secondary)}.hero-preview-value{font-weight:700;color:var(--primary)}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.landing-cta-bar .btn-primary{width:auto;flex-shrink:0;padding:10px 20px}.filter-bar{max-width:960px;margin:0 auto;padding:16px 20px;display:flex;gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch}.filter-chip{flex-shrink:0;padding:6px 14px;border-radius:20px;font-size:13px;font-weight:500;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.filter-chip:hover{border-color:var(--primary);color:var(--primary)}.filter-chip.active{background:var(--primary);border-color:var(--primary);color:#fff}.filter-chip-group{display:flex;gap:8px}.filter-sort-chip{margin-left:auto}.filter-divider{width:1px;align-self:stretch;background:var(--border);flex-shrink:0}.cards-section{max-width:960px;margin:0 auto;padding:0 20px 80px;scroll-margin-top:80px}.workplace-intro-section{max-width:960px;margin:0 auto;padding:0 20px 56px}.workplace-intro-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.workplace-intro-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-primary);transition:border-color .15s,box-shadow .15s}.workplace-intro-card:hover{border-color:var(--primary);box-shadow:var(--shadow-md)}.workplace-intro-card strong,.workplace-intro-card small{display:block}.workplace-intro-card small{margin-top:3px;color:var(--text-secondary);font-size:12px}.workplace-intro-card>span:last-child{color:var(--primary);font-size:13px;font-weight:700;white-space:nowrap}.section-title{font-size:16px;font-weight:600;margin:0 0 12px;padding-top:8px}.card-list{display:flex;flex-direction:column;gap:12px}.empty-state{text-align:center;padding:60px 20px;color:var(--text-secondary)}.empty-sub{font-size:13px;margin-top:4px;color:var(--cool-gray)}.how-section{max-width:960px;margin:0 auto;padding:32px 20px 40px}.how-title{text-align:center;font-size:18px;font-weight:700;margin-bottom:24px}.how-steps{display:flex;gap:16px;justify-content:center}.how-step{flex:1;max-width:260px;text-align:center;padding:20px 16px;background:var(--surface);border-radius:var(--radius);border:1px solid var(--border)}.how-step-num{width:32px;height:32px;border-radius:50%;background:var(--primary-soft);color:var(--primary);font-weight:700;font-size:14px;display:inline-flex;align-items:center;justify-content:center;margin-bottom:10px}.how-step h3{font-size:15px;font-weight:600;margin-bottom:4px}.how-step p{font-size:13px;color:var(--text-secondary)}.partner-cta{max-width:960px;margin:0 auto;padding:0 20px 40px}.partner-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 32px;background:var(--primary-soft);border:1px solid var(--border);border-radius:var(--radius)}.partner-cta-eyebrow{font-size:13px;font-weight:600;color:var(--primary);margin-bottom:6px}.partner-cta-copy h2{font-size:20px;font-weight:700;margin-bottom:6px}.partner-cta-lead{font-size:14px;color:var(--text-secondary);line-height:1.5}.partner-cta-button{flex-shrink:0;padding:12px 24px}.mobile-bottom{display:none;position:fixed;bottom:0;left:0;right:0;background:var(--surface);border-top:1px solid var(--border);padding:8px 20px;z-index:100}.mobile-bottom .btn-primary{width:100%;padding:12px;font-size:15px;border-radius:var(--radius-sm)}@media(max-width:640px){.hero-inner{flex-direction:column;gap:24px}.hero-visual{display:none}.hero h1{font-size:24px}.hero p{font-size:14px}.hero{padding:40px 20px 32px}.mobile-bottom{display:block}.cards-section{padding-bottom:100px}.workplace-intro-list{grid-template-columns:1fr}.header-actions .btn-ghost{display:none}.how-steps{flex-direction:column;align-items:center}.how-step{max-width:100%}.partner-cta-inner{flex-direction:column;align-items:flex-start;padding:24px 20px}.partner-cta-button{width:100%;text-align:center}.partner-cta{padding-bottom:24px}}@media(min-width:641px){.card-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}}@media(min-width:960px){.hero h1{font-size:40px}}@media(prefers-reduced-motion:reduce){.hero h1,.hero p,.hero-count,.landing-cta-bar{animation:none}}.brand-header{font-size:20px;font-weight:700;color:var(--primary);text-decoration:none;letter-spacing:-.5px}.brand-drawer{font-size:1.25rem;font-weight:700;line-height:1.6;color:var(--primary-soft);text-decoration:none;letter-spacing:.0075em}.brand-hero{margin-bottom:32px;font-size:2.125rem;font-weight:700;line-height:1.235;color:var(--primary);letter-spacing:-.02em}.brand-page{margin:0 0 4px;font-size:24px;font-weight:700;color:var(--primary);text-align:center}.modal-shell-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px;background:#1118276b;animation:modal-shell-backdrop-enter var(--duration-fast) var(--ease-out) both;overflow-y:auto}.modal-shell{width:100%;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow-lg);padding:22px;animation:modal-shell-enter var(--duration-normal) var(--ease-out) both;max-height:calc(100vh - 40px);overflow-y:auto}.modal-shell-sm{max-width:420px}.modal-shell-md{max-width:560px}.modal-shell-lg{max-width:720px}.modal-shell .btn:focus-visible{box-shadow:0 0 0 3px var(--state-focus-ring)}@keyframes modal-shell-backdrop-enter{0%{opacity:0}to{opacity:1}}@keyframes modal-shell-enter{0%{opacity:0;transform:translate3d(0,10px,0)}to{opacity:1;transform:translateZ(0)}}@media(max-width:640px){.modal-shell-backdrop{align-items:flex-end;padding:12px}.modal-shell{padding:20px}}@media(prefers-reduced-motion:reduce){.modal-shell-backdrop,.modal-shell{animation:none}}.public-shift-dialog{position:relative}.public-shift-close{position:absolute;top:14px;right:14px;width:34px;height:34px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text-secondary);font-size:22px;line-height:1;cursor:pointer}.public-shift-close:hover,.public-shift-close:focus-visible{border-color:var(--primary);color:var(--primary);outline:none}.public-shift-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-right:42px}.public-shift-header h2{font-size:28px;line-height:1.2;margin-bottom:6px}.public-shift-header p{color:var(--text-secondary)}.public-shift-pay{flex:0 1 360px;color:var(--primary);font-size:18px;font-weight:800;text-align:right}.public-shift-tax-reference{margin-top:12px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--bg);text-align:right}.public-shift-tax-reference p,.public-shift-tax-reference small{margin:0;color:var(--text-secondary);font-size:12px;font-weight:600}.public-shift-tax-reference small{display:block;margin-top:3px;font-weight:400}.public-shift-summary{margin-top:18px;padding:14px 16px;border-radius:var(--radius-sm);background:var(--primary-soft);color:var(--text-primary);font-weight:700}.public-shift-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px}.public-shift-fact{min-height:70px;padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg)}.public-shift-fact span{display:block;margin-bottom:6px;color:var(--text-secondary);font-size:12px;font-weight:700}.public-shift-fact strong{color:var(--text-primary);font-size:14px}.public-shift-pay-date{margin-top:12px;color:var(--text-primary);font-size:14px;font-weight:700}.public-shift-chip-section,.public-shift-section{margin-top:18px}.public-shift-chip-section h3,.public-shift-section h3{margin-bottom:10px;font-size:15px}.public-shift-chips{display:flex;flex-wrap:wrap;gap:8px}.public-shift-chips span{padding:5px 10px;border-radius:999px;background:var(--neutral-soft);color:var(--text-primary);font-size:12px;font-weight:700}.public-shift-section{padding-top:18px;border-top:1px solid var(--border)}.public-shift-section p,.public-shift-markdown{color:var(--text-secondary);line-height:1.7}.public-shift-markdown ul,.public-shift-markdown ol{padding-left:20px}.public-shift-actions{position:sticky;bottom:-24px;display:flex;justify-content:flex-end;gap:10px;margin:22px -24px -24px;padding:16px 24px;border-top:1px solid var(--border);background:var(--surface)}@media(max-width:767px){.public-shift-header{flex-direction:column;padding-right:42px}.public-shift-header h2{font-size:24px}.public-shift-pay{flex:none;text-align:left}.public-shift-tax-reference{text-align:left}.public-shift-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.public-shift-actions{bottom:-20px;margin:22px -16px -20px;padding:14px 16px}}@media(max-width:640px){.public-shift-dialog{width:100%;max-width:none;height:100%;max-height:none;border-radius:0}.modal-shell-backdrop:has(.public-shift-dialog){align-items:stretch;padding:0}}.public-workplace-main{max-width:var(--page-wide);margin:0 auto;padding:28px 20px 80px}.public-workplace-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:20px}.public-workplace-panel{grid-column:1}.public-workplace-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:0;padding:20px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.public-workplace-back{display:inline-block;margin-bottom:10px;color:var(--text-secondary);font-size:13px;font-weight:700}.public-workplace-hero h1{font-size:34px;line-height:1.2;margin-bottom:8px}.public-workplace-hero p{color:var(--text-secondary)}.public-workplace-count{min-width:120px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text-secondary);font-size:13px;text-align:center}.public-workplace-count strong{color:var(--primary);font-size:24px}.public-workplace-lead-image img,.public-workplace-gallery img{display:block;width:100%;object-fit:cover;border-radius:var(--radius-sm);background:var(--surface)}.public-workplace-lead-image img{height:420px}.public-workplace-section{margin-top:0;padding:20px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.public-workplace-section h2{margin-bottom:12px;font-size:18px}.public-markdown{padding:0;border:0;border-radius:0;background:transparent;overflow-wrap:anywhere}.public-markdown h1,.public-markdown h2,.public-markdown h3{margin:0 0 10px;line-height:1.3}.public-markdown p,.public-markdown ul,.public-markdown ol{margin-bottom:12px}.public-markdown ul,.public-markdown ol{padding-left:22px}.public-markdown img{display:block;max-width:100%;border-radius:var(--radius-sm)}.public-workplace-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:0}.public-workplace-gallery img,.public-workplace-gallery img:first-child{height:220px;grid-row:auto}.public-workplace-shift-panel{position:sticky;top:76px;grid-column:2;grid-row:1 / span 4;padding:16px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow)}.public-workplace-shift-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.public-workplace-eyebrow{color:var(--text-secondary);font-size:12px;font-weight:800}.public-workplace-shift-header h2{font-size:22px;line-height:1.2}.public-workplace-shift-list{display:flex;flex-direction:column;gap:12px;max-height:calc(100vh - 160px);overflow-y:auto;padding-right:2px}.public-workplace-empty{display:flex;align-items:center;justify-content:center;gap:12px;min-height:120px;padding:20px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);text-align:center}.public-workplace-empty-plain{flex-direction:column;border-style:dashed;background:var(--bg)}@media(max-width:1279px){.public-workplace-layout{grid-template-columns:1fr}.public-workplace-panel,.public-workplace-shift-panel{grid-column:1}.public-workplace-hero{order:1}.public-workplace-lead-image{order:2}.public-workplace-shift-panel{position:static;order:3;grid-row:auto}.public-workplace-section{order:4}.public-workplace-gallery{order:5}.public-workplace-shift-list{max-height:none;overflow:visible}}@media(max-width:640px){.public-workplace-main{padding:18px 14px 72px}.public-workplace-layout{gap:14px}.public-workplace-hero{align-items:stretch;flex-direction:column}.public-workplace-hero h1{font-size:28px}.public-workplace-count{width:100%}.public-workplace-lead-image img{height:260px}.public-workplace-gallery{grid-template-columns:1fr}}.partnership-main{max-width:var(--page-wide);margin:0 auto;padding:48px 20px 80px}.partnership-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,500px);align-items:start;gap:48px}.partnership-intro{padding:28px 4px}.partnership-eyebrow{margin-bottom:12px;color:var(--primary);font-size:12px;font-weight:800;letter-spacing:.14em}.partnership-intro h1{margin:0 0 20px;font-size:clamp(36px,5vw,56px);line-height:1.12;letter-spacing:-.04em}.partnership-lead{max-width:580px;color:var(--text-secondary);font-size:17px;line-height:1.8}.partnership-points{display:grid;gap:12px;margin-top:40px}.partnership-point{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px;padding:16px 0;border-top:1px solid var(--border)}.partnership-point>span{color:var(--primary);font-size:12px;font-weight:800;letter-spacing:.08em}.partnership-point h2{margin:0 0 4px;font-size:16px}.partnership-point p{margin:0;color:var(--text-secondary);font-size:14px}.partnership-form-card{min-height:660px;padding:28px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.partnership-form-heading{margin-bottom:24px}.partnership-form-heading>p{margin-bottom:4px;color:var(--primary);font-size:12px;font-weight:700}.partnership-form-heading h2,.partnership-success h2{margin:0 0 6px;font-size:24px}.partnership-form-heading span{color:var(--text-secondary);font-size:13px}.partnership-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}.partnership-message-field textarea{min-height:154px;resize:vertical;line-height:1.6}.partnership-error-slot{min-height:42px;padding:2px 0 8px;color:var(--danger);font-size:13px}.partnership-submit{width:100%;min-height:46px}.partnership-honeypot{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.partnership-success{display:flex;min-height:602px;align-items:center;justify-content:center;flex-direction:column;text-align:center}.partnership-success-icon{display:grid;place-items:center;width:52px;height:52px;margin-bottom:18px;border-radius:50%;background:var(--success-soft);color:var(--success-strong);font-size:24px;font-weight:800}.partnership-success p{color:var(--text-secondary);font-size:14px;line-height:1.8}@media(max-width:900px){.partnership-layout{grid-template-columns:1fr;gap:28px}.partnership-intro{padding-top:8px}.partnership-points{margin-top:28px}}@media(max-width:640px){.partnership-main{padding:28px 14px 64px}.partnership-intro h1{font-size:36px}.partnership-lead{font-size:15px}.partnership-form-card{min-height:748px;padding:22px 18px}.partnership-field-grid{grid-template-columns:1fr}.partnership-success{min-height:702px}}.app-shell{min-height:100vh;background:var(--bg)}.app-shell-main{padding:16px}@media(min-width:768px){.app-shell-main{padding:24px}}.mgr-layout{min-height:100vh}.select-trigger{display:flex;align-items:center;justify-content:space-between;text-align:left;cursor:pointer;font-family:inherit;font-size:14px;color:var(--text-primary);background:var(--surface)}.select-arrow{color:var(--text-secondary);flex-shrink:0;margin-right:4px}.select-popup{position:absolute;left:0;right:0;z-index:200;margin-top:4px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);overflow:hidden;max-height:200px;overflow-y:auto}.select-option{display:block;width:100%;padding:10px 14px;border:none;background:transparent;text-align:left;font-family:inherit;font-size:14px;color:var(--text-primary);cursor:pointer;transition:background .1s}.select-option:hover{background:var(--primary-soft)}.select-option.active{color:var(--primary);font-weight:600;background:var(--primary-soft)}.date-picker-trigger{text-align:left;cursor:pointer;font-family:inherit;font-size:14px;color:var(--text-primary);background:var(--surface)}.date-picker-popup{position:absolute;z-index:200;margin-top:4px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:8px}.date-picker-popup .rdp-root{--rdp-accent-color: var(--primary);--rdp-accent-background-color: var(--primary-soft);font-family:inherit;font-size:13px}.form-group{position:relative}.mgr-main{max-width:var(--page-width, var(--page-narrow));margin:0 auto;padding:24px 20px;animation:fadeUp .3s var(--ease-out, cubic-bezier(.16, 1, .3, 1)) both}.mgr-menu-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.mgr-menu-card{display:flex;align-items:center;gap:14px;padding:20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-decoration:none;color:var(--text-primary);transition:border-color .15s,box-shadow .15s}.mgr-menu-card:hover{border-color:var(--primary);box-shadow:var(--shadow-md)}.mgr-menu-title{font-size:15px;font-weight:600}.mgr-menu-desc{font-size:13px;color:var(--text-secondary);margin-top:2px}@media(max-width:640px){.mgr-menu-grid{grid-template-columns:1fr}}.mgr-empty{text-align:center;min-height:150px;padding:60px 20px;color:var(--text-secondary);font-size:14px}.mgr-table-wrap{min-height:180px;overflow-x:auto}.mgr-table{width:100%;border-collapse:collapse;font-size:14px}.mgr-table th{text-align:left;padding:10px 12px;font-size:12px;font-weight:600;color:var(--text-secondary);border-bottom:2px solid var(--border);white-space:nowrap}.mgr-table td{padding:12px;border-bottom:1px solid var(--border);vertical-align:top}.mgr-table tbody tr:hover{background:var(--primary-soft)}.mgr-cell-main{font-weight:600;font-size:14px}.mgr-cell-sub{font-size:12px;color:var(--text-secondary);margin-top:2px}.mgr-status{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600}.mgr-status.open{background:var(--primary-soft);color:var(--primary)}.mgr-status.closed{background:var(--neutral-soft);color:var(--cool-gray)}.mgr-status.registered{background:var(--warning-soft);color:var(--warning)}.mgr-status.completed{background:var(--success-soft);color:var(--success)}.warning-filter-row{display:flex;gap:8px;align-items:center;margin-bottom:16px;min-height:40px}.warning-filter-row .input{max-width:200px}.warning-card{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--danger);border-radius:var(--radius);padding:16px 20px;transition:box-shadow var(--duration-fast) var(--ease-out)}.warning-card:hover{box-shadow:var(--shadow-md)}.warning-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid var(--border)}.warning-card-name{font-size:15px;font-weight:700}.warning-card-body{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.warning-card-date{font-size:12px;color:var(--text-secondary)}.warning-card-reason{font-size:13px;color:var(--text-secondary);margin-top:6px}.warning-card-list{display:flex;flex-direction:column;gap:10px}.warning-count-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:700}.warning-count-badge.danger{background:var(--danger-soft);color:var(--danger)}.warning-count-badge.warn{background:var(--warning-soft);color:var(--warning)}.warning-filter-type{max-width:160px}.app-count{font-size:13px;color:var(--text-secondary);margin-bottom:12px}.mgr-actions{display:flex;gap:4px}.mgr-form-error{font-size:13px;min-height:36px;padding:8px 12px;border-radius:var(--radius-sm);margin-bottom:16px;border:1px solid transparent;visibility:hidden}.mgr-form-error[data-visible=true]{visibility:visible;color:var(--error);background:var(--danger-soft);border-color:var(--urgent-soft)}.mgr-form{max-width:100%;margin:0 auto}.form-section{padding:20px 24px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px}.form-section__title{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:16px}.shift-copy-section{margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--border)}.shift-copy-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.shift-copy-header .helper-text{margin:0}.shift-selected-date{padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text-primary);font-size:14px;font-weight:600}.shift-selected-date.error{border-color:var(--error)}.shift-selected-date[data-empty=true]{color:var(--text-secondary);font-weight:400}.shift-copy-picker{display:grid;gap:10px;margin-top:14px}.shift-copy-list{display:grid;gap:8px;max-height:280px;overflow-y:auto}.shift-copy-item{display:grid;gap:3px;width:100%;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:inherit;text-align:left;cursor:pointer}.shift-copy-item:hover{border-color:var(--primary)}.shift-copy-item span{color:var(--cool-gray);font-size:.85rem}.shift-schedule-section{margin-bottom:16px;padding:18px}.shift-schedule-heading,.shift-schedule-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.shift-schedule-heading h2{margin:2px 0 0;font-size:1.05rem}.shift-schedule-form{margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}.shift-schedule-days{display:flex;gap:8px;flex-wrap:wrap}.shift-schedule-days button{width:38px;height:38px;border:1px solid var(--border);border-radius:50%;background:var(--surface);cursor:pointer}.shift-schedule-days button.active{background:var(--primary);border-color:var(--primary);color:#fff}.shift-schedule-list{display:grid;gap:8px;margin-top:16px}.shift-schedule-list article{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px;border:1px solid var(--border);border-radius:10px}.shift-schedule-list article[data-inactive=true]{opacity:.6}.shift-schedule-list p{margin:4px 0 0;color:var(--cool-gray);font-size:.86rem}@media(max-width:720px){.shift-schedule-heading{align-items:flex-start;flex-direction:column}.shift-schedule-actions{width:100%;flex-wrap:wrap}}.form-row{display:flex;gap:16px}.form-row .form-group{flex:1}.form-error-target{border-radius:var(--radius-sm)}.form-error-target.has-error .label{color:var(--error)}.form-error-target.has-error .input,.form-error-target.has-error .select-trigger,.form-error-target.has-error .stepper-row{border-color:var(--danger-border);box-shadow:0 0 0 3px #ef444424}.form-error-target.has-error .stepper-row{border-radius:var(--radius-sm)}.stepper-hint{font-size:11px;color:var(--text-secondary);text-align:left;margin-top:4px}.helper-text{font-size:12px;color:var(--text-secondary);margin-top:4px}.helper-text.error{color:var(--danger)}.input.error{border-color:var(--danger)}.form-actions{display:flex;gap:8px;margin-top:8px}.form-actions .btn-primary{flex:1;padding:12px}.form-actions .btn-ghost{padding:12px 24px}.stepper-row{display:flex;align-items:center;justify-content:flex-start;gap:6px}.stepper-input{width:88px;min-width:88px;max-width:88px;height:40px;font-size:14px;font-weight:600;font-family:inherit;font-variant-numeric:tabular-nums;text-align:center;padding:6px 4px;cursor:default}.btn-stepper{background:transparent;color:var(--primary);border:1.5px solid var(--primary)!important;padding:0;width:36px;height:40px;font-size:1rem;font-weight:400;line-height:1;border-radius:var(--radius-sm);white-space:nowrap;flex-shrink:0;text-align:center;transition:background .15s,color .15s}.btn-stepper:hover{background:var(--primary);color:#fff}.pay-input{font-size:16px;font-weight:600;font-variant-numeric:tabular-nums;text-align:right}.pay-display-options{display:grid;gap:8px;margin-bottom:16px}.holiday-pay-preview{min-height:20px;color:var(--primary);font-size:12px;font-weight:700;line-height:20px;visibility:hidden}.holiday-pay-preview[data-visible=true]{visibility:visible}.work-hours-preview{font-size:13px;color:var(--text-secondary);margin-bottom:16px}.daily-pay-preview{font-size:13px;color:var(--primary);font-weight:600;margin-bottom:16px}.overtime-detail{color:var(--error);font-weight:500}.doc-checks{display:flex;gap:16px;margin-top:4px;flex-wrap:wrap}.doc-check{font-size:13px;display:flex;align-items:center;gap:4px;cursor:pointer}.shift-detail-textarea{min-height:120px;resize:vertical}.shift-detail-textarea-compact{min-height:88px}.shift-option-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.shift-option-group{border:1px solid var(--border);border-radius:8px;padding:12px;background:var(--surface)}.shift-option-title{font-size:13px;font-weight:700;color:var(--text-primary);margin-bottom:10px}.shift-option-checks{display:grid;gap:8px}@media(max-width:900px){.shift-option-grid{grid-template-columns:1fr}}.mgr-filter-row{display:flex;gap:6px;margin-bottom:16px;min-height:32px}.mgr-filter-active{background:var(--primary-soft)!important;color:var(--primary)!important;font-weight:600}.mgr-file-link{background:none;border:none;padding:0;cursor:pointer;color:var(--primary);text-decoration:underline;font-size:13px}.mgr-file-link:hover{opacity:.8}.mgr-modal-title{font-size:18px;font-weight:700;margin-bottom:8px}.mgr-modal-desc{font-size:14px;color:var(--text-secondary);margin-bottom:16px}.mgr-cell-link{text-decoration:none;color:inherit;display:block}.mgr-cell-link:hover .mgr-cell-main{color:var(--primary)}.mgr-pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:16px}.mgr-pagination-info{font-size:13px;color:var(--text-secondary);min-width:140px;text-align:center}.detail-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px;margin-bottom:20px}.detail-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}.detail-title{font-size:20px;font-weight:700;line-height:1.3}.detail-subtitle{font-size:14px;color:var(--text-secondary);margin-top:2px}.detail-address{font-size:13px;color:var(--text-secondary);margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--border)}.detail-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 24px}.detail-info-item{display:flex;flex-direction:column;gap:2px}.detail-info-label{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.02em}.detail-info-value{font-size:14px;font-weight:500}.detail-info-sub{font-size:12px;color:var(--text-secondary);font-weight:400;margin-left:6px}.detail-note{margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.detail-note-text{font-size:14px;color:var(--text-primary);margin-top:4px;white-space:pre-wrap;line-height:1.6}.detail-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}.detail-stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;gap:8px}.detail-stat-header{display:flex;align-items:center;gap:6px}.detail-stat-icon{font-size:16px}.detail-stat-title{font-size:13px;font-weight:600;color:var(--text-secondary)}.detail-stat-body{min-height:32px;display:flex;align-items:center}.detail-stat-number{font-size:14px}.detail-stat-number strong{font-size:22px;font-weight:700;font-variant-numeric:tabular-nums}.detail-stat-unit{font-size:13px;color:var(--text-secondary);font-weight:400}.detail-stat-placeholder{font-size:13px;color:var(--cool-gray)}.detail-stat-link{font-size:13px;font-weight:500;color:var(--primary);text-decoration:none;margin-top:auto}.detail-stat-link:hover{text-decoration:underline}.detail-stat-link.disabled{color:var(--cool-gray);cursor:default}.detail-stat-link.disabled:hover{text-decoration:none}.detail-actions{display:flex;gap:8px;flex-wrap:wrap}.app-card-list{display:flex;flex-direction:column;gap:12px}.app-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;transition:border-color .15s,box-shadow .15s}.app-card:hover{border-color:var(--primary);box-shadow:var(--shadow-md)}.app-card-highlighted{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-soft);animation:appCardPulse 1.6s ease-out 1}@keyframes appCardPulse{0%{box-shadow:0 0 0 0 var(--primary-soft)}40%{box-shadow:0 0 0 8px var(--primary-soft)}to{box-shadow:0 0 0 2px var(--primary-soft)}}@media(prefers-reduced-motion:reduce){.app-card-highlighted{animation:none}}.app-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--border)}.app-card-identity{display:flex;flex-direction:column;gap:2px}.app-card-name{font-size:15px;font-weight:700}.app-card-phone{font-size:13px;color:var(--text-secondary)}.app-card-meta{display:flex;align-items:center;gap:8px;flex-shrink:0}.app-card-date{font-size:12px;color:var(--text-secondary)}.app-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}.app-stat-item{display:flex;flex-direction:column;gap:3px;padding:8px 10px;background:var(--bg);border-radius:var(--radius-sm)}.app-stat-label{font-size:11px;font-weight:600;color:var(--text-secondary);letter-spacing:.01em}.app-stat-value{font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}.app-stat-value.stat-safe{color:var(--success)}.app-stat-value.stat-danger{color:var(--error)}.app-stat-value.stat-warn{color:var(--amber)}.app-card-footer{display:flex;justify-content:flex-end;padding-top:14px;border-top:1px solid var(--border)}.assignment-workspace{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(0,1.35fr);gap:18px;align-items:start}.assignment-calendar-panel,.assignment-detail-panel{min-width:0}.assignment-calendar-panel{padding:16px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.assignment-calendar-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.assignment-calendar-header strong{font-size:16px;font-weight:800}.assignment-calendar-legend{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-bottom:12px}.assignment-legend-item{min-height:28px;padding:6px 8px;border:1px solid transparent;border-radius:var(--radius-sm);cursor:pointer;font-family:inherit;font-size:11px;font-weight:700;text-align:center;white-space:nowrap}.assignment-legend-item:not(.selected){background:var(--surface);color:var(--text-secondary);border-color:var(--border)}.assignment-legend-item.selected{box-shadow:inset 0 0 0 1px currentColor}.assignment-filter-empty{min-height:20px;margin:-4px 0 10px;color:var(--text-secondary);font-size:12px;line-height:20px;font-weight:700}.assignment-legend-item.assigning,.assignment-day.assigning .assignment-day-status,.assignment-date-shift-status.assigning{background:var(--info-soft);color:var(--info)}.assignment-legend-item.complete,.assignment-day.complete .assignment-day-status,.assignment-date-shift-status.complete{background:var(--success-soft);color:var(--success)}.assignment-legend-item.ended,.assignment-day.ended .assignment-day-status,.assignment-date-shift-status.ended{background:var(--neutral-soft);color:var(--cool-gray)}.assignment-legend-item.empty,.assignment-day.empty .assignment-day-status,.assignment-date-shift-status.empty{background:var(--warning-soft);color:var(--warning)}.assignment-legend-item:not(.selected){background:var(--surface);color:var(--text-secondary);border-color:var(--border);box-shadow:none}.assignment-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.assignment-weekday{padding:4px 0;color:var(--text-secondary);font-size:11px;font-weight:800;text-align:center}.assignment-day{min-width:0;min-height:74px;padding:7px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-primary);font-family:inherit;text-align:left;cursor:pointer;transition:border-color var(--duration-fast),background var(--duration-fast),transform var(--duration-fast)}.assignment-day:hover{border-color:var(--primary);background:var(--primary-soft);transform:translateY(-1px)}.assignment-day:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.assignment-day:disabled{cursor:default;color:var(--text-secondary);background:var(--bg);transform:none}.assignment-day.filtered-out{opacity:.35}.assignment-day.outside{opacity:.45}.assignment-day.selected{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-soft)}.assignment-day.today .assignment-day-number{color:var(--primary);font-weight:800}.assignment-day-number,.assignment-day-body,.assignment-day-status,.assignment-day-count{display:block}.assignment-day-number{margin-bottom:8px;font-size:12px;font-weight:700}.assignment-day-status{width:fit-content;min-height:20px;padding:3px 6px;border-radius:var(--radius-sm);font-size:10px;font-weight:800;line-height:1.2}.assignment-day-count{margin-top:5px;color:var(--text-secondary);font-size:11px;font-weight:700;font-variant-numeric:tabular-nums}.assignment-day-breakdown{display:block;margin-top:4px;color:var(--text-secondary);font-size:9px;font-weight:700;line-height:1.25}.assignment-date-list{display:flex;flex-direction:column;gap:6px;margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.assignment-date-list-title{color:var(--text-secondary);font-size:12px;font-weight:800}.assignment-date-shift{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:9px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-primary);font-family:inherit;font-size:12px;text-align:left;cursor:pointer}.assignment-date-shift:hover,.assignment-date-shift.active{border-color:var(--primary);background:var(--primary-soft)}.assignment-date-shift-status{flex:0 0 auto;padding:3px 6px;border-radius:var(--radius-sm);font-size:10px;font-weight:800}.assignment-time-cell{color:var(--text-secondary);font-size:12px}.assignment-status-stack{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.assignment-origin-badge{display:inline-flex;align-items:center;min-height:22px;padding:0 7px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);font-size:11px;font-weight:800;white-space:nowrap}.shift-summary-card{background:var(--primary-soft);border-radius:var(--radius-sm);padding:12px 16px;margin-bottom:20px;font-size:13px;color:var(--text-secondary)}.shift-summary-card strong{color:var(--text-primary)}.staff-search-wrap{position:relative;margin-top:24px;margin-bottom:24px}.staff-search-row{display:flex;gap:8px}.staff-search-row .input{flex:1}.search-result-list{position:absolute;top:100%;left:0;right:0;z-index:300;margin-top:4px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow-md);min-height:54px;max-height:240px;overflow-y:auto}.search-result-empty{padding:16px;text-align:center;color:var(--text-secondary);font-size:13px}.search-result-item{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--border);font-size:13px}.search-result-item.active{background:var(--primary-soft)}.search-result-item:last-child{border-bottom:none}.search-result-name{font-weight:600}.search-result-meta{color:var(--text-secondary);margin-left:8px}.staff-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.recommended-staff-panel{margin-bottom:24px;padding:14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.recommended-staff-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.recommended-staff-header h2{font-size:15px;font-weight:800}.recommended-staff-header p,.recommended-staff-header span{color:var(--text-secondary);font-size:12px;font-weight:700}.recommended-staff-list{display:grid;gap:8px;min-height:58px}.recommended-staff-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--neutral-soft)}.recommended-staff-item strong,.recommended-staff-item span{display:block}.recommended-staff-item strong{font-size:13px;font-weight:800}.recommended-staff-item span,.recommended-staff-empty{color:var(--text-secondary);font-size:12px}.recommended-staff-metrics{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.recommended-staff-metrics span{padding:4px 7px;border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);font-weight:800}.recommended-staff-toggle{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:36px;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);cursor:pointer;font-family:inherit;font-size:12px;font-weight:800;transition:border-color var(--duration-fast),background var(--duration-fast),color var(--duration-fast)}.recommended-staff-toggle:hover{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.recommended-staff-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.recommended-staff-toggle-chevron{flex:0 0 auto;transition:transform var(--duration-fast)}.recommended-staff-toggle-chevron.expanded{transform:rotate(180deg)}.recommended-staff-empty{min-height:58px;padding:18px 0;text-align:center}.shift-select-group{margin-bottom:20px}@media(max-width:900px){.assignment-workspace{grid-template-columns:1fr}}@media(max-width:640px){.assignment-calendar-panel{padding:12px}.assignment-calendar-legend{grid-template-columns:repeat(2,minmax(0,1fr))}.assignment-calendar-grid{gap:4px}.assignment-day{min-height:64px;padding:5px}.assignment-day-status{font-size:9px}.staff-search-row{flex-direction:column}.staff-search-row .btn{width:100%}.recommended-staff-item{grid-template-columns:1fr;align-items:start}.recommended-staff-metrics,.staff-row-actions{justify-content:flex-start}}.workplace-main{display:flex;flex-direction:column;gap:18px}.workplace-form-panel,.workplace-list-panel,.venue-list-panel{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);padding:18px}.workplace-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}.workplace-address-field,.workplace-description-field,.workplace-image-field,.workplace-form-actions{grid-column:span 2}.workplace-address-row{display:flex;align-items:center;gap:8px}.workplace-address-row .input{flex:1 1 auto;min-width:0}.workplace-address-row .btn{flex:0 0 auto;white-space:nowrap}.workplace-map-preview{display:flex;flex-direction:column;gap:6px;margin-top:10px}.workplace-address-field>.helper-text{display:block;margin-top:6px}.workplace-description-header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:6px}.workplace-description-header .label{margin-bottom:0}.workplace-markdown-editor{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:stretch}.workplace-description-textarea{min-height:220px;resize:vertical;line-height:1.55}.workplace-markdown-preview{min-height:220px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);overflow-wrap:anywhere}.workplace-markdown-preview h1,.workplace-markdown-preview h2,.workplace-markdown-preview h3{margin:0 0 8px;line-height:1.3}.workplace-markdown-preview p,.workplace-markdown-preview ul,.workplace-markdown-preview ol{margin-bottom:10px}.workplace-markdown-preview ul,.workplace-markdown-preview ol{padding-left:20px}.workplace-markdown-preview img{max-width:100%;border-radius:var(--radius-sm);display:block}.workplace-preview-empty{color:var(--text-secondary);font-size:13px}.workplace-image-actions{display:flex;align-items:center;gap:12px;margin-bottom:12px}.workplace-upload-button{position:relative;overflow:hidden}.workplace-upload-button.disabled{opacity:.5;cursor:not-allowed}.workplace-upload-button input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.workplace-upload-button input:disabled{cursor:not-allowed}.workplace-image-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.workplace-image-item{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);overflow:hidden}.workplace-image-item img{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block;background:var(--bg)}.workplace-image-meta{padding:10px}.workplace-image-meta span{display:block;margin-bottom:8px;color:var(--text-secondary);font-size:12px;overflow-wrap:anywhere}.workplace-grid{display:grid;grid-template-columns:minmax(200px,.7fr) minmax(220px,.8fr) minmax(380px,1.4fr);gap:16px}.workplace-grid>*{min-width:0}@media(max-width:1280px){.workplace-grid{grid-template-columns:minmax(200px,1fr) minmax(220px,1fr)}.venue-list-panel{grid-column:1 / -1}}.client-company-edit{display:flex;flex-direction:column;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.workplace-list{display:flex;flex-direction:column;gap:8px}.workplace-row{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-primary);padding:12px;text-align:left;cursor:pointer;transition:border-color var(--duration-hover) var(--ease-hover),background-color var(--duration-hover) var(--ease-hover)}.workplace-row.active,.workplace-row:hover{border-color:var(--primary);background:var(--primary-soft)}.workplace-row strong,.workplace-row small{display:block}.workplace-row small{margin-top:3px;color:var(--text-secondary);font-size:12px}.workplace-section-header,.venue-create-row,.workplace-row-actions{display:flex;align-items:center;gap:10px}.workplace-section-header{justify-content:space-between;margin-bottom:12px}.venue-create-row{margin-bottom:14px}.venue-create-row .input{flex:1;min-width:0}.workplace-row-actions{flex-wrap:wrap}.workplace-venue-name-input{min-width:180px}@media(max-width:900px){.workplace-form-grid,.workplace-grid{grid-template-columns:1fr}.workplace-address-field,.workplace-description-field,.workplace-image-field,.workplace-form-actions{grid-column:auto}.workplace-address-row{align-items:stretch;flex-direction:column}.workplace-markdown-editor{grid-template-columns:1fr}.venue-create-row{align-items:stretch;flex-direction:column}}.shift-inline-panel-body{box-sizing:content-box;transition:min-height .2s ease}.shift-inline-panel-body-content{min-width:0}@media(prefers-reduced-motion:reduce){.shift-inline-panel-body{transition:none}}.shift-actions{display:flex;align-items:center;gap:4px;position:relative}.kebab-menu{position:relative}.kebab-trigger{background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);padding:4px 8px;font-size:13px;cursor:pointer;color:var(--text-secondary);transition:background var(--duration-fast)}.kebab-trigger:hover{background:var(--bg)}.kebab-dropdown{position:absolute;right:0;top:calc(100% + 4px);z-index:100;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);min-width:120px;overflow:hidden}.kebab-item{display:block;width:100%;padding:8px 14px;font-size:13px;border:none;background:transparent;text-align:left;cursor:pointer;color:var(--text-primary);text-decoration:none;transition:background 80ms}.kebab-item:hover{background:var(--primary-soft)}.shift-board-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.segmented-control{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.segmented-control{padding:3px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--neutral-soft)}.segmented-control button{border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer;font-family:inherit;font-size:13px;font-weight:700}.segmented-control button{min-height:32px;padding:0 12px}.segmented-control button.active{background:var(--surface);color:var(--primary);box-shadow:var(--shadow-sm)}.shift-calendar-panel{margin-bottom:14px;padding:16px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.shift-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.shift-calendar-day{position:relative;box-sizing:border-box;height:88px;min-width:0;min-height:88px;overflow:hidden;padding:6px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-primary);cursor:pointer;font-family:inherit;text-align:left;transition:border-color var(--duration-fast),background var(--duration-fast),transform var(--duration-fast)}.shift-calendar-day:hover{border-color:var(--primary);background:var(--primary-soft);transform:translateY(-1px)}.shift-calendar-day:disabled{cursor:default;background:var(--bg);color:var(--text-secondary);transform:none}.shift-calendar-day.outside{opacity:.45}.shift-calendar-day.today .assignment-day-number{color:var(--primary);font-weight:800}.shift-calendar-day.selected{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-soft)}.shift-calendar-day.open{border-top:3px solid var(--info)}.shift-calendar-day.closed{border-top:3px solid var(--cool-gray)}.shift-calendar-day.registered{border-top:3px solid var(--warning)}.shift-calendar-day.completed{border-top:3px solid var(--success)}.shift-calendar-day.mixed{border-top:3px solid var(--info)}.shift-calendar-day.has-deleted:after{content:"";position:absolute;right:5px;bottom:5px;width:6px;height:6px;border-radius:50%;background:var(--cool-gray)}.schedule-selection-meta{display:flex;align-items:center;gap:10px}.schedule-shift-card.deleted{border-style:dashed;background:var(--bg);opacity:.72}.mgr-status.deleted{background:var(--neutral-soft);color:var(--cool-gray)}.shift-deleted-notice{display:grid;gap:2px;margin-bottom:14px;padding:10px 14px;border:1px solid var(--border);border-left:3px solid var(--cool-gray);border-radius:var(--radius-sm);background:var(--bg)}.shift-deleted-notice strong{font-size:13px}.shift-deleted-notice span{color:var(--text-secondary);font-size:12px;overflow-wrap:anywhere}.shift-calendar-day-body,.shift-calendar-day-body strong,.shift-calendar-day-body span{display:block}.shift-calendar-day-body strong{font-size:12px}.shift-calendar-day-body span{margin-top:4px;color:var(--text-secondary);font-size:11px;font-weight:700}.schedule-day-content{display:grid;box-sizing:border-box;height:56px;min-width:0;overflow:hidden;align-content:start;gap:4px;margin-top:4px}.schedule-day-content.hidden{visibility:hidden}.schedule-day-content.mode-action{display:flex;align-items:flex-start;justify-content:center;flex-direction:column;gap:6px}.schedule-action-pending,.schedule-action-total{max-width:100%;overflow:hidden;border-radius:999px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.schedule-action-pending{padding:5px 8px;background:var(--danger-soft);color:var(--danger);font-size:11px}.schedule-action-total{padding-inline:2px;color:var(--text-secondary);font-size:11px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.shift-calendar-selection{margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.shift-calendar-selection h2{margin-bottom:10px;font-size:14px;font-weight:800}.shift-card-list.inline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}@media(max-width:767px){.shift-table-desktop{display:none}.shift-card-list{display:flex;flex-direction:column;gap:10px}.shift-calendar-panel{display:none}.shift-board-toolbar{align-items:stretch;flex-direction:column}.segmented-control{display:none}}@media(min-width:768px){.shift-table-desktop{display:block}.shift-table-desktop.calendar-hidden,.shift-card-list{display:none}.shift-card-list.inline{display:grid}}.shift-row-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.shift-row-card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:10px}.shift-row-card-meta{font-size:12px;color:var(--text-secondary);margin-top:4px;display:flex;gap:8px;flex-wrap:wrap}.shift-row-card-actions{display:flex;gap:6px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.shift-row-card.active{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-soft)}.shift-table-row-active>td{background:var(--primary-soft)}.shift-inline-panel-anchor{margin-top:16px;scroll-margin-top:16px}.shift-inline-panel{overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow-md)}.shift-inline-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px;border-bottom:1px solid var(--border)}.shift-inline-panel-header h2{font-size:17px;font-weight:800;line-height:1.3}.shift-inline-panel-actions{display:flex;flex:0 0 auto;align-items:center;gap:6px}.shift-inline-panel-actions .active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.shift-inline-eyebrow{margin-bottom:4px;color:var(--text-secondary);font-size:12px;font-weight:800}.shift-inline-tabs{display:flex;gap:4px;padding:10px 12px 0;border-bottom:1px solid var(--border);background:var(--bg)}.shift-inline-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:92px;min-height:38px;padding:0 14px;border:1px solid transparent;border-bottom:none;border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:transparent;color:var(--text-secondary);cursor:pointer;font-family:inherit;font-size:13px;font-weight:800}.shift-inline-tabs button.active{background:var(--surface);border-color:var(--border);color:var(--primary)}.shift-inline-tab-count{display:inline-flex;min-width:38px;height:20px;align-items:center;justify-content:center;padding:0 6px;border-radius:999px;background:var(--neutral-soft);color:var(--text-secondary);font-size:11px;font-variant-numeric:tabular-nums;line-height:1}.shift-inline-tabs button.active .shift-inline-tab-count{background:var(--primary-soft);color:var(--primary)}.shift-inline-panel-body{padding:16px}.schedule-calendar-panel{min-height:470px}.schedule-week-panel{display:none}.schedule-inline-slot{min-height:184px;padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.schedule-selection-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--border)}.schedule-selection-header h2{font-size:18px;font-weight:800}.schedule-selection-header>span{color:var(--text-secondary);font-size:13px;font-weight:800}.schedule-shift-list{display:grid;gap:10px;min-height:72px}.schedule-shift-card{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:inherit;cursor:pointer;font:inherit;text-align:left;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.schedule-shift-card:hover{border-color:var(--primary);background:var(--surface)}.schedule-shift-card:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.schedule-shift-card.active{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-soft)}.schedule-shift-title{font-size:15px;font-weight:800}.schedule-shift-meta{margin-top:4px;color:var(--text-secondary);font-size:13px}.schedule-status-stack{display:flex;align-items:flex-end;flex-direction:column;gap:6px}.attendance-progress-badge{display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:var(--radius-sm);font-size:11px;font-weight:800}.attendance-progress-badge.recorded{background:var(--success-soft);color:var(--success-strong)}.attendance-progress-badge.missing{background:var(--danger-soft);color:var(--danger-strong)}.schedule-empty-cta{display:flex;min-height:96px;align-items:center;justify-content:center;flex-direction:column;gap:12px;padding:18px 12px;color:var(--text-secondary);text-align:center}.schedule-mobile-calendar-header{display:grid;grid-template-columns:34px 34px minmax(0,1fr) 34px 34px;align-items:center;gap:4px;margin-bottom:10px}.schedule-mobile-calendar-header .btn{min-width:34px;padding:0}.schedule-month-trigger{min-width:0;min-height:34px;padding:0 8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-primary);cursor:pointer;font-family:inherit;font-size:14px;font-weight:800}.schedule-week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.schedule-week-day{height:126px;min-height:126px;overflow:hidden;padding:5px}.schedule-weekday-label{display:block;margin-top:2px;color:var(--text-secondary);font-size:10px;font-weight:800}.schedule-day-content.compact{height:82px;gap:3px;margin-top:6px}.schedule-day-content.compact.mode-action{align-items:stretch;gap:4px}.schedule-day-content.compact .schedule-action-pending{align-self:center;padding:4px 7px;border-radius:999px;font-size:11px;text-align:center;text-overflow:clip}.schedule-day-content.compact .schedule-action-total{align-self:center;padding:0;border-radius:0;font-size:11px;font-weight:700;text-align:center;text-overflow:clip}.schedule-month-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:520;display:flex;align-items:center;justify-content:center;padding:20px;background:#11182773}.schedule-month-modal{width:min(360px,100%);padding:16px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow-md)}.schedule-month-modal-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.schedule-month-modal-header strong{font-size:17px;font-weight:900}.schedule-month-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.schedule-month-grid button{min-height:42px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-primary);cursor:pointer;font-family:inherit;font-size:14px;font-weight:800}.schedule-month-grid button:hover{border-color:var(--primary);background:var(--primary-soft)}.schedule-month-grid button.selected{border-color:var(--primary);background:var(--primary);color:#fff}.schedule-panel-anchor{scroll-margin-top:88px}.assignment-workspace.assignment-workspace-inline{display:block}.assignment-workspace-inline .shift-summary-card{margin-bottom:16px}@media(max-width:767px){.schedule-main{padding-inline:12px}.schedule-calendar-panel{display:block;min-height:auto;padding:10px}.schedule-month-panel{display:none}.schedule-week-panel{display:block}.schedule-inline-slot{min-height:168px;padding:12px}.schedule-selection-header{align-items:stretch;flex-direction:column}.schedule-shift-card{grid-template-columns:1fr}.schedule-status-stack{align-items:flex-start;flex-direction:row;flex-wrap:wrap}.shift-inline-panel-anchor{position:fixed;top:0;right:0;bottom:0;left:0;z-index:450;margin:0;background:#11182773}.shift-inline-panel{width:100%;height:100%;border:none;border-radius:0;overflow-y:auto;box-shadow:none}.shift-inline-panel-header{position:sticky;top:0;z-index:1;background:var(--surface)}.shift-inline-tabs{position:sticky;top:69px;z-index:1}.shift-inline-panel-body{padding:14px}.shift-row-card-actions{flex-wrap:wrap}}.mgr-dashboard-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px;padding:22px 24px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.mgr-dashboard-eyebrow{margin-bottom:4px;color:var(--primary);font-size:12px;font-weight:700}.mgr-dashboard-title{font-size:24px;font-weight:800;line-height:1.25}.mgr-dashboard-copy{margin-top:6px;color:var(--text-secondary);font-size:14px}.mgr-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}.mgr-stat-card{display:flex;flex-direction:column;gap:6px;min-height:154px;padding:16px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.mgr-stat-card.clickable{color:inherit;text-decoration:none;transition:transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.mgr-stat-card.clickable:hover{transform:translateY(-1px);box-shadow:var(--shadow-md);border-color:var(--primary)}.mgr-stat-card.clickable:focus-visible{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.mgr-stat-card.tone-primary{border-top:3px solid var(--primary)}.mgr-stat-card.tone-warning{border-top:3px solid var(--warning)}.mgr-stat-card.tone-success{border-top:3px solid var(--success)}.mgr-stat-card.tone-info{border-top:3px solid var(--info)}.mgr-stat-label{display:block;margin-bottom:8px;color:var(--text-secondary);font-size:12px;font-weight:700}.mgr-stat-value{display:block;font-size:30px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}.mgr-stat-hint{color:var(--text-secondary);font-size:12px;font-weight:700}.mgr-stat-basis{color:var(--text-secondary);font-size:12px}.mgr-stat-trend{display:flex;align-items:center;gap:4px;margin-top:auto;color:var(--primary);font-size:12px;font-weight:800;white-space:nowrap}.mgr-stat-trend.down{color:var(--chart-10)}.mgr-stat-trend.flat{color:var(--text-secondary)}.mgr-stat-trend-label{overflow:hidden;color:var(--text-secondary);font-weight:600;text-overflow:ellipsis}.mgr-trend-panel,.mgr-operation-panel,.mgr-action-panel{min-width:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.mgr-trend-panel{min-height:330px;margin-bottom:14px;padding:18px}.mgr-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.mgr-panel-header h2{font-size:16px;font-weight:800}.mgr-panel-header p{margin-top:4px;color:var(--text-secondary);font-size:12px}.mgr-panel-count{color:var(--text-secondary);font-size:12px;font-weight:700}.mgr-chart-legend{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:12px;color:var(--text-secondary);font-size:12px;font-weight:700}.mgr-chart-legend span{display:inline-flex;align-items:center;gap:5px}.mgr-chart-legend i{width:9px;height:9px;border-radius:50%}.mgr-chart-wrap{height:250px;overflow-x:auto}.mgr-chart-svg{display:block;width:100%;min-width:560px;height:240px}.mgr-chart-grid-line{stroke:var(--border);stroke-width:1}.mgr-chart-axis-label{fill:var(--text-secondary);font-size:11px}.mgr-chart-empty,.mgr-dashboard-empty{display:grid;place-items:center;color:var(--text-secondary);font-size:13px;text-align:center}.mgr-chart-empty{min-height:240px}.mgr-dashboard-columns{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:14px;margin-bottom:16px}.mgr-operation-panel,.mgr-action-panel{height:430px;padding:18px}.mgr-operation-list,.mgr-action-list{height:350px;overflow-y:auto}.mgr-operation-item,.mgr-action-item{display:block;padding:14px 0;border-bottom:1px solid var(--border);color:inherit;text-decoration:none}.mgr-operation-item:first-child,.mgr-action-item:first-child{padding-top:2px}.mgr-operation-item:last-child,.mgr-action-item:last-child{border-bottom:0}.mgr-operation-item:hover strong,.mgr-action-item:hover strong{color:var(--primary)}.mgr-operation-item:focus-visible,.mgr-action-item:focus-visible{outline:2px solid var(--state-focus-ring);outline-offset:-2px}.mgr-operation-heading,.mgr-operation-meta,.mgr-action-item,.mgr-action-main{display:flex;align-items:center;justify-content:space-between;gap:12px}.mgr-operation-heading strong,.mgr-action-main strong{display:block;font-size:13px;transition:color var(--duration-fast)}.mgr-operation-heading span,.mgr-action-main p,.mgr-operation-meta{color:var(--text-secondary);font-size:12px}.mgr-operation-heading span{display:block;margin-top:3px}.mgr-operation-capacity{flex:0 0 auto;color:var(--text-primary)!important;font-weight:800;font-variant-numeric:tabular-nums}.mgr-operation-progress{height:6px;margin:11px 0 7px;overflow:hidden;border-radius:999px;background:var(--neutral-soft)}.mgr-operation-progress span{display:block;height:100%;border-radius:inherit;background:var(--chart-2)}.mgr-operation-meta strong{color:var(--text-primary);font-size:12px;font-variant-numeric:tabular-nums}.mgr-action-item{min-height:76px}.mgr-action-main{justify-content:flex-start;min-width:0}.mgr-action-main .status-badge{flex:0 0 auto}.mgr-action-main p{display:-webkit-box;overflow:hidden;margin-top:4px;-webkit-box-orient:vertical;-webkit-line-clamp:2}.mgr-action-count{flex:0 0 auto;color:var(--text-primary);font-size:16px;font-weight:800;font-variant-numeric:tabular-nums}.mgr-dashboard-shell{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.mgr-activity-panel-wide{grid-column:1 / -1}.mgr-menu-grid-secondary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.mgr-menu-card-secondary{display:flex;align-items:center;gap:12px;padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);text-decoration:none;color:var(--text-primary);transition:border-color var(--duration-fast),transform var(--duration-fast)}.mgr-menu-card-secondary:hover{border-color:var(--primary);transform:translateY(-1px)}.mgr-menu-label{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;flex:0 0 42px;border-radius:var(--radius-sm);background:var(--primary-soft);color:var(--primary);font-size:12px;font-weight:800}.mgr-activity-panel{grid-column:span 1;padding:18px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.mgr-activity-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.mgr-activity-header h2{font-size:15px;font-weight:800}.mgr-activity-header span{color:var(--text-secondary);font-size:12px;font-weight:700}.mgr-activity-list{display:flex;flex-direction:column;gap:10px}.mgr-activity-item{display:grid;grid-template-columns:44px 1fr;gap:10px;align-items:start;padding-bottom:10px;border-bottom:1px solid var(--border)}.mgr-activity-item:last-child{padding-bottom:0;border-bottom:0}.mgr-activity-type{display:inline-flex;justify-content:center;padding:3px 0;border-radius:var(--radius-sm);background:var(--neutral-soft);color:var(--text-secondary);font-size:11px;font-weight:800}.mgr-activity-title{font-size:13px;font-weight:700}.mgr-activity-meta,.mgr-activity-empty{color:var(--text-secondary);font-size:12px}.mgr-activity-empty{padding:28px 0;text-align:center}@media(max-width:640px){.mgr-dashboard-hero{align-items:stretch;flex-direction:column;padding:18px}.mgr-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mgr-dashboard-shell{grid-template-columns:1fr}.mgr-activity-panel{grid-column:auto}.mgr-menu-grid-secondary{grid-template-columns:1fr}.mgr-panel-header{flex-direction:column}.mgr-chart-legend{justify-content:flex-start}.mgr-dashboard-columns{grid-template-columns:1fr}.mgr-operation-panel,.mgr-action-panel{height:420px}.mgr-operation-list,.mgr-action-list{height:340px}.mgr-action-item{align-items:flex-start}}@media(min-width:641px)and (max-width:900px){.mgr-stat-grid,.mgr-dashboard-shell{grid-template-columns:repeat(2,minmax(0,1fr))}.mgr-activity-panel{grid-column:span 2}.mgr-menu-grid-secondary{grid-template-columns:repeat(2,minmax(0,1fr))}.mgr-dashboard-columns{grid-template-columns:1fr}}.attendance-table-wrap{overflow-x:visible;min-width:0}.attendance-table{width:100%;min-width:0;table-layout:auto}.attendance-table th,.attendance-table td{overflow:visible}.attendance-table th{color:var(--text-secondary);font-size:12px}.attendance-table .mgr-cell-main,.attendance-phone{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attendance-row-editing{background:var(--primary-soft)!important;position:relative}.attendance-row-editing td{border-left:2px solid var(--primary)}.attendance-record-row td{padding:12px}.attendance-record-grid{display:grid;gap:10px;min-width:0}.attendance-record-top,.attendance-record-bottom{display:grid;align-items:end;column-gap:12px;row-gap:10px;min-width:0}.attendance-record-top{grid-template-columns:minmax(150px,1.1fr) minmax(150px,1.1fr) minmax(180px,1fr)}.attendance-record-bottom{grid-template-columns:minmax(104px,.6fr) minmax(104px,.6fr) minmax(104px,.5fr) minmax(220px,1.8fr) minmax(120px,auto);padding-top:10px;border-top:1px dashed var(--border)}.attendance-field{--attendance-value-min-height: 44px;display:grid;align-content:end;gap:5px;min-width:0}.attendance-value-static{display:flex;align-items:center;min-height:var(--attendance-value-min-height)}.attendance-field-label{color:var(--text-secondary);font-size:11px;font-weight:800}.attendance-field-actions{justify-items:start}.attendance-saved-label{color:var(--text-secondary);font-size:12px;font-weight:700}.attendance-save-btn{font-size:12px;padding:4px 12px}.attendance-edit-trigger{font-size:11px;padding:2px 8px}.attendance-time-input{display:inline-flex;align-items:center;width:92px;min-width:92px}.attendance-number-input{font-size:13px;padding:4px 6px;width:88px;min-width:88px;text-align:center}.attendance-note-input{font-size:13px;padding:4px 6px;width:100%;min-width:0}.attendance-status-select{font-size:13px;min-width:132px}.attendance-time-input,.attendance-number-input,.attendance-note-input,.attendance-status-select,.attendance-edit-actions{box-sizing:border-box;min-height:var(--attendance-value-min-height)}.attendance-number-input:disabled,.attendance-note-input:disabled{opacity:.6}.attendance-number-input:disabled,.attendance-note-input:disabled{cursor:not-allowed;background:var(--neutral-soft)}.attendance-edit-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.attendance-phone{font-size:13px}@media(max-width:1024px){.attendance-record-top{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(180px,.9fr)}.attendance-record-bottom{grid-template-columns:minmax(104px,.8fr) minmax(104px,.8fr) minmax(104px,.7fr) minmax(180px,1.4fr)}.attendance-field-actions{grid-column:1 / -1}}@media(max-width:768px){.attendance-record-top,.attendance-record-bottom{grid-template-columns:1fr}.attendance-field-actions{grid-column:auto}.attendance-time-input,.attendance-status-select{width:100%}}.reject-reason{font-size:12px;color:var(--text-secondary);display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.reject-reason.collapsed{-webkit-line-clamp:2}.reject-reason-toggle{font-size:11px;color:var(--primary);cursor:pointer;margin-top:2px;display:block;background:none;border:none;padding:0;text-align:left}.reject-reason-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:2px}.reject-reason-popover{position:fixed;z-index:300;box-sizing:border-box;width:min(360px,calc(100vw - 24px));max-height:min(320px,calc(100vh - 24px));overflow-y:auto;padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);color:var(--text-primary)}.reject-reason-popover-title{display:block;margin-bottom:6px;font-size:13px}.reject-reason-popover-content{margin:0;font-size:13px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.attendance-shift-info{background:var(--primary-soft);border-radius:var(--radius-sm);padding:12px 16px;margin-bottom:16px;font-size:13px;color:var(--text-secondary)}.attendance-shift-info strong{color:var(--text-primary)}.attendance-shift-meta{margin-left:12px}@media(max-width:640px){.form-row{flex-direction:column}.form-section{padding:16px}.mgr-table{font-size:13px}.mgr-table th,.mgr-table td{padding:8px}.stepper-row,.mgr-filter-row{flex-wrap:wrap}.detail-info-grid,.detail-stats-grid{grid-template-columns:1fr}.app-stat-grid{grid-template-columns:repeat(2,1fr)}.app-card{padding:16px}.app-card-header{flex-direction:column;gap:8px}.app-card-meta{align-self:flex-start}}.app-card-list .app-card:nth-child(1){animation:fadeUp .25s var(--ease-out, cubic-bezier(.16, 1, .3, 1)) 0ms both}.app-card-list .app-card:nth-child(2){animation:fadeUp .25s var(--ease-out, cubic-bezier(.16, 1, .3, 1)) 60ms both}.app-card-list .app-card:nth-child(3){animation:fadeUp .25s var(--ease-out, cubic-bezier(.16, 1, .3, 1)) .12s both}.app-card-list .app-card:nth-child(4){animation:fadeUp .25s var(--ease-out, cubic-bezier(.16, 1, .3, 1)) .18s both}.app-card-list .app-card:nth-child(5){animation:fadeUp .25s var(--ease-out, cubic-bezier(.16, 1, .3, 1)) .24s both}.app-card-list .app-card:nth-child(6){animation:fadeUp .25s var(--ease-out, cubic-bezier(.16, 1, .3, 1)) .3s both}.warning-card-list .warning-card:nth-child(1){animation:fadeUp .25s var(--ease-out, cubic-bezier(.16, 1, .3, 1)) 0ms both}.warning-card-list .warning-card:nth-child(2){animation:fadeUp .25s var(--ease-out, cubic-bezier(.16, 1, .3, 1)) 60ms both}.warning-card-list .warning-card:nth-child(3){animation:fadeUp .25s var(--ease-out, cubic-bezier(.16, 1, .3, 1)) .12s both}.warning-card-list .warning-card:nth-child(4){animation:fadeUp .25s var(--ease-out, cubic-bezier(.16, 1, .3, 1)) .18s both}.warning-card-list .warning-card:nth-child(5){animation:fadeUp .25s var(--ease-out, cubic-bezier(.16, 1, .3, 1)) .24s both}.warning-card-list .warning-card:nth-child(6){animation:fadeUp .25s var(--ease-out, cubic-bezier(.16, 1, .3, 1)) .3s both}@media(prefers-reduced-motion:reduce){.mgr-main,.app-card-list .app-card,.warning-card-list .warning-card{animation:none}}.mgr-menu-card,.mgr-menu-card-secondary,.app-card,.warning-card,.detail-stat-link,.shift-row-card{will-change:transform}.mgr-menu-card:focus-visible,.mgr-menu-card-secondary:focus-visible,.app-card:focus-visible,.detail-stat-link:focus-visible,.mgr-cell-link:focus-visible,.mgr-file-link:focus-visible,.kebab-item:focus-visible,.kebab-trigger:focus-visible,.reject-reason-toggle:focus-visible{outline:2px solid var(--state-focus-ring);outline-offset:var(--state-focus-offset)}.mgr-menu-card:active,.mgr-menu-card-secondary:active,.detail-stat-link:active,.app-card:active{transform:translateY(1px);box-shadow:none}.mgr-table tbody tr{transition:background-color var(--duration-hover) var(--ease-hover)}.mgr-table tbody tr:hover{background:var(--state-hover-overlay)}.attendance-row-editing:hover{background:var(--primary-soft)!important}.kebab-trigger,.kebab-item,.reject-reason-toggle,.mgr-file-link,.mgr-cell-link .mgr-cell-main,.btn-stepper{transition:background-color var(--duration-hover) var(--ease-hover),border-color var(--duration-hover) var(--ease-hover),color var(--duration-hover) var(--ease-hover),box-shadow var(--duration-hover) var(--ease-hover),transform var(--duration-hover) var(--ease-hover)}.kebab-trigger:active,.kebab-item:active,.reject-reason-toggle:active,.btn-stepper:active{transform:translateY(1px)}.btn-stepper:focus-visible{box-shadow:0 0 0 3px var(--state-focus-ring);outline:none}.modal-title{font-size:1.25rem;font-weight:700;margin-bottom:1.5rem}.modal-form{display:flex;flex-direction:column;gap:1rem}.form-label{display:flex;flex-direction:column;gap:.375rem;font-size:.875rem;font-weight:500}.form-error{font-size:.875rem;margin-top:-.25rem}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem}.mgr-expiry{display:flex;align-items:center;gap:6px;white-space:nowrap}.mgr-expiry-input{font:inherit;padding:4px 6px;border:1px solid var(--border, #d0d5dd);border-radius:6px;background:var(--surface, #fff);color:inherit}.mgr-expiry-input:disabled{opacity:.6}.page-header{background:var(--surface);border-bottom:1px solid var(--border)}.page-header-main{max-width:var(--page-width, var(--page-narrow));margin:0 auto;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}.page-header-title-group{min-width:0;display:flex;align-items:center;gap:12px}.page-header-back{width:34px;height:34px;flex:0 0 34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-primary);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.page-header-back:hover{background:var(--primary-soft);border-color:var(--primary);color:var(--primary)}.page-header-back:focus-visible{background:var(--primary-soft);border-color:var(--primary);color:var(--primary);box-shadow:0 0 0 3px var(--state-focus-ring);outline:none}.page-header-back:active{transform:translateY(1px)}.page-header-back span{display:block;font-size:28px;line-height:1;transform:translateY(-1px)}.page-header-copy{min-width:0}.page-header-title{color:var(--text-primary);font-size:20px;font-weight:700;line-height:1.3;overflow-wrap:anywhere}.page-header-breadcrumb{margin-bottom:4px;font-size:12px;color:var(--text-secondary)}.page-header-breadcrumb ol{display:flex;align-items:center;gap:6px;list-style:none}.page-header-breadcrumb li{display:inline-flex;align-items:center;min-width:0}.page-header-breadcrumb li:not(:last-child):after{content:"/";margin-left:6px;color:var(--cool-gray)}.page-header-breadcrumb a{color:var(--text-secondary)}.page-header-breadcrumb a:hover,.page-header-breadcrumb a:focus-visible{color:var(--primary);outline:none}.page-header-breadcrumb a:focus-visible{box-shadow:0 2px 0 var(--primary)}.page-header-breadcrumb [aria-current=page] span{color:var(--text-primary);font-weight:600}.page-header-actions{flex:0 0 auto;display:flex;align-items:center;gap:8px}@media(max-width:640px){.page-header-main{padding:14px 16px;align-items:flex-start;flex-wrap:wrap}.page-header-title-group{gap:10px;min-width:200px}.page-header-title{font-size:18px}.page-header-breadcrumb{display:none}.page-header-actions{align-self:center}}.select-field{position:relative}.select-field-sm .select-trigger{padding-top:6px;padding-bottom:6px;font-size:13px}.select-trigger{display:flex;align-items:center;justify-content:space-between;text-align:left;cursor:pointer;font-family:inherit;font-size:14px;color:var(--text-primary);background:var(--surface);transition:border-color var(--duration-hover) var(--ease-hover),background-color var(--duration-hover) var(--ease-hover),box-shadow var(--duration-hover) var(--ease-hover),transform var(--duration-hover) var(--ease-hover)}.select-trigger:hover:not(:disabled){border-color:var(--cool-gray);background:var(--state-hover-overlay)}.select-trigger:disabled{cursor:not-allowed;opacity:.6}.select-trigger.open,.select-trigger:focus-visible{border-color:var(--primary);box-shadow:0 0 0 3px var(--state-focus-ring);outline:none}.select-trigger:active:not(:disabled){transform:translateY(1px)}.select-placeholder{color:var(--text-secondary)}.select-arrow{color:var(--text-secondary);flex-shrink:0;margin-left:8px}.select-popup{position:absolute;left:0;right:0;z-index:300;margin-top:4px;max-height:240px;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md)}.select-popup-portal{position:fixed;right:auto;margin-top:0;z-index:2100}.select-option{display:block;width:100%;padding:10px 14px;border:none;background:transparent;text-align:left;font-family:inherit;font-size:14px;color:var(--text-primary);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.select-option:hover,.select-option.focused{background:var(--state-hover-overlay)}.select-option.active{color:var(--primary);font-weight:700;background:var(--primary-soft)}.select-option:active:not(:disabled){background:var(--state-active-overlay)}.select-option:disabled{cursor:not-allowed;opacity:.5}.select-error{margin-top:4px;color:var(--danger);font-size:12px}.staff-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.staff-detail-eyebrow{margin-bottom:4px;color:var(--primary);font-size:12px;font-weight:800}.staff-detail-header h2{font-size:20px;font-weight:800}.staff-detail-profile{display:flex;flex-wrap:wrap;gap:8px 14px;margin-bottom:14px;color:var(--text-secondary);font-size:13px}.staff-detail-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:18px}.staff-detail-stats div{padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--neutral-soft)}.staff-detail-stats span{display:block;margin-bottom:6px;color:var(--text-secondary);font-size:12px;font-weight:700}.staff-detail-stats strong{font-size:20px;font-weight:800}.staff-detail-section h3{margin-bottom:10px;font-size:15px;font-weight:800}.staff-detail-history{display:grid;gap:8px}.staff-detail-history-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm)}.staff-detail-history-item div{display:grid;gap:3px}.staff-detail-history-item span{color:var(--text-secondary);font-size:12px}.staff-detail-empty{padding:18px 0;color:var(--text-secondary);font-size:13px;text-align:center}@media(max-width:640px){.staff-detail-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-detail-history-item{grid-template-columns:1fr}}.time-field{display:grid;grid-template-columns:minmax(72px,1fr) auto minmax(72px,1fr);align-items:center;gap:6px;min-width:160px}.time-field .select-field{min-width:0}.time-field .select-popup{min-width:86px}.time-field-separator{color:var(--text-secondary);font-weight:700}.time-field:focus-within .time-field-separator{color:var(--primary)}.time-field-compact{display:inline-block;position:relative;width:92px;min-width:92px}.time-field-compact-input{box-sizing:border-box;width:100%;height:32px;padding:4px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-primary);font-family:inherit;font-size:13px;font-variant-numeric:tabular-nums;line-height:1.2;text-align:center;transition:border-color var(--duration-hover) var(--ease-hover),box-shadow var(--duration-hover) var(--ease-hover),background-color var(--duration-hover) var(--ease-hover)}.time-field-compact-input:hover:not(:disabled){border-color:var(--cool-gray);background:var(--state-hover-overlay)}.time-field-compact-input:focus,.time-field-compact-input:focus-visible{border-color:var(--primary);box-shadow:0 0 0 3px var(--state-focus-ring);outline:none}.time-field-compact-input:disabled{cursor:not-allowed;background:var(--neutral-soft);opacity:.6}.time-field-compact-popup{position:fixed;z-index:2100;box-sizing:border-box;display:grid;gap:10px;overflow-y:auto;padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow-md)}.time-field-compact-group{display:grid;gap:6px}.time-field-compact-group-label{color:var(--text-secondary);font-size:11px;font-weight:800}.time-field-compact-options{display:grid;gap:4px}.time-field-compact-hours{grid-template-columns:repeat(6,minmax(0,1fr))}.time-field-compact-minutes{grid-template-columns:repeat(4,minmax(0,1fr))}.time-field-compact-option{min-width:0;height:28px;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-primary);cursor:pointer;font-family:inherit;font-size:12px;font-variant-numeric:tabular-nums;font-weight:700;transition:border-color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.time-field-compact-option:hover{border-color:var(--cool-gray);background:var(--state-hover-overlay)}.time-field-compact-option.active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.checkbox{display:inline-flex;align-items:center;gap:7px;color:var(--text-primary);font-size:13px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--duration-hover) var(--ease-hover)}.checkbox.disabled{cursor:not-allowed;opacity:.5}.checkbox-input{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);border:0;white-space:nowrap}.checkbox-control{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex:0 0 16px;border:1.5px solid var(--border);border-radius:4px;background:var(--surface);color:#fff;font-size:12px;font-weight:800;line-height:1;transition:background-color var(--duration-hover) var(--ease-hover),border-color var(--duration-hover) var(--ease-hover),box-shadow var(--duration-hover) var(--ease-hover),transform var(--duration-hover) var(--ease-hover)}.checkbox-sm .checkbox-control{width:14px;height:14px;flex-basis:14px;font-size:10px}.checkbox:hover .checkbox-control{border-color:var(--primary);background:var(--state-hover-overlay)}.checkbox:active .checkbox-control{transform:scale(.94)}.checkbox-input:checked+.checkbox-control,.checkbox-input:indeterminate+.checkbox-control{background:var(--primary);border-color:var(--primary)}.checkbox-danger .checkbox-input:checked+.checkbox-control,.checkbox-danger .checkbox-input:indeterminate+.checkbox-control{background:var(--danger);border-color:var(--danger)}.checkbox-input:focus-visible+.checkbox-control{box-shadow:0 0 0 3px var(--state-focus-ring)}.checkbox-copy{display:inline-flex;flex-direction:column;gap:1px}.checkbox-label{font-weight:600}.checkbox-description{color:var(--text-secondary);font-size:12px}.shift-form-calendar{margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.shift-form-calendar-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.shift-form-calendar-header strong{font-size:15px;font-weight:700}.shift-form-calendar-scope{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:6px 0 12px;color:var(--text-secondary);font-size:12px}.shift-form-calendar-scope>span{min-width:0;overflow-wrap:anywhere}.shift-form-calendar-scope .btn{flex:0 0 auto}.shift-form-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.shift-form-calendar-day{position:relative;display:flex;height:56px;min-height:56px;align-items:flex-start;justify-content:space-between;padding:6px;gap:4px}.shift-form-calendar-day .assignment-day-number{font-size:13px}.shift-form-calendar-count{display:inline-flex;min-width:18px;height:18px;align-items:center;justify-content:center;padding:0 5px;border-radius:9px;background:var(--primary-soft);color:var(--primary);font-size:11px;font-weight:700;line-height:1}.shift-form-calendar-day.editing{border-color:var(--primary);border-style:dashed}.shift-form-calendar-daylist{display:grid;gap:8px;margin-top:12px}.shift-form-calendar-daylist .mgr-empty{margin:0;font-size:13px}.shift-form-calendar-dayitem{padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg)}.shift-form-calendar-dayitem.editing{border-color:var(--primary);background:var(--primary-soft)}.shift-form-calendar-dayitem strong{display:block;font-size:13px}.shift-form-calendar-dayitem span{display:block;margin-top:2px;color:var(--text-secondary);font-size:12px}@media(max-width:640px){.shift-form-calendar-grid{gap:3px}.shift-form-calendar-day{height:44px;min-height:44px;flex-direction:column;align-items:center;justify-content:center;padding:4px 2px;gap:2px}.shift-form-calendar-day .assignment-day-number{font-size:12px}.shift-form-calendar-count{min-width:16px;height:16px;padding:0 4px;font-size:10px}}.rdp-root{--rdp-accent-color: blue;--rdp-accent-background-color: #f0f0ff;--rdp-day-height: 44px;--rdp-day-width: 44px;--rdp-day_button-border-radius: 100%;--rdp-day_button-border: 2px solid transparent;--rdp-day_button-height: 42px;--rdp-day_button-width: 42px;--rdp-selected-border: 2px solid var(--rdp-accent-color);--rdp-disabled-opacity: .5;--rdp-outside-opacity: .75;--rdp-today-color: var(--rdp-accent-color);--rdp-dropdown-gap: .5rem;--rdp-months-gap: 2rem;--rdp-nav_button-disabled-opacity: .5;--rdp-nav_button-height: 2.25rem;--rdp-nav_button-width: 2.25rem;--rdp-nav-height: 2.75rem;--rdp-range_middle-background-color: var(--rdp-accent-background-color);--rdp-range_middle-color: inherit;--rdp-range_start-color: white;--rdp-range_start-background: linear-gradient( var(--rdp-gradient-direction), transparent 50%, var(--rdp-range_middle-background-color) 50% );--rdp-range_start-date-background-color: var(--rdp-accent-color);--rdp-range_end-background: linear-gradient( var(--rdp-gradient-direction), var(--rdp-range_middle-background-color) 50%, transparent 50% );--rdp-range_end-color: white;--rdp-range_end-date-background-color: var(--rdp-accent-color);--rdp-week_number-border-radius: 100%;--rdp-week_number-border: 2px solid transparent;--rdp-week_number-height: var(--rdp-day-height);--rdp-week_number-opacity: .75;--rdp-week_number-width: var(--rdp-day-width);--rdp-weeknumber-text-align: center;--rdp-weekday-opacity: .75;--rdp-weekday-padding: .5rem 0rem;--rdp-weekday-text-align: center;--rdp-gradient-direction: 90deg;--rdp-animation_duration: .3s;--rdp-animation_timing: cubic-bezier(.4, 0, .2, 1)}.rdp-root[dir=rtl]{--rdp-gradient-direction: -90deg}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity: unset}.rdp-root{position:relative;box-sizing:border-box}.rdp-root *{box-sizing:border-box}.rdp-day{width:var(--rdp-day-width);height:var(--rdp-day-height);text-align:center}.rdp-day_button{background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;justify-content:center;align-items:center;display:flex;width:var(--rdp-day_button-width);height:var(--rdp-day_button-height);border:var(--rdp-day_button-border);border-radius:var(--rdp-day_button-border-radius)}.rdp-day_button:disabled{cursor:revert}.rdp-caption_label{z-index:1;position:relative;display:inline-flex;align-items:center;white-space:nowrap;border:0}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto Highlight;outline:5px auto -webkit-focus-ring-color}.rdp-button_next,.rdp-button_previous{border:none;background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;-moz-appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;position:relative;appearance:none;width:var(--rdp-nav_button-width);height:var(--rdp-nav_button-height)}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert;opacity:var(--rdp-nav_button-disabled-opacity)}.rdp-chevron{display:inline-block;fill:var(--rdp-accent-color)}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform:rotate(180deg);transform-origin:50%}.rdp-dropdowns{position:relative;display:inline-flex;align-items:center;gap:var(--rdp-dropdown-gap)}.rdp-dropdown{z-index:2;opacity:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;inset-block-start:0;inset-block-end:0;inset-inline-start:0;width:100%;margin:0;padding:0;cursor:inherit;border:none;line-height:inherit}.rdp-dropdown_root{position:relative;display:inline-flex;align-items:center}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity)}.rdp-month_caption{display:flex;align-content:center;height:var(--rdp-nav-height);font-weight:700;font-size:large}.rdp-root[data-nav-layout=around] .rdp-month,.rdp-root[data-nav-layout=after] .rdp-month{position:relative}.rdp-root[data-nav-layout=around] .rdp-month_caption{justify-content:center;margin-inline-start:var(--rdp-nav_button-width);margin-inline-end:var(--rdp-nav_button-width);position:relative}.rdp-root[data-nav-layout=around] .rdp-button_previous{position:absolute;inset-inline-start:0;top:0;height:var(--rdp-nav-height);display:inline-flex}.rdp-root[data-nav-layout=around] .rdp-button_next{position:absolute;inset-inline-end:0;top:0;height:var(--rdp-nav-height);display:inline-flex;justify-content:center}.rdp-months{position:relative;display:flex;flex-wrap:wrap;gap:var(--rdp-months-gap);max-width:fit-content}.rdp-month_grid{border-collapse:collapse}.rdp-nav{position:absolute;inset-block-start:0;inset-inline-end:0;display:flex;align-items:center;height:var(--rdp-nav-height)}.rdp-weekday{opacity:var(--rdp-weekday-opacity);padding:var(--rdp-weekday-padding);font-weight:500;font-size:smaller;text-align:var(--rdp-weekday-text-align);text-transform:var(--rdp-weekday-text-transform)}.rdp-week_number{opacity:var(--rdp-week_number-opacity);font-weight:400;font-size:small;height:var(--rdp-week_number-height);width:var(--rdp-week_number-width);border:var(--rdp-week_number-border);border-radius:var(--rdp-week_number-border-radius);text-align:var(--rdp-weeknumber-text-align)}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color)}.rdp-selected{font-weight:700;font-size:large}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border)}.rdp-outside{opacity:var(--rdp-outside-opacity)}.rdp-disabled:not(.rdp-selected){opacity:var(--rdp-disabled-opacity)}.rdp-hidden{visibility:hidden;color:var(--rdp-range_start-color)}.rdp-range_start{background:var(--rdp-range_start-background)}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.rdp-range_middle .rdp-day_button{border:unset;border-radius:unset;color:var(--rdp-range_middle-color)}.rdp-range_end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.rdp-range_end .rdp-day_button{color:var(--rdp-range_start-color);background-color:var(--rdp-range_end-date-background-color)}.rdp-range_start.rdp-range_end{background:revert}.rdp-focusable{cursor:pointer}@keyframes rdp-slide_in_left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes rdp-slide_in_right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes rdp-slide_out_left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes rdp-slide_out_right{0%{transform:translate(0)}to{transform:translate(100%)}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}@keyframes rdp-fade_in{0%{opacity:0}to{opacity:1}}@keyframes rdp-fade_out{0%{opacity:1}to{opacity:0}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.datetime-field{position:relative}.datetime-field-trigger{text-align:left;cursor:pointer;font-family:inherit;font-size:14px;color:var(--text-primary);background:var(--surface);transition:border-color var(--duration-hover) var(--ease-hover),background-color var(--duration-hover) var(--ease-hover),box-shadow var(--duration-hover) var(--ease-hover),transform var(--duration-hover) var(--ease-hover)}.datetime-field-trigger:hover:not(:disabled){border-color:var(--cool-gray);background:var(--state-hover-overlay)}.datetime-field-trigger:focus-visible{border-color:var(--primary);box-shadow:0 0 0 3px var(--state-focus-ring)}.datetime-field-trigger:active:not(:disabled){transform:translateY(1px)}.datetime-field-trigger:disabled{cursor:not-allowed;opacity:.6}.datetime-field-popup{position:absolute;z-index:420;margin-top:4px;width:min(330px,calc(100vw - 32px));padding:10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md)}.datetime-field-popup .rdp-root{--rdp-accent-color: var(--primary);--rdp-accent-background-color: var(--primary-soft);font-family:inherit;font-size:13px}.datetime-field-popup .rdp-day_button:hover{background:var(--state-hover-overlay)}.datetime-field-popup .rdp-day_button:focus-visible{outline:2px solid var(--state-focus-ring);outline-offset:2px}.datetime-field-time{padding:8px 4px 2px;border-top:1px solid var(--border)}.multi-select{position:relative;min-width:260px}.multi-select-trigger{display:inline-flex;align-items:center;justify-content:space-between;width:100%;min-height:40px;gap:10px;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-primary);cursor:pointer;font-family:inherit;text-align:left;transition:border-color var(--duration-hover) var(--ease-hover),box-shadow var(--duration-hover) var(--ease-hover),background-color var(--duration-hover) var(--ease-hover)}.multi-select-trigger:hover,.multi-select-trigger.open{border-color:var(--primary);background:var(--state-hover-overlay)}.multi-select-trigger:focus-visible{outline:2px solid var(--state-focus-ring);outline-offset:var(--state-focus-offset)}.multi-select-label{color:var(--text-secondary);font-size:12px;font-weight:800;white-space:nowrap}.multi-select-summary{flex:1;min-width:0;overflow:hidden;font-size:13px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.multi-select-arrow{flex:0 0 auto;color:var(--text-secondary)}.multi-select-popup{position:absolute;top:calc(100% + 6px);right:0;z-index:50;width:min(320px,92vw);padding:8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);box-shadow:0 18px 42px #0f172a29}.multi-select-assist{margin:0 0 6px;padding:2px 4px;color:var(--text-secondary);font-size:12px;font-weight:700}.multi-select-options{display:grid;gap:2px;max-height:280px;overflow-y:auto}.multi-select-option{display:flex;align-items:center;min-height:34px;padding:6px 8px;border-radius:var(--radius-sm)}.multi-select-option:hover{background:var(--state-hover-overlay)}.multi-select-option-all{margin-bottom:6px;border-bottom:1px solid var(--border);border-radius:var(--radius-sm) var(--radius-sm) 0 0}@media(max-width:640px){.multi-select{width:100%;min-width:0}.multi-select-popup{left:0;right:auto;width:100%}}.op-layout{min-height:100vh}.op-main{max-width:var(--page-width, var(--page-narrow));margin:0 auto;padding:24px 20px;animation:fadeUp .3s var(--ease-out, cubic-bezier(.16, 1, .3, 1)) both}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.op-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.op-title{font-size:20px;font-weight:700}.op-title-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.op-widget-control{position:relative}.op-widget-control .multi-select{width:168px;min-width:168px}.op-widget-control .multi-select-trigger{min-height:30px;padding:5px 9px;gap:6px}.op-widget-control .multi-select-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.op-widget-control .multi-select-summary{font-size:12px}.op-widget-control .multi-select-popup{z-index:100}.op-widget-empty{margin-bottom:24px}.op-widget-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin-bottom:24px}.op-widget-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;transition:box-shadow var(--duration-fast) var(--ease-out)}.op-widget-card:hover{box-shadow:var(--shadow-md)}.op-widget-label{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}.op-widget-value{font-size:28px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--primary);line-height:1.1}.op-widget-sub{font-size:12px;color:var(--text-secondary);margin-top:4px}.op-widget-skeleton{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px}.op-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px 24px;margin-bottom:16px}.op-section-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:16px}.op-section-title{font-size:14px;font-weight:700}.op-section-subtitle{margin-top:4px;font-size:12px;color:var(--text-secondary)}.op-chart-panel{margin-bottom:16px}.op-period-controls{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.op-quick-range{display:flex;align-items:center;flex-wrap:wrap;gap:4px}.op-quick-range .btn.active{color:var(--primary);background:var(--primary-soft);border-color:var(--primary)}.op-date-field{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--text-secondary)}.op-date-field input{min-width:134px;height:32px;padding:0 8px;border:1px solid var(--border);border-radius:var(--radius-sm, 6px);background:var(--surface);color:var(--text-primary);font:inherit}.op-date-field input:focus{outline:2px solid var(--state-focus-ring);outline-offset:var(--state-focus-offset)}.op-chart-legend-dot{display:inline-block;width:10px;height:10px;border-radius:50%;flex-shrink:0}.op-chart-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.op-chart-svg{display:block;width:100%;min-width:280px;height:auto}.op-chart-empty{padding:40px 0;text-align:center;color:var(--text-secondary);font-size:13px}.op-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.op-chart-card{min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.op-chart-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.op-chart-card-title{margin:0;font-size:14px;font-weight:700;color:var(--text-primary)}.op-chart-card-caption{margin:4px 0 0;font-size:12px;color:var(--text-secondary)}.op-chart-total-list{display:flex;align-items:flex-end;flex-direction:column;gap:4px;min-width:max-content}.op-chart-total{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:var(--text-secondary);white-space:nowrap}.op-chart-grid-line{stroke:var(--border);stroke-width:1;stroke-dasharray:3 3}.op-chart-axis-label{fill:var(--text-secondary);font-size:10px}.op-chart-skeleton{min-height:230px}.op-funnel-section{margin-top:20px;padding:20px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.op-funnel-heading{margin-bottom:16px}.op-funnel-heading h2{margin:0;font-size:16px;color:var(--text-primary)}.op-funnel-heading p{margin:5px 0 0;color:var(--text-secondary);font-size:12px}.op-funnel-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.op-funnel-card{min-width:0;min-height:164px;padding:14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg)}.op-funnel-step{color:var(--text-secondary);font-size:11px;font-weight:700}.op-funnel-card h3{margin:5px 0 8px;font-size:13px;color:var(--text-primary)}.op-funnel-card strong{display:block;font-size:22px;color:var(--text-primary)}.op-funnel-bar{height:7px;margin-top:14px;overflow:hidden;border-radius:999px;background:var(--neutral-soft)}.op-funnel-bar span{display:block;height:100%;border-radius:inherit;background:var(--chart-3)}.op-funnel-rate{margin-top:9px;color:var(--text-secondary);font-size:11px;font-weight:600;line-height:1.4}.op-funnel-skeleton{min-height:164px}.op-error-block{padding:16px 20px;background:var(--danger-soft);border:1px solid var(--urgent-soft);border-radius:var(--radius);color:var(--danger);font-size:14px;margin-bottom:16px}[data-reserved-hidden=true]{visibility:hidden;pointer-events:none}.op-filter-row{display:flex;gap:8px;align-items:center;margin-bottom:16px;min-height:40px;flex-wrap:wrap}.op-filter-row .input{max-width:180px}.op-search-input{max-width:240px}.op-table-wrap{min-height:260px;overflow-x:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.op-table{width:100%;border-collapse:collapse;font-size:14px}.op-table th{text-align:left;padding:10px 14px;font-size:12px;font-weight:600;color:var(--text-secondary);border-bottom:2px solid var(--border);white-space:nowrap}.op-table td{padding:12px 14px;border-bottom:1px solid var(--border);vertical-align:middle}.op-table tbody tr:last-child td{border-bottom:none}.op-table tbody tr:hover{background:var(--primary-soft)}.op-cell-main{font-weight:600;font-size:14px}.op-cell-sub{font-size:12px;color:var(--text-secondary);margin-top:2px}.op-badge{display:inline-block;padding:2px 9px;border-radius:10px;font-size:11px;font-weight:600}.op-badge.active{background:var(--success-soft);color:var(--success)}.op-badge.inactive{background:var(--neutral-soft);color:var(--text-secondary)}.op-pagination{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:16px;font-size:14px}.op-pagination-info{font-size:13px;color:var(--text-secondary)}.op-form-card{max-width:100%;margin:0 auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px}.op-form-section-title{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid var(--border)}.op-form-group{margin-bottom:16px;position:relative}.op-form-group label{display:block;font-size:13px;font-weight:600;margin-bottom:6px;color:var(--text-primary)}.op-form-group .helper-text{font-size:12px;color:var(--text-secondary);margin-top:4px}.op-form-error{font-size:13px;min-height:36px;padding:8px 12px;border-radius:var(--radius-sm);margin-bottom:16px;visibility:hidden}.op-form-error[data-visible=true]{visibility:visible;color:var(--danger);background:var(--danger-soft)}.op-form-actions{display:flex;gap:8px;margin-top:24px}.op-form-actions .btn-primary{flex:1;padding:12px}.op-form-actions .btn-ghost{padding:12px 24px}.op-empty{text-align:center;min-height:150px;padding:60px 20px;color:var(--text-secondary);font-size:14px}.op-actions{display:flex;gap:4px;flex-wrap:nowrap}.op-promotion-modal{min-height:430px}.op-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.op-modal-header h2{margin:0 0 6px;font-size:20px;color:var(--text-primary)}.op-modal-header p{margin:0;font-size:13px;color:var(--text-secondary)}.op-promotion-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.op-promotion-results{min-height:260px;margin-top:16px;border:1px solid var(--border);border-radius:var(--radius-sm);overflow-y:auto}.op-promotion-item{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:10px 12px;border-bottom:1px solid var(--border)}.op-promotion-item:last-child{border-bottom:0}.op-promotion-empty{display:flex;align-items:center;justify-content:center;min-height:258px;color:var(--text-secondary);font-size:13px}.op-nav-link{font-size:13px;color:var(--primary);text-decoration:none;font-weight:500}.op-nav-link:hover{text-decoration:underline}.op-report-tabs{display:flex;min-height:44px;border-bottom:1px solid var(--border)}.op-report-tab{min-width:112px;padding:11px 18px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--text-secondary);font:inherit;font-size:14px;font-weight:600;cursor:pointer}.op-report-tab.active{border-bottom-color:var(--chart-1);color:var(--primary)}.op-report-tab:focus-visible{outline:2px solid var(--state-focus-ring);outline-offset:var(--state-focus-offset)}.op-report-content{min-height:520px;padding-top:16px}.op-report-panel{min-height:500px}.op-report-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;min-height:58px}.op-report-controls{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.op-report-message-slot{min-height:16px}.op-report-message-slot .op-error-block{margin:0 0 16px}.op-report-table-wrap{min-height:420px}.op-report-table{min-width:1900px}.op-report-table th,.op-report-table td{text-align:right}.op-report-table th:first-child,.op-report-table td:first-child{position:sticky;left:0;z-index:1;text-align:left;background:var(--surface)}.op-report-table th:first-child{z-index:2}.op-report-number{font-variant-numeric:tabular-nums;white-space:nowrap}.op-report-date{font-weight:600;white-space:nowrap}.op-report-placeholder{display:grid;place-items:center;text-align:center;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.op-report-filter-row{min-height:48px;margin-bottom:0}.op-report-search{display:flex;gap:6px}.op-report-list-table-wrap{min-height:420px}.op-report-pagination{min-height:36px}.op-report-filter-spacer{pointer-events:none}.op-report-table-wrap,.op-report-list-table-wrap{height:520px;overflow:auto}.op-widget-card,.op-section{transition:background-color var(--duration-hover) var(--ease-hover),border-color var(--duration-hover) var(--ease-hover),box-shadow var(--duration-hover) var(--ease-hover),transform var(--duration-hover) var(--ease-hover)}.op-widget-card:hover{transform:translateY(-1px)}.op-widget-card:focus-visible,.op-nav-link:focus-visible,.op-table a:focus-visible,.op-table button:focus-visible{outline:2px solid var(--state-focus-ring);outline-offset:var(--state-focus-offset)}.op-widget-card:active{transform:translateY(1px);box-shadow:none}.op-table tbody tr{transition:background-color var(--duration-hover) var(--ease-hover)}.op-table tbody tr:hover{background:var(--state-hover-overlay)}.op-nav-link{transition:color var(--duration-hover) var(--ease-hover),box-shadow var(--duration-hover) var(--ease-hover)}.op-inquiry-filter-row{justify-content:space-between}.op-inquiry-message-slot{min-height:64px}.op-inquiry-message-slot .op-error-block{margin-bottom:16px}.op-inquiry-table-wrap{min-height:520px}.op-inquiry-table{min-width:1240px}.op-inquiry-table th:nth-child(1){width:150px}.op-inquiry-table th:nth-child(2){width:100px}.op-inquiry-table th:nth-child(3){width:140px}.op-inquiry-table th:nth-child(4){width:200px}.op-inquiry-table th:nth-child(5){width:300px}.op-inquiry-table th:nth-child(6){width:94px}.op-inquiry-table th:nth-child(7){width:150px}.op-inquiry-table th:nth-child(8){width:112px}.op-inquiry-table td{height:64px}.op-inquiry-table a{color:var(--text-primary);white-space:nowrap}.op-inquiry-table a:hover,.op-inquiry-detail-grid a:hover{color:var(--primary);text-decoration:underline}.op-inquiry-message-button{display:block;width:100%;overflow:hidden;border:0;background:transparent;color:var(--text-primary);font:inherit;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.op-inquiry-message-button:hover{color:var(--primary);text-decoration:underline}.op-inquiry-date{color:var(--text-secondary);font-size:12px;white-space:nowrap}.op-badge.inquiry-new{background:var(--info-soft);color:var(--info)}.op-badge.inquiry-review{background:var(--warning-soft);color:var(--warning-strong)}.op-badge.inquiry-done{background:var(--success-soft);color:var(--success-strong)}.op-inquiry-action-complete{display:inline-block;min-width:70px;color:var(--text-secondary);font-size:12px;text-align:center}.op-inquiry-pagination{min-height:36px}.op-inquiry-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:18px;border-bottom:1px solid var(--border)}.op-inquiry-modal-header p{margin:0 0 4px;color:var(--text-secondary);font-size:12px}.op-inquiry-modal-header h2{margin:0;font-size:22px}.op-inquiry-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;margin:20px 0}.op-inquiry-detail-grid dt{margin-bottom:3px;color:var(--text-secondary);font-size:12px;font-weight:600}.op-inquiry-detail-grid dd{margin:0;overflow-wrap:anywhere;font-size:14px}.op-inquiry-full-message{min-height:180px;padding:18px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg)}.op-inquiry-full-message h3{margin:0 0 10px;font-size:13px}.op-inquiry-full-message p{margin:0;overflow-wrap:anywhere;font-size:14px;line-height:1.7;white-space:pre-wrap}.op-inquiry-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}@media(max-width:640px){.op-widget-grid{grid-template-columns:1fr 1fr}.op-title-row,.op-title-actions{align-items:flex-start;flex-direction:column}.op-filter-row{flex-direction:column;align-items:flex-start}.op-filter-row .input,.op-search-input{max-width:100%;width:100%}.op-section-header{flex-direction:column;align-items:flex-start}.op-period-controls,.op-quick-range{justify-content:flex-start;width:100%}.op-date-field{width:100%}.op-date-field input{flex:1;min-width:0}.op-chart-grid,.op-funnel-grid{grid-template-columns:1fr}.op-funnel-card{min-height:0}.op-chart-card-header{flex-direction:column}.op-chart-total-list{align-items:flex-start;min-width:0}.op-inquiry-detail-grid{grid-template-columns:1fr}.op-report-toolbar,.op-report-controls{align-items:flex-start;flex-direction:column}.op-report-controls,.op-report-search{width:100%}}@media(max-width:400px){.op-widget-grid{grid-template-columns:1fr}.op-main{padding:16px 12px}}.op-permission-toggle{display:inline-flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.op-permission-toggle input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary);cursor:pointer}.op-badge-permission{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;line-height:1.6;color:var(--info-strong, #1d4ed8);background:var(--info-soft, #dbeafe);white-space:nowrap}.notification-stack{position:fixed;top:72px;right:20px;z-index:1000;display:flex;width:min(360px,calc(100vw - 40px));flex-direction:column;gap:10px;pointer-events:none}.notification{display:flex;align-items:flex-start;gap:12px;min-height:56px;padding:14px 14px 14px 16px;border:1px solid var(--border);border-left-width:4px;border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow-md);color:var(--text-primary);pointer-events:auto;animation:notification-enter var(--duration-normal) var(--ease-out) both}.notification-success{border-left-color:var(--success);background:linear-gradient(90deg,var(--success-soft),var(--surface) 38%)}.notification-info{border-left-color:var(--info);background:linear-gradient(90deg,var(--info-soft),var(--surface) 38%)}.notification-warning{border-left-color:var(--warning);background:linear-gradient(90deg,var(--warning-soft),var(--surface) 38%)}.notification-error{border-left-color:var(--danger);background:linear-gradient(90deg,var(--danger-soft),var(--surface) 38%)}.notification-content{flex:1;min-width:0}.notification-title{margin-bottom:2px;font-size:13px;font-weight:700}.notification-message{font-size:13px;line-height:1.45;color:var(--text-primary);overflow-wrap:anywhere}.notification-close{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);font-size:14px;line-height:1;cursor:pointer;transition:background-color var(--duration-hover) var(--ease-hover),color var(--duration-hover) var(--ease-hover),transform var(--duration-hover) var(--ease-hover)}.notification-close:hover{background:var(--neutral-soft);color:var(--text-primary)}.notification-close:focus-visible{background:var(--neutral-soft);color:var(--text-primary);box-shadow:0 0 0 3px var(--state-focus-ring);outline:none}.notification-close:active{transform:scale(.94)}@keyframes notification-enter{0%{opacity:0;transform:translate3d(16px,-4px,0)}to{opacity:1;transform:translateZ(0)}}@media(max-width:640px){.notification-stack{top:auto;right:50%;bottom:84px;transform:translate(50%);width:min(420px,calc(100vw - 24px))}.notification{padding:13px 12px 13px 14px}}@media(prefers-reduced-motion:reduce){.notification{animation:none}}.confirm-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;margin-bottom:14px;border-radius:var(--radius-sm);font-size:18px;font-weight:800}.confirm-icon-default{background:var(--info-soft);color:var(--info)}.confirm-icon-danger{background:var(--danger-soft);color:var(--danger)}.confirm-title{margin-bottom:8px;font-size:18px;font-weight:700;color:var(--text-primary)}.confirm-message{font-size:14px;line-height:1.6;color:var(--text-secondary);white-space:pre-line}.confirm-reason-field{display:flex;flex-direction:column;gap:6px;margin-top:14px}.confirm-reason-textarea{width:100%;min-height:72px;resize:vertical;font-family:inherit}.confirm-reason-preset{width:100%;font-family:inherit}.confirm-reason-count{align-self:flex-end;font-size:12px;color:var(--text-secondary)}.confirm-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:22px}@media(max-width:640px){.confirm-actions{flex-direction:column-reverse}.confirm-actions .btn{width:100%}}
