*{box-sizing:border-box}:root{color:#203747;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}body{margin:0;background:#f4f7f9}button,input,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent}.app-loader{min-height:100vh;display:grid;place-items:center}.brand{display:flex;align-items:center;gap:11px}.brand-mark{width:38px;height:38px;border-radius:11px;background:#16847a;display:grid;place-items:center;color:#fff;font-size:23px;box-shadow:0 5px 15px #062c2833}.brand-name{font-size:22px;font-weight:650;letter-spacing:3px}.brand-subtitle{font-size:10px;opacity:.55;text-transform:uppercase;letter-spacing:1.6px;margin-top:3px}.login-shell{min-height:100dvh;display:grid;grid-template-columns:47% 53%}.login-story{background:#0f3442;color:#fff;padding:54px 64px;position:relative;overflow:hidden;display:flex;flex-direction:column}.login-story:after{content:"";width:490px;height:490px;position:absolute;border:1px solid #ffffff10;border-radius:50%;bottom:-185px;left:-85px;box-shadow:0 0 0 80px #ffffff04,0 0 0 160px #ffffff03;pointer-events:none}.login-story-copy{margin:auto 0;position:relative;z-index:1}.login-eyebrow{color:#8acdc4;font-size:12px;letter-spacing:4px}.login-story h1{font-size:clamp(30px,3vw,48px);font-weight:500;line-height:1.6;letter-spacing:2px;margin:22px 0}.login-story p{color:#b7cbd2;line-height:1.9;font-size:14px;max-width:360px}.login-story-foot{font-size:11px;color:#7b9ca8;letter-spacing:2px}.login-panel{display:flex;align-items:center;justify-content:center;padding:50px 25px;background:#fcfdfd}.login-card{width:370px;max-width:100%}.login-card h2{font-size:27px;font-weight:600;margin:0 0 10px}.login-card .login-intro{color:#82929c;margin:0 0 32px}.login-card .ant-segmented{margin-bottom:30px}.login-card .ant-form-item-label label{color:#4c6370}.login-card .ant-input-affix-wrapper{min-height:45px}.login-card .ant-btn-primary{height:46px;margin-top:8px}.login-help{text-align:center;color:#96a4ad;font-size:12px;margin-top:26px}.mobile-login-brand{display:none}.admin-shell{display:flex;min-height:100vh}.sidebar{width:218px;flex:0 0 218px;background:#0f3442;color:#fff;position:fixed;inset:0 auto 0 0;z-index:10;display:flex;flex-direction:column;padding:29px 17px 20px}.sidebar .brand{padding:0 9px 38px}.sidebar .brand-mark{width:34px;height:34px;font-size:21px}.sidebar .brand-name{font-size:21px}.sidebar-section{color:#6a919f;font-size:10px;padding:0 17px;margin-bottom:14px;letter-spacing:2px}.sidebar-nav{display:flex;flex-direction:column;gap:8px}.nav-button{border:0;background:transparent;color:#abc3cc;display:flex;align-items:center;gap:13px;text-align:left;cursor:pointer;padding:13px 17px;border-radius:8px;font-size:13px}.nav-button .anticon{font-size:17px}.nav-button:hover{background:#ffffff07;color:#fff}.nav-button.active{color:#fff;background:#1d505b;box-shadow:inset 3px 0 #5fc6b4}.sidebar-foot{margin-top:auto;padding:19px 12px 0;border-top:1px solid #ffffff12;color:#80a2af;font-size:11px;line-height:1.9}.sidebar-foot strong{color:#a5c5cd;display:block;font-size:12px;font-weight:500}.admin-main{margin-left:218px;width:calc(100% - 218px);min-width:800px}.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 34px;border-bottom:1px solid #e7edf0;background:#fff;gap:20px}.topbar-title{font-size:13px;color:#81939d}.topbar-title strong{color:#314e5b;font-weight:500;margin-right:12px}.topbar-right{display:flex;align-items:center;gap:17px}.avatar{width:31px;height:31px;border-radius:50%;background:#e7f3ef;color:#16847a;display:grid;place-items:center;font-size:12px;font-weight:600}.account-button{display:flex;align-items:center;gap:9px;border:0;background:transparent;cursor:pointer;color:#48616f;padding:0}.page{padding:30px 34px 40px;max-width:1920px;margin:0 auto}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:25px}.eyebrow{font-size:10px;color:#8598a2;text-transform:uppercase;letter-spacing:2px;margin-bottom:7px}.page-heading h1{font-size:25px;font-weight:600;margin:0 0 8px;letter-spacing:.5px}.page-description{color:#84949e;font-size:12px;line-height:1.8}.heading-actions{display:flex;gap:9px;align-items:center;padding-top:8px}.week-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:21px}.week-control{display:flex;align-items:center;gap:9px}.week-control .ant-select-selector{background:#fff!important}.week-range{font-size:12px;color:#7b8e99}.stage-bar{display:flex;align-items:center;gap:8px;font-size:11px;color:#9aa9b1}.stage-bar .stage{display:flex;align-items:center;gap:6px}.stage-dot{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#e8edf0;font-size:10px}.stage.current{color:#16847a;font-weight:500}.stage.current .stage-dot{background:#16847a;color:#fff}.stage.done .stage-dot{background:#e0efea;color:#16847a}.stage-divider{width:25px;height:1px;background:#dfe7eb}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:23px}.metric-card{background:#fff;border:1px solid #e8eef1;border-radius:10px;padding:19px 21px;display:flex;align-items:center;justify-content:space-between;min-height:104px}.metric-title{color:#80929e;font-size:11px;margin-bottom:12px}.metric-value{font-size:27px;line-height:1;font-weight:600;letter-spacing:-.7px;color:#254552}.metric-value small{font-size:12px;color:#8d9fa8;font-weight:400;margin-left:6px;letter-spacing:0}.metric-icon{background:#edf5f3;width:40px;height:40px;border-radius:10px;color:#33998a;display:grid;place-items:center;font-size:19px}.metric-icon.amber{background:#fff6e9;color:#d1a14e}.metric-icon.blue{background:#edf3fa;color:#6f98c2}.surface{background:#fff;border:1px solid #e7edf0;border-radius:10px;overflow:hidden;margin-bottom:22px}.surface-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 22px;border-bottom:1px solid #edf1f3}.surface-head h3{font-size:14px;margin:0;font-weight:600;display:flex;align-items:center;gap:9px}.surface-subtitle{font-size:11px;color:#98a8b1;font-weight:400}.surface-body{padding:22px}.toolbar{display:flex;align-items:center;gap:10px}.toolbar .ant-input-affix-wrapper{width:170px}.soft-tag{background:#f1f5f7;color:#7a909c;border:0;font-size:10px;border-radius:4px;padding:2px 7px}.schedule-scroll{overflow-x:auto}.schedule-table{border-collapse:collapse;width:100%;table-layout:fixed;min-width:830px;font-size:12px}.schedule-table th{background:#f8fafb;color:#7d919c;font-weight:400;font-size:11px;text-align:left;padding:15px 12px;border-bottom:1px solid #e7edf0}.schedule-table th .day-name{color:#526e7e;font-weight:500;font-size:12px;margin-bottom:5px}.schedule-table .weekend .day-name{color:#c88c7f}.schedule-table .today{background:#f0f8f5}.schedule-table td{padding:11px 12px;border-bottom:1px solid #edf1f3;vertical-align:middle;border-right:1px solid #f0f3f5;min-height:56px}.schedule-table td:last-child{border-right:0}.schedule-table tbody tr:last-child td{border-bottom:0}.schedule-table tbody tr:hover{background:#fafcfc}.doctor-name{font-weight:550;color:#345563;display:flex;align-items:center;gap:5px}.doctor-note{color:#99a8af;font-size:10px;margin-top:5px;line-height:1.5;white-space:normal}.doctor-meta{color:#9aaab3;font-size:10px;margin-top:5px}.cell-clickable{cursor:pointer}.cell-clickable:hover{background:#edf8f5}.shift-line{display:flex;align-items:center;flex-wrap:wrap;gap:3px;font-size:11px;line-height:1.8;margin-bottom:2px}.shift-period{color:#9aabb3;font-size:9px;width:23px;flex-shrink:0}.duty-pill{padding:1px 7px;min-width:28px;text-align:center;border-radius:4px;background:#eef5f3;color:#338a7d;font-size:10px;font-weight:500}.duty-pill.blue{background:#edf3fb;color:#6385b3}.duty-pill.purple{background:#f2eff8;color:#8d76b0}.duty-pill.rest{background:#f3f5f6;color:#9ca8af}.duty-pill.gold{background:#fbf4e8;color:#b39355}.cell-note{color:#95a6af;font-size:9px;margin-top:3px}.cell-empty{color:#c9d3d9;font-size:11px}.progress-cell{font-size:11px}.progress-cell .ant-progress{width:55px;display:block;margin:6px 0 0}.confirm-dot{width:5px;height:5px;border-radius:50%;background:#b3c1c8;display:inline-block;margin-right:5px;vertical-align:middle}.confirm-dot.confirmed{background:#56aa8b}.table-footer{padding:14px 22px;background:#fbfcfd;border-top:1px solid #e8eef1;color:#8fa1ab;font-size:11px;display:flex;justify-content:space-between;align-items:center}.legend-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:6px}.summary-table{width:100%;border-collapse:collapse;font-size:11px;min-width:700px}.summary-table td,.summary-table th{border-bottom:1px solid #edf1f3;text-align:center;padding:11px;font-weight:400}.summary-table th:first-child,.summary-table td:first-child{text-align:left;width:130px;padding-left:22px}.summary-table th{color:#8da0ab;background:#fbfcfd}.summary-table tr:last-child td{border-bottom:0}.summary-number{font-variant-numeric:tabular-nums;color:#4a727f}.summary-gap{color:#c68e47}.bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.bottom-grid .surface{margin-bottom:0}.check-success{display:flex;gap:11px;background:#f1f8f4;border:1px solid #e2eee6;color:#477b60;padding:14px;border-radius:7px;font-size:12px}.check-success .anticon{margin-top:2px}.check-success small{display:block;color:#8aa393;margin-top:5px;line-height:1.7}.check-list{max-height:265px;overflow-y:auto}.check-item{font-size:11px;color:#8b774f;padding:10px 12px;border-radius:5px;background:#fcf8ef;margin-bottom:7px;line-height:1.7}.check-item:last-child{margin-bottom:0}.check-item.error{color:#b46e62;background:#fcf3f0}.hint{color:#8fa1ab;font-size:11px;line-height:1.85}.note-text{font-size:12px;white-space:pre-wrap;line-height:1.9;color:#788e99}.empty-area{padding:70px 20px;text-align:center}.editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.editor-grid .full-width{grid-column:1/-1}.drawer-section{margin-bottom:24px}.drawer-section h4{color:#526e7e;font-size:12px;margin:0 0 14px}.segment-row{background:#f7fafb;padding:12px;border-radius:7px;margin-bottom:10px}.segment-row-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}.date-options{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.config-tabs .ant-tabs-nav{padding:0 22px;margin:0}.config-tabs .ant-tabs-content-holder{padding:22px}.form-note{display:block;font-size:11px;color:#91a1aa;line-height:1.7;margin:7px 0 14px}.inline-code{font-size:11px;color:#527580;background:#f0f5f6;padding:2px 6px;border-radius:4px}.muted{color:#96a7b0}.text-link{background:transparent;border:0;padding:0;color:#16847a;cursor:pointer;font-size:inherit}.mobile-shell{width:100%;max-width:540px;min-height:100dvh;margin:0 auto;background:#f4f7f8;padding-bottom:105px}.mobile-header{background:#0f3442;color:#fff;padding:max(24px,env(safe-area-inset-top)) 22px 55px;border-radius:0 0 24px 24px}.mobile-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.mobile-top .brand-mark{width:29px;height:29px;font-size:18px;border-radius:8px}.mobile-top .brand-name{font-size:18px}.mobile-header .account-button{color:#b3ccd4;font-size:12px}.mobile-header .avatar{background:#ffffff18;color:#bee7dc}.mobile-header h1{font-size:23px;font-weight:500;margin:0 0 9px}.mobile-greeting{color:#b1c8d1;font-size:12px}.mobile-content{padding:0 16px;margin-top:-32px;position:relative}.mobile-week-card{background:#fff;border:1px solid #e8eef0;border-radius:13px;padding:19px;box-shadow:0 6px 25px #132e3b05;margin-bottom:21px}.mobile-week-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:19px}.mobile-week-heading .ant-select-selector{padding-left:0!important}.mobile-week-metrics{display:flex;align-items:center;justify-content:space-between}.mobile-week-metrics .metric-value{font-size:28px}.mobile-week-metrics .metric-title{font-size:11px}.mobile-week-divider{width:1px;height:42px;background:#e9eff1}.mobile-status{margin-top:18px;border-top:1px solid #edf2f3;padding-top:14px;font-size:11px;color:#7f949f;line-height:1.75}.mobile-section-title{display:flex;align-items:center;justify-content:space-between;margin:23px 4px 12px}.mobile-section-title h2{font-size:15px;margin:0;font-weight:600}.mobile-section-title span{color:#91a3ad;font-size:10px}.mobile-alert{margin:14px 0 18px}.mobile-alert .ant-alert-message{font-size:11px;line-height:1.7}.day-card{background:#fff;border:1px solid #e5ecef;border-radius:10px;margin-bottom:10px;display:flex;width:100%;padding:16px 13px;align-items:flex-start;text-align:left;cursor:pointer;color:inherit;transition:border-color .15s,background .15s;position:relative}.day-card.selected{border-color:#83c4b6;background:#f6fcf9}.day-card:disabled{cursor:default;opacity:1}.day-date{width:52px;flex:0 0 52px;border-right:1px solid #ebf0f1;margin-right:13px;padding-right:10px}.day-date strong{display:block;font-size:20px;font-weight:550;line-height:1.25;color:#405f6d}.day-date span{display:block;color:#91a4ae;font-size:10px;margin-top:7px}.day-card-content{flex:1}.day-card .shift-line{font-size:12px;line-height:1.9}.day-card .shift-period{font-size:10px;width:28px}.day-card .duty-pill{font-size:11px}.day-selection{margin:7px 0 0 8px;width:22px;flex:0 0 22px;height:22px;border:1.5px solid #d9e3e7;border-radius:50%;display:grid;place-items:center;font-size:11px;color:transparent}.selected .day-selection{background:#16847a;border-color:#16847a;color:#fff}.day-card-tags{display:flex;gap:5px;margin-bottom:6px;flex-wrap:wrap}.day-card-meta{color:#9babb3;font-size:9px;line-height:1.7;margin-top:7px}.day-card-note{color:#869da7;font-size:10px;margin-top:5px}.mobile-footer{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:min(100%,540px);z-index:20;background:#ffffffef;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:12px 18px max(16px,env(safe-area-inset-bottom));border-top:1px solid #e7eef1;display:flex;align-items:center;gap:12px}.mobile-footer .ant-btn{height:44px;flex:1;font-size:13px}.mobile-footer .footer-copy{color:#8298a2;font-size:10px;flex:0 0 100%;text-align:center}.mobile-empty{background:#fff;border-radius:12px;padding:40px 20px}.print-title{display:none}@media(min-width:1600px){.page{padding-left:42px;padding-right:42px}.schedule-table td{padding-top:14px;padding-bottom:14px}}@media(max-width:1100px)and (min-width:701px){.sidebar{width:185px;flex-basis:185px}.admin-main{margin-left:185px;width:calc(100% - 185px)}.page{padding-left:22px;padding-right:22px}.topbar{padding:0 22px}.metric-card{padding:17px 15px}.metric-icon{display:none}}@media(max-width:700px){.login-shell{display:block;background:#fcfdfd}.login-story{display:none}.login-panel{min-height:100dvh;padding:40px 28px}.mobile-login-brand{display:block;margin-bottom:50px}.mobile-login-brand .brand-name{color:#0f3442}.login-card h2{font-size:25px}.login-card .login-intro{line-height:1.8}.ant-modal{max-width:calc(100vw - 28px)}}@media print{body{background:#fff}.sidebar,.topbar,.page-heading,.week-bar,.metric-grid,.no-print,.surface-head .toolbar,.bottom-grid .check-panel,.ant-message,.ant-modal-root,.ant-drawer{display:none!important}.admin-main{margin:0;width:100%;min-width:0}.page{padding:0}.print-title{display:block;text-align:center;margin:0 0 18px}.print-title h1{font-size:20px;margin-bottom:5px}.print-title p{font-size:11px;color:#666}.surface{border:1px solid #bbb;border-radius:0;overflow:visible;margin-bottom:14px;break-inside:auto}.surface-head{padding:10px}.schedule-scroll{overflow:visible}.schedule-table{min-width:0;font-size:9px;table-layout:fixed}.schedule-table th{font-size:9px}.schedule-table td,.schedule-table th{padding:6px 5px;border-color:#ccc}.schedule-table thead{display:table-header-group}.schedule-table tbody tr{break-inside:avoid}.schedule-table .duty-pill{padding:0;background:none;font-size:9px;color:#222}.shift-line{font-size:9px;gap:2px}.shift-period{font-size:8px;width:20px}.summary-table{min-width:0;font-size:9px}.bottom-grid{display:block}.table-footer{padding:9px;font-size:9px}@page{size:A4 landscape;margin:10mm}}
