@font-face{font-family:__inter_53f2d8;src:url(/_next/static/media/6c596dfcddeca1e9-s.p.woff2) format("woff2");font-display:swap;font-weight:100 900}@font-face{font-family:__inter_Fallback_53f2d8;src:local("Arial");ascent-override:89.79%;descent-override:22.36%;line-gap-override:0.00%;size-adjust:107.89%}.__className_53f2d8{font-family:__inter_53f2d8,__inter_Fallback_53f2d8}.__variable_53f2d8{--font-ui:"__inter_53f2d8","__inter_Fallback_53f2d8"}:root{color-scheme:light;--red:#b91c1c;--bg:#f8f7f5;--ink:#111;--muted:#6b7280;--line:#e5e7eb}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--ink);font:16px/1.45 -apple-system,system-ui,Segoe UI,Roboto,sans-serif}main{max-width:720px;margin:0 auto;padding:24px 16px 48px}h1{font-size:22px;margin:0 0 4px}.sub{color:var(--muted);margin:0 0 24px}.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px}.btn,button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:var(--red);color:#fff;font-weight:600;font-size:17px;padding:14px 18px;border-radius:10px;width:100%;cursor:pointer}button:disabled{opacity:.5}input{width:100%;font-size:17px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;margin:6px 0 14px}label{font-weight:600;font-size:14px}.err{color:var(--red);margin:0 0 12px}.tag{display:inline-block;font-size:12px;padding:2px 8px;border-radius:999px;background:#eee;color:#333}.df{max-width:480px;margin:0 auto;padding:20px 16px 32px;background:#fff;min-height:100dvh}.df-step{display:flex;flex-direction:column}.df-hidden{display:none}.df-center{text-align:center}.df-logo{display:flex;justify-content:center;margin-bottom:8px}.df-logo img{max-height:120px;width:auto;object-fit:contain}.df-title{font-size:24px;font-weight:700;text-align:center;margin:0 0 14px}.df-week{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:14px 16px;margin-bottom:20px}.df-week-main{font-weight:600;margin:0 0 4px}.df-week-sub{color:var(--muted);font-size:14px;margin:0}.df-field{margin-bottom:14px}.df-field label{display:block;font-size:17px;font-weight:500;margin-bottom:4px}.df-input{width:100%;height:54px;font-size:18px;padding:0 14px;border:2px solid var(--line);border-radius:10px;margin:0}.df-input:focus{outline:none}.df-input-err,.df-input:focus{border-color:var(--red)}.df-err{color:var(--red);font-weight:500;margin:6px 0 0}.df-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:54px;border:0;border-radius:10px;background:var(--red);color:#fff;font-size:18px;font-weight:700;cursor:pointer;padding:0}.df-btn:active{opacity:.9}.df-btn:disabled{opacity:.55}.df-btn-outline{display:flex;align-items:center;justify-content:center;gap:8px;height:46px;border:2px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);font-size:16px;font-weight:600}.df-back,.df-btn-outline{width:100%;cursor:pointer;padding:0}.df-back{height:40px;background:none;border:0;color:var(--muted);font-size:14px;font-weight:500}.df-back:active{color:var(--ink)}.df-help{border:1px solid var(--line);background:var(--bg);border-radius:10px;padding:14px 16px;margin-top:18px;font-size:14px;color:var(--muted)}.df-help-title{font-weight:600;color:var(--ink);margin:0 0 4px}.df-help a{color:var(--ink);font-weight:500}.df-help p{margin:0}.df-progress{text-align:center;padding:4px 0 10px}.df-progress span{font-size:13px;font-weight:600;color:var(--muted)}.df-progress-track{max-width:280px;height:6px;margin:6px auto 0;background:#eee;border-radius:999px;overflow:hidden}.df-progress-fill{height:100%;border-radius:999px;background:var(--red);transition:width .3s}.df-shot-title{font-size:19px;font-weight:700;text-align:center;margin:4px 0 8px}.df-sub-center{text-align:center;color:var(--muted);font-size:14px;margin:0 0 8px}.df-shot-body{flex:1 1;padding:8px 0 16px}.df-caption{text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600;color:var(--muted);text-align:center;margin:0 0 6px}.df-ref-wrap{max-width:380px;margin:0 auto}.df-ref{width:100%;aspect-ratio:4/3;object-fit:contain;border:1px solid var(--line);border-radius:10px;display:block;background:#111}.df-compare{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px;max-width:420px;margin:0 auto}.df-yours{position:relative}.df-overlay{position:absolute;inset:24px 0 0 0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.35);border-radius:10px;color:#fff;font-size:12px;font-weight:600}.df-thumb .df-overlay{inset:0}.df-overlay-err{background:rgba(185,28,28,.55)}.df-spinner{width:22px;height:22px;border:3px solid hsla(0,0%,100%,.4);border-top-color:#fff;border-radius:50%;animation:dfspin .8s linear infinite}@keyframes dfspin{to{transform:rotate(1turn)}}.df-actions{padding:8px 0 16px;display:flex;flex-direction:column;gap:10px}.df-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px}.df-thumb{position:relative;aspect-ratio:1/1;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--bg);padding:0}.df-thumb img{width:100%;height:100%;object-fit:cover;display:block}.df-thumb-x{position:absolute;top:4px;right:4px;width:24px;height:24px;border-radius:50%;background:rgba(0,0,0,.6);color:#fff;border:0;font-size:15px;line-height:1;padding:0}.df-thumb-add,.df-thumb-x{display:flex;align-items:center;justify-content:center;cursor:pointer}.df-thumb-add{flex-direction:column;gap:2px;border:2px dashed var(--line);background:#fff;color:var(--muted);font-size:12px}.df-plus{font-size:28px;line-height:1}.df-review-cell{cursor:pointer}.df-thumb-label{font-size:10px;color:var(--muted);text-align:center;margin:2px 0 0;line-height:1.2;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.df-extras-title{font-size:14px;font-weight:600;margin:16px 0 8px}.df-confirm{display:flex;align-items:center;justify-content:center}.df-confirm-inner{text-align:center;padding:40px 0}.df-check{width:64px;height:64px;margin:0 auto 16px;border-radius:50%;background:#a11c29;color:#fff;font-size:36px;line-height:64px}.df-confirm h1{font-size:24px;margin:0 0 8px}.df-confirm p{font-size:19px;margin:0}.df-startnew{margin-top:28px;background:none;border:0;color:var(--muted);font-size:14px;text-decoration:underline;cursor:pointer;width:auto;padding:0}.ft{min-height:100dvh;background:var(--bg)}.ft-header{background:#fff;border-bottom:1px solid var(--line)}.ft-header-in{max-width:1120px;margin:0 auto;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.ft-header-in h1{font-size:19px;margin:0}.ft-header-right{display:flex;align-items:center;gap:10px}.ft-main{max-width:1120px;margin:0 auto;padding:12px 16px 48px}.ft-content{padding-top:16px}.ft-stack{display:flex;flex-direction:column;gap:14px}.ft-spacer{flex:1 1}.ft-grow{flex:1 1;min-width:0}.ft-h2{font-size:17px;margin:0}.ft-h3{font-size:14px;margin:8px 0 0}.ft-sub{font-size:13px;margin:2px 0 0}.ft-muted,.ft-sub{color:var(--muted)}.ft-xs{font-size:12px}.ft-strong{font-weight:600}.ft-trunc{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ft-right{text-align:right}.ft-center{text-align:center}.ft-red{color:#b91c1c}.ft-amber{color:#92400e}.ft-purple{color:#6d28d9}.ft-blue{color:#1d4ed8}.ft-green,.ft-greentext{color:#15803d}.ft-dim{opacity:.55}.ft-empty{text-align:center;padding:40px 0;color:var(--muted)}.ft-divider{border-top:1px solid var(--line);padding-top:14px}.ft-btn{width:auto;padding:8px 14px;font-size:14px;border-radius:8px;background:var(--red);color:#fff;border:0;font-weight:600;cursor:pointer}.ft-btn:disabled{opacity:.5}.ft-btn-danger{background:#b91c1c}.ft-btn-sm{padding:6px 10px;font-size:13px}.ft-btn-xs{padding:3px 8px;font-size:12px}.ft-btn-outline{width:auto;padding:7px 12px;font-size:13px;border-radius:8px;background:#fff;color:var(--ink);border:1px solid var(--line);font-weight:600;cursor:pointer}.ft-btn-outline:disabled{opacity:.5}.ft-link{width:auto;padding:2px 4px;background:none;border:0;color:var(--muted);font-size:13px;cursor:pointer;text-decoration:underline;font-weight:500}.ft-link:hover{color:var(--ink)}.ft-icon-btn{width:auto;padding:3px 6px;background:none;border:0;font-size:15px;cursor:pointer;color:var(--muted);line-height:1}.ft-icon-btn:hover{color:var(--ink)}.ft-flag-on{filter:none}.ft-x{padding:0 6px;color:var(--muted);font-size:20px;line-height:1}.ft-namebtn,.ft-x{width:auto;background:none;border:0;cursor:pointer}.ft-namebtn{padding:0;color:var(--ink);font-weight:600;font-size:14px;text-align:left}.ft-namebtn:hover{color:var(--red);text-decoration:underline}.ft-phone{color:var(--red);font-size:12px;text-decoration:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ft-phone:hover{text-decoration:underline}.ft-photobtn{width:auto;padding:0;background:none;border:0;color:var(--muted);font-size:13px;cursor:pointer;text-align:left}.ft-photobtn:hover{color:var(--red)}.ft-clickable{cursor:pointer;border:0;margin-left:8px}.ft-pulse{animation:ftpulse 1.2s ease-in-out infinite}@keyframes ftpulse{50%{opacity:.6}}.ft-search{width:240px;padding:8px 12px;border-radius:8px}.ft-search,.ft-select{margin:0;font-size:13px}.ft-select{width:auto;padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink)}.ft-select-sm{padding:3px 6px;font-size:12px}.ft-badge{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap;width:auto}.ft-badge-muted{background:#eee;color:#555}.ft-grade-a{background:#dcfce7;color:#166534}.ft-grade-b{background:#ecfccb;color:#3f6212}.ft-grade-c{background:#fef3c7;color:#92400e}.ft-grade-late{background:#fee2e2;color:#991b1b}.ft-grace{color:#d97706;font-weight:400;margin-left:2px}.ft-src-email{background:#dbeafe;color:#1d4ed8}.ft-src-text{background:#dcfce7;color:#15803d}.ft-src-fleet{background:#ede9fe;color:#6d28d9}.ft-src-other{background:#e5e7eb;color:#4b5563}.ft-rev-orange-badge{background:#ffedd5;color:#c2410c}.ft-warn{font-size:13px;cursor:help}.ft-warn-red{filter:hue-rotate(0)}.ft-medal{font-size:17px}.ft-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ft-tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);overflow-x:auto}.ft-tab{width:auto;background:none;border:0;border-bottom:2px solid transparent;border-radius:0;color:var(--muted);font-size:13px;font-weight:600;padding:10px 12px;cursor:pointer;white-space:nowrap}.ft-tab-on,.ft-tab:hover{color:var(--ink)}.ft-tab-on{border-bottom-color:var(--red)}.ft-tab-badge{margin-left:6px;display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 6px;border-radius:999px;font-size:11px;font-weight:700;background:var(--red);color:#fff}.ft-tab-badge-muted{background:#e5e7eb;color:#555}.ft-bell{position:relative;font-size:15px}.ft-bell-badge{position:absolute;top:-7px;right:-9px;background:var(--red);color:#fff;font-size:10px;font-weight:700;min-width:15px;height:15px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;padding:0 4px}.ft-banner{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af;border-radius:10px;padding:10px 14px;font-size:13px;margin-bottom:10px}.ft-banner-err{background:#fef2f2;border-color:#fecaca;color:#991b1b}.ft-strip{border:1px solid #fde68a;background:#fffbeb;border-radius:10px;overflow:hidden;margin-top:12px}.ft-strip-head{display:flex;justify-content:space-between;gap:8px;padding:6px 12px;background:#fef3c7}.ft-strip-head,.ft-strip-who{align-items:center;font-size:12px}.ft-strip-who{display:inline-flex;gap:6px;color:#92400e;font-weight:600}.ft-strip-row{display:flex;align-items:center;gap:8px;padding:6px 12px;border-top:1px solid #fde68a;font-size:12px}.ft-strip-flag{background:#fef2f2;border-top-color:#fecaca}.ft-strip-more{width:100%;background:none;border:0;border-top:1px solid #fde68a;border-radius:0;color:#92400e;font-size:12px;padding:5px;cursor:pointer}.ft-ago{width:55px;text-align:right;flex-shrink:0}.ft-row-actions{display:flex;align-items:center;gap:6px;justify-content:flex-end}.ft-tablebox{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden}.ft-scroll-x{overflow-x:auto}.ft-thead{background:var(--bg)!important;font-size:10.5px!important;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)!important;border-top:0!important}.ft-thead,.ft-thead span{font-weight:600}.ft-amberbox{border-color:#fcd34d;background:#fffbeb}.ft-amberhead{padding:7px 14px;background:#fef3c7;color:#92400e;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.ft-purplebox{border-color:#ddd6fe;background:#f5f3ff}.ft-redbox{border-color:#fecaca;background:#fef2f2}.ft-bluebg{background:#eff6ff}.ft-noticebox{border-radius:10px;border:1px solid #fcd34d;padding:10px 14px}.ft-noticebox p{margin:0 0 2px}.ft-miss-row{display:grid;grid-template-columns:minmax(160px,1fr) 60px 110px 130px 55px 110px;grid-gap:8px;gap:8px;align-items:center;padding:8px 14px;border-top:1px solid var(--line);font-size:13px;min-width:660px}.ft-urgent-row{background:#fef2f2}.ft-namecell{display:flex;align-items:center;gap:6px;min-width:0}.ft-sub-min{min-width:820px}.ft-sub-row{display:grid;grid-template-columns:minmax(150px,1.1fr) minmax(150px,1.3fr) 70px 65px 60px 60px 150px;grid-gap:8px;gap:8px;align-items:center;padding:8px 14px;border-top:1px solid var(--line);font-size:13px}.ft-weekhead{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 14px;cursor:pointer}.ft-weekhead:hover{background:var(--bg)}.ft-inc-row{grid-template-columns:1fr 80px 1fr 60px;grid-gap:8px;border-top:1px solid #fde68a}.ft-add-row,.ft-inc-row{display:grid;gap:8px;padding:6px 12px;font-size:12px;align-items:center}.ft-add-row{grid-template-columns:80px 80px 1fr 1fr 70px;grid-gap:8px;width:100%;background:none;border:0;border-top:1px solid #ddd6fe;border-radius:0;color:var(--ink);text-align:left}.ft-add-click{cursor:pointer}.ft-add-click:hover{background:#ede9fe}.ft-unm-row{display:grid;grid-template-columns:1fr 80px 80px 1fr 60px;grid-gap:8px;gap:8px;padding:8px 14px;border-top:1px solid var(--line);font-size:13px;align-items:center;min-width:520px}.ft-to-min{min-width:780px}.ft-to-row{display:grid;grid-template-columns:minmax(140px,1fr) 65px 120px 100px minmax(120px,1fr) 140px 160px;grid-gap:8px;gap:8px;padding:9px 14px;border-top:1px solid var(--line);font-size:13px;align-items:center}.ft-notecell{display:flex;flex-direction:column;gap:1px;min-width:0}.ft-hist-row{display:grid;grid-template-columns:85px 90px 55px 55px 50px 1fr;grid-gap:8px;gap:8px;padding:7px 14px;border-top:1px solid var(--line);font-size:13px;align-items:center}.ft-lb-min{min-width:620px}.ft-lead-row{grid-template-columns:50px 1fr 70px 120px 90px 90px;grid-gap:8px;padding:9px 14px;border-top:1px solid var(--line);font-size:13px}.ft-flag-row,.ft-lead-row{display:grid;gap:8px;align-items:center}.ft-flag-row{grid-template-columns:minmax(120px,1fr) 55px 100px minmax(100px,1fr) 110px minmax(100px,1fr) 75px;grid-gap:8px;padding:7px 12px;border-top:1px solid #fecaca;font-size:12px;min-width:720px}.ft-subsection{border-top:1px solid var(--line)}.ft-subsection-toggle{width:100%;background:none;border:0;border-radius:0;text-align:left;padding:8px 14px;font-size:12px;font-weight:700;color:var(--ink);cursor:pointer}.ft-subsection-toggle:hover{background:var(--bg)}.ft-subsection-body{margin:0 14px 10px;border-radius:8px;border:1px solid var(--line);overflow:hidden}.ft-section-toggle{width:auto;background:none;border:0;padding:4px 0;font-size:13px;font-weight:600;color:var(--muted);cursor:pointer}.ft-section-toggle:hover{color:var(--ink)}.ft-pager{display:flex;align-items:center;justify-content:center;gap:10px;padding:6px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.ft-pager button{width:auto;background:none;border:0;color:var(--ink);font-size:15px;padding:2px 8px;cursor:pointer}.ft-pager button:disabled{opacity:.3}.ft-review{min-width:90px}.ft-rev-orange{color:#c2410c}.ft-rev-red{color:#b91c1c}.ft-rev-yellow{color:#a16207}.ft-monthpick{display:flex;align-items:center;gap:6px}.ft-monthpick span{min-width:130px;text-align:center;font-weight:600;font-size:13px}.ft-monthpick button{width:auto;background:none;border:1px solid var(--line);color:var(--ink);border-radius:8px;font-size:15px;padding:2px 10px;cursor:pointer}.ft-perfect-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:8px;gap:8px}.ft-perfect-card{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:10px;padding:9px 12px}.ft-perfect-card,.ft-table{background:#fff;font-size:13px}.ft-table{width:100%;border-collapse:collapse}.ft-table th{text-align:left;background:var(--bg);font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.ft-table td,.ft-table th{padding:8px 10px;white-space:nowrap}.ft-table td{border-top:1px solid var(--line)}.ft-table input[type=checkbox]{width:auto;margin:0}.ft-chk{width:30px}.ft-inline-edit{display:inline-flex;gap:4px;align-items:center}.ft-inline-edit input{margin:0;padding:4px 8px;font-size:13px;width:160px}.ft-form{gap:12px}.ft-form,.ft-form label{display:flex;flex-direction:column}.ft-form label{gap:4px;font-size:13px;font-weight:600}.ft-form label em{color:var(--red);font-style:normal}.ft-form input,.ft-form select{margin:0;padding:9px 12px;font-size:14px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-weight:400;width:100%}.ft-form-grid2{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.ft-form-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:4px}.ft-form-actions.ft-left{justify-content:flex-start;flex-wrap:wrap}.ft-err{color:var(--red);font-size:12px;font-weight:500}.ft-conflict{border:1px solid #fcd34d;background:#fffbeb;border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:10px}.ft-conflict p{margin:0}.ft-conflict-card{background:#fff;border:1px solid #fde68a;border-radius:8px;padding:8px 10px}.ft-overlay{position:fixed;inset:0;z-index:60;background:rgba(0,0,0,.45);display:flex;align-items:flex-start;justify-content:center;padding:40px 16px;overflow-y:auto}.ft-modal{background:#fff;border-radius:14px;width:100%;max-width:420px;box-shadow:0 20px 60px rgba(0,0,0,.25)}.ft-modal-wide{max-width:680px}.ft-modal-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 18px 0}.ft-modal-head h3{margin:0;font-size:15px}.ft-modal-body{padding:12px 18px 18px}.ft-skeletons{display:flex;flex-direction:column;gap:10px}.ft-skeleton{height:52px;border-radius:10px;background:#eee;animation:ftskel 1.2s ease-in-out infinite}@keyframes ftskel{50%{opacity:.55}}.ft-toasts{position:fixed;top:14px;right:14px;z-index:100;display:flex;flex-direction:column;gap:8px;max-width:360px}.ft-toast{background:#111;color:#fff;border-radius:10px;padding:10px 14px;font-size:13px;box-shadow:0 8px 24px rgba(0,0,0,.25);cursor:pointer}.ft-toast-success{background:#14532d}.ft-toast-error{background:#7f1d1d}.ft-lightbox{position:fixed;inset:0;z-index:80;background:rgba(0,0,0,.92);display:flex;flex-direction:column;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ft-lb-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px;color:#fff}.ft-lb-name{font-size:13px;font-weight:600;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ft-lb-tools{display:flex;align-items:center;gap:12px}.ft-lb-count{font-size:13px;color:hsla(0,0%,100%,.7)}.ft-lb-close{background:none;font-size:26px;line-height:1;padding:0 4px}.ft-lb-close,.ft-lb-reset{width:auto;border:0;color:#fff;cursor:pointer}.ft-lb-reset{background:hsla(0,0%,100%,.15);font-size:12px;padding:4px 10px;border-radius:6px}.ft-lb-area{flex:1 1;position:relative;overflow:hidden}.ft-lb-center{color:hsla(0,0%,100%,.6)}.ft-lb-center,.ft-lb-imgwrap{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.ft-lb-imgwrap img{max-width:100%;max-height:100%;object-fit:contain;pointer-events:none}.ft-lb-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:10;width:44px;height:44px;border-radius:50%;background:rgba(0,0,0,.5);color:#fff;border:0;font-size:26px;line-height:1;cursor:pointer;padding:0}.ft-lb-nav:hover{background:rgba(0,0,0,.75)}.ft-lb-prev{left:10px}.ft-lb-next{right:10px}.ft-lb-strip{display:flex;gap:8px;padding:10px 16px;overflow-x:auto;justify-content:safe center}.ft-lb-thumb{flex-shrink:0;width:54px;height:54px;border-radius:8px;overflow:hidden;border:2px solid transparent;opacity:.5;padding:0;background:none;cursor:pointer}.ft-lb-thumb img{width:100%;height:100%;object-fit:cover;display:block}.ft-lb-thumb-on{border-color:#fff;opacity:1}.df-ref-text{display:flex;align-items:center;justify-content:center;padding:18px;text-align:center;background:var(--bg)}.df-ref-text p{margin:0;font-size:16px;font-weight:600;color:var(--muted);line-height:1.5}.ft-weekhead{background:none;border:0;width:100%;color:var(--ink);font-size:14px;border-radius:0}.ft-badge-clip{max-width:200px;overflow:hidden;text-overflow:ellipsis;display:inline-block;line-height:1.6}.ft-left-actions{justify-content:flex-start}.ft-lb-blur{filter:blur(6px)}.ft-lb-loadingtag{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);background:rgba(0,0,0,.55);border-radius:999px;padding:8px 14px;z-index:15}.df-quick-count{text-align:center;font-size:15px;margin:0 0 8px}.df-error{color:var(--red);font-weight:500;font-size:14px;margin:6px 0}.df-choose{display:flex;flex-direction:column;gap:14px;margin-top:8px}.df-choose-btn{display:block;width:100%;text-align:left;border:2px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);padding:16px;cursor:pointer}.df-choose-btn b{display:block;font-size:17px;margin-bottom:2px}.df-choose-btn span{color:var(--muted);font-size:13px}.df-choose-main{background:var(--red);border-color:var(--red);color:#fff;padding:26px 18px}.df-choose-main b{font-size:21px;margin-bottom:4px}.df-choose-main span{color:hsla(0,0%,100%,.9);font-size:14px}.df-choose-main:active{opacity:.92}.df-linkbtn{width:auto;padding:0 2px;background:none;border:0;color:inherit;text-decoration:underline;font-weight:700;cursor:pointer;font-size:inherit}.df-error-center{text-align:center}.ft-lb-drive{color:#93c5fd;font-size:13px;font-weight:600;text-decoration:underline;margin-right:10px}.ft-note-on{color:#b45309}.ft-notearea{width:100%;font-size:14px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;font-family:inherit;resize:vertical}.df-feedback{border:1px solid #fcd34d;background:#fffbeb;color:#92400e;border-radius:10px;padding:12px 14px;font-size:14px;margin:0 0 14px}.df-feedback b{display:block;margin-bottom:4px}.df-feedback-wrap{max-width:480px;margin:0 auto;padding:12px 16px 0;background:#fff}.df-feedback-wrap+.df{min-height:auto}.df-skip-note{text-align:center;color:var(--muted);font-size:12px;margin:-2px 0 0}.df-logo-lg{margin:12px 0 16px}.df-logo-lg img{max-height:200px}.ft-brand{display:flex;align-items:center;gap:10px;min-width:0}.ft-brand h1{margin:0}.ft-brandlogo{height:34px;width:auto;flex:0 0 auto}.login-logo{display:flex;justify-content:center;margin:8px 0 4px}.login-logo img{height:110px;width:auto}.dp-toolbar{margin:10px 0 12px}.dp-seg{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff}.dp-seg-btn{width:auto;margin:0;padding:7px 12px;font-size:13px;font-weight:600;background:#fff;color:var(--muted);border:0;border-radius:0;cursor:pointer}.dp-seg-on{background:var(--red);color:#fff}.dp-summary b{font-weight:700}.dp-dot{display:inline-block;width:8px;height:8px;border-radius:999px;margin-right:6px;vertical-align:1px}.dp-dot-g{background:#16a34a}.dp-dot-r{background:#dc2626}.dp-urgent{margin-left:8px;font-size:11px;font-weight:800;color:#b91c1c}.dp-status{gap:8px;flex-wrap:wrap}.dp-pending,.dp-status{display:inline-flex;align-items:center}.dp-pending{gap:4px}.dp-actions{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.dp-sectionhead{background:var(--bg);font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:700;padding:6px 10px}.dp-timeoff-row{background:#fafafa}.dp-empty{text-align:center;padding:40px 10px}.dp-dialog{display:flex;flex-direction:column;gap:12px;font-size:14px}.dp-dialog p{margin:0}.dp-field{display:flex;flex-direction:column;gap:4px;font-weight:600;font-size:13px}.dp-field input{margin:0}.dp-dialog-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:2px}.ft,.lg{--ft-bg:#f3f4f6;--ft-card:#fff;--ft-line:#e7e9ee;--ft-line-2:#f0f1f4;--ft-ink:#111827;--ft-ink-2:#374151;--ft-muted:#6b7280;--ft-faint:#9ca3af;--ft-brand:#b91c1c;--ft-brand-2:#991b1b;--ft-brand-soft:#fef2f2;--ft-radius:14px;--ft-radius-sm:10px;--ft-shadow:0 1px 2px rgba(17,24,39,.04),0 1px 3px rgba(17,24,39,.06);--ft-shadow-lg:0 10px 30px rgba(17,24,39,.1),0 2px 6px rgba(17,24,39,.06);font-family:var(--font-ui),-apple-system,system-ui,"Segoe UI",Roboto,sans-serif;font-feature-settings:"cv11","ss01";-webkit-font-smoothing:antialiased;color:var(--ft-ink)}.ft{background:var(--ft-bg);font-size:14px}.ft button,.ft input,.ft select,.ft textarea{font-family:inherit}.ft-ico{display:inline-block;vertical-align:-3px;flex-shrink:0}.ft .ft-header{position:-webkit-sticky;position:sticky;top:0;z-index:40;background:hsla(0,0%,100%,.88);backdrop-filter:saturate(180%) blur(10px);-webkit-backdrop-filter:saturate(180%) blur(10px);border-bottom:1px solid var(--ft-line)}.ft .ft-header-in{max-width:1200px;padding:10px 20px;min-height:64px}.ft .ft-brand{gap:12px}.ft .ft-brandlogo{height:38px}.ft .ft-brand h1{font-size:18px;font-weight:700;letter-spacing:-.01em;line-height:1.2}.ft-brand-sub{display:block;font-size:12px;font-weight:500;color:var(--ft-muted);letter-spacing:0}.ft .ft-header-right{gap:8px}.ft-weekpill{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:var(--ft-bg);border:1px solid var(--ft-line);color:var(--ft-ink-2);font-size:13px;font-weight:600;white-space:nowrap}.ft-weekpill .ft-ico{color:var(--ft-brand)}.ft-roundbtn{position:relative;width:38px;height:38px;padding:0;margin:0;border-radius:999px;border:1px solid var(--ft-line);background:#fff;color:var(--ft-ink-2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,color .15s}.ft-roundbtn:hover{background:var(--ft-bg);color:var(--ft-ink)}.ft-roundbtn-on{color:var(--ft-brand)}.ft .ft-bell-badge{top:-4px;right:-4px;min-width:18px;height:18px;font-size:10.5px;border:2px solid #fff}.ft .ft-main{max-width:1200px;padding:18px 20px 56px}.ft .ft-content{padding-top:18px}.ft .ft-stack{gap:16px}.ft-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px;margin-bottom:16px}.ft-kpi{display:flex;flex-direction:column;gap:6px;text-align:left;width:100%;margin:0;padding:14px 16px;background:var(--ft-card);color:var(--ft-ink);border:1px solid var(--ft-line);border-radius:var(--ft-radius);box-shadow:var(--ft-shadow);cursor:pointer;font-weight:400;font-size:14px;transition:transform .12s,box-shadow .12s,border-color .12s}.ft-kpi:hover{transform:translateY(-1px);box-shadow:var(--ft-shadow-lg);border-color:#d9dce3}.ft-kpi-top{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--ft-muted);font-size:12.5px;font-weight:600}.ft-kpi-ico{width:30px;height:30px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center}.ft-kpi-val{font-size:26px;font-weight:750;letter-spacing:-.02em;line-height:1.1}.ft-kpi-val small{font-size:14px;font-weight:600;color:var(--ft-muted);margin-left:3px;letter-spacing:0}.ft-kpi-foot{font-size:12px;color:var(--ft-muted)}.ft-kpi-bar{height:6px;border-radius:999px;background:var(--ft-line-2);overflow:hidden}.ft-kpi-bar span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#16a34a,#22c55e);transition:width .4s}.ft-kpi-green .ft-kpi-ico{background:#dcfce7;color:#15803d}.ft-kpi-red .ft-kpi-ico{background:#fee2e2;color:#b91c1c}.ft-kpi-red .ft-kpi-val{color:#b91c1c}.ft-kpi-blue .ft-kpi-ico{background:#e0f2fe;color:#0369a1}.ft-kpi-amber .ft-kpi-ico{background:#fef3c7;color:#b45309}.ft-kpi-amber.ft-kpi-hot{border-color:#fcd34d;background:#fffbeb}@media (max-width:820px){.ft-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}.ft .ft-tabs{display:inline-flex;gap:4px;padding:4px;border-bottom:1px solid var(--ft-line);border:1px solid var(--ft-line);border-radius:12px;background:#e9ebef;max-width:100%}.ft .ft-tab{display:inline-flex;align-items:center;gap:2px;margin:0;padding:8px 14px;border:0;border-radius:9px;background:transparent;color:var(--ft-muted);font-size:13.5px;font-weight:600;transition:background .15s,color .15s}.ft .ft-tab:hover{color:var(--ft-ink);background:hsla(0,0%,100%,.55)}.ft .ft-tab-on,.ft .ft-tab-on:hover{background:#fff;color:var(--ft-ink);box-shadow:0 1px 3px rgba(17,24,39,.12);border-bottom:0}.ft .ft-tab:focus{outline:none}.ft-kpi:focus-visible,.ft-roundbtn:focus-visible{outline:2px solid #fca5a5;outline-offset:2px}.ft .ft-tab-badge{height:20px;min-width:22px;font-size:11px}.ft .ft-tab-badge-muted{background:#d9dce3;color:var(--ft-ink-2)}.ft .ft-tablebox{background:var(--ft-card);border:1px solid var(--ft-line);border-radius:var(--ft-radius);box-shadow:var(--ft-shadow)}.ft .ft-thead{background:#fafafb!important;font-size:11px!important;letter-spacing:.06em;color:var(--ft-faint)!important;padding-top:9px!important;padding-bottom:9px!important}.ft .ft-hist-row,.ft .ft-lead-row,.ft .ft-miss-row,.ft .ft-sub-row,.ft .ft-to-row,.ft .ft-unm-row{border-top:1px solid var(--ft-line-2);padding-top:10px;padding-bottom:10px;font-size:13.5px;transition:background .12s}.ft .ft-lead-row:not(.ft-thead):hover,.ft .ft-miss-row:not(.ft-thead):hover,.ft .ft-sub-row:not(.ft-thead):hover,.ft .ft-to-row:not(.ft-thead):hover{background:#fafbfc}.ft .ft-sub-row{grid-template-columns:minmax(190px,1.2fr) minmax(160px,1.3fr) 70px 70px 64px 64px 184px;padding-left:18px;padding-right:18px}.ft .ft-sub-min{min-width:900px}.ft .ft-miss-row{grid-template-columns:minmax(190px,1fr) 64px 130px 130px 60px 124px;padding-left:18px;padding-right:18px;min-width:740px}.ft .ft-urgent-row,.ft .ft-urgent-row:hover{background:#fff1f2!important;box-shadow:inset 3px 0 0 #dc2626}.ft .ft-table{font-size:13.5px}.ft .ft-table th{background:#fafafb;color:var(--ft-faint);font-size:11px;letter-spacing:.06em;padding:10px 12px}.ft .ft-table td{border-top:1px solid var(--ft-line-2);padding:10px 12px}.ft .ft-table tbody tr:hover td{background:#fafbfc}.ft .ft-table tbody tr.ft-urgent-row td{background:#fff1f2}.ft-avatar{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:999px;font-weight:700;letter-spacing:.02em;line-height:1}.ft .ft-namecell{gap:10px}.ft .ft-namebtn{font-size:14px;font-weight:600;color:var(--ft-ink);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;background:none}.ft .ft-namebtn:hover{color:var(--ft-brand);text-decoration:none}.ft-person{display:inline-flex;align-items:center;gap:10px;min-width:0}.ft .ft-badge{padding:3px 9px;border-radius:999px;font-size:11.5px;font-weight:650}.ft .ft-badge-muted{background:#f1f2f5;color:#4b5563}.ft .ft-grade-a,.ft .ft-grade-b,.ft .ft-grade-c,.ft .ft-grade-late{min-width:40px;justify-content:center;border-radius:8px;padding:4px 8px;font-size:12px}.ft .ft-grade-late{background:#fee2e2;color:#b91c1c}.ft-chip{gap:5px}.ft .ft-photobtn,.ft-chip{display:inline-flex;align-items:center}.ft .ft-photobtn{gap:6px;width:auto;margin:0;padding:4px 10px;border-radius:999px;background:#f3f4f6;color:var(--ft-ink-2);font-size:13px;font-weight:650;border:0;transition:background .12s,color .12s}.ft .ft-photobtn:hover{background:var(--ft-brand-soft);color:var(--ft-brand)}.ft .ft-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;margin:0;padding:0;border-radius:9px;background:transparent;color:var(--ft-faint);font-size:15px;border:0;transition:background .12s,color .12s}.ft .ft-icon-btn:hover{background:#f1f2f5;color:var(--ft-ink)}.ft .ft-icon-danger:hover{background:#fef2f2;color:#b91c1c}.ft .ft-icon-btn.ft-note-on{color:#b45309;background:#fffbeb}.ft .ft-icon-btn.ft-green{color:#16a34a}.ft .ft-icon-btn.ft-green:hover{background:#dcfce7;color:#15803d}.ft .ft-icon-btn.ft-flag-on{color:#dc2626;background:#fee2e2}.ft .ft-row-actions{gap:4px}.ft .ft-link{color:var(--ft-muted);text-decoration:none;font-weight:600;background:none;display:inline-flex;align-items:center;gap:4px}.ft .ft-link:hover{color:var(--ft-ink);text-decoration:underline}.ft .ft-link.ft-red{color:#b91c1c}.ft .ft-btn{border-radius:10px;padding:9px 16px;font-weight:650;background:var(--ft-brand);color:#fff;box-shadow:0 1px 2px rgba(185,28,28,.25);display:inline-flex;align-items:center;justify-content:center;gap:6px}.ft .ft-btn:hover:not(:disabled){background:var(--ft-brand-2)}.ft .ft-btn-sm{padding:7px 12px;font-size:13px}.ft .ft-btn-xs{padding:4px 10px;font-size:12px;border-radius:8px}.ft .ft-btn-outline{border-radius:10px;padding:8px 14px;background:#fff;color:var(--ft-ink);border:1px solid var(--ft-line);box-shadow:var(--ft-shadow);display:inline-flex;align-items:center;justify-content:center;gap:6px}.ft .ft-btn-outline:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db}.ft .ft-search{height:38px;width:260px;padding:0 12px 0 36px;border:1px solid var(--ft-line);border-radius:10px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") no-repeat 12px;font-size:13.5px;box-shadow:var(--ft-shadow)}.ft .ft-form input:focus,.ft .ft-form select:focus,.ft .ft-notearea:focus,.ft .ft-search:focus,.ft .ft-select:focus{outline:none;border-color:#fca5a5;box-shadow:0 0 0 3px hsla(0,91%,71%,.18)}.ft .ft-select{height:36px;padding:0 30px 0 12px;border-radius:10px;border:1px solid var(--ft-line);-moz-appearance:none;appearance:none;-webkit-appearance:none;background:#fff 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.5' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 10px center;font-weight:500;font-size:13px;cursor:pointer}.ft .ft-select-sm{height:32px;font-size:12.5px;padding:0 28px 0 10px}.ft .ft-review{min-width:112px;font-weight:600}.ft .ft-review.ft-rev-orange{background-color:#fff7ed;border-color:#fed7aa}.ft .ft-review.ft-rev-red{background-color:#fef2f2;border-color:#fecaca}.ft .ft-review.ft-rev-yellow{background-color:#fefce8;border-color:#fde68a}.ft .ft-toolbar{gap:10px}.ft .ft-h2{font-size:18px;font-weight:700;letter-spacing:-.01em;display:inline-flex;align-items:center;gap:8px}.ft .ft-weekhead{padding:14px 18px;font-size:14px;align-items:center}.ft .ft-weekhead:hover{background:#fafbfc}.ft-weektitle{display:inline-flex;align-items:center;gap:10px;font-size:15px;font-weight:700;letter-spacing:-.01em}.ft-weektitle .ft-ico{color:var(--ft-faint);transition:transform .18s}.ft-weektitle-open .ft-ico{transform:rotate(90deg)}.ft-weekcurrent{font-size:11px;font-weight:700;color:#15803d;background:#dcfce7;padding:2px 8px;border-radius:999px;letter-spacing:.02em}.ft-weekmeta{gap:8px;flex-wrap:wrap;justify-content:flex-end;color:var(--ft-muted);font-size:12.5px}.ft-metachip,.ft-weekmeta{display:inline-flex;align-items:center}.ft-metachip{gap:5px;padding:4px 10px;border-radius:999px;background:#f3f4f6;color:var(--ft-ink-2);font-size:12px;font-weight:600;white-space:nowrap}.ft-metachip-btn{width:auto;margin:0;border:1px solid transparent;cursor:pointer;background:#ecfeff;color:#0e7490;font-family:inherit}.ft-metachip-btn:hover{border-color:#a5f3fc}.ft-metachip-btn.ft-on{background:#0e7490;color:#fff}.ft-weekto{margin:0 18px 14px;border:1px solid #cffafe;background:#f0fdff;border-radius:12px;overflow:hidden}.ft-weekto-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 14px;font-size:12.5px;font-weight:700;color:#0e7490}.ft-weekto-note{font-weight:500;color:#0e7490;opacity:.85;font-size:12px}.ft-weekto-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));grid-gap:8px;gap:8px;padding:0 14px 12px}.ft-weekto-card{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #e0f2fe;border-radius:10px;padding:8px 10px;min-width:0}.ft-weekto-card b{font-size:13px;font-weight:650}.ft-weekto-card b,.ft-weekto-card div>span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ft-weekto-card div>span{font-size:11.5px;color:var(--ft-muted)}.ft .ft-subsection{border-top:1px solid var(--ft-line-2)}.ft .ft-subsection-toggle{padding:11px 18px;font-size:13px;display:flex;align-items:center;gap:8px}.ft .ft-subsection-body{margin:0 18px 14px;border-radius:12px}.ft .ft-pager{padding:10px;border-top:1px solid var(--ft-line-2)}.ft .ft-pager button{border-radius:8px;border:1px solid var(--ft-line);background:#fff;color:var(--ft-ink);width:32px;height:30px;padding:0}.ft .ft-banner{border-radius:12px;padding:11px 16px;box-shadow:var(--ft-shadow)}.ft .ft-strip{border-radius:var(--ft-radius);margin-top:14px;box-shadow:var(--ft-shadow);border-color:#fde68a}.ft .ft-strip-head,.ft .ft-strip-row{padding:9px 16px;font-size:13px}.ft .ft-strip-row{background:#fffdf5}.ft .ft-x{background:none;color:var(--ft-muted);width:auto}.ft .ft-overlay{background:rgba(17,24,39,.45);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);padding-top:64px}.ft .ft-modal{border-radius:18px;box-shadow:0 24px 64px rgba(17,24,39,.28);animation:ftpop .16s ease-out}@keyframes ftpop{0%{transform:translateY(6px) scale(.985);opacity:0}to{transform:none;opacity:1}}.ft .ft-modal-head{padding:18px 22px 0}.ft .ft-modal-head h3{font-size:16.5px;font-weight:700;letter-spacing:-.01em}.ft .ft-modal-body{padding:14px 22px 22px}.ft .ft-form input,.ft .ft-form select{height:40px;border-radius:10px}.ft .ft-form label{font-size:13px;color:var(--ft-ink-2)}.ft-toasts{top:auto;bottom:18px;right:18px}.ft-toast{border-radius:12px;padding:12px 16px;font-size:13.5px;font-family:var(--font-ui),system-ui,sans-serif;box-shadow:var(--ft-shadow-lg,0 10px 30px rgba(0,0,0,.2));animation:ftpop .18s ease-out}.ft .ft-skeleton{height:58px;border-radius:14px;background:linear-gradient(90deg,#eceef1 25%,#f5f6f8 50%,#eceef1 75%);background-size:200% 100%;animation:ftshim 1.2s linear infinite}@keyframes ftshim{to{background-position:-200% 0}}.ft .ft-empty{padding:56px 0;font-size:14px}.ft-empty-big{font-size:34px;display:block;margin-bottom:6px}.ft-hist-to-row{display:grid;grid-template-columns:minmax(170px,1fr) 64px 100px 100px 100px minmax(140px,1.2fr);grid-gap:8px;gap:8px;align-items:center;padding:9px 18px;border-top:1px solid var(--ft-line-2);font-size:13px;min-width:760px}.ft .dp-seg{border-radius:10px;padding:3px;background:#e9ebef;border:1px solid var(--ft-line);gap:3px}.ft .dp-seg-btn{border-radius:8px;background:transparent;color:var(--ft-muted);padding:7px 12px}.ft .dp-seg-on{background:#fff;color:var(--ft-ink);box-shadow:0 1px 3px rgba(17,24,39,.12)}.ft .dp-sectionhead{background:#fafafb;color:var(--ft-faint);padding:9px 12px;letter-spacing:.06em}.ft .dp-timeoff-row td{background:#fcfcfd}.ft-status{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:650}.ft-status-ok{background:#dcfce7;color:#15803d}.ft-status-miss{background:#fee2e2;color:#b91c1c}.ft-status-off{background:#ecfeff;color:#0e7490}.lg{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:radial-gradient(1200px 600px at 50% -10%,#fee2e2 0,hsla(0,93%,94%,0) 60%),#f3f4f6}.lg-card{width:100%;max-width:400px;background:#fff;border:1px solid #e7e9ee;border-radius:20px;box-shadow:0 20px 50px rgba(17,24,39,.1);padding:28px 28px 24px}.lg-card .login-logo img{height:92px}.lg-card h1{text-align:center;font-size:22px;font-weight:750;letter-spacing:-.02em;margin:6px 0 4px}.lg-sub{text-align:center;color:#6b7280;font-size:14px;margin:0 0 20px}.lg-card label{font-size:13px;font-weight:600;color:#374151}.lg-card input{height:46px;border-radius:12px;border:1px solid #e7e9ee;font-size:16px;margin:6px 0 12px;font-family:inherit}.lg-card input:focus{outline:none;border-color:#fca5a5;box-shadow:0 0 0 3px hsla(0,91%,71%,.18)}.lg-card button{height:46px;border-radius:12px;font-size:16px;font-family:inherit;background:#b91c1c;color:#fff;box-shadow:0 2px 6px rgba(185,28,28,.3)}.lg-card button:hover:not(:disabled){background:#991b1b}.lg-foot{text-align:center;color:#9ca3af;font-size:12px;margin:16px 0 0}.ft-rot90{transform:rotate(90deg)}.ft .ft-warn{display:inline-flex}.dp-kpis{grid-template-columns:repeat(3,minmax(0,1fr));margin:4px 0}.ft .dp-kpi{cursor:default}.ft .dp-kpi:hover{transform:none;box-shadow:var(--ft-shadow);border-color:var(--ft-line)}.ft .dp-urgent{display:inline-flex;align-items:center;gap:3px;color:#b91c1c}@media (max-width:640px){.dp-kpis{grid-template-columns:1fr 1fr 1fr;gap:8px}.ft .dp-kpi{padding:10px}.ft .dp-kpi .ft-kpi-val{font-size:20px}.ft .dp-kpi .ft-kpi-foot{display:none}.ft .ft-header-in{padding:8px 12px}.ft .ft-brand-sub{display:none}.ft .ft-weekpill{padding:5px 9px;font-size:12px}.ft .ft-main{padding:12px 12px 48px}.ft .ft-search{width:100%}}.ft .ft-lead-row{grid-template-columns:56px minmax(180px,1fr) 70px 130px 90px 90px;padding-left:18px;padding-right:18px}.ft .ft-perfect-card{border-radius:12px;box-shadow:var(--ft-shadow);padding:10px 12px;gap:10px}.ft .ft-monthpick button{border-radius:10px;background:#fff;width:34px;height:32px;padding:0}.ft .ft-h3{font-size:15px;font-weight:700;margin-top:10px}@media (max-width:640px){.ft .ft-brand h1{display:none}.ft .ft-header-right{gap:6px}.ft .ft-roundbtn{width:34px;height:34px}}.ft-lb-dl{display:inline-flex;align-items:center;gap:6px;width:auto;margin:0;padding:6px 12px;border-radius:8px;border:0;background:hsla(0,0%,100%,.16);color:#fff;font-size:12.5px;font-weight:600;text-decoration:none;cursor:pointer;font-family:inherit;white-space:nowrap}.ft-lb-dl:hover{background:hsla(0,0%,100%,.28)}.ft-lb-dl:disabled{opacity:.7;cursor:default}@media (max-width:640px){.ft-lb-tools{gap:6px;flex-wrap:wrap;justify-content:flex-end}.ft-lb-dl{padding:5px 9px}}.dp-viewtabs{margin:12px 0 2px}.ft .dp-click{cursor:pointer}.ft .dp-click:hover td{background:#faf5ff!important}.ft-lightbox{background:rgba(0,0,0,.96)}@media (max-width:640px){.ft .ft-header-in{flex-wrap:wrap;row-gap:6px}.ft .ft-header-right{flex-wrap:wrap;justify-content:flex-end;margin-left:auto}.ft .ft-brand h1{font-size:16px}.ft .ft-brandlogo{height:32px}.ft .ft-strip-row{flex-wrap:wrap;row-gap:4px}.ft .ft-strip-row .ft-grow{flex-basis:100%;order:5}.ft .ft-strip-row .ft-row-actions{margin-left:auto}.ft .ft-weekhead{flex-wrap:wrap;row-gap:8px}.ft .ft-weekmeta{justify-content:flex-start}.ft .ft-weektitle{font-size:14px}.ft .ft-kpi-val{font-size:22px}.ft .ft-brand{flex:1 1 auto}.ft .ft-brand h1{white-space:nowrap}}.ft .ft-icon-btn.ft-msg-on,.ft .ft-texted{background:#eef2ff;color:#4338ca}.ft .ft-miss-row{grid-template-columns:minmax(230px,1fr) 64px 130px 130px 60px 160px}.ft-fu-row{display:grid;grid-template-columns:minmax(200px,1fr) 80px 80px 90px 160px;grid-gap:8px;gap:8px;align-items:center;padding:9px 18px;border-top:1px solid var(--ft-line-2);font-size:13.5px;min-width:640px}.ft .ft-fu-row .ft-kpi-bar span{background:linear-gradient(90deg,#6366f1,#818cf8)}.dp-remind{display:flex;align-items:center;gap:12px;padding:12px 16px;margin:4px 0 12px;border-radius:14px;border:1px solid #c7d2fe;background:#eef2ff;color:#3730a3;box-shadow:var(--ft-shadow)}.dp-remind b{display:block;font-size:14px}.dp-remind span{display:block;font-size:12.5px;opacity:.9}.dp-remind-ok{border-color:#bbf7d0;background:#f0fdf4;color:#166534}@media (max-width:640px){.dp-remind{flex-wrap:wrap}}.ft .ft-form label{flex-direction:row;flex-wrap:wrap;align-items:baseline;column-gap:3px;row-gap:4px}.ft .ft-form label>input,.ft .ft-form label>select,.ft .ft-form label>textarea{flex:1 1 100%}.ft-texted-wrap{display:inline-flex;gap:4px;flex-wrap:wrap}.ft .ft-texted-fleet{background:#fff7ed;color:#c2410c}.ft-texted-fleet-txt{color:#c2410c;font-weight:650}.ft-fu-row{grid-template-columns:minmax(190px,1fr) 64px 100px 100px 80px 120px 190px;min-width:900px}.dp-remind-urgent{border-color:#fecaca;background:#fef2f2;color:#991b1b;animation:ftpop .2s ease-out}.dp-remind-x{width:30px;height:30px;margin:0;padding:0;border:0;border-radius:8px;background:transparent;color:inherit;font-size:20px;line-height:1;cursor:pointer;opacity:.6;flex-shrink:0}.dp-remind-x:hover{opacity:1;background:rgba(0,0,0,.06)}.ft-toast{display:flex;align-items:flex-start;gap:10px}.ft-toast>span:first-child{flex:1 1}.ft-toast-x{font-size:16px;line-height:1;opacity:.7}.ft-soundhint{font-size:12px;font-weight:600;color:#92400e;background:#fef3c7;border:1px solid #fde68a;padding:5px 10px;border-radius:999px;white-space:nowrap}@media (max-width:640px){.ft-soundhint{display:none}}.ft-status-new{background:#eef2ff;color:#4338ca}.ft-rep-row{display:grid;grid-template-columns:minmax(190px,1fr) 64px 70px 100px 80px 80px 96px 76px 76px 76px;grid-gap:8px;gap:8px;align-items:center;padding:9px 18px;border-top:1px solid var(--ft-line-2);font-size:13.5px;min-width:1020px}.ft-fix-block{gap:8px;padding:12px 14px;border:1px solid var(--ft-line);border-radius:12px;background:#fafbfc}.ft-fix-block,.ft-fix-list{display:flex;flex-direction:column}.ft-fix-list{max-height:220px;overflow-y:auto;gap:4px}.ft .ft-fix-opt{display:flex;flex-direction:row;align-items:center;gap:10px;padding:7px 10px;border:1px solid transparent;border-radius:9px;cursor:pointer;font-size:13px}.ft .ft-fix-opt:hover{background:#fff;border-color:var(--ft-line)}.ft .ft-fix-opt.ft-on{background:#fff;border-color:#fca5a5}.ft .ft-fix-opt input{width:auto;height:auto;flex:0 0 auto}.ft .ft-unm-row{grid-template-columns:minmax(170px,1fr) 70px 80px minmax(150px,1fr) 60px 150px;min-width:760px;padding-left:18px;padding-right:18px;align-items:center}.ft .ft-form label.ft-check,.ft .ft-form label.ft-fix-opt{flex-wrap:nowrap;align-items:center;column-gap:10px;font-weight:500}.ft .ft-form label.ft-check>input,.ft .ft-form label.ft-fix-opt>input{flex:0 0 auto;width:auto;height:auto;margin:0}.ft-dnote{display:inline-block;max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle;font-size:11.5px;font-weight:600;color:#6b21a8;background:#faf5ff;border:1px solid #e9d5ff;padding:2px 8px;border-radius:999px}.ft-dnote i{font-weight:500;font-style:normal;opacity:.75}.ft .ft-sub-row{grid-template-columns:minmax(190px,1.2fr) minmax(160px,1.3fr) 70px 70px 64px 64px 250px}.ft .ft-sub-min{min-width:980px}.ft .ft-miss-row .ft-namecell,.ft .ft-miss-row .ft-person{flex-wrap:wrap;row-gap:4px}.ft .ft-miss-row .ft-dnote{flex-basis:100%;max-width:100%;white-space:normal;margin-left:40px;border-radius:8px}.ft .dp-status .ft-dnote{white-space:normal;max-width:360px;border-radius:8px}.ft-mnote{display:inline-block;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle;font-size:11.5px;font-weight:600;color:#6b21a8;background:#faf5ff;border:1px solid #e9d5ff;padding:2px 8px;border-radius:999px;cursor:help}.ft .ft-sub-row>.ft-namecell.ft-muted{flex-wrap:wrap;row-gap:4px}.ft .ft-sub-row .ft-mnote{max-width:100%}.ft .ft-header-in,.ft .ft-main{max-width:1480px}.ft .ft-main{padding:14px 20px 48px}.ft .ft-content{padding-top:12px}.ft .ft-stack{gap:12px}.ft .ft-kpis{gap:10px;margin-bottom:12px}.ft .ft-kpi{padding:10px 14px;gap:4px}.ft .ft-kpi-val{font-size:22px}.ft .ft-kpi-ico{width:26px;height:26px}.ft .ft-fu-row,.ft .ft-hist-row,.ft .ft-hist-to-row,.ft .ft-lead-row,.ft .ft-miss-row,.ft .ft-rep-row,.ft .ft-sub-row,.ft .ft-to-row,.ft .ft-unm-row{padding-top:6px;padding-bottom:6px;font-size:13px}.ft .ft-table td{padding:6px 10px;font-size:13px}.ft .ft-table th{padding:8px 10px}.ft .ft-avatar{width:26px!important;height:26px!important;font-size:10px!important}.ft .ft-namebtn{font-size:13.5px}.ft .ft-weekhead{padding:10px 16px}.ft .ft-icon-btn{width:28px;height:28px}.ft .ft-select{height:32px}.ft .ft-photobtn{padding:3px 9px}.ft .ft-grade-a,.ft .ft-grade-b,.ft .ft-grade-c,.ft .ft-grade-late{padding:3px 8px}.ft .ft-sub-row{grid-template-columns:minmax(170px,1fr) minmax(300px,2.1fr) 64px 76px 62px 58px 240px}.ft .ft-sub-min{min-width:1040px}.ft .ft-sub-row>.ft-namecell.ft-muted{flex-wrap:nowrap}.ft .ft-sub-row .ft-mnote{max-width:200px}.ft .ft-sub-row .ft-badge-clip{max-width:120px}.ft .ft-miss-row{grid-template-columns:minmax(260px,1.4fr) 60px minmax(120px,.8fr) 120px 70px 150px;min-width:820px}.ft .ft-miss-row .ft-dnote{margin-left:36px}.ft .ft-table{width:100%;table-layout:auto}.ft .ft-table td,.ft .ft-table th{white-space:nowrap}.ft .ft-table td:nth-child(2){white-space:normal}.df-flash-tip{margin:6px 0 0;font-size:13px;line-height:1.4;color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:10px;padding:8px 10px;text-align:left}.ft .ft-lastweek{border:1px solid #fcd34d;background:#fffbeb;border-radius:10px;padding:10px 12px;display:grid;grid-gap:8px;gap:8px}.ft .ft-lastweek-q{font-weight:600;font-size:14px;color:var(--ft-ink)}.ft .ft-lastweek-q em{color:#dc2626;font-style:normal}.ft .ft-lastweek-opts{display:flex;flex-wrap:wrap;gap:8px}.ft .ft-btn-outline.ft-choice-on{background:#111827;color:#fff;border-color:#111827}.ft .ft-btn-outline.ft-choice-on:hover:not(:disabled){background:#1f2937;border-color:#1f2937}.ft .ft-lastweek p{margin:0}.df-dhtype{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;margin:0 0 18px}.df-dhtype-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:100%;min-height:96px;padding:12px 8px;border:3px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);cursor:pointer}.df-dhtype-btn b{font-size:26px;font-weight:800;letter-spacing:.02em}.df-dhtype-btn span{font-size:13px;color:var(--muted)}.df-dhtype-drop.df-dhtype-on{border-color:#c2410c;background:#fff7ed;color:#9a3412}.df-dhtype-hook.df-dhtype-on{border-color:#1d4ed8;background:#eff6ff;color:#1e3a8a}.df-dhtype-on span{color:inherit}.df-dh-hint{font-size:13px;font-weight:400;color:var(--muted)}.df-dhtag{display:inline-block;vertical-align:middle;font-size:13px;font-weight:800;padding:3px 8px;border-radius:6px;margin-right:4px}.df-dhtag-drop{background:#ffedd5;color:#9a3412}.df-dhtag-hook{background:#dbeafe;color:#1e3a8a}.ft-dh{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.03em;padding:2px 7px;border-radius:5px}.ft-dh-drop{background:#ffedd5;color:#9a3412}.ft-dh-hook{background:#dbeafe;color:#1e3a8a}.ft-dh-none{background:#f3f4f6;color:#6b7280}.ft .ft-dh-days{display:inline-flex;gap:4px}.ft-me{font-size:13px;color:var(--ft-ink-2,#374151);white-space:nowrap}.ft-me,.ft-who{font-weight:600}.ft-who{display:inline-block;padding:3px 8px;border-radius:6px;background:#f3f4f6;font-size:12.5px}.ft .ft-delay,.ft-delay{display:inline-flex;align-items:center;gap:6px;width:auto;margin:0;padding:2px 9px;border-radius:999px;font-size:11.5px;font-weight:650;line-height:1.5;cursor:pointer;white-space:nowrap;box-shadow:none;text-transform:none;letter-spacing:0}.ft .ft-delay-ok,.ft-delay-ok{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.ft .ft-delay-pending,.ft-delay-pending{background:#fff7ed;color:#9a3412;border:1px dashed #fdba74}.ft .ft-delay-no,.ft-delay-no{background:#f3f4f6;color:#6b7280;border:1px solid #e5e7eb}.ft .ft-delay:hover,.ft-delay:hover{filter:brightness(.97)}.ft-verdict{display:inline-flex;align-items:center;padding:1px 7px;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap}.ft-verdict-ok{background:#dcfce7;color:#166534}.ft-verdict-maybe{background:#e0f2fe;color:#075985}.ft-verdict-bad{background:#fee2e2;color:#991b1b}.ft-verdict-none{background:#f3f4f6;color:#4b5563}.ft-evi{display:flex;flex-direction:column;gap:5px;padding:10px 12px;border:1px solid #e5e7eb;border-radius:10px;background:#fafafa;font-size:13px}.ft-evi-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ft-evi-head,.ft-evi-verdict{font-weight:600}.ft-evi-line{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:baseline}.ft-evi-wet{color:#1d4ed8;font-weight:650}.ft-evi-dry{color:#6b7280}.ft-strip-delay{flex-basis:100%;padding:4px 0 2px}.ft-strip-row.ft-strip-row-delay{flex-wrap:wrap}.ft .ft-miss-row .ft-delay{margin-left:4px}.ft .ft-icon-btn.ft-delay-on{background:#fef3c7;color:#92400e}.ft .ft-miss-row{grid-template-columns:minmax(260px,1.4fr) 60px minmax(120px,.8fr) 120px 70px 180px;min-width:850px}