:root{--bg-page: #fff8f9;--bg-surface: #ffffff;--bg-subtle: #fff1f3;--bg-muted: #f8fafc;--border-soft: #f1dce1;--border-slate: #e2e8f0;--text-main: #1e293b;--text-secondary: #475569;--text-muted: #64748b;--rose-600: #e11d48;--rose-700: #be123c;--rose-100: #ffe4e6;--rose-50: #fff1f2;--teal-600: #0d9488;--teal-700: #0f766e;--teal-50: #f0fdfa;--shadow-card: 0 6px 24px -6px rgba(190, 18, 60, .08), 0 2px 6px -1px rgba(15, 23, 42, .04);--radius-lg: 18px;--radius-md: 12px;--radius-sm: 8px;font-family:-apple-system,BlinkMacSystemFont,PingFang TC,Noto Sans TC,Microsoft JhengHei,sans-serif;color:var(--text-main);background-color:var(--bg-page)}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-block-size:100dvh;background:radial-gradient(circle at top right,#ffe4e6,#fff8f9 38%,#f8fafc);color:var(--text-main);-webkit-font-smoothing:antialiased}.sr-only{position:absolute;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell{min-block-size:100dvh;display:flex;flex-direction:column}.top-nav{position:sticky;inset-block-start:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem clamp(.85rem,2.5vw,1.75rem);background:#ffffffe0;backdrop-filter:blur(12px);border-block-end:1px solid var(--border-soft)}.brand-block{display:flex;align-items:center;gap:.65rem;min-inline-size:0}.brand-logo{inline-size:38px;block-size:38px;border-radius:12px;background:linear-gradient(135deg,#fb7185,#e11d48);color:#fff;display:grid;place-items:center;flex-shrink:0;box-shadow:0 4px 10px #e11d4840}.brand-title{margin:0;font-size:clamp(1rem,.88rem + .65vw,1.25rem);font-weight:800;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-subtitle{margin:0;font-size:.78rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.main-container{inline-size:min(1240px,100%);margin-inline:auto;padding:clamp(.85rem,2vw,1.5rem);display:flex;flex-direction:column;gap:1.15rem;container-type:inline-size}.panel-card{background:var(--bg-surface);border:1px solid var(--border-soft);border-radius:var(--radius-lg);padding:clamp(.95rem,2vw,1.4rem);box-shadow:var(--shadow-card);container-type:inline-size}.panel-title{margin:0;display:flex;align-items:center;gap:.5rem;font-size:clamp(1.02rem,.92rem + .5vw,1.22rem);font-weight:700}.panel-desc{margin:.35rem 0 0;font-size:.86rem;color:var(--text-secondary);line-height:1.5}.scan-status{margin:.85rem 0 0;font-size:.88rem;color:var(--text-secondary);line-height:1.45}.scan-status.is-error{color:var(--rose-700, #be123c)}.code-sample{margin:.65rem 0 0;padding:.75rem .9rem;border-radius:12px;background:#0f172a0a;font-size:.78rem;line-height:1.45;overflow-x:auto;white-space:pre-wrap}.text-rose{color:var(--rose-600)}.text-teal{color:var(--teal-600)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;font-family:inherit;font-weight:600;font-size:.88rem;border-radius:999px;padding:.55rem 1rem;border:1px solid transparent;cursor:pointer;transition:transform .12s ease,background-color .15s ease,border-color .15s ease;white-space:nowrap}.btn:disabled{opacity:.55;cursor:not-allowed}.btn:active:not(:disabled){transform:scale(.98)}.btn-primary{background:var(--rose-600);color:#fff;box-shadow:0 2px 8px #e11d4840}.btn-primary:hover:not(:disabled){background:var(--rose-700)}.btn-teal{background:var(--teal-600);color:#fff}.btn-teal:hover:not(:disabled){background:var(--teal-700)}.btn-secondary{background:var(--rose-50);color:var(--rose-700);border-color:#fecdd3}.btn-secondary:hover:not(:disabled){background:var(--rose-100)}.btn-rose-outline{background:#fff;color:var(--rose-700);border-color:#fb7185}.btn-ghost{background:transparent;color:var(--text-secondary);border-color:var(--border-slate)}.btn-ghost:hover:not(:disabled){background:var(--bg-muted)}.btn-sm{font-size:.82rem;padding:.42rem .82rem}.btn-xs{font-size:.76rem;padding:.28rem .65rem}.icon-btn{display:inline-grid;place-items:center;inline-size:34px;block-size:34px;border-radius:50%;border:1px solid var(--border-slate);background:#fff;color:var(--text-secondary);cursor:pointer}.count-pill{background:var(--rose-600);color:#fff;font-size:.7rem;padding:.1rem .45rem;border-radius:999px}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.scan-header-row{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.9rem}.scan-actions{display:flex;flex-wrap:wrap;gap:.55rem}.status-banner{margin-block-start:.85rem;padding:.65rem .9rem;border-radius:var(--radius-md);background:var(--teal-50);border:1px solid #99f6e4;color:var(--teal-700);display:flex;align-items:center;gap:.5rem;font-size:.86rem;font-weight:500}.unconfirmed-alert-bar{margin-block-start:.85rem;padding:.75rem .95rem;border-radius:var(--radius-md);background:linear-gradient(90deg,#fff1f2,#fffbeb);border:1px solid #fda4af;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.65rem}.unconfirmed-alert-text{display:flex;flex-direction:column;gap:.18rem;font-size:.84rem}.unconfirmed-alert-text strong{color:var(--rose-700)}.original-photo-bar{margin-block-start:.75rem}.original-photo-preview{margin-block-start:.55rem;border-radius:var(--radius-md);border:1px solid var(--border-slate);overflow:auto;max-block-size:340px;background:#f8fafc}.original-photo-preview img{display:block;max-inline-size:100%;aspect-ratio:auto}.refine-box{margin-block-start:.95rem;padding:.85rem;border-radius:var(--radius-md);background:var(--bg-muted);border:1px solid var(--border-slate)}.refine-box-label{display:flex;align-items:center;gap:.4rem;font-size:.84rem;font-weight:600;margin-block-end:.55rem}.refine-input-row{display:flex;gap:.5rem}@container (width < 560px){.refine-input-row{flex-direction:column}}.refine-input-row input{flex:1;padding:.6rem .85rem;border-radius:10px;border:1px solid #cbd5e1;font-size:.9rem;font-family:inherit}.quick-chips-row{display:flex;flex-wrap:wrap;gap:.4rem;margin-block-start:.6rem}.prompt-chip{background:#fff;border:1px solid #cbd5e1;border-radius:999px;padding:.25rem .65rem;font-size:.76rem;color:var(--text-secondary);cursor:pointer}.prompt-chip:hover{border-color:var(--teal-600);color:var(--teal-700)}.refine-history{margin-block-start:.65rem;font-size:.8rem;color:var(--text-secondary)}.refine-history summary{display:inline-flex;align-items:center;gap:.35rem;cursor:pointer;font-weight:600}.shift-chip{position:relative;display:inline-flex;align-items:center;justify-content:center;font-weight:700;border-radius:7px;letter-spacing:-.01em;user-select:none}.shift-size-sm{min-inline-size:34px;block-size:26px;padding-inline:5px;font-size:.76rem}.shift-size-md{min-inline-size:40px;block-size:28px;padding-inline:8px;font-size:.82rem}.shift-chip-compact{font-size:.69rem;letter-spacing:-.03em}.shift-color-amber{background:#fef3c7;color:#92400e;border:1px solid #fde68a}.shift-color-indigo{background:#e0e7ff;color:#3730a3;border:1px solid #c7d2fe}.shift-color-violet{background:#f3e8ff;color:#6b21a8;border:1px solid #e9d5ff}.shift-color-teal{background:#ccfbf1;color:#115e59;border:1px solid #99f6e4}.shift-color-emerald{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.shift-color-rose{background:#ffe4e6;color:#9f1239;border:1px solid #fecdd3}.shift-color-slate{background:#e2e8f0;color:#334155;border:1px solid #cbd5e1}.unconfirmed-dot{position:absolute;inset-block-start:-3px;inset-inline-end:-3px;inline-size:8px;block-size:8px;border-radius:50%;background:var(--rose-600);border:1.5px solid #ffffff}.grid-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem}.protagonist-picker{display:flex;align-items:center;gap:.5rem}.picker-label{display:inline-flex;align-items:center;gap:.35rem;font-weight:700;font-size:.9rem}.protagonist-select{padding:.42rem .75rem;border-radius:999px;border:1.5px solid #fda4af;background:var(--rose-50);color:var(--rose-700);font-weight:700;font-size:.9rem}.mode-Segmented{display:inline-flex;align-items:center;gap:.35rem;flex-wrap:wrap}.seg-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .75rem;border-radius:999px;border:1px solid var(--border-slate);background:#fff;color:var(--text-secondary);font-size:.82rem;font-weight:600;cursor:pointer}.seg-btn.seg-active{background:#1e293b;color:#fff;border-color:#1e293b}.grid-helper-hint{margin:.65rem 0;font-size:.82rem;color:var(--text-secondary)}.table-wrapper{overflow:auto;max-inline-size:100%;max-block-size:min(540px,70dvh);border-radius:var(--radius-md);border:1px solid var(--border-slate);container-type:inline-size}.schedule-table{border-collapse:separate;border-spacing:0;min-inline-size:100%;font-size:.82rem}.schedule-table thead{position:sticky;inset-block-start:0;z-index:2}.sticky-corner{position:sticky;inset-inline-start:0;z-index:3;background:#f1f5f9;padding:.55rem .75rem;text-align:start;min-inline-size:108px;border-block-end:1px solid #cbd5e1;border-inline-end:1px solid #cbd5e1}.day-col-header{background:#f8fafc;padding:.4rem .3rem;min-inline-size:46px;text-align:center;border-block-end:1px solid #cbd5e1;border-inline-end:1px solid #f1f5f9;cursor:pointer;user-select:none}.day-col-header.is-weekend{background:#fff1f2;color:var(--rose-700)}.day-col-header.is-selected-col{background:var(--rose-600);color:#fff}.day-num{display:block;font-weight:800;font-size:.84rem}.day-wk{display:block;font-size:.68rem;opacity:.85}.schedule-table tbody th.sticky-nurse-cell{position:sticky;inset-inline-start:0;z-index:1;background:#fff;padding:.42rem .65rem;text-align:start;border-block-end:1px solid #f1f5f9;border-inline-end:1px solid #cbd5e1;white-space:nowrap}.protagonist-row td{background:#fff9fa}.schedule-table tbody th.sticky-protagonist{background:#ffe4e6}.nurse-cell-inner{display:flex;align-items:center;justify-content:space-between;gap:.35rem}.nurse-name-btn{background:none;border:0;padding:0;font:inherit;font-weight:700;color:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:.3rem}.level-tag{font-size:.68rem;font-weight:700;padding:.08rem .36rem;border-radius:5px;background:#f1f5f9;color:#475569}.row-warn-icon{color:#d97706;display:inline-flex}.shift-td{padding:.34rem .25rem;text-align:center;border-block-end:1px solid #f1f5f9;border-inline-end:1px solid #f8fafc;cursor:pointer}.shift-td.is-selected-col{background:#e11d4817}.shift-td.has-rule-warn{outline:1.5px dashed #f59e0b;outline-offset:-2px}.shift-td.editable-cursor:hover{background:#f0fdfa}.personal-strip{display:flex;gap:.42rem;overflow-x:auto;padding-block:.75rem .45rem;scrollbar-gutter:stable}.strip-day-btn{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:.28rem;padding:.42rem .52rem;border-radius:12px;border:1px solid var(--border-slate);background:#fff;cursor:pointer}.strip-day-btn.weekend{background:snow;border-color:#fecdd3}.strip-day-btn.selected{border-color:var(--rose-600);background:var(--rose-50);box-shadow:0 0 0 2px #e11d4833}.strip-date{font-size:.72rem;font-weight:700;color:var(--text-secondary)}.selected-day-banner{margin-block-start:.55rem;padding:.75rem .95rem;border-radius:var(--radius-md);background:var(--bg-subtle);border:1px solid #fecdd3;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem}.selected-day-info{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.selected-day-title{font-weight:800;color:var(--rose-700)}.selected-day-sub{display:inline-flex;align-items:center;gap:.4rem;font-size:.88rem}.locked-hint{font-size:.8rem;color:#9f1239;font-weight:600}.swap-tabs{margin-block-start:.9rem;display:flex;flex-wrap:wrap;gap:.45rem;border-block-end:1px solid var(--border-slate);padding-block-end:.65rem}.swap-tab{padding:.48rem .9rem;border-radius:999px;border:1px solid var(--border-slate);background:#f8fafc;color:var(--text-secondary);font-weight:700;font-size:.84rem;cursor:pointer}.swap-tab.active{background:var(--rose-600);border-color:var(--rose-600);color:#fff}.candidates-region{margin-block-start:.85rem}.candidate-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,310px),1fr));gap:.85rem}.sheet-sync-grid{display:grid;gap:.55rem}.sheet-year-month{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.spin-icon{animation:scrub-spin .8s linear infinite}@keyframes scrub-spin{to{transform:rotate(360deg)}}.whitelist-grid{display:flex;flex-wrap:wrap;gap:.4rem;max-height:11rem;overflow:auto;padding:.15rem}.whitelist-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .65rem;border-radius:999px;border:1px solid var(--border-slate);background:#f8fafc;font-size:.8rem;cursor:pointer;user-select:none}.whitelist-chip.is-on{background:var(--rose-100);border-color:color-mix(in srgb,var(--rose-600) 40%,var(--border-slate));color:var(--rose-700);font-weight:650}.whitelist-chip input{margin:0}.plan-list-header{display:flex;flex-wrap:wrap;align-items:baseline;gap:.55rem 1rem;margin-block:.85rem .45rem}.plan-cards-stack{display:flex;flex-direction:column;gap:.7rem}.plan-card{border:1px solid var(--border-slate);border-radius:14px;background:#fff;overflow:hidden;box-shadow:0 2px 8px #0f172a08}.plan-card.is-open{border-color:color-mix(in srgb,var(--rose-600) 35%,var(--border-slate))}.plan-card-toggle{width:100%;display:grid;grid-template-columns:auto 1fr;gap:.55rem .75rem;align-items:start;text-align:left;padding:.85rem .95rem;border:0;background:transparent;cursor:pointer;font:inherit;color:inherit}.plan-rank{display:inline-flex;align-items:center;justify-content:center;padding:.2rem .55rem;border-radius:999px;background:var(--rose-100);color:var(--rose-700);font-size:.75rem;font-weight:800;white-space:nowrap}.plan-card-title-block{display:flex;flex-direction:column;gap:.15rem;min-width:0}.plan-card-title-block strong{font-size:.95rem}.plan-card-title-block span{font-size:.82rem;color:var(--text-secondary)}.plan-card-toggle .cand-tags{grid-column:1 / -1}.plan-card-body{padding:.85rem .95rem .95rem;display:flex;flex-direction:column;gap:.75rem;border-top:1px solid rgba(15,23,42,.06)}.plan-steps{margin:0;padding-left:1.15rem;display:flex;flex-direction:column;gap:.45rem;font-size:.86rem;line-height:1.45}.plan-step-order{display:inline-block;margin-right:.35rem;font-weight:700;color:var(--rose-700)}.plan-previews{display:flex;flex-direction:column;gap:.65rem;padding:.7rem;border-radius:12px;background:#0f172a08}.plan-preview-heading{margin:0;font-size:.84rem;font-weight:700}.plan-person-preview{display:flex;flex-direction:column;gap:.35rem}.plan-person-label{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .4rem;font-size:.82rem}.plan-person-hint{color:var(--text-secondary);font-size:.75rem}.plan-mini-strip{display:flex;gap:.25rem;overflow-x:auto;padding-bottom:.15rem}.plan-mini-day{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.2rem;border-radius:8px;min-width:2.1rem}.plan-mini-day.is-changed{background:color-mix(in srgb,var(--rose-100) 80%,transparent);outline:1px solid color-mix(in srgb,var(--rose-600) 35%,transparent)}.plan-mini-date{font-size:.68rem;font-weight:700;color:var(--text-secondary)}.candidate-card{content-visibility:auto;contain-intrinsic-size:auto 320px auto 215px;border:1px solid var(--border-slate);border-radius:14px;padding:.9rem;background:#fff;display:flex;flex-direction:column;gap:.65rem;box-shadow:0 2px 8px #0f172a08}@supports not (content-visibility: auto){.candidate-card{contain:layout style paint}}.cand-card-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.cand-partner{display:flex;align-items:center;gap:.5rem}.cand-avatar{inline-size:30px;block-size:30px;border-radius:50%;background:var(--rose-100);color:var(--rose-700);display:grid;place-items:center;font-weight:800;font-size:.85rem}.cand-tags{display:flex;flex-wrap:wrap;gap:.3rem}.mini-tag{font-size:.71rem;font-weight:600;padding:.14rem .48rem;border-radius:999px;background:#f1f5f9;color:#475569}.mini-tag-highlight{background:#ccfbf1;color:#0f766e}.swap-exchange-box{display:flex;align-items:center;justify-content:space-between;gap:.45rem;padding:.6rem .7rem;border-radius:10px;background:#f8fafc;border:1px solid #e2e8f0}.exchange-step{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;font-size:.78rem}.exchange-date{font-weight:800;color:var(--text-main)}.exchange-desc{color:var(--text-secondary)}.exchange-arrow{color:var(--rose-600);flex-shrink:0}.cand-safety-line{display:flex;align-items:center;gap:.35rem;font-size:.76rem;color:var(--teal-700)}.cand-actions{display:flex;gap:.5rem;margin-block-start:auto}.cand-actions .btn{flex:1}.filter-bar{margin-block-end:.75rem}.checkbox-row{display:inline-flex;align-items:center;gap:.45rem;font-size:.84rem;cursor:pointer}.empty-state{padding:1.5rem;text-align:center;background:#f8fafc;border-radius:var(--radius-md);border:1px dashed #cbd5e1;color:var(--text-secondary);font-size:.88rem}.disqualified-box{padding:.75rem .9rem;border-radius:var(--radius-md);background:#f8fafc;border:1px solid var(--border-slate);font-size:.82rem;color:var(--text-secondary)}.disqualified-box summary{display:inline-flex;align-items:center;gap:.4rem;font-weight:700;cursor:pointer}.disqualified-box ul{margin:.6rem 0 0;padding-inline-start:1.2rem;display:flex;flex-direction:column;gap:.3rem}.swap-history-box{margin-block-start:1.1rem;padding:.85rem;border-radius:var(--radius-md);background:#fffbeb;border:1px solid #fde68a}.swap-history-box h3{margin:0 0 .5rem;font-size:.88rem}.history-item{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.82rem;padding-block:.25rem}dialog.native-modal{border:1px solid var(--border-soft);border-radius:20px;padding:0;background:#fff;color:var(--text-main);box-shadow:0 24px 48px #0f172a33;max-block-size:min(88dvh,760px);inline-size:calc(100% - 1.5rem)}dialog.dialog-sm{max-inline-size:440px}dialog.dialog-md{max-inline-size:580px}dialog.dialog-lg{max-inline-size:740px}dialog.native-modal[open]{display:flex;flex-direction:column}dialog:modal{overscroll-behavior:contain}dialog::backdrop{overflow:hidden;overscroll-behavior:contain;background-color:#0f172a7a;backdrop-filter:blur(3px)}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:1rem 1.2rem;border-block-end:1px solid var(--border-slate)}.modal-title{margin:0;font-size:1.05rem;font-weight:800}.modal-subtitle{margin:.25rem 0 0;font-size:.8rem;color:var(--text-muted)}.modal-body{padding:1.1rem 1.2rem;overflow-y:auto}.stack-lg{display:flex;flex-direction:column;gap:1.15rem}.stack-md{display:flex;flex-direction:column;gap:.85rem}.stack-sm{display:flex;flex-direction:column;gap:.55rem}.stack-xs{display:flex;flex-direction:column;gap:.35rem}.section-row-between{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;margin-block-end:.6rem}.section-heading-inline{display:flex;align-items:center;gap:.45rem}.section-heading-inline h3,.subsection-title{margin:0 0 .5rem;font-size:.92rem;font-weight:800}.unconfirmed-section{padding:.85rem;border-radius:var(--radius-md);background:var(--rose-50);border:1px solid #fda4af}.dict-card{padding:.75rem;border-radius:12px;border:1px solid var(--border-slate);background:#fff;display:flex;flex-direction:column;gap:.5rem}.dict-card-unconfirmed{border-color:#fb7185}.dict-card-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.dict-card-title-group{display:flex;align-items:center;gap:.5rem}.inline-input{padding:.28rem .55rem;border-radius:7px;border:1px solid #cbd5e1;font-size:.85rem;font-weight:600;inline-size:140px}.confirmed-pill{font-size:.72rem;font-weight:700;color:var(--teal-700);background:var(--teal-50);padding:.15rem .5rem;border-radius:999px}.dict-ai-note{margin:0;font-size:.78rem;color:var(--text-secondary)}.dict-controls-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:.5rem}.field-mini{display:flex;flex-direction:column;gap:.2rem;font-size:.74rem;color:var(--text-secondary)}.field-mini input,.field-mini select,.field-block input,.field-block select,.field-block textarea{padding:.45rem .6rem;border-radius:8px;border:1px solid #cbd5e1;font-family:inherit;font-size:.85rem}.dict-time-summary{display:flex;align-items:center;gap:.35rem;font-size:.76rem;color:var(--teal-700)}.rules-box{padding:.85rem;border-radius:var(--radius-md);background:#f8fafc;border:1px solid var(--border-slate)}.rules-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;margin-block-start:.5rem}.field-block{display:flex;flex-direction:column;gap:.3rem;font-size:.84rem;font-weight:600}.field-block small{font-weight:400;font-size:.75rem;color:var(--text-muted)}.label-with-icon{display:flex;align-items:center;gap:.35rem}.add-shift-form{display:flex;flex-wrap:wrap;gap:.45rem}.add-shift-form input,.add-shift-form select{padding:.42rem .6rem;border-radius:8px;border:1px solid #cbd5e1;font-size:.84rem;inline-size:110px}.quick-shift-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(115px,1fr));gap:.45rem}.quick-shift-btn{display:flex;align-items:center;gap:.4rem;padding:.45rem .55rem;border-radius:10px;border:1px solid var(--border-slate);background:#fff;font-size:.8rem;cursor:pointer}.quick-shift-btn.selected{border-color:var(--rose-600);background:var(--rose-50)}.input-with-btn{display:flex;gap:.45rem}.input-with-btn input{flex:1}.modal-actions-row{display:flex;flex-wrap:wrap;gap:.55rem}.settings-feedback{display:flex;align-items:center;gap:.4rem;padding:.55rem .75rem;border-radius:8px;background:var(--teal-50);color:var(--teal-700);font-size:.82rem}.ml-1{margin-inline-start:.3rem}.or-rule-banner{margin-block-end:.75rem;padding:.55rem .85rem;border-radius:10px;background:#fff1f2;border:1px solid #fda4af;color:#9f1239;font-size:.81rem;font-weight:700}.builtin-pages-bar{margin-block-start:.9rem;padding:.8rem .9rem;border-radius:var(--radius-md);background:#fffafb;border:1px solid #fecdd3}.builtin-pages-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;margin-block-end:.55rem}.builtin-pages-label{display:inline-flex;align-items:center;gap:.38rem;font-size:.83rem;font-weight:700}.page-pills-row{display:flex;flex-wrap:wrap;gap:.45rem}.page-pill{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;padding:.38rem .7rem;border-radius:10px;border:1px solid var(--border-slate);background:#fff;font-family:inherit;font-size:.79rem;font-weight:700;cursor:pointer}.page-pill small{font-size:.69rem;font-weight:500;color:var(--text-muted)}.page-pill.meixuan-page{border-color:#fb7185;background:#fff1f2}.page-pill.active{background:var(--rose-600);border-color:var(--rose-600);color:#fff}.page-pill.active small{color:#ffe4e6}.original-photo-card{margin-block-start:.75rem;padding:.65rem;background:#fff;border-radius:10px;border:1px solid var(--border-slate)}.original-photo-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;font-size:.82rem}.merge-toggle{font-size:.8rem;background:#f8fafc;padding:.35rem .65rem;border-radius:999px;border:1px solid var(--border-slate)}.grid-filters-row{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem}.search-input-wrap{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .65rem;border-radius:999px;border:1px solid var(--border-slate);background:#f8fafc}.search-input-wrap input{border:0;background:transparent;font:inherit;font-size:.8rem;inline-size:135px;outline:none}.group-filter-select{padding:.38rem .65rem;border-radius:999px;border:1px solid var(--border-slate);background:#fff;font-size:.8rem;font-weight:600}.staff-no{font-size:.72rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.group-badge{display:inline-flex;align-items:center;justify-content:center;min-inline-size:20px;padding:.06rem .32rem;border-radius:5px;font-size:.69rem;font-weight:800;background:#e2e8f0;color:#334155}.same-group-badge{background:#ffe4e6;color:var(--rose-700);border:1px solid #fda4af}.hdr-duty-tag,.hdr-oncall-tag{display:block;font-size:.62rem;font-weight:700;line-height:1.25;margin-block-start:1px}.hdr-duty-tag{color:#4338ca}.hdr-oncall-tag{color:#0f766e}.day-col-header.is-selected-col .hdr-duty-tag,.day-col-header.is-selected-col .hdr-oncall-tag{color:#ffe4e6}.period-red-divider{border-inline-end:2.5px solid #e11d48!important}.strip-period-end{margin-inline-end:.35rem;box-shadow:3px 0 #fda4af}.cell-chip-wrap{position:relative;display:inline-flex}.handwritten-corner{position:absolute;inset-block-end:-2px;inset-inline-end:-2px;inline-size:7px;block-size:7px;border-radius:50%;background:#ea580c;border:1px solid #fff}.uncertain-corner{position:absolute;inset-block-end:-2px;inset-inline-end:-2px;inline-size:7px;block-size:7px;border-radius:50%;background:#eab308;border:1px solid #fff}.printed-Compare-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;padding:.6rem .75rem;border-radius:10px;background:#fff7ed;border:1px solid #fed7aa;font-size:.82rem}.duty-tip-badge{font-size:.8rem;font-weight:700;color:#4338ca}.filter-bar-multi{margin-block-start:.75rem;display:flex;flex-wrap:wrap;gap:.85rem}
