:root{--ink:#000;--ink2:#000;--ink3:#000;--line:#D8DEE6;--soft:#E9EEF2;--canvas:#EFF3F6;--white:#fff;--navy:#1B4A72;--navy-dk:#123A5C;--navy-d:#123A5C;--ochre:#96570A;--ochre-bg:#FCF2E0;--green:#186B3C;--green-bg:#E3F3E9;--red:#A32820;--red-bg:#FBEAE8;--amber:#8F5D07;--amber-bg:#FCF1DC;--blue:#1B4A72;--blue-bg:#E8F0F7;--sans:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;--serif:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;--mono:ui-monospace,Consolas,monospace;--shadow-sm:0 1px 2px rgba(18,44,71,.06);--shadow-md:0 4px 16px rgba(18,44,71,.08);--shadow-lg:0 10px 30px rgba(18,44,71,.14)}*{box-sizing:border-box}body{margin:0;font-family:var(--sans);background:var(--canvas);color:var(--ink);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}.top{position:sticky;top:0;z-index:30;background:linear-gradient(120deg,#123a5c,#1b4a72 55%,#215a87);color:#fff;border-bottom:1px solid rgba(255,255,255,.18);box-shadow:var(--shadow-md);display:flex;align-items:center;gap:16px;padding:13px 24px;flex-wrap:wrap}.header-link{border:1px solid rgba(255,255,255,.22);background:#ffffff1a;color:#fff;padding:8px 12px;border-radius:4px;cursor:pointer}.mark{width:42px;height:42px;background:linear-gradient(145deg,var(--ochre),#B8720F);border:1px solid rgba(255,255,255,.28);display:grid;place-items:center;font-family:var(--mono);font-size:12px;font-weight:700;border-radius:8px;box-shadow:var(--shadow-sm);letter-spacing:.03em}.tname strong{display:block;font-size:17px;font-family:var(--serif);letter-spacing:.01em}.tname span{display:block;font-size:12px;opacity:.75}.tspace{flex:1}.who{display:flex;align-items:center;gap:10px;font-size:13px}.who{background:#ffffff14;padding:6px 12px 6px 6px;border-radius:30px;border:1px solid rgba(255,255,255,.22)}.who i{width:32px;height:32px;border-radius:50%;background:#ffffff38;display:grid;place-items:center;font-style:normal;font-weight:700;font-size:12.5px}.who em{font-style:normal;display:block;opacity:.75;font-size:11.5px}.rolesel{background:#ffffff1f;border:1px solid rgba(255,255,255,.22);color:#fff;padding:8px 10px;border-radius:4px;font-size:13px}.rolesel option{color:#152634}.helpb{background:#ffffff1f;border:1px solid rgba(255,255,255,.22);color:#fff;padding:8px 14px;border-radius:4px;cursor:pointer;font-size:13px}.helpb.on{background:var(--ochre);border-color:#ffffff47}.shell{display:flex;min-height:calc(100vh - 68px)}.side{width:250px;flex:none;background:#fff;border-right:1px solid var(--line);padding:12px 0 40px;position:sticky;top:68px;height:calc(100vh - 68px);overflow:auto}.nav{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:none;border:0;border-left:4px solid transparent;padding:13px 18px;cursor:pointer;color:var(--ink);font-size:14.5px}.nav:hover{background:var(--canvas)}.nav.on{background:linear-gradient(90deg,var(--blue-bg),#EDF4FA);border-left-color:var(--line);color:var(--navy);font-weight:600;box-shadow:inset 0 0 0 1px #1b4a720d}.nav b{width:26px;height:26px;flex:none;border-radius:50%;background:var(--soft);display:grid;place-items:center;font-size:12px;font-family:var(--mono);color:var(--ink);font-weight:600}.nav.on b{background:linear-gradient(160deg,#1b4a72,#123a5c);color:#fff}.sfoot{margin:20px 18px 0;padding-top:14px;border-top:1px solid var(--line);font-size:12.5px;color:var(--ink)}.sfoot button{background:none;border:0;color:var(--navy);text-decoration:underline;cursor:pointer;padding:0;font-size:12.5px}.main{flex:1;min-width:0;padding:0 0 70px}.head{padding:22px 28px 18px;border-bottom:1px solid var(--line);background:#fff}.head h1{margin:0;font-size:25px;font-weight:700;letter-spacing:-.01em;font-family:var(--serif);color:#0f2438}.head .mr{color:var(--ink);font-size:13.5px;margin:2px 0 0}.head p{margin:8px 0 0;color:var(--ink);font-size:14.5px;max-width:75ch}.wrap{padding:22px 28px;max-width:1180px}.b{border:1px solid var(--line);background:#fff;padding:11px 20px;border-radius:6px;cursor:pointer;font-size:14.5px;color:var(--ink);font-weight:500;transition:transform .1s,box-shadow .15s}.b:hover{border-color:var(--line)}.b.p{background:linear-gradient(160deg,#1b4a72,#153c5e);border-color:var(--line);color:#fff;box-shadow:var(--shadow-sm)}.b.g{background:linear-gradient(160deg,#1c7a44,var(--green));border-color:var(--line);color:#fff;box-shadow:var(--shadow-sm)}form.card>.foot>.b.g[type=submit]{background:linear-gradient(160deg,#1b4a72,#153c5e);color:#fff;box-shadow:var(--shadow-sm)}.b.d{border-color:var(--line);color:var(--red)}.b.s{padding:6px 13px;font-size:13px}.role-tab-group{margin-bottom:18px}.role-tab-group-title{font-size:13px;font-weight:700;color:var(--navy);margin:0 0 8px}.role-tab-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.role-tab-item{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:6px;background:#fff;cursor:pointer;font-size:14px;font-weight:500}.role-tab-item input{position:absolute;opacity:0;pointer-events:none}.role-tab-item.on{background:var(--blue-bg);border-color:var(--line);color:var(--navy)}.role-tab-item.locked{opacity:.85;cursor:default}.role-tab-item small{margin-left:auto;font-size:11px;color:var(--ink);font-weight:400;opacity:.7}.b:disabled{opacity:.45;cursor:not-allowed}.row-b{display:flex;gap:10px;flex-wrap:wrap}.card{background:#fff;border:1px solid var(--line);border-radius:9px;margin-bottom:20px;overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow .18s}.card>h3{margin:0;padding:16px 20px;border-bottom:1px solid var(--line);font-size:16px;font-weight:600;letter-spacing:.005em;display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;background:linear-gradient(180deg,#fbfcfd,#fff)}.card>h3 small{font-weight:400;color:var(--ink);font-size:13px}.body{padding:20px}.foot{padding:15px 20px;border-top:1px solid var(--line);background:#fafcfd;display:flex;gap:10px;justify-content:space-between;flex-wrap:wrap}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin-bottom:24px}.tile{background:#fff;border:1px solid var(--line);border-radius:10px;padding:20px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:6px;box-shadow:var(--shadow-sm);transition:transform .15s,box-shadow .15s,border-color .15s}.tile:hover{border-color:var(--line);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.tile u{width:44px;height:44px;border-radius:10px;background:linear-gradient(145deg,var(--blue-bg),#DCE9F5);color:var(--navy);display:grid;place-items:center;font-size:20px;text-decoration:none;margin-bottom:4px;box-shadow:inset 0 0 0 1px #1b4a7214}.tile strong{font-size:17px;font-weight:600}.tile span{color:var(--ink);font-size:13.5px}.tile em{font-style:normal;margin-top:6px;font-size:13px;color:var(--navy);font-weight:600}.nums{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin-bottom:22px}.n{background:#fff;border:1px solid var(--line);border-radius:6px;padding:16px 18px}.n span{display:block;font-size:13.5px;color:var(--ink)}.n strong{display:block;font-family:var(--mono);font-size:28px;font-weight:600;margin-top:3px}.n.r strong{color:var(--red)}.n.g strong{color:var(--green)}.steps{display:flex;background:#fff;border:1px solid var(--line);border-radius:6px;margin-bottom:20px;overflow:hidden;flex-wrap:wrap}.st{flex:1;min-width:150px;padding:14px 18px;border-right:1px solid var(--line);display:flex;gap:11px;align-items:center;font-size:14px;color:var(--ink)}.st:last-child{border-right:0}.st b{width:28px;height:28px;flex:none;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;font-size:13px;font-family:var(--mono)}.st.done{color:var(--green)}.st.done b{background:var(--green);border-color:var(--line);color:#fff}.st.now{color:var(--navy);font-weight:600;background:var(--blue-bg)}.st.now b{background:var(--navy);border-color:var(--line);color:#fff}.grid{display:grid;gap:14px 16px;padding:16px}.g1{grid-template-columns:1fr}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.sp2{grid-column:span 2}.sp3{grid-column:span 3}.f{display:flex;flex-direction:column;gap:5px;min-width:0}.f>label{font-size:13.5px;font-weight:600}.f>label i{color:var(--red)!important;font-style:normal}.f>label u{text-decoration:none;color:var(--ink);font-weight:400;font-size:12.5px;display:block}.ctl{border:1px solid var(--line);background:#fff;border-radius:5px;padding:7px 9px;font-size:13px;width:100%;min-height:34px}.ctl:focus{outline:2px solid #9FC2E0;outline-offset:0;border-color:var(--line)}.ctl.ro{background:var(--soft);color:var(--ink);font-family:var(--mono);font-size:12.5px}textarea.ctl{min-height:64px;resize:vertical}.ctl.compact{min-height:34px;padding:7px 9px;font-size:13px}.compact-form-grid{gap:14px 18px}.compact-pick{gap:8px}.compact-pick label{padding:8px 10px}.compact-drop{padding:12px 14px}.compact-drop b{font-size:14px}.tip{font-size:13px;color:var(--ink)}.pick{display:flex;gap:8px;flex-wrap:nowrap}.pick label{flex:1;min-width:0;border:1px solid var(--line);border-radius:5px;padding:8px 10px;display:flex;gap:8px;align-items:center;cursor:pointer;font-size:13px;background:#fff;white-space:nowrap}.pick label:has(input:checked){border-color:var(--line);background:var(--blue-bg);font-weight:600}.pick label span{display:block;font-weight:400;font-size:13px;color:var(--ink)}.checks{display:flex;gap:10px 22px;flex-wrap:wrap;font-size:14.5px}.checks label{display:flex;gap:8px;align-items:center}.drop{border:2px dashed var(--line);border-radius:6px;padding:14px;text-align:center;background:#fafcfd}.drop b{display:block;color:var(--navy);font-size:15px}.drop span{font-size:13px;color:var(--ink)}.file-preview{margin-top:10px;border:1px solid var(--line);border-radius:6px;background:#fff;overflow:hidden}.file-preview-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line);background:var(--soft)}.file-preview-head strong{font-size:13.5px}.file-preview-img{display:block;width:100%;max-height:280px;object-fit:contain;background:#f4f7f9}.file-preview-pdf{display:block;width:100%;height:280px;border:0;background:#f4f7f9}.file-preview-name{display:block;padding:8px 12px;font-size:12.5px;color:var(--ink);word-break:break-all}.fh{display:none;background:var(--ochre-bg);border-left:3px solid var(--line);padding:8px 11px;font-size:13px;color:#6b3e05;border-radius:3px}body.help .fh{display:block}table{width:100%;border-collapse:collapse;font-size:14.5px;min-width:640px}.scroll{overflow-x:auto}th{text-align:left;font-size:13px;color:var(--ink);font-weight:600;padding:10px 14px;background:#f5f8fa;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:10px 14px;border-bottom:1px solid var(--line)}tbody tr:hover{background:#fafcfd}.rent-status-card th,.rent-status-card td{padding-top:9px;padding-bottom:9px}.rent-status-card td{font-size:13.5px}.code{font-family:var(--mono);font-size:13.5px;color:var(--navy);font-weight:600}.num{font-family:var(--mono);text-align:right}.msg.info~.card .num{font-family:var(--sans);font-size:14px;font-weight:500;white-space:nowrap}.sub{display:block;font-size:13px;color:var(--ink)}.t{display:inline-block;padding:4px 12px;border-radius:20px;font-size:13px;font-weight:600}.t.g{background:var(--green-bg);color:var(--green)}.t.b{background:var(--blue-bg);color:var(--blue)}.t.a{background:var(--amber-bg);color:var(--amber)}.t.r{background:var(--red-bg);color:var(--red)}.t.n{background:var(--soft);color:var(--ink)}.msg{border-radius:6px;padding:16px 36px 16px 18px;margin-bottom:20px;font-size:14.5px;display:flex;gap:14px;align-items:flex-start;position:relative}.msg u{font-size:20px;text-decoration:none;line-height:1.2}.msg b{display:block;margin-bottom:3px;font-size:15.5px}.msg.ok{background:var(--green-bg);border:1px solid var(--line);color:#0f4e2a}.msg.warn{background:var(--amber-bg);border:1px solid var(--line);color:#6b4406}.msg.info{background:var(--blue-bg);border:1px solid var(--line);color:#123a5c}.mode{display:flex;gap:0;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#fff;margin-bottom:20px;flex-wrap:wrap}.mode button{flex:1;min-width:220px;background:#fff;border:0;border-right:1px solid var(--line);padding:16px 18px;text-align:left;cursor:pointer}.mode button:last-child{border-right:0}.mode button.on{background:var(--blue-bg)}.mode strong{display:flex;align-items:center;gap:9px;font-size:15px}.mode strong i{width:11px;height:11px;border-radius:50%;background:var(--line);font-style:normal;flex:none}.mode button.on strong i{background:var(--green)}.mode button.on.off strong i{background:var(--amber)}.mode span{display:block;font-size:13px;color:var(--ink);margin-top:3px}.sum div{display:flex;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px dashed var(--line);font-size:14.5px}.sum div:last-child{border-bottom:0;border-top:1px solid var(--line);font-weight:600;font-size:17px;padding-top:14px}.sum span:first-child{flex:none;color:var(--ink)}.sum span:last-child{font-family:var(--mono);text-align:right}.cols{display:grid;gap:20px}.c21{grid-template-columns:2fr 1fr}.c11{grid-template-columns:1fr 1fr}.vacate-workflow{margin-bottom:20px}.vacate-steps{display:flex;background:#fff;border:1px solid var(--line);border-radius:6px;margin-bottom:16px;overflow:hidden}.vacate-step{flex:1;min-width:140px;padding:12px 14px;border-right:1px solid var(--line);display:flex;gap:9px;align-items:center;font-size:13px;color:#687789}.vacate-step:last-child{border-right:0}.vacate-step b{width:22px;height:22px;flex:none;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:11px;font-family:var(--mono);font-weight:500}.vacate-step.done{color:var(--green)}.vacate-step.done b{background:var(--green);color:#fff;border-color:var(--green)}.vacate-step.current{background:var(--blue-bg);color:var(--navy);font-weight:600}.vacate-step.current b{background:var(--navy);color:#fff;border-color:var(--navy)}.vacate-layout{display:grid;grid-template-columns:1fr;gap:16px;align-items:start;width:100%}.vacate-inspection{margin-bottom:0;width:100%;max-width:none}.vacate-inspection .grid{padding:16px 20px}.vacate-inspection .pick{height:100%}.vacate-inspection .pick label{padding:9px 12px}.condition-pick{gap:9px}.condition-pick label{align-items:flex-start!important;min-height:52px}.condition-pick label span{font-weight:500}.condition-pick label small{display:block;color:#718095;font-size:11px;font-weight:400;margin-top:2px}.vacate-photo-note{border:1px dashed #C7D3DF;border-radius:5px;padding:17px;text-align:center;background:#fafcfd;color:var(--navy);font-size:12px}.vacate-photo-note span{display:block;color:#718095;font-size:11px;margin-top:2px}.vacate-photo-note{display:block;cursor:pointer}.vacate-photo-note input{display:none}.vacate-photo-list{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.vacate-photo-list span{padding:3px 7px;border:1px solid var(--line);border-radius:4px;background:var(--soft);color:#687789;font-size:11px}.vacate-summary{margin-bottom:0}.vacate-summary h3{font-size:15px}.vacate-summary .sum{padding:14px 16px}.vacate-summary .sum div{font-size:13px;padding:10px 0}.vacate-summary .sum div:last-child{font-size:14px;padding-top:13px}.vacate-warning{margin:0 16px 16px;padding:12px;background:var(--amber-bg);border:1px solid #E8C986;border-radius:5px;color:#754a08;font-size:12px}.vacate-warning b{display:block;margin-bottom:5px}.vacate-warning span{display:block;padding-left:24px}.vacate-summary>.b{display:block;margin:0 16px 16px;width:calc(100% - 32px);font-size:12px}.vacate-empty{background:#fff;border:1px solid var(--line);border-radius:7px;padding:34px;text-align:center;color:#687789}.vacate-empty h3{margin:0 0 6px;color:#0f2438;font-size:17px}.vacate-empty p{margin:0;font-size:13px}.vacate-filter{max-width:360px;margin-bottom:16px}.vacate-filter .f{margin:0}@media (max-width:900px){.vacate-layout{grid-template-columns:1fr}.vacate-summary{order:2}}@media (max-width:680px){.vacate-steps{flex-wrap:wrap}.vacate-step{min-width:50%}.vacate-step:nth-child(2){border-right:0}.vacate-step:nth-child(3){border-top:1px solid var(--line)}.vacate-inspection .g2{grid-template-columns:1fr}.vacate-inspection .span2{grid-column:span 1}.condition-pick{flex-wrap:wrap}.condition-pick label{min-width:100%}}.t.mini{padding:2px 8px;font-size:10.5px;font-weight:700;font-family:var(--mono);letter-spacing:.02em}.t.o{background:var(--ochre-bg);color:var(--ochre)}.tierbadge{margin-top:4px}.ladder{border:1px solid var(--line);border-radius:9px;background:linear-gradient(180deg,#fbfdfe,#f5f9fb);padding:18px 20px 14px;margin:14px 0;box-shadow:var(--shadow-sm)}.ladder-title{display:flex;justify-content:space-between;gap:10px;font-size:12.5px;color:var(--ink);margin-bottom:12px;flex-wrap:wrap}.lrow{display:flex;align-items:center;gap:12px;padding:4px 0}.lrow .llabel{width:186px;flex:none;font-size:12.5px;color:var(--ink);text-align:right}.lrow.now .llabel{color:var(--navy);font-weight:700}.ltrack{flex:1;position:relative;height:20px;background:var(--soft);border-radius:4px;min-width:80px}.lseg{position:absolute;top:0;bottom:0;border-radius:4px;background:var(--line);transition:background .15s}.lrow.now .lseg{background:linear-gradient(90deg,#1b4a72,#2a6294);box-shadow:0 0 0 3px var(--blue-bg),var(--shadow-sm)}.lseg.open{border-top-right-radius:2px;border-bottom-right-radius:2px}.lseg.open:after{content:"";position:absolute;right:-7px;top:50%;transform:translateY(-50%);width:0;height:0;border-left:7px solid var(--line);border-top:5px solid transparent;border-bottom:5px solid transparent}.lrow.now .lseg.open:after{border-left-color:var(--line)}.lval{width:132px;flex:none;font-family:var(--mono);font-size:11.5px;color:var(--ink)}.lrow.now .lval{color:var(--navy);font-weight:700}.laxis{display:flex;justify-content:space-between;font-family:var(--mono);font-size:10.5px;color:var(--ink);margin:8px 0 0;padding-left:198px}@media (max-width:760px){.lrow{flex-wrap:wrap}.llabel{width:100%;text-align:left;font-weight:600}.lval{width:auto;margin-left:auto}.laxis{display:none}}@media (max-width:1000px){.c21,.c11{grid-template-columns:1fr}.g3{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.side{display:none}.g2,.g3{grid-template-columns:1fr}.sp2,.sp3{grid-column:span 1}.wrap,.head{padding-left:16px;padding-right:16px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.login-page{display:grid;place-items:center;min-height:calc(100vh - 68px);padding:20px}.login-box{width:100%;max-width:400px;padding:28px;display:flex;flex-direction:column;gap:14px}.login-box h1{font-size:20px;margin:0;font-family:var(--serif)}.demo-logins{display:flex;flex-wrap:wrap;gap:6px}.btn{border:1px solid var(--line);background:#fff;padding:11px 20px;border-radius:6px;cursor:pointer;font-size:14.5px;color:var(--ink);font-weight:500}.btn.primary,.b.p{background:linear-gradient(160deg,#1b4a72,#153c5e);border-color:var(--line);color:#fff}.btn.ok,.b.ok{background:linear-gradient(160deg,#1c7a44,var(--green));border-color:var(--line);color:#fff}.btn.danger,.b.danger{background:linear-gradient(160deg,#b42318,#8f1d14);border-color:var(--line);color:#fff}.btn.small{padding:6px 13px;font-size:13px}.pw-wrap{position:relative;display:flex;align-items:center;width:100%}.pw-wrap .ctl,.pw-wrap input{width:100%;padding-right:68px}.pw-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--navy);font-size:12.5px;font-weight:600;cursor:pointer;padding:6px 8px;border-radius:4px}.pw-toggle:hover{background:var(--soft)}.msg-close{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:inherit;font-size:22px;line-height:1;cursor:pointer;width:28px;height:28px;display:grid;place-items:center;border-radius:4px;opacity:.75}.msg-close:hover{opacity:1;background:#0000000f}.modal-x{flex:none;width:30px;height:30px;border:0;border-radius:6px;background:transparent;color:var(--ink);font-size:24px;line-height:1;cursor:pointer;display:grid;place-items:center;padding:0}.modal-x:hover{background:var(--soft);color:var(--ink)}.user-modal-head{display:flex;align-items:center;justify-content:space-between;gap:10px;position:sticky;top:0;z-index:1;margin:0 -16px 14px;padding:12px 16px 10px;border-bottom:1px solid var(--line);background:#fff}.user-modal-head h3{margin:0;color:#0f2438;font-family:var(--serif);font-size:17px;letter-spacing:0;font-weight:600}.field-wrap{display:flex;flex-direction:column;gap:6px}.field-label-row{display:flex;align-items:center;gap:6px}.req-mark{color:#d62b1f;font-weight:700}.input-error{border-color:var(--red)!important;box-shadow:0 0 0 2px #a011111f!important;background:#fff7f7!important}.field-error{display:block;margin-top:4px;padding:6px 10px;border-left:3px solid var(--red);border-radius:4px;background:var(--red-bg);color:var(--red);font-size:12px;font-weight:600}.btn:disabled{opacity:.45;cursor:not-allowed}.table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:6px;margin-top:12px}.compact-table{font-size:12.5px}.compact-table th,.compact-table td{padding:8px 10px}.compact-table td{line-height:1.3}.msg.err{background:var(--red-bg);border:1px solid var(--line);color:var(--red)}.pad{padding:20px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.span2{grid-column:span 2}.muted{color:var(--ink)}.tag{display:inline-block;padding:4px 12px;border-radius:20px;font-size:13px;font-weight:600;background:var(--blue-bg);color:var(--blue)}.tag.warn{background:var(--amber-bg);color:var(--amber)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:16px 0}.stat{background:#fff;border:1px solid var(--line);border-radius:6px;padding:14px}.stat span{display:block;font-size:13px;color:var(--ink)}.stat strong{font-size:26px;font-family:var(--mono)}.rows div{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px dashed var(--line)}.who-chip{display:flex;align-items:center;gap:10px;font-size:13px;background:#ffffff14;padding:6px 12px 6px 6px;border-radius:30px;border:1px solid var(--line);color:#fff;cursor:pointer}.who-chip i{width:32px;height:32px;border-radius:50%;background:#ffffff38;display:grid;place-items:center;font-style:normal;font-weight:700;font-size:12.5px}.pop{position:absolute;top:calc(100% + 8px);right:0;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:6px;z-index:40;min-width:180px;box-shadow:var(--shadow-md)}.rent-modal-open .card.pad.grid2{position:fixed;z-index:60;top:50%;left:50%;width:min(560px,calc(100vw - 28px));max-height:calc(100vh - 40px);overflow:auto;margin:0;padding:14px 16px 16px;transform:translate(-50%,-50%);box-shadow:0 0 0 100vmax #0f24387a,var(--shadow-lg)}.rent-modal-open .card.pad.grid2 .grid2{column-gap:14px;row-gap:10px}.rent-modal-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 2px}.rent-modal-head h3{margin:0;flex:1;font-size:16px}.rent-modal-close{flex:none;width:30px;height:30px;border:0;border-radius:6px;background:transparent;color:var(--ink);font-size:24px;line-height:1;cursor:pointer;display:grid;place-items:center;padding:0}.rent-modal-close:hover{background:var(--soft);color:var(--ink)}.transfer-order-preview{margin-top:8px;display:flex;flex-direction:column;gap:8px;align-items:flex-start}.transfer-order-name{font-size:13px;font-weight:600;color:var(--navy);word-break:break-all;padding:8px 10px;border:1px solid var(--line);border-radius:5px;background:#f7fbff;max-width:100%}.transfer-order-thumb{max-width:min(360px,100%);max-height:220px;border:1px solid var(--line);border-radius:6px;object-fit:contain;background:#fff}.rent-modal-open .card.pad.grid2 label i{color:var(--red)!important;font-style:normal;font-weight:700}.rent-modal-open .card.pad.grid2 .msg{margin:0 0 6px}.rent-modal-open .card.pad.grid2 .field-error{display:block;color:var(--red);font-size:11.5px;font-weight:500;margin-top:2px}.rent-modal-open .card.pad.grid2 input.input-error{border-color:var(--red)!important;background:#fff5f5}.user-login-actions{display:flex;gap:8px;margin:0 0 10px;flex-wrap:nowrap;align-items:center}.user-login-actions .b{padding:7px 12px;font-size:13px;min-height:34px;flex:none;white-space:nowrap}.login-type-tabs{display:flex;gap:0;margin:0;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#fff;flex:none}.login-type-tab{border:0;background:#fff;padding:7px 12px;font-size:13px;font-weight:600;color:#687789;cursor:pointer;border-right:1px solid var(--line);min-height:34px;white-space:nowrap}.login-type-tab:last-child{border-right:0}.login-type-tab.on{background:var(--blue-bg);color:var(--navy)}.login-filter{width:160px;min-height:42px}.login-search-wrap{min-width:160px;flex:1;max-width:260px}.login-search{min-height:34px;font-size:13px;width:100%}.login-filter-wrap{width:130px;flex:none}.user-modal{position:fixed;z-index:60;top:50%;left:50%;width:min(520px,calc(100vw - 28px));max-height:calc(100vh - 40px);overflow:auto;margin:0;transform:translate(-50%,-50%);background:#fff;border:1px solid var(--line);border-top:3px solid var(--navy);border-radius:8px;padding:0 16px 14px;box-shadow:0 0 0 100vmax #0a182466,0 18px 45px #0a18242e}.user-modal.grid2{gap:10px 14px}.user-modal>label{display:flex;flex-direction:column;gap:4px;font-size:12.5px;font-weight:600;color:#000}.user-modal>label input,.user-modal>label select,.user-modal .field-wrap input,.user-modal .pw-wrap input{width:100%;min-height:34px;border:1px solid var(--line);border-radius:5px;padding:6px 8px;background:#fbfcfd;font-size:13px}.user-modal>label input.ro{background:#e7edf2;color:var(--ink);font-family:var(--mono);cursor:not-allowed}.user-modal>label input:focus,.user-modal>label select:focus,.user-modal .field-wrap input:focus{outline:2px solid #C5DDF0;border-color:var(--line);background:#fff}.user-modal>label input.ro:focus{background:#e7edf2;outline:none}.user-modal .field-wrap{display:flex;flex-direction:column;gap:4px;font-size:12.5px;font-weight:600;color:#000}.user-modal .field-error{display:block;color:var(--red);font-size:11.5px;font-weight:500;margin-top:2px}.user-modal input.input-error,.user-modal .pw-wrap input.input-error,.user-modal .ctl.input-error{border-color:var(--red)!important;background:#fff5f5}.user-modal .msg{margin:0 0 4px}.user-modal>.row-b{justify-content:flex-end;border-top:1px solid var(--line);padding-top:12px;margin-top:2px;gap:8px;align-items:center}.user-modal>.row-b .b,.user-modal>.row-b .btn{min-width:100px;min-height:32px}.user-modal>.edit-login-actions{justify-content:flex-end}.user-modal>.edit-login-actions .b.danger,.user-modal>.edit-login-actions .b.ok{margin-right:auto}.profile-page{max-width:900px}.profile-card{margin-bottom:16px}.profile-card>h3{padding:16px 20px;font-size:16px}.profile-grid{padding:20px;gap:18px 22px}.profile-card .ctl.ro{background:#e7edf2}.password-card{margin-top:20px}.reports-page{max-width:1100px}.report-picker{margin-bottom:18px}.report-picker>h3,.report-result>h3{padding:16px 20px}.report-picker .grid{padding:14px 16px;gap:12px 16px}.report-picker .foot{justify-content:flex-end}.report-result{margin-top:18px}.report-result .scroll{overflow-x:auto}.report-result table,.report-result .report-table{width:100%;min-width:720px;table-layout:fixed;font-size:12.5px;border-spacing:0 4px;border-collapse:separate}.report-result .report-table col:not(.sr){width:auto}.report-result .report-table col.sr{width:64px}.report-result th,.report-result td{padding:8px 12px;font-size:12.5px;line-height:1.4;text-align:center;vertical-align:middle;word-break:break-word}.report-result th{font-size:12px}.report-result th:first-child,.report-result td:first-child{text-align:center}.report-result tbody tr{height:34px}.card:has(.report-filter),.card:has(.block-filters){overflow:visible}.report-filter{position:relative;min-width:0;z-index:1}.report-filter:has(.filter-trigger.open){z-index:80}.filter-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left;cursor:pointer}.filter-trigger.open{border-color:var(--line);outline:3px solid #C5DDF0}.filter-options{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:90;display:flex;flex-direction:column;max-height:none;overflow:visible;padding:4px;background:#fff;border:1px solid var(--line);border-radius:5px;box-shadow:var(--shadow-lg)}.filter-options-list{max-height:200px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable}.filter-options:not(:has(.filter-options-list)){max-height:200px;overflow-y:auto}.filter-options button,.filter-options-list button{display:flex;align-items:center;gap:8px;width:100%;min-height:40px;border:0;background:#fff;text-align:left;padding:8px 10px;border-radius:3px;cursor:pointer;font-size:14px;line-height:1.35;color:var(--ink);flex:none}.filter-options button:hover,.filter-options button.selected,.filter-options-list button:hover,.filter-options-list button.selected{background:var(--blue-bg);color:var(--navy);font-weight:600}.filter-box{width:18px;height:18px;flex:none;border:1.5px solid var(--line);border-radius:3px;background:#fff;display:grid;place-items:center;font-size:11px;font-weight:700;line-height:1;color:#fff;box-sizing:border-box}.filter-box.on{background:var(--navy);border-color:var(--navy)}.pay-level-emphasis .filter-trigger{font-weight:700;color:var(--navy);border-color:var(--line)}.login-filter-wrap .report-filter{min-width:130px}.block-filters{grid-template-columns:minmax(90px,.65fr) minmax(180px,1.35fr) minmax(240px,1.8fr) minmax(110px,.8fr);align-items:end;gap:14px;padding:18px 20px;overflow:visible}.block-filters-nogroup{grid-template-columns:minmax(200px,1.3fr) minmax(180px,1.2fr) minmax(120px,.9fr) minmax(180px,1.1fr)}.quarter-open-strip{padding:12px 8px 4px;display:flex;flex-direction:column;gap:0;width:100%;margin-top:0;background:#f7fbff;border:1px solid var(--line);border-radius:6px}.quarter-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;padding:4px;align-items:stretch}.quarter-card{min-width:0;padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:8px;box-sizing:border-box}.quarter-code{font-weight:600;color:var(--ink);font-family:var(--mono);font-size:13px}.quarter-status{font-size:12px;font-weight:600;color:var(--ink);padding:2px 8px;border-radius:12px;background:var(--soft)}.quarter-status.st-vacant{background:var(--green-bg);color:var(--green)}.quarter-status.st-occupied{background:#dce8f5;color:#0f3a66}.quarter-status.st-reserved,.t.reserved{background:var(--red-bg);color:var(--red)}.quarter-detail-row td{padding:8px 18px 14px;border-top:0;background:transparent}.quarters-card,.quarters-scroll{overflow:visible}.quarters-table{table-layout:fixed;width:100%;min-width:720px}.quarters-table th,.quarters-table td{width:20%;vertical-align:middle;text-align:left;padding:14px 16px;word-break:break-word}.quarters-table th:last-child,.quarters-table td:last-child{text-align:center}.quarter-btn-open{background:linear-gradient(160deg,#1c7a44,var(--green));border-color:var(--line);color:#fff}.quarter-btn-close{background:linear-gradient(160deg,#b42318,#8f1d14);border-color:var(--line);color:#fff}.reserved-cell{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.info-tip{position:relative;display:inline-flex;align-items:center;outline:none;z-index:1}.info-tip-icon{width:20px;height:20px;border-radius:50%;border:1.5px solid var(--navy);background:var(--blue-bg);color:var(--navy);font-size:12px;font-weight:700;font-style:normal;display:grid;place-items:center;cursor:help;line-height:1;font-family:var(--sans);padding:0}.info-tip-pop{display:none;position:absolute;left:0;top:calc(100% + 8px);z-index:40;min-width:200px;max-width:280px;padding:10px 12px;background:#0f2438;color:#fff;border-radius:6px;box-shadow:var(--shadow-lg);font-size:12.5px;font-weight:500;line-height:1.4;white-space:normal;pointer-events:none}.info-tip-pop:before{content:"";position:absolute;bottom:100%;left:10px;border:6px solid transparent;border-bottom-color:#0f2438}.info-tip:hover{z-index:50}.info-tip:hover .info-tip-icon{background:var(--navy);color:#fff}.info-tip:hover .info-tip-pop,.info-tip-line{display:block}.info-tip-line+.info-tip-line{margin-top:4px;padding-top:4px;border-top:1px solid rgba(255,255,255,.2)}.filter-search{min-height:38px;margin-bottom:4px;flex:none}.filter-empty{display:block;padding:10px}.block-filters .tier-filter{grid-column:auto;max-width:none}.report-picker .grid,.block-filters{overflow:visible}@media (max-width:760px){.user-modal{width:calc(100vw - 20px);max-height:calc(100vh - 20px);padding-left:16px;padding-right:16px}.user-modal-head{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}.user-modal>.row-b{justify-content:stretch}.user-modal>.row-b>*{flex:1;min-width:0!important}}.change-picker{padding:0;margin-bottom:14px;overflow:visible}.change-picker-body{padding:16px 20px}.change-picker .f{display:flex;flex-direction:column;gap:6px}.change-picker .fh{display:block;margin-top:8px}.change-picker .req-picker-filters{margin-bottom:0}.change-status{display:flex;gap:10px;align-items:center;margin:0 0 12px;font-size:13px;color:var(--ink)}.change-steps{list-style:none;margin:0 0 16px;padding:0;display:flex;background:#fff;border:1px solid var(--line);border-radius:7px;overflow:hidden}.change-steps li{flex:1;padding:13px 14px;display:flex;align-items:center;gap:9px;border-right:1px solid var(--line);font-size:13px;color:var(--ink)}.change-steps li:last-child{border-right:0}.change-steps li b{width:22px;height:22px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:11px;flex:none}.change-steps li.done{color:var(--green)}.change-steps li.done b{background:var(--green);border-color:var(--line);color:#fff}.change-steps li.current{background:var(--blue-bg);color:var(--navy);font-weight:600}.change-steps li.current b{background:var(--navy);border-color:var(--line);color:#fff}.change-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.9fr);gap:16px;align-items:start}.change-details h3,.change-person h3{margin:0;padding:16px 20px;border-bottom:1px solid var(--line);font-size:15px}.change-details dl,.change-person dl{margin:0;padding:12px 16px}.change-details dl div,.change-person dl div{display:flex;justify-content:space-between;gap:18px;padding:10px 0;border-bottom:1px dashed var(--line)}.change-details dt,.change-person dt{color:var(--ink);font-size:13px}.change-details dd,.change-person dd{margin:0;text-align:right;font-family:var(--mono);font-size:13px;color:var(--ink);font-weight:600}.change-details .reason{border-top:1px solid var(--line);border-bottom:0;font-size:14px}.change-person{position:sticky;top:88px}.change-person .req-ladder{margin:0 20px 20px}.change-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;background:#0f24387a;display:grid;place-items:center;padding:16px}.change-modal-panel{width:min(520px,100%);max-height:calc(100vh - 32px);overflow:auto;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow-lg);padding:14px 16px}.change-modal-panel.change-ladder-panel{width:min(780px,100%)}.change-modal-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:8px}.change-modal-head h3{margin:0;font-size:16px}.change-modal-panel .ladder{margin-bottom:0}.change-form-page{max-width:900px}.change-form-steps{display:flex;background:#fff;border:1px solid var(--line);border-radius:7px;overflow:hidden;margin-bottom:16px}.change-form-steps>div{flex:1;padding:13px 14px;display:flex;align-items:center;gap:8px;border-right:1px solid var(--line);font-size:13px;color:var(--ink)}.change-form-steps>div:last-child{border-right:0}.change-form-steps b{width:22px;height:22px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:11px}.change-form-steps .done{background:var(--blue-bg);color:var(--navy);font-weight:600}.change-form-steps .done b{background:var(--navy);border-color:var(--line);color:#fff}.change-unit-actions{margin-top:16px}.change-decide-tabs{display:flex;gap:0;margin:12px 0 14px;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#fff}.change-decide-tab{flex:1;border:0;background:#fff;padding:10px 12px;font-size:13px;font-weight:600;color:#687789;cursor:pointer;border-right:1px solid var(--line)}.change-decide-tab:last-child{border-right:0}.change-decide-tab.on{background:var(--blue-bg);color:var(--navy)}.change-units-pane .scroll,.change-remarks-pane{margin-top:4px}.change-units-pane table tr.is-picked td{background:var(--blue-bg)}.change-remarks-pane textarea.ctl{min-height:120px;resize:vertical}.change-form-section{margin-bottom:14px}.change-form-section>h3{padding:14px 20px}.change-form-section .grid{padding:18px 20px;gap:16px 22px}.change-form-section label span{font-size:12px;color:var(--navy);font-weight:400}.change-form-section .pick label{font-weight:400}.change-form-section .pick label div{font-size:12px;color:var(--ink)}@media (max-width:760px){.change-picker .f{display:flex;flex-direction:column;align-items:stretch}.change-picker .fh{display:none}.change-steps{flex-wrap:wrap}.change-steps li{min-width:50%}.change-layout{grid-template-columns:1fr}.change-person{position:static}}.rent-modal-open .card.pad.grid2>p.span2{display:none}.rent-modal-open .card.pad.grid2>label.span2:has(input[type=file]){grid-column:span 1}.main .wrap>.card.rent-bulk-card .body{display:grid;grid-template-columns:1fr;gap:14px;padding:20px 22px 16px}.main .wrap>.card.rent-bulk-card .body>p{margin:0 0 2px}.main .wrap>.card.rent-bulk-card .drop{min-height:100px;padding:28px 16px;display:flex;flex-direction:column;justify-content:center}.main .wrap>.card.rent-bulk-card .msg{margin:0;padding:16px 18px}.main .wrap>.card.rent-bulk-card .body>.rent-bulk-actions{margin-top:2px;justify-content:flex-start;align-items:center;gap:10px;flex-wrap:nowrap}.main .wrap>.card.rent-bulk-card .body>.rent-bulk-actions .b{white-space:nowrap}.card.roles-card{overflow:visible}.card.roles-card .body{display:block;padding:20px}.roles-role-filter{max-width:320px;margin-bottom:16px;position:relative;z-index:5}@media (max-width:760px){.pick{flex-wrap:wrap}.pick label{white-space:normal}.rent-modal-open .card.pad.grid2{width:calc(100vw - 20px);max-height:calc(100vh - 20px)}}.user-pop{display:flex;flex-direction:column;padding:6px}.user-pop button{background:none;border:0;text-align:left;padding:10px 12px;cursor:pointer;border-radius:4px}.help-pop{padding:12px 14px;width:260px;font-size:13px}.who-item{position:relative}.req-page{display:flex;flex-direction:column;gap:0}.req-picker{margin-bottom:16px;overflow:visible}.req-picker-body{padding:16px 20px 8px}.req-picker-filters{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px;align-items:end}@media (max-width:760px){.req-picker-filters{grid-template-columns:1fr}}.filter-group{display:block;padding:8px 10px 4px;font-size:12px;font-weight:700;color:var(--ink);text-transform:uppercase;letter-spacing:.04em}.req-list-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line);flex-wrap:wrap}.req-list-head h3{margin:0;font-size:16px}.req-steps{list-style:none;margin:0 0 16px;padding:0;display:flex;gap:0;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;flex-wrap:wrap}.req-steps li{flex:1;min-width:120px;display:flex;align-items:center;gap:10px;padding:14px 16px;font-size:13.5px;color:var(--ink);border-right:1px solid var(--line)}.req-steps li:last-child{border-right:0}.req-steps li.done{color:var(--green)}.req-steps li.current{color:var(--navy);font-weight:600;background:var(--blue-bg)}.req-dot{width:26px;height:26px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;font-size:12px;font-family:var(--mono);flex:none}.req-steps li.done .req-dot{background:var(--green);border-color:var(--line);color:#fff}.req-steps li.current .req-dot{background:var(--navy);border-color:var(--line);color:#fff}.req-eligible{display:flex;gap:14px;align-items:flex-start;background:var(--green-bg);border:1px solid var(--line);color:#0f4e2a;border-radius:8px;padding:16px 18px;margin-bottom:18px}.req-eligible u{font-size:20px;text-decoration:none;line-height:1.2}.req-eligible strong{display:block;margin-bottom:4px;font-size:15.5px}.req-eligible p{margin:0;font-size:14.5px}.req-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.9fr);gap:18px;align-items:start}.req-main{min-width:0}.req-block{margin-bottom:16px}.req-block-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;padding:16px 20px 0;flex-wrap:wrap}.req-block-head h3{margin:0;padding:0;border:0;background:none;font-size:16px}.req-block-head span{font-size:13px;color:var(--ink)}.req-quarter-search-wrap{padding:14px 20px 0}.req-quarter-search{max-width:320px}.req-block>h3{margin:0;padding:16px 20px;border-bottom:1px solid var(--line);font-size:16px;font-weight:600;background:linear-gradient(180deg,#fbfcfd,#fff)}tr.is-picked{background:var(--blue-bg)}.req-q{margin:0 0 12px;font-weight:600}.req-q i{color:var(--red);font-style:normal}.req-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}.req-choice{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:8px;padding:14px 16px;cursor:pointer;background:#fff}.req-choice.on{border-color:var(--line);background:var(--blue-bg)}.req-choice input{position:absolute;opacity:0;pointer-events:none}.req-choice span{display:flex;flex-direction:column;gap:2px}.req-choice small{color:var(--ink);font-size:13px}.req-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.req-who{position:sticky;top:88px}.req-who h3{margin:0;padding:16px 20px;border-bottom:1px solid var(--line);font-size:16px;background:linear-gradient(180deg,#fbfcfd,#fff)}.req-who dl{margin:0;padding:8px 20px 16px}.req-who dl>div{display:grid;gap:2px;padding:10px 0;border-bottom:1px dashed var(--line)}.req-who dl>div:last-child{border-bottom:0}.req-who dt{font-size:12.5px;color:var(--ink)}.req-who dd{margin:0;font-size:14.5px;font-weight:600}.req-pref{margin:0 20px 14px;padding:12px 14px;background:var(--soft);border-radius:6px}.req-pref span{display:block;font-size:12.5px;color:var(--ink)}.req-pref strong{display:block;margin-top:2px;font-size:14.5px}.req-docs{display:flex;flex-direction:column;gap:8px;padding:0 20px 14px}.req-ladder{margin:0 20px 20px;background:none;border:0;color:var(--navy);text-decoration:underline;cursor:pointer;text-align:left;padding:0;font-size:14px}@media (max-width:1000px){.req-layout{grid-template-columns:1fr}.req-who{position:static}.req-fields{grid-template-columns:1fr}}@media (max-width:760px){.req-choices{grid-template-columns:1fr}}
