:root{--ui-zoom:1;--sidebar-w:clamp(210px,calc(18vw / var(--ui-zoom)),260px);--page-gutter:clamp(12px,calc(2.6vw / var(--ui-zoom)),38px);--ink:#172b25;--muted:#56655f;--green:#146b50;--green-dark:#0c513d;--mint:#e7f3ed;--line:#e4ebe6;--surface:#fff;--canvas:#ffffff;--orange:#d78748;--red:#b94949;--shadow:0 18px 48px rgba(20,54,40,.07);--font-dm-sans:var(--font-inter,Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif);--font-sans:var(--font-inter,Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif)}*{box-sizing:border-box}html{zoom:var(--ui-zoom)}body,html{margin:0;min-height:100%;font-family:var(--font-inter,var(--font-dm-sans,"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif));color:var(--ink);background:#ffffff}button,input,label,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.muted{color:var(--muted);line-height:1.65}.eyebrow{font-size:10px;line-height:1.4;letter-spacing:.16em;font-weight:700;color:#809088;margin:0 0 9px}.brand-mark{height:42px;width:42px;display:inline-grid;place-items:center;border-radius:14px;background:#d6ede1;color:var(--green);font-family:var(--font-manrope,Manrope,system-ui,sans-serif);font-size:23px;font-weight:800}.brand-mark.small{width:32px;height:32px;border-radius:10px;font-size:18px}.auth-layout{min-height:calc(100vh / var(--ui-zoom));display:grid;grid-template-columns:minmax(350px,.85fr) 1.15fr;background:#f8faf8}.auth-aside{position:relative;overflow:hidden;background:linear-gradient(145deg,#0d513d,#176c51 68%,#2a8261);padding:62px clamp(36px,calc(8vw / var(--ui-zoom)),128px);color:white;display:flex;flex-direction:column;justify-content:center}.auth-aside:after,.auth-aside:before{content:"";position:absolute;border:1px solid rgba(255,255,255,.12);border-radius:50%;width:540px;height:540px;right:-210px;bottom:-230px}.auth-aside:before{width:720px;height:720px;right:-300px;bottom:-315px}.auth-aside .brand-mark{background:rgba(255,255,255,.16);color:white;margin-bottom:70px}.auth-aside .eyebrow{color:#b0d9c5}.auth-aside h1{font:700 clamp(34px,calc(4vw / var(--ui-zoom)),54px)/1.12 var(--font-manrope,Manrope,system-ui,sans-serif);letter-spacing:-.045em;margin:0 0 18px}.auth-aside .muted{color:#c2ddcf;max-width:360px}.security-note{position:absolute;bottom:42px;display:flex;align-items:center;gap:10px;color:#d2e8dc;font-size:12px}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#39a878;box-shadow:0 0 0 4px rgba(57,168,120,.12)}.auth-card-wrap{display:grid;place-items:center;padding:36px}.auth-card{width:min(100%,420px);padding:46px 42px;background:#fff;border:1px solid #e8eee9;border-radius:22px;box-shadow:0 22px 60px rgba(20,54,40,.08)}.auth-card h2{font:700 30px var(--font-manrope,Manrope,system-ui,sans-serif);letter-spacing:-.04em;margin:0}.auth-card>.muted{margin:8px 0 28px;font-size:14px}.mobile-brand{display:none;align-items:center;gap:10px;font-weight:700;margin-bottom:35px}.stack-form{display:grid;gap:18px}.admin-form-grid label,.stack-form label{display:grid;gap:8px;font-size:12px;font-weight:700;color:#41524a}.admin-form-grid input,.admin-form-grid select,.inline-assignment input,.inline-assignment select,.search-input,.stack-form input{height:44px;width:100%;border:1px solid #dce5de;border-radius:10px;background:#fff;padding:0 13px;color:var(--ink);outline:none}.admin-form-grid input:focus,.admin-form-grid select:focus,.inline-assignment input:focus,.inline-assignment select:focus,.search-input:focus,.stack-form input:focus{border-color:#6cab8b;box-shadow:0 0 0 3px rgba(20,107,80,.1)}.button{border:1px solid transparent;border-radius:9px;padding:10px 15px;font-weight:700;font-size:12px;transition:.18s ease}.button:disabled{opacity:.55;cursor:not-allowed}.button.primary{color:white;background:var(--teal-button);box-shadow:0 6px 12px rgba(23,180,171,.2)}.button.primary:hover{background:var(--teal-button-hover);transform:translateY(-1px)}.button.full{height:46px;margin-top:3px;font-size:13px}.button.quiet{background:#fff;border-color:var(--line);color:#4e6057}.button.quiet:hover{background:#f5f8f6}.small-button{padding:8px 11px;font-size:11px}.form-error,.form-success{border-radius:9px;padding:11px 13px;font-size:12px;line-height:1.45}.form-error{color:#9c3434;background:#fff0ef;border:1px solid #f5d3d0}.form-success{color:#176345;background:#eaf7ef;border:1px solid #d4ecd9}.form-footnote{font-size:11px;color:#819089;line-height:1.6;margin:23px 0 0}.app-frame{min-height:calc(100vh / var(--ui-zoom));display:grid;background:#ffffff}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-w);background:#fbfdfb;border-right:1px solid #e7ede8;padding:25px 17px 17px;display:flex;flex-direction:column;z-index:5;overflow:hidden}.brand{display:flex;align-items:center;gap:10px;font-family:var(--font-manrope,Manrope,system-ui,sans-serif);font-size:13px;font-weight:800;letter-spacing:.04em;padding:0 7px 38px}.brand b{font-weight:500;color:#8a9991}.nav-label{padding:0 10px;margin-bottom:10px;font-size:9px;font-weight:800;letter-spacing:.15em;color:#9aa79f}.sidebar nav,.sidebar-nav-tree{display:grid;gap:5px}.sidebar-nav-tree{flex:1;overflow-y:auto;min-height:0;align-content:start}.nav-link{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:9px;font-size:12px;font-weight:600;color:#697a71}.nav-link:hover{background:#f2f7f3}.nav-link.active{background:#e7f3ed;color:#146b50;font-weight:700}.nav-icon{font-family:var(--font-manrope,Manrope,system-ui,sans-serif);font-size:17px;width:20px;text-align:center}.sidebar-bottom{margin-top:auto}.secure-card{display:flex;gap:11px;align-items:center;background:#f0f7f2;border:1px solid #e2efe5;border-radius:11px;padding:12px}.secure-card small,.secure-card strong{display:block}.secure-card strong{font-size:10px}.secure-card small{font-size:9px;color:var(--muted);margin-top:4px}.main-column{grid-column:2;min-width:0;overflow-x:clip}.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--page-gutter);background:rgba(255,255,255,.88);border-bottom:1px solid #e7ede8;position:sticky;top:0;z-index:4;backdrop-filter:blur(12px)}.crumb{font-size:10px;font-weight:700;letter-spacing:.08em;color:#8a9890}.crumb-sep{margin:0 11px;color:#c1cbc4}.crumb.current{color:#31473d}.profile-menu{display:flex;align-items:center;gap:10px}.avatar{width:33px;height:33px;border-radius:50%;display:grid;place-items:center;background:#e8f2eb;color:var(--green);font-weight:800;font-size:12px}.profile-copy span,.profile-copy strong{display:block}.profile-copy strong{font-size:11px}.profile-copy span{max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;color:var(--muted);margin-top:3px}.content{max-width:none;padding:34px var(--page-gutter) 60px;margin:0 auto;overflow-x:clip}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:27px}.page-heading h1{font:700 30px/1.2 var(--font-manrope,Manrope,system-ui,sans-serif);letter-spacing:-.045em;margin:0}.page-heading .muted{font-size:12px;margin:8px 0 0}.action-chip,.role-pill,.scope-chip,.status-pill,.subtle-tag{display:inline-flex;align-items:center;gap:7px;border-radius:20px;font-size:10px;font-weight:700;white-space:nowrap}.status-pill{padding:8px 11px;background:#edf7f0;color:#28724f}.status-pill .status-dot{width:6px;height:6px;box-shadow:none}.status-pill.paused{background:#fff4e8;color:#9b682e}.status-pill.paused .status-dot{background:#d89545}.status-pill.success{background:#edf7f0;color:#28724f}.subtle-tag{padding:7px 10px;background:#f1f5f2;color:#718078}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:31px}.metric-card{padding:18px 20px;background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 4px 12px rgba(34,65,48,.025)}.metric-label{font-size:9px;font-weight:800;letter-spacing:.11em;color:#829087}.metric-value{font:700 28px var(--font-manrope,Manrope,system-ui,sans-serif);margin:12px 0 4px;letter-spacing:-.05em}.metric-note{font-size:10px;color:#85928b}.section-block{margin-top:28px}.list-toolbar,.section-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px}.list-toolbar h2,.section-title h2{font:700 17px var(--font-manrope,Manrope,system-ui,sans-serif);letter-spacing:-.025em;margin:0}.list-toolbar .eyebrow,.section-title .eyebrow{margin-bottom:5px}.role-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.role-card{padding:17px;background:#fff;border:1px solid var(--line);border-radius:12px;min-height:180px;display:flex;flex-direction:column}.role-card-top{display:flex;align-items:center;justify-content:space-between}.role-icon{width:32px;height:32px;display:grid;place-items:center;background:#edf5ef;color:var(--green);border-radius:9px;font:700 14px var(--font-manrope,Manrope,system-ui,sans-serif)}.scope-chip{padding:5px 8px;background:#f2f5f3;color:#748178;font-size:9px}.role-card h3{font:700 13px var(--font-manrope,Manrope,system-ui,sans-serif);margin:13px 0 5px}.role-card p{font-size:10px;color:var(--muted);line-height:1.6;margin:0 0 12px}.role-card-footer{display:flex;justify-content:space-between;gap:8px;margin-top:auto;border-top:1px solid #edf1ee;padding-top:11px;color:#839087;font-size:9px}.active-label{color:#388261}.access-summary{display:flex;align-items:center;justify-content:space-between;padding:23px 25px;background:#fff;border:1px solid var(--line);border-radius:13px}.access-summary h2{font:700 16px var(--font-manrope,Manrope,system-ui,sans-serif);margin:0 0 7px}.access-summary .muted{font-size:11px;max-width:660px;margin:0}.summary-badge{height:61px;width:61px;flex:0 0 61px;border-radius:50%;display:grid;place-content:center;text-align:center;background:#eaf5ed;color:var(--green);font-size:8px;line-height:1.3;letter-spacing:.1em}.summary-badge b{font-size:10px}.admin-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:21px;box-shadow:0 4px 14px rgba(34,65,48,.025);margin-bottom:18px}.create-user-card{border-top:3px solid #3d9972}.admin-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 13px}.admin-form-grid label{font-size:10px}.admin-form-grid input,.admin-form-grid select{height:39px;font-size:11px}.span-2{grid-column:span 2}.form-actions{display:flex;align-items:center;justify-content:space-between;gap:15px}.tiny{font-size:10px}.page-alert{margin-bottom:14px}.list-toolbar{margin-bottom:17px}.list-toolbar h2{display:flex;align-items:center;gap:8px}.count-badge{display:inline-grid;place-items:center;min-width:23px;height:23px;padding:0 6px;border-radius:20px;background:#edf5ef;color:var(--green);font:700 10px DM Sans,sans-serif}.toolbar-actions{display:flex;align-items:center;gap:8px}.search-input{width:245px;height:37px;font-size:11px}.table-scroll{overflow-x:auto!important;-webkit-overflow-scrolling:touch;max-width:100%}.table-scroll .data-table{min-width:unset}.data-table{width:100%;border-collapse:collapse}.data-table th{text-align:left;font-size:12px;letter-spacing:.03em;color:#6b7f96;background:#f2f5f9;padding:11px 14px;border-top:1px solid #e8eef4;border-bottom:1px solid #e8eef4;font-weight:600;font-family:var(--font-dm-sans,"DM Sans",system-ui,sans-serif)}.data-table td{padding:13px 14px;border-bottom:1px solid #edf1ee;vertical-align:top;font-size:13px}.table-user{display:flex;align-items:center;gap:9px;min-width:120px}.table-user small,.table-user strong{display:block}.table-user strong{font-size:10px}.table-user small{font-size:9px;color:#85928b;margin-top:4px}.tiny-avatar{width:28px;height:28px;font-size:10px}.assignment-list{display:grid;gap:5px;min-width:0;overflow:hidden}.assignment-row{flex-wrap:nowrap;overflow:hidden;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.role-pill{padding:5px 8px;color:#23684c;background:#eaf5ed;font-size:9px}.assignment-row .scope-chip{font-size:8px}.text-button{border:0;background:none;font-size:9px;font-weight:700;padding:3px}.danger-text{color:#af4a4a}.danger-outline{background:#fff;border-color:#efd1ce;color:#a64a44}.danger-outline:hover{background:#fff3f2}.mini-button{padding:7px 9px;font-size:9px}.inline-add{margin-top:6px}.inline-add summary{cursor:pointer;color:#237355;font-size:9px;font-weight:700}.inline-assignment{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:8px;max-width:440px}.inline-assignment input,.inline-assignment select{height:31px;font-size:9px;padding:0 7px}.loading-state{padding:30px;text-align:center;color:var(--muted);font-size:11px}.empty-state{padding:34px;text-align:center;border:1px dashed #dce6de;border-radius:12px;background:#fcfdfc}.empty-state h3{font:700 13px var(--font-manrope,Manrope,system-ui,sans-serif);margin:8px 0 3px}.empty-state p{font-size:10px;color:var(--muted);margin:0}.empty-icon{font-size:23px;color:#80a891}.empty-state.compact{padding:22px}.role-admin-layout{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);align-items:start;gap:15px}.permission-card,.role-list-card{margin:0}.role-selector{display:grid;gap:5px}.role-option{display:flex;align-items:center;gap:10px;width:100%;padding:10px;border:1px solid transparent;border-radius:9px;background:#fff;text-align:left}.role-option:hover{background:#f8faf8}.role-option.selected{background:#eff7f1;border-color:#d9ebdf}.role-option>span:nth-child(2){flex:1;min-width:0}.role-option small,.role-option strong{display:block}.role-option strong{font-size:10px}.role-option small{font-size:8px;color:#87948d;margin-top:3px}.chevron{font-size:17px;color:#9ba89f}.permission-summary{display:flex;gap:10px;margin:17px 0;padding:12px;background:#f8faf8;border-radius:9px}.permission-summary>div{min-width:95px}.permission-summary span,.permission-summary strong{display:block}.permission-summary strong{font:700 18px var(--font-manrope,Manrope,system-ui,sans-serif)}.permission-summary span{font-size:8px;color:var(--muted);margin-top:2px}.permission-list-head,.permission-row{display:grid;grid-template-columns:1fr 110px 100px;gap:9px;align-items:center}.permission-list-head{padding:9px;background:#f8faf8;color:#89968e;font-size:8px;font-weight:800;letter-spacing:.09em}.permission-row{padding:10px 9px;border-bottom:1px solid #edf1ee;font-size:9px}.permission-row small,.permission-row strong{display:block}.permission-row strong{font-size:9px}.permission-row small{font-family:ui-monospace,monospace;font-size:8px;color:#829088;margin-top:4px}.permission-row>span{color:#65756c}.action-chip{padding:4px 7px;background:#f0f5f1;color:#5e7166;font-size:8px;justify-self:start}@media(min-width:1600px){:root{--ui-zoom:1.1}}@media(min-width:1920px){:root{--ui-zoom:1.25}}@media(min-width:2560px){:root{--ui-zoom:1.5}}@media(max-width:1050px){.content{padding:28px var(--page-gutter) 48px}.admin-form-grid,.role-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.auth-layout{grid-template-columns:1fr}.auth-aside{display:none}.auth-card-wrap{min-height:calc(100vh / var(--ui-zoom));padding:20px;background:radial-gradient(circle at 10% 5%,#e8f3eb,transparent 42%),#f7faf7}.auth-card{padding:30px 23px;border-radius:18px}.mobile-brand{display:flex}.app-frame{display:block;width:calc(100vw / var(--ui-zoom));max-width:calc(100vw / var(--ui-zoom));padding-bottom:65px}.sidebar,.sidebar.ct-theme,.sidebar.hd-theme,.sidebar.ov-theme,.sidebar.teal-theme,.sidebar.tk-theme{position:fixed;inset:auto 0 0;width:100%;height:61px;border:0;border-top:1px solid #e6ede7!important;padding:5px 8px;background:#ffffff!important;backdrop-filter:blur(12px);color:#475569!important}.sidebar.teal-theme .nav-link{color:#64748b!important}.sidebar.teal-theme .nav-link.active{background:#e7f3ed!important;color:#146b50!important}.brand,.nav-label,.sidebar-bottom{display:none}.sidebar nav{height:100%;width:100%;min-width:0;display:flex;justify-content:space-around;align-items:center;overflow:hidden}.nav-link{flex:1;min-width:0;justify-content:center;flex-direction:column;gap:2px;padding:6px 2px;font-size:7px}.nav-icon{font-size:15px}.main-column{display:block;min-width:0}.topbar,.topbar.modern-bar{height:58px!important;min-width:0;padding:0 10px!important;background:#122d53!important;border-bottom:1px solid #1c3d6e!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.topbar-search-box{display:none!important}.topbar .crumb,.topbar .crumb-sep,.topbar .profile-copy strong{color:#ffffff!important}.topbar .profile-copy span{color:#94a3b8!important}.topbar .avatar{background:#163666;color:#ffffff}.crumb{font-size:8px}.crumb-sep{margin:0 6px}.profile-menu{gap:5px;min-width:0}.profile-copy{display:none}.button.small-button{padding:7px;font-size:9px}.content{padding:25px var(--page-gutter) 96px;min-width:0;scroll-padding-bottom:96px}.page-heading{align-items:flex-start;flex-direction:column;margin-bottom:19px}.page-heading h1{font-size:25px}.metric-grid{gap:7px;margin-bottom:23px}.metric-card{padding:13px 10px}.metric-label{font-size:7px;letter-spacing:.06em}.metric-value{font-size:22px;margin:9px 0 3px}.metric-note{font-size:8px;line-height:1.4}.role-grid{grid-template-columns:1fr}.role-card{min-height:155px}.access-summary{padding:17px;gap:10px}.access-summary h2{font-size:13px}.access-summary .muted{font-size:9px}.summary-badge{height:49px;width:49px;flex-basis:49px;font-size:7px}.admin-card{padding:15px;margin-bottom:12px}.admin-form-grid{grid-template-columns:1fr;gap:11px}.span-2{grid-column:auto}.form-actions{align-items:flex-start;flex-direction:column}.form-actions .button{width:100%}.list-toolbar{align-items:flex-start;flex-direction:column}.toolbar-actions{width:100%}.search-input{flex:1;width:auto}.role-admin-layout{grid-template-columns:1fr}.permission-list-head,.permission-row{grid-template-columns:1fr 65px 70px;gap:5px}.permission-row{padding:9px 5px}.permission-card .section-title{align-items:flex-start}.assignment-list{min-width:0}.inline-assignment{max-width:390px}.status-pill{font-size:8px;padding:7px 8px}.users-table td:nth-child(3),.users-table td:nth-child(5),.users-table th:nth-child(3),.users-table th:nth-child(5){display:none}.users-table{table-layout:fixed!important;width:100%!important}.users-table td:first-child,.users-table th:first-child{width:130px}.users-table td:nth-child(2),.users-table th:nth-child(2){width:120px}.users-table td:nth-child(3),.users-table th:nth-child(3){width:80px}.users-table td:nth-child(4),.users-table th:nth-child(4){width:auto;min-width:140px}.users-table td:nth-child(5),.users-table th:nth-child(5){width:auto;min-width:120px}.users-table td:nth-child(6),.users-table th:nth-child(6){width:100px}.users-table td:nth-child(7),.users-table th:nth-child(7){width:110px;white-space:nowrap}}.role-create-toggle{display:flex;align-items:center;justify-content:space-between;gap:18px;border-left:3px solid var(--green)}.create-role-card h2,.role-create-toggle h2{font:700 15px var(--font-manrope,Manrope,system-ui,sans-serif);margin:0}.role-create-toggle .muted{font-size:10px;margin:6px 0 0}.create-role-card{border-top:2px solid #77b491}.role-editor-form{display:grid;gap:19px}.role-editor-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.role-editor-meta label{display:grid;gap:7px;font-size:10px;font-weight:700;color:#41524a}.role-description-input,.role-editor-meta input,.role-name-input{height:38px;border:1px solid #dce5de;border-radius:9px;padding:0 11px;font-size:11px;outline:none}.role-description{grid-column:span 2}.scope-editor{border:1px solid #e7ede8;border-radius:10px;padding:12px 13px;margin:0}.scope-editor legend{font-size:10px;font-weight:700;padding:0 5px}.scope-editor>div{display:flex;gap:15px;flex-wrap:wrap}.scope-editor label{display:flex;align-items:center;gap:6px;font-size:9px;color:#53635a}.permission-choice input,.scope-editor input{accent-color:var(--green)}.scope-editor small{display:block;margin-top:9px;font-size:8px;color:#829087}.permission-picker{border:1px solid #e7ede8;border-radius:10px;overflow:hidden}.permission-picker-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;background:#f9fbf9;border-bottom:1px solid #e7ede8}.permission-picker-toolbar small,.permission-picker-toolbar strong{display:block}.permission-picker-toolbar strong{font-size:10px}.permission-picker-toolbar small{font-size:8px;color:var(--muted);margin-top:3px}.permission-picker-toolbar .search-input{height:32px;width:205px}.permission-picker-list{max-height:350px;overflow:auto}.permission-choice{display:grid;grid-template-columns:16px minmax(150px,1fr) auto auto;gap:8px;align-items:center;padding:9px 10px;border-bottom:1px solid #f0f3f0;cursor:pointer}.permission-choice:last-child{border-bottom:0}.permission-choice:hover{background:#fbfdfb}.permission-choice input{width:14px;height:14px}.permission-choice-copy small,.permission-choice-copy strong{display:block}.permission-choice-copy strong{font-size:9px}.permission-choice-copy small{font:8px ui-monospace,monospace;color:#849189;margin-top:3px}.permission-choice .action-chip{font-size:7px}.permission-choice.protected{background:#fffaf3;cursor:not-allowed}.protected-tag{font-size:7px;color:#9c6d30;text-transform:uppercase;letter-spacing:.07em;font-weight:800}.role-name-input{display:block;width:100%;font:700 18px var(--font-manrope,Manrope,system-ui,sans-serif);letter-spacing:-.02em;margin:2px 0 6px}.role-description-input{display:block;width:100%;font-size:10px}.role-save-actions{margin-top:14px}.table-actions{display:grid;gap:5px}.project-scope-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.project-scope-card{display:flex;align-items:center;gap:11px;padding:13px;background:#fff;border:1px solid var(--line);border-radius:10px;transition:.15s}.project-scope-card:hover{border-color:#b5d5c3;transform:translateY(-1px)}.project-mark{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#edf5ef;color:var(--green);font:700 11px var(--font-manrope,Manrope,system-ui,sans-serif)}.project-scope-card>div{flex:1;min-width:0}.project-scope-card small,.project-scope-card strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-scope-card strong{font-size:10px}.project-scope-card small{font-size:9px;color:var(--muted);margin-top:3px}.project-status{font-size:8px;color:#3b805e;background:#edf7f0;border-radius:10px;padding:4px 6px}.project-detail-card{max-width:760px;padding:28px}.project-detail-card h2{font:700 21px var(--font-manrope,Manrope,system-ui,sans-serif);margin:0 0 8px}.project-detail-card .muted{font-size:12px;margin-bottom:20px}@media(max-width:720px){.role-create-toggle{align-items:flex-start;flex-direction:column}.role-editor-meta{grid-template-columns:1fr}.role-description{grid-column:auto}.permission-picker-toolbar{align-items:stretch;flex-direction:column}.permission-picker-toolbar .search-input{width:100%}.permission-choice{grid-template-columns:16px 1fr auto}.permission-choice .action-chip{display:none}.role-save-actions{align-items:stretch}.project-scope-grid{grid-template-columns:1fr}.project-status{display:none}}.hd07-modal{width:min(1150px,calc(calc(100vw / var(--ui-zoom)) - 72px))!important;max-width:calc(calc(100vw / var(--ui-zoom)) - 72px)!important;padding:0!important;background:transparent!important;border-radius:0!important;box-shadow:none!important;transform:translateX(135px)}.hd07-modal>.hd07-modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.hd07-modal>.hd07-modal-grid>.card-box{border:0!important;border-radius:14px!important;padding:22px!important}.hd07-modal>.hd07-modal-grid>.card-box>div:first-child{font-size:22px!important;margin-bottom:18px!important}@media(max-width:720px){.hd07-modal{width:calc(calc(100vw / var(--ui-zoom)) - 28px);min-height:auto;transform:none}.hd07-modal>div:nth-child(2){grid-template-columns:1fr;min-height:auto}.hd07-modal>div:nth-child(2)>.card-box{padding:16px!important}}:root{--teal-dark:#0d2137;--teal-darker:#091a28;--teal-primary:#17b4ab;--teal-button:#0b7a74;--teal-button-hover:#0a6560;--teal-active-nav:#0b7a74;--teal-light:#e0f2f1;--text-dark:#192a24;--text-muted:#62746b;--bg-page:#f5f8f6;--bg-card:#ffffff;--border-light:#e2e9e4;--border-subtle:#edf2ee}.app-frame{background:var(--bg-page)}.sidebar.teal-theme{background:#0d2137!important;border-right:none!important;color:#cfd8dc!important;padding:20px 14px 16px!important}.sidebar.hd-theme{background:#0b4f72}.sidebar.tk-theme{background:linear-gradient(180deg,#0a2f50,#0b385c)}.sidebar.ct-theme{background:linear-gradient(180deg,#0b234a,#0b234a 830px,#f5f8f6 0,#f5f8f6)}.overview-frame .sidebar,.sidebar.ov-theme{background:#0e3e50}.overview-frame .main-column{grid-column:2}@media(max-width:720px){.site-commander-frame .topbar-right-actions{display:none!important}.site-commander-frame .crumb-wrap{width:100%;display:flex;align-items:center}.site-commander-frame .crumb-wrap .crumb-sep,.site-commander-frame .crumb-wrap .crumb:first-child{display:none}.site-commander-frame .crumb-wrap .crumb.current{font-size:9px;letter-spacing:.08em;margin-left:auto}}.app-frame,.sidebar.hd-theme+.main-column{background:#f4f7fb}.app-frame{grid-template-columns:var(--sidebar-w) minmax(0,1fr)}.app-frame .sidebar.teal-theme,.app-frame .sidebar.teal-theme.ct-theme,.app-frame .sidebar.teal-theme.hd-theme,.app-frame .sidebar.teal-theme.ov-theme,.app-frame .sidebar.teal-theme.tk-theme{width:var(--sidebar-w);background:#0d2137!important;background-image:none!important;color:#cfd8dc!important}.app-frame .main-column{background:#f4f7fb;min-width:0}.app-frame .topbar{background:#f5f7fa}.filter-search-control{height:36px;max-width:420px;background:#fff}.filter-select-control{height:36px;padding:0 12px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);font-size:11px;font-weight:600;outline:none}.filter-select-control:focus{border-color:#6cab8b;box-shadow:0 0 0 3px rgba(20,107,80,.1)}.nav-item-group{display:contents}.modal-overlay-backdrop{backdrop-filter:blur(5px);background:rgba(15,35,62,.48)}.hd07-modal{width:min(1150px,calc(calc(100vw / var(--ui-zoom)) - 48px));border-radius:14px!important}.hd07-modal>.hd07-modal-grid>.card-box{min-height:650px;background:#fff!important;border-color:#e0e8f1!important;border-radius:12px}.hd07-modal>.hd07-modal-grid>.card-box>div:first-child{color:#173766!important;font-size:17px!important}.commander-grid{grid-template-columns:minmax(0,1fr) 350px;gap:14px}.commander-rules,.commander-table{margin:0}.commander-rules h2{margin:0 0 5px;color:#173766}.commander-rules h3{margin:24px 0 8px;letter-spacing:.1em;color:#829087}.commander-modal{width:min(560px,calc(calc(100vw / var(--ui-zoom)) - 32px));padding:22px}.commander-modal h2{margin:0 0 4px;color:#173766;font:700 20px var(--font-manrope,Manrope,system-ui,sans-serif)}.commander-modal label{display:grid;gap:6px;margin-top:14px;font-size:10px;font-weight:700;color:#41524a}.commander-modal textarea{min-height:72px;padding:10px}.handover-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.handover-summary div{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid var(--line);padding:9px 0;font-size:11px}.handover-summary span{color:#829087}.handover-summary strong{color:#173766}.handover-view>.admin-card h2{margin:0 0 14px;font:700 16px var(--font-manrope,Manrope,system-ui,sans-serif);color:#173766}.handover-view label{display:grid;gap:6px;margin:12px 0;font-size:10px;font-weight:700;color:#41524a}.handover-view textarea{min-height:70px;padding:10px}.handover-actions{position:sticky;bottom:0;padding:12px 0;background:#f4f7fb}@media(max-width:720px){.commander-grid{grid-template-columns:1fr}.commander-rules{display:none}.commander-modal{padding:18px}.commander-modal .form-actions{flex-direction:row}.commander-modal .form-actions .button{width:auto}.handover-summary{grid-template-columns:1fr;gap:0}.handover-actions{margin:0 -15px;padding:10px 15px}.handover-actions .button{flex:1}}.construction-frame .content,.construction-frame .topbar{padding-left:var(--page-gutter);padding-right:var(--page-gutter)}.warning-page-heading{margin-bottom:24px}.warning-page-heading h1{font:700 26px var(--font-manrope,Manrope,system-ui,sans-serif);color:#173766;margin:0 0 5px}.warning-page-heading .muted{font-size:11px}.warning-list-card{overflow:hidden}.warning-list-title{padding:24px 14px 18px;border-bottom:1px solid #dce5ef}.warning-list-title h2{font:700 14px var(--font-manrope,Manrope,system-ui,sans-serif);color:#173766;margin:0 0 3px}.warning-list-title p{font-size:9px;color:#8290a5;margin:0}.warning-table{width:100%}.warning-table td{height:50px;font-size:10px;color:#173766}.warning-table td small,.warning-table td strong{display:block}.warning-table td small{font-size:8px;color:#8290a5;margin-top:3px}.warning-tag{display:inline-flex;padding:6px 12px;border-radius:20px;font-size:9px}.warning-tag.warning{background:#fff1d4;color:#a56c12}.warning-tag.danger{background:#ffe3e1;color:#c94b43}.warning-strong{font-weight:700}.warning-danger{color:#d75049;font-weight:700}.warning-drill-button{margin-left:14px;border:1px solid #d5e1ef;border-radius:7px;background:#fff;color:#176bc8;padding:5px 9px;font-size:9px}.warning-drawer-content{display:grid;gap:12px}.warning-drawer-card{display:grid;gap:10px;padding:14px;border:1px solid #dce5de;border-radius:10px;background:#f8fafc;font-size:10px;color:#173766}.warning-drawer-card div{display:flex;justify-content:space-between;border-bottom:1px solid #e4eaf0;padding:7px 0}.warning-drawer-card p{margin:3px 0 0;line-height:1.5}.warning-drawer-note{padding:12px;border:1px solid #f1cf75;border-radius:9px;background:#fff8e8;color:#8c641c;font-size:10px}.sidebar.teal-theme .brand{padding:0 4px 28px;color:#ffffff;display:flex;align-items:center;gap:12px}.sidebar.teal-theme .brand-logo-a{width:36px;height:36px;border-radius:10px;background:#14b8a6;color:#ffffff;font-weight:900;font-size:22px;display:grid;place-items:center}.sidebar.teal-theme .brand-text-block{display:flex;flex-direction:column}.sidebar.teal-theme .brand-text-block strong{font-size:14px;font-weight:800;color:#ffffff;letter-spacing:-.02em}.sidebar.teal-theme .brand-text-block span{font-size:9px;color:#7dd3fc;margin-top:1px}.sidebar.teal-theme .nav-label{color:#64748b;font-size:9px;font-weight:800;letter-spacing:.14em;padding:0 8px;margin:12px 0 6px}.sidebar.teal-theme .nav-link{color:#94a3b8;padding:10px 12px;border-radius:8px;font-size:12px;font-weight:600;display:flex;align-items:center;gap:12px;transition:all .15s ease}.sidebar.teal-theme .nav-link:hover{background:rgba(255,255,255,.07);color:#f1f5f9}.sidebar.teal-theme .nav-link.active{background:var(--teal-active-nav);color:#ffffff;font-weight:700}.sidebar.teal-theme .nav-subnav{padding-left:20px;display:grid;gap:3px;margin:4px 0 10px}.sidebar.teal-theme .nav-sublink{color:#8da4ae;padding:7px 10px;border-radius:6px;font-size:11px;font-weight:500;display:block}.sidebar.teal-theme .nav-sublink:hover{color:#ffffff;background:rgba(255,255,255,.05)}.sidebar.teal-theme .nav-sublink.active{color:#38bdf8;font-weight:700;background:rgba(56,189,248,.12)}.sidebar.teal-theme .sidebar-motto{margin-top:auto;padding:14px 10px 4px;border-top:1px solid rgba(255,255,255,.08)}.sidebar.teal-theme .sidebar-motto p{margin:0;font-size:9px;line-height:1.5;color:#64748b;font-weight:700;letter-spacing:.06em}.sidebar.teal-theme .sidebar-motto small{display:block;font-size:9px;color:#475569;margin-top:8px}.topbar.modern-bar{background:#f5f7fa;border-bottom:1px solid var(--border-light);height:66px;padding:0 32px;display:flex;align-items:center;justify-content:space-between;gap:16px}.topbar-search-box{position:relative;width:min(100%,380px)}.topbar-search-box input{width:100%;height:38px;padding:0 14px 0 36px;border-radius:8px;border:1px solid #d9e2db;background:#f8faf8;font-size:11px;color:var(--text-dark)}.topbar-search-box input:focus{background:#fff;border-color:var(--teal-primary);outline:none}.topbar-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#94a3b8;font-size:13px}.topbar-right-actions{gap:12px}.fixed.inset-0.z-50{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(15,23,42,.5)}.fixed.inset-0.z-50>div{width:min(100%,560px);max-height:calc(calc(100vh / var(--ui-zoom)) - 32px);overflow:auto;background:#fff;border-radius:14px;box-shadow:0 24px 70px rgba(15,23,42,.24)}.filter-badge-btn{height:36px;padding:0 12px;border:1px solid #d9e2db;border-radius:8px;background:#fff;font-size:11px;font-weight:600;color:#334155;display:flex;align-items:center;gap:6px}.filter-badge-btn select{border:0;outline:0;appearance:none;background:transparent;color:inherit;font:inherit;cursor:pointer;padding:0}.user-profile-badge{display:flex;align-items:center;gap:10px;padding:5px 12px 5px 6px;border:1px solid #e2e8f0;border-radius:20px;background:#fff}.user-profile-badge .avatar-circle{width:30px;height:30px;border-radius:50%;background:#dbeafe;color:#1e40af;font-weight:700;font-size:12px;display:grid;place-items:center}.card-box{background:#ffffff;border:1px solid var(--line);border-radius:13px;padding:21px;box-shadow:0 4px 14px rgba(34,65,48,.025)}.card-box-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;gap:12px;flex-wrap:wrap}.card-box-header h2,.card-box-header h3{font:700 16px/1.3 Manrope,sans-serif;letter-spacing:-.02em;margin:0;color:#0f172a}.btn-teal{background:var(--green);color:#ffffff;border:1px solid transparent;border-radius:9px;padding:10px 15px;font-size:12px;font-weight:700;display:inline-flex;align-items:center;gap:7px;transition:background .15s}.btn-teal:hover{background:var(--green-dark)}.btn-outline-teal{background:#ffffff;color:var(--teal-button);border:1px solid var(--teal-button);border-radius:8px;padding:8px 14px;font-size:12px;font-weight:700}.btn-outline-teal:hover{background:var(--teal-light)}.btn-outline-gray{background:#ffffff;color:#365248;border:1px solid var(--line);border-radius:9px;padding:10px 15px;font-size:12px;font-weight:600}.btn-outline-gray:hover{background:#f8fafc}.btn-danger-outline{background:#ffffff;color:#dc2626;border:1px solid #fca5a5;border-radius:8px;padding:8px 14px;font-size:12px;font-weight:700}.btn-danger-outline:hover{background:#fef2f2}.badge-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:6px;font-size:10px;font-weight:700;white-space:nowrap}.badge-green{background:#dcfce7;color:#15803d}.badge-orange{background:#ffedd5;color:#c2410c}.badge-amber{background:#fef3c7;color:#b45309}.badge-red{background:#fee2e2;color:#b91c1c}.badge-blue{background:#e0f2fe;color:#0369a1}.badge-gray{background:#f1f5f9;color:#475569}.kpi-row-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.kpi-stat-card{min-width:0;background:#ffffff;border:1px solid var(--border-light);border-radius:12px;padding:20px 22px;display:flex;flex-direction:column;box-shadow:0 2px 4px rgba(0,0,0,.02)}.kpi-amount{min-width:0;overflow-wrap:anywhere}@media (max-width:640px){.kpi-stat-card{padding:16px 14px}.kpi-amount{font-size:clamp(.8rem,calc(4.2vw / var(--ui-zoom)),1.2rem)!important;letter-spacing:-.04em;white-space:nowrap;max-width:100%}}.kpi-stat-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.kpi-icon-box{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;font-weight:800;font-size:14px}.kpi-icon-green{background:#10b981;color:#ffffff}.kpi-icon-orange{background:#f97316;color:#ffffff}.kpi-icon-blue{background:#0ea5e9;color:#ffffff}.kpi-icon-purple{background:#8b5cf6;color:#ffffff}.kpi-stat-title{font-size:11px;font-weight:700;color:#64748b;letter-spacing:-.01em}.kpi-stat-value{font:800 30px/1 Manrope,sans-serif;letter-spacing:-.04em;color:#0f172a;margin:6px 0 8px}.kpi-stat-sub{font-size:11px;color:#94a3b8}.aba-progress-wrap{width:100%;height:7px;background:#e2e8f0;border-radius:4px;overflow:hidden;margin-top:4px}.aba-progress-bar{height:100%;border-radius:4px;background:#14b8a6}.aba-progress-bar.warning{background:#f97316}.tab-nav-row{display:flex;align-items:center;gap:24px;border-bottom:1px solid #e2e8f0;margin-bottom:20px}.tab-nav-item{padding:10px 0;font-size:13px;font-weight:600;color:#64748b;cursor:pointer;background:none;border:none;border-bottom:2px solid transparent}.tab-nav-item:hover{color:#0f172a}.tab-nav-item.active{color:var(--teal-button);border-bottom-color:var(--teal-button);font-weight:700}.layout-master-detail{display:grid;grid-template-columns:280px minmax(0,1fr);gap:20px;align-items:start}.tree-sidebar-card{background:#ffffff;border:1px solid var(--border-light);border-radius:12px;padding:18px 14px}.tree-node-item{padding:8px 12px;border-radius:8px;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;margin-bottom:3px;color:#334155}.tree-node-item:hover{background:#f1f5f9}.tree-node-item.selected{background:#ccfbf1;color:#0f766e;font-weight:700}.tree-node-child{padding-left:24px;font-size:11px}.modal-overlay-backdrop{position:fixed;inset:0;background:rgba(15,32,60,.52);backdrop-filter:blur(2px);display:grid;place-items:center;z-index:50;padding:20px}.modal-center-card{background:#ffffff;border-radius:16px;box-shadow:0 20px 40px rgba(0,0,0,.15);width:min(100%,640px);max-height:calc(90vh / var(--ui-zoom));overflow-y:auto;padding:28px}.drawer-side-card{position:fixed;top:0;right:0;bottom:0;width:min(100%,430px);background:#ffffff;box-shadow:-8px 0 32px rgba(0,0,0,.12);z-index:60;overflow-y:auto;padding:18px;display:flex;flex-direction:column}.commander-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);gap:16px}.commander-table{min-width:0}.commander-table .data-table{width:100%;table-layout:fixed}.commander-rules h2{font:700 16px var(--font-manrope,Manrope,system-ui,sans-serif);margin:0 0 6px}.commander-rules h3{font-size:9px;letter-spacing:.12em;color:#87958d;margin:22px 0 8px}.commander-rules p{font-size:11px;line-height:1.6;color:var(--muted)}.commander-form{display:grid;gap:15px}.commander-form label{display:grid;gap:7px;font-size:11px;font-weight:700;color:#41524a}.commander-form textarea{min-height:92px;padding:12px;resize:vertical}.commander-form .filter-select-control{width:100%;height:44px;font-size:12px}.commander-history-list{display:grid;gap:10px;max-height:calc(55vh / var(--ui-zoom));overflow:auto}.commander-history-item{display:grid;gap:4px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fbfdfb}.commander-history-item strong{font-size:12px;color:var(--green)}.commander-history-item span{font-size:11px;color:var(--ink)}.commander-history-item small{font-size:10px;color:var(--muted)}.mobile-validation-launch{display:none}.daily-validation-content{display:grid;gap:14px}.validation-summary{display:grid;gap:4px;padding:14px;border-bottom:1px solid #edf1ee}.validation-summary strong{font-size:13px}.validation-summary span{font-size:10px;color:var(--muted)}.validation-stats{display:grid;gap:0;border:1px solid var(--line);border-radius:10px;padding:8px 12px}.validation-stats div{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid #edf1ee;font-size:11px}.validation-stats div:last-child{border-bottom:0}.validation-stats span{color:var(--muted)}.modal-center-card .border-b{border-bottom:1px solid #edf1ee}.modal-center-card .modal-footer{align-items:center}.modal-mobile-fullscreen .modal-center-card{width:100%;max-width:520px}.hd07-modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.hd07-panel{min-height:360px;background:#fff;border-radius:12px}.hd07-panel h3{font:700 18px var(--font-manrope,Manrope,system-ui,sans-serif);color:#173766;margin:0 0 4px}.hd07-panel>.muted{font-size:11px;margin:0 0 14px}.hd07-panel .data-table{min-width:0}.hd07-panel .data-table th{background:#eef4f8;color:#173766}.hd07-panel .empty-state{margin-top:16px}.hd07-contract-modal{max-width:1180px}.hd07-contract-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.hd07-contract-title{margin:0;font-size:18px;color:#0f172a;font-weight:700}.hd07-contract-subtitle{font-size:11px;color:#64748b}.hd07-contract-panel{padding:16px;background:#f8fafc;border-color:#e2e8f0}.hd07-contract-panel-title{font-weight:700;font-size:13px;margin-bottom:12px;color:#0f172a}.hd07-contract-list{display:grid;gap:8px}.hd07-contract-row{padding:10px;background:#fff;border-radius:8px;display:flex;justify-content:space-between;align-items:center}.hd07-contract-item-title{font-size:11px;display:block}.hd07-contract-item-meta{font-size:10px;color:#64748b}.contracts-toolbar-card{margin-bottom:18px;padding:14px 18px}.contracts-toolbar-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:space-between}.contracts-filter-group{display:flex;gap:10px;flex-wrap:wrap;flex:1;min-width:280px}.contracts-search-input{width:280px}.contracts-filter-select{height:38px;border:1px solid var(--line);border-radius:10px;padding:0 10px;font-size:11px;background:#fff}.contracts-toolbar-actions{display:flex;gap:10px;align-items:center}.contracts-table-heading{padding:16px 20px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.contracts-table-title{font-size:13px;color:#1e293b}.contracts-table-count{font-size:11px;color:#64748b}.text-right{text-align:right}.contract-code{font-weight:700;color:#0f172a}.contract-project-link{font-weight:700;color:var(--green)}.contract-commander{font-size:9px;color:#8a9790;margin-top:2px}.contract-dates{font-size:10px;color:#475569}.contract-progress-cell{min-width:105px}.contract-progress-value{display:flex;justify-content:space-between;font-size:10px;font-weight:700}.contract-counts{font-size:10px}.contract-count-meta{color:#64748b}.contract-actions{white-space:nowrap}.action-gap-6{margin-right:6px}.action-gap-4{margin-right:4px}.contracts-table-footnote{padding:12px 20px;background:#f8fafc;border-top:1px solid var(--line);font-size:11px;color:#64748b}.contracts-table-card{padding:0;overflow:hidden}.project-360-heading{margin-bottom:18px}.project-360-breadcrumb{font-size:11px;color:#64748b;margin-bottom:4px}.project-360-breadcrumb-link{color:var(--green);font-weight:600}.project-360-breadcrumb-current{color:#1e293b;font-weight:700}.project-360-title{font-size:26px;margin:0}.project-360-heading-actions{display:flex;gap:10px;align-items:center}.project-360-status-badge{font-size:11px}.import-wizard-card{display:grid;gap:24px}.import-steps{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:16px}.import-step{display:flex;align-items:center;gap:8px;color:#94a3b8;font-weight:600;font-size:13px;cursor:pointer}.import-step.is-complete{color:#0f766e}.import-step.is-active{font-weight:800}.import-step-number{color:#94a3b8}.import-step.is-complete .import-step-number{background:#ccfbf1;color:#0f766e}.import-step.is-active .import-step-number{background:#0f766e;color:#fff}.import-file-card{border:1px dashed #0d9488;background:#f0fdfa;padding:16px 20px;border-radius:10px;display:flex;justify-content:space-between;align-items:center}.import-file-name{font-size:13px;display:block;color:#0f766e}.import-section-title{font-size:13px;font-weight:700;margin:0 0 12px;color:#0f172a}.import-mapping-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.import-preview-card{padding:0;overflow:hidden}.import-row-number{width:40px}.import-cell-strong{font-weight:700}.import-cell-muted{font-size:10px;color:#64748b}.import-cell-small{font-size:10px}.import-actions-cell{white-space:nowrap}.import-info-note{padding:12px 16px;background:#f8fafc;border-radius:8px;font-size:11px;color:#64748b;border:1px solid var(--line)}.import-footer-actions{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:16px}.import-mapping-label{font-size:10px;font-weight:800;color:#64748b;display:block;margin-bottom:4px;font-family:var(--font-dm-sans,"DM Sans",system-ui,sans-serif)}.import-mapping-select{width:100%;height:38px;border:1px solid var(--line);border-radius:10px;padding:0 10px;font-size:11px;background:#fff;color:var(--ink)}.import-row-action{padding:4px 8px;font-size:10px}.import-row-action-wide{padding-inline:10px}.import-confirm-button{padding:10px 24px}.construction-col-index{width:50px}.construction-col-progress{width:80px}.construction-col-theory{width:85px}.construction-col-delta{width:75px}.assignment-col-25{width:25%}.assignment-col-15{width:15%}.assignment-col-20{width:20%}.design-project-select{width:min(100%,520px);min-width:0;max-width:100%;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.purchase-col-index{width:40px}.audit-timeline-item{border-left:4px solid #0d9488}.audit-detail-key{width:160px}.audit-payload{max-height:300px}.project-360-alert{padding:12px 16px;border-radius:8px;font-size:13px;margin-bottom:14px}.project-360-alert-success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.project-360-alert-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.project-tree-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--line)}.project-tree-title{font-size:13px;color:#0f172a}.project-tree-progress{font-size:10px}.project-tree-groups{padding-left:12px;margin-top:4px}.project-tree-group{margin-bottom:6px}.project-tree-items{padding-left:16px}.project-tree-item-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-tree-legend{border-top:1px solid var(--line);padding-top:14px;margin-top:14px;font-size:10px;color:#94a3b8;line-height:1.5}@media(max-width:720px){.contracts-toolbar-row{align-items:stretch}.contracts-filter-group{min-width:0}.contracts-search-input{width:auto;flex:1}.contracts-toolbar-actions{width:100%}.contracts-toolbar-actions>*{flex:1}.hd07-modal-grid{grid-template-columns:1fr;gap:14px}.hd07-panel{min-height:0}.hd07-panel h3{font-size:15px}}.matrix-container{overflow-x:auto;border:1px solid var(--border-light);border-radius:10px;background:#fff}.matrix-table{width:100%;border-collapse:separate;border-spacing:0;min-width:800px}.matrix-table td,.matrix-table th{padding:10px 14px;border-bottom:1px solid #f1f5f9;border-right:1px solid #f1f5f9;font-size:11px}.matrix-table th{background:#f8fafc;color:#64748b;font-weight:700;text-align:center}.matrix-table td.sticky-col,.matrix-table th.sticky-col{position:sticky;left:0;background:#ffffff;z-index:2;text-align:left;min-width:220px;box-shadow:2px 0 5px rgba(0,0,0,.02)}.matrix-table th.sticky-col{background:#f8fafc}.matrix-cell-today{background:#f0fdf4!important;font-weight:700;color:#166534;cursor:pointer}.matrix-cell-today:hover{background:#dcfce7!important}@media(max-width:1024px){.layout-master-detail{grid-template-columns:1fr}.kpi-row-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.kpi-row-4{grid-template-columns:1fr}.drawer-side-card{width:100%;height:calc(90vh / var(--ui-zoom));top:auto;border-radius:20px 20px 0 0}.drawer-backdrop{background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.construction-frame .drawer-side-card{top:82px;bottom:0;width:100%;height:calc(calc(100vh / var(--ui-zoom)) - 82px);max-height:none;border-radius:0;padding:15px;background:#f4f7fb;box-shadow:none}.construction-frame .drawer-side-card>div:first-child{background:#fff;margin:-15px -15px 14px;padding:15px;border-bottom:1px solid #dce5de}.construction-frame .drawer-body{padding:0 0 72px}.construction-frame .drawer-footer{position:fixed}.construction-frame .drawer-footer,.drawer-footer{left:0;right:0;bottom:0;background:#fff;padding:10px 15px;border-top:1px solid #dce5de;z-index:2}.drawer-footer{position:fixed!important}.drawer-body{padding-bottom:72px!important}.drawer-side-card{position:fixed!important;top:82px!important;bottom:0!important;left:0!important;right:0!important;width:100%!important;height:calc(calc(100vh / var(--ui-zoom)) - 82px)!important;max-height:none!important;border-radius:0!important;padding:15px!important;background:#f4f7fb!important;box-shadow:none!important}.drawer-inline-footer{position:fixed;left:0;right:0;bottom:0;z-index:3;margin:0!important;padding:10px 15px!important;background:#fff;border-top:1px solid #dce5de}.drawer-inline-footer>*{flex:1;min-height:42px}}.card-aba{background:#fff;border:1px solid #e2e9e4;border-radius:12px;box-shadow:0 8px 24px rgba(20,54,40,.06)}.table-aba{width:100%;border-collapse:collapse;font-size:11px;color:#243b32}.table-aba th{background:#eef4f8;color:#173766;text-align:left;font-size:10px;font-weight:800;padding:11px 10px;border-bottom:1px solid #d6e2ea;white-space:nowrap;font-family:var(--font-dm-sans,"DM Sans",system-ui,sans-serif)}.table-aba td{padding:12px 10px;border-bottom:1px solid #edf2ee;vertical-align:middle}.table-aba tbody tr:hover{background:#f8fbf9}.bom-table-wrap{border:1px solid #e2e9e4;border-radius:10px;overflow:hidden}.bom-table-wrap .bom-table{table-layout:fixed}.bom-table-wrap .bom-table th{padding:12px 14px}.bom-table-wrap .bom-table td{padding:13px 14px;line-height:1.4;overflow-wrap:anywhere}.badge-aba,.bom-table-wrap .bom-table .font-mono{white-space:nowrap}.badge-aba{display:inline-flex;align-items:center;border-radius:6px;padding:4px 8px;font-size:10px;font-weight:700}.badge-info{background:#e0f2f1;color:#00695c}.badge-success{background:#dcfce7;color:#166534}.badge-warning{background:#ffedd5;color:#9a3412}.badge-danger{background:#fee2e2;color:#991b1b}.btn-aba-secondary{border:1px solid #cbd8d0;background:#fff;color:#365248;border-radius:8px;padding:8px 11px;font-weight:700}.btn-aba-secondary:hover{background:#f3f8f5}.btn-aba-primary{border:1px solid transparent;background:var(--teal-button);color:#fff;border-radius:9px;padding:10px 15px;font-size:12px;font-weight:700;box-shadow:0 4px 14px rgba(11,122,116,.2);transition:.18s ease}.btn-aba-primary:hover{background:var(--teal-button-hover);transform:translateY(-1px)}.btn-aba-primary:disabled,.btn-aba-secondary:disabled{opacity:.55;cursor:not-allowed}.flex{display:flex}.grid{display:grid}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-6{gap:24px}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.space-y-6>*+*{margin-top:24px}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.w-full{width:100%}.h-full{height:100%}.text-center{text-align:center}@media(max-width:720px){.md\:flex-row{flex-direction:column}.lg\:grid-cols-6,.sm\:grid-cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}}.text-xs{font-size:12px}.text-sm{font-size:14px}.text-2xl{font-size:24px;line-height:1.2}.font-bold{font-weight:700}.font-black{font-weight:900}.font-medium{font-weight:500}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.text-slate-900{color:#172b25}.text-slate-500{color:#62746b}.text-slate-400{color:var(--muted)}.text-emerald-700{color:#047857}.text-emerald-600{color:#059669}.text-amber-700{color:#b45309}.text-amber-600{color:#d97706}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mb-2{margin-bottom:8px}.rounded-full{border-radius:999px}.rounded-2xl{border-radius:16px}.bg-slate-200{background:#e2e8f0}.bg-slate-50{background:#f8fafc}.bg-emerald-50{background:#ecfdf5}.bg-amber-50{background:#fffbeb}.h-1{height:4px}.w-12{width:48px}.p-2{padding:8px}.p-3{padding:12px}.p-4{padding:16px}.leading-tight{line-height:1.25}.uppercase{text-transform:uppercase}.tracking-wider{letter-spacing:.08em}.flex-wrap{flex-wrap:wrap}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.min-w-0{min-width:0}.max-w-xl{max-width:576px}.max-h-48{max-height:192px}.space-y-2>*+*{margin-top:8px}.space-y-3>*+*{margin-top:12px}.space-y-4>*+*{margin-top:16px}.border{border:1px solid #e2e9e4}.border-b{border-bottom:1px solid #edf2ee}.shadow-2xl{box-shadow:0 24px 48px rgba(0,0,0,.18)}.bg-white{background:#fff}.text-white{color:#fff}.text-teal-700{color:#0f766e}.text-blue-700{color:#1d4ed8}.text-red-700{color:#b91c1c}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.flex-1{flex:1 1 0%!important}.flex-shrink-0{flex-shrink:0!important}.pr-2{padding-right:8px!important}.break-words{overflow-wrap:break-word!important;word-break:break-word!important}.table-aba td{line-height:1.25}@media(max-width:720px){.cht-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.cht-kpi-grid>button:nth-child(n+4){display:none!important}}@media(max-width:900px){.commander-grid{grid-template-columns:1fr}}@media (max-width:600px){.matrix-mobile-summary{display:block!important}.matrix-mobile-kpis{display:grid;grid-template-columns:1fr 1fr;gap:7px}.matrix-mobile-kpi{min-height:47px;padding:8px 10px;border:1px solid #dce5ef;border-radius:10px;background:#fff}.matrix-mobile-kpi span,.matrix-mobile-kpi strong{display:block}.matrix-mobile-kpi span{color:#8290a5;font-size:9px}.matrix-mobile-kpi strong{margin-top:3px;color:#17345f;font-size:14px;font-weight:500}.matrix-mobile-alert{margin-top:9px;padding:8px 10px;border:1px solid #f1cf75;border-radius:9px;background:#fff8e8;color:#9b6b1d;font-size:9px}.matrix-mobile-complete{width:100%;margin-top:9px;min-height:38px;font-size:10px}.matrix-actions{display:none!important}.matrix-page>.card-aba{margin-top:9px}.matrix-page .matrix-header>div:first-child>div:first-child{display:none}.matrix-page .matrix-title{font-size:20px;line-height:1.2;margin-top:0;font-weight:500}.matrix-title-desktop{display:none}.matrix-title-mobile{display:inline!important}.matrix-mobile-subtitle{display:block;margin:4px 0 0;color:#8290a5;font-size:9px}.matrix-page .matrix-meta{display:none}.construction-frame{display:block;background:#f4f7fb}.construction-frame .sidebar{display:none}.construction-frame .main-column{width:100%;min-width:0}.construction-frame .topbar{height:82px;min-height:82px;padding:0 15px;background:#092653;color:#fff;border:0;backdrop-filter:none;-webkit-backdrop-filter:none}.construction-frame .crumb-wrap{font-size:0;gap:0;display:flex;align-items:center}.construction-frame .crumb-wrap:before{content:"A";display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin-right:9px;border-radius:8px;background:#18b8c9;color:#fff;font-size:18px;font-weight:800}.construction-frame .crumb{display:none}.construction-frame .crumb-wrap:after{content:"BA\\A Construction";white-space:pre;color:#fff;font-size:14px;line-height:1.05;font-weight:700}.construction-frame .crumb.current{display:none;color:#fff;font-size:15px;font-weight:700}.construction-frame .crumb.current:after{content:"CHỈ HUY TRƯỞNG";display:block;margin-top:3px;color:#aabbd7;font-size:8px;font-weight:500;letter-spacing:.03em}.construction-frame .crumb-sep,.construction-frame .topbar-search-box{display:none}.construction-frame .topbar-right-actions{margin-left:auto}.construction-frame .topbar-right-actions>*{transform:none;transform-origin:right center;min-height:36px}.construction-frame .topbar-right-actions [role=button],.construction-frame .topbar-right-actions a,.construction-frame .topbar-right-actions button{min-width:36px}.construction-frame .content{padding:15px}.construction-frame .content>.space-y-6{gap:0}.construction-frame .content .badge-aba,.construction-frame .content>.space-y-6>div:first-child>div:first-child>div:first-child>span,.construction-frame .content>.space-y-6>div:first-child>div:first-child>span{display:inline-flex!important}.construction-frame .content h1{margin-top:0;font-size:20px;line-height:1.2;color:#112b50}.construction-frame .content h1+p{margin-top:4px;font-size:10px;color:#8290a5}.construction-frame .content>.space-y-6>div:first-child{gap:8px}.construction-frame .content>.space-y-6>div:first-child>div:last-child{width:100%}.construction-frame .content>.space-y-6>div:first-child>div:last-child a{display:none}.construction-frame .cht-kpi-grid{margin-top:8px;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.construction-frame .cht-kpi-grid button{min-height:52px;padding:10px;border-radius:11px;background:#fff;border-color:#dfe7f1}.construction-frame .cht-kpi-grid button>div:first-child{font-size:8px;text-transform:none;letter-spacing:0;color:#8b9ab0}.construction-frame .cht-kpi-grid button>div:nth-child(2){margin-top:3px;font-size:17px;color:#1d3557}.construction-frame .cht-kpi-grid button>div:last-child{font-size:9px;color:#91a0b2}.construction-frame .card-aba{border-radius:12px;box-shadow:none}.construction-frame .table-aba{min-width:680px}.construction-frame .table-aba td{padding:10px 8px}.construction-frame .content .overflow-x-auto{border-radius:12px}.construction-frame .content>.space-y-6>.card-aba:has(table){display:none}.construction-frame .content>.matrix-page>.card-aba:has(table){display:block}.construction-page-SITE_COMMANDER .construction-filter-card{display:none}.construction-page-SITE_COMMANDER .mobile-validation-launch{display:block}.modal-mobile-fullscreen{top:82px;bottom:0;inset-block-start:82px;background:#f4f7fb;backdrop-filter:none;padding:0;place-items:stretch}.modal-mobile-fullscreen .modal-center-card{width:100%;max-width:none;max-height:none;height:100%;min-height:calc(calc(100vh / var(--ui-zoom)) - 82px);border-radius:0;box-shadow:none;padding:15px;overflow-y:auto}.modal-mobile-fullscreen .modal-footer{position:sticky;bottom:0;background:#f4f7fb;padding-bottom:4px}.cht-mobile-contracts{margin-top:14px}.cht-mobile-today{padding:10px 12px 8px;color:#173766;font-size:12px;font-weight:800}.cht-mobile-today span{display:block;color:#9aaabd;font-size:8px;font-weight:500;margin-top:2px}.cht-mobile-contract{background:#fff;border:1px solid #dfe7f1;border-radius:12px;padding:12px;margin-bottom:8px}.cht-mobile-contract-head{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.cht-mobile-contract-head strong{display:block;color:#173766;font-size:11px}.cht-mobile-contract-head small{display:block;color:#8290a5;font-size:8px;margin-top:3px}.cht-mobile-flag{border-radius:999px;padding:6px 10px;font-size:8px;white-space:nowrap;background:#fff3d6;color:#a26100}.cht-mobile-flag.danger{background:#ffe5e3;color:#c8453d}.cht-mobile-progress{height:5px;background:#e6edf5;border-radius:4px;margin:10px 0 5px;overflow:hidden}.cht-mobile-progress i{display:block;height:100%;background:#2a73d6;border-radius:4px}.cht-mobile-stats{color:#8290a5;font-size:8px}.cht-mobile-stats em{float:right;color:#d95d55;font-style:normal}.cht-mobile-cta{display:block;margin-top:9px;padding:9px;border-radius:10px;background:#216bd1;color:#fff;font-size:10px;font-weight:800;text-align:left}.cht-mobile-late{border:1px solid #f0d28a;border-radius:10px;background:#fff8e5;color:#9a6b1b;padding:10px;font-size:8px;line-height:1.45}.cht-mobile-contracts{display:block}.construction-frame .content:after{content:"Công việc                         Nhật ký                         Cảnh báo";position:fixed;z-index:20;left:0;right:0;bottom:0;height:58px;display:flex;align-items:center;justify-content:center;white-space:pre;background:#fff;border-top:1px solid #dbe3ed;color:#2869d5;font-size:9px;letter-spacing:.01em}.construction-frame .content{padding-bottom:74px}.construction-frame .fixed.inset-0.z-50>div{max-width:none;width:100%;height:calc(100% - 58px);margin-top:0;padding:16px;border-radius:16px 16px 0 0}.construction-frame .fixed.inset-0.z-50 h3{font-size:17px;color:#173766}.construction-frame .fixed.inset-0.z-50 .grid-cols-2{grid-template-columns:1fr;gap:10px}.construction-frame .fixed.inset-0.z-50 input[type=number]{min-height:40px}.construction-frame .fixed.inset-0.z-50 textarea{min-height:92px}}.matrix-mobile-summary,.matrix-title-mobile{display:none}.matrix-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:16px;margin-bottom:16px}.matrix-kpi-card{min-height:72px;padding:12px 14px;border:1px solid #dfe7f1;border-radius:10px;background:#fff;display:grid;align-content:center;gap:6px}.matrix-kpi-card span{font-size:11px;color:#64748b;font-weight:500}.matrix-kpi-card strong{font-size:20px;line-height:1;color:#0f172a;font-weight:700}.matrix-kpi-card .is-negative{color:#e11d48}.matrix-kpi-card .is-positive{color:#059669}.matrix-kpi-status{display:inline-block;padding:3px 8px;border-radius:6px;background:#fef3c7;color:#b45309;font-size:11px;font-weight:600}.matrix-kpi-owner{font-size:14px!important;color:#0f172a!important}.matrix-header .matrix-actions{display:flex;align-items:center;gap:10px}.matrix-content-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:14px;align-items:stretch}.matrix-table-card{min-width:0}.matrix-today-panel{padding:16px;display:grid;align-content:start;gap:12px}.matrix-today-heading{display:grid;gap:4px}.matrix-today-heading strong{font-size:14px;color:#173766}.matrix-today-heading span{font-size:10px;color:#8290a5}.matrix-today-label{font-size:9px;letter-spacing:.08em;color:#8290a5;font-weight:800;margin-top:4px}.matrix-status-box{display:grid;gap:4px;padding:12px;border-radius:10px;font-size:10px}.matrix-status-box span{line-height:1.4}.matrix-status-box.is-pending{background:#fff8e5;border:1px solid #f0d28a;color:#9a6b1b}.matrix-status-box.is-complete{background:#eaf7ef;border:1px solid #d4ecd9;color:#176345}.matrix-today-row{display:flex;justify-content:space-between;gap:8px;padding:8px 0;border-bottom:1px solid #edf1ee;font-size:10px;color:#8290a5}.matrix-today-row b{color:#176345}.matrix-today-action{width:100%;margin-top:2px}@media(max-width:1100px){.matrix-kpi-grid{display:none}.matrix-content-grid{grid-template-columns:1fr}.matrix-today-panel{display:none}}.matrix-mobile-subtitle{display:none}.drawer-backdrop{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.drawer-form-section-title{font-size:12px;font-weight:700;color:#17345f;margin:10px 0 -6px}@media (max-width:640px){.drawer-form-section-title{font-size:11px;margin:9px 0 -5px}}@media (max-width:600px){.construction-frame .topbar,.construction-frame .topbar.modern-bar{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}}.cht-mobile-contracts{display:none}@media (max-width:600px){.cht-mobile-contracts{display:block}}@media (max-width:640px){.daily-validation-overlay{align-items:stretch;padding:0;background:#f3f6fb}.daily-validation-dialog{max-width:none;width:100%;min-height:100%;height:100%;margin:0;border-radius:0;box-shadow:none;overflow-y:auto;padding:0 0 8px}.daily-validation-header{min-height:64px}.construction-frame .daily-validation-dialog{height:100%;margin-top:0;padding:0 0 8px;border-radius:0}.construction-frame .daily-validation-overlay{padding:0!important;background:#f3f6fb!important}.construction-frame .daily-validation-dialog{width:calc(100vw / var(--ui-zoom))!important;height:calc(100vh / var(--ui-zoom))!important;max-width:none!important;border-radius:0!important}.daily-validation-dialog .flex.gap-2{position:sticky;bottom:0;background:#f3f6fb}}.btn-aba-primary,.btn-teal{background:var(--teal-button);color:#fff;border-color:transparent;border-radius:9px;font-weight:700}.btn-aba-secondary,.btn-outline-gray{background:#fff;color:#365248;border:1px solid var(--line);border-radius:9px;font-weight:700}.input-aba{width:100%;min-width:0;height:38px;padding:0 10px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#243b35;font-size:13px}.input-aba:focus{outline:2px solid rgba(13,148,136,.25);border-color:#0f766e}[data-testid=create-purchase-form]>*{min-width:0}.auth-brand-lockup{display:grid;gap:4px;margin:-52px 0 48px 64px}.auth-brand-lockup strong{font:700 28px var(--font-manrope,Manrope,system-ui,sans-serif)}.auth-brand-lockup span{font-size:16px;color:#c2ddcf}.auth-hero-subtitle{font-size:24px;color:#d7ebe1;margin:0 0 34px}.auth-features{display:grid;gap:20px}.auth-features>div{display:flex;gap:18px;align-items:center}.auth-features b{color:#24d4c5;font-size:25px;width:36px;text-align:center}.auth-features small,.auth-features strong{display:block}.auth-features strong{font-size:15px}.auth-features small{font-size:12px;color:#c2ddcf;margin-top:4px}@media (max-width:720px){.construction-frame .content span.badge-info{display:inline-flex!important}}.construction-page-DIRECTOR .construction-director-eyebrow{display:flex!important;visibility:visible!important;opacity:1!important}.sidebar-logout{width:100%;margin-top:12px;justify-content:center;border-color:#d7e3db;color:#496257}.auth-layout{grid-template-columns:1.05fr .95fr;background:#f7fafc}.auth-aside{background:linear-gradient(160deg,#073b5a,#075d7a 58%,#0b7892);padding:62px clamp(36px,calc(7vw / var(--ui-zoom)),128px)}.auth-card-wrap{padding:40px calc(6vw / var(--ui-zoom))}.auth-card{width:min(100%,620px);padding:50px 51px;border-radius:14px;box-shadow:0 16px 40px rgba(15,47,73,.1)}.auth-card h2{font-size:32px;color:#102645}.auth-card>.muted{font-size:16px;color:#63758d}.stack-form input{padding-left:58px;border-color:#cfdae7;border-radius:8px;height:54px;font-size:16px}.input-icon-wrap,.password-input-wrap{position:relative;display:block}.input-leading-icon{position:absolute;left:18px;top:50%;z-index:1;transform:translateY(-50%);font-size:18px;color:#6c7d93;pointer-events:none}.password-input-wrap .password-toggle{right:14px;color:#64748b;font-size:20px;padding:2px 6px}.remember-help.password-reset-link{border:0;background:transparent;color:#006fe6;font-weight:600;cursor:pointer}.auth-card .button.primary{background:#0e4070!important;border-radius:8px;height:52px;font-size:15px}.auth-card .form-footnote{text-align:center;border-top:1px solid #e1e7ef;padding-top:20px;color:#73849a}.approved-cost-section{padding:16px 18px}.approved-cost-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.period-chip{font-size:11px;color:#4d6b86;border:1px solid #d6e0eb;border-radius:8px;padding:7px 10px;background:#fff}.approved-cost-card{display:flex;flex-direction:column;gap:4px;padding:15px;border:1px solid #d8e2ed;border-radius:11px;min-height:92px}.approved-cost-card.project{background:#eefaf6}.approved-cost-card.internal{background:#fff7ed}.approved-cost-card.debt{background:#eff7ff}.approved-cost-card span{font-size:12px;font-weight:700;color:#64809c}.approved-cost-card strong{font-size:22px;color:#15385d}.approved-cost-card small{font-size:10px;color:#7890a8}.finance-kpi-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:12px!important}.finance-kpi-grid .metric-value{font-size:22px!important}@media(max-width:1100px){.finance-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}@media(max-width:720px){.finance-kpi-grid{grid-template-columns:1fr!important;gap:7px!important}.topbar-right-actions .small-button:not(.notification-bell-btn),[data-testid=sidebar-logout-button]{display:none!important}.nc-panel{position:fixed!important;top:64px!important;left:8px!important;right:8px!important;width:auto!important;max-height:calc(100vh - 140px)!important}.app-frame .sidebar{position:fixed!important;inset:auto 0 0!important;width:100%!important;height:61px!important;min-width:0!important;padding:5px 8px!important;z-index:5!important;background:#fff!important;border:0!important;border-top:1px solid #e6ede7!important}.app-frame .sidebar .brand,.app-frame .sidebar .nav-label,.app-frame .sidebar .sidebar-bottom,.app-frame .sidebar .sidebar-logout,.app-frame .sidebar .sidebar-motto{display:none!important}.app-frame .sidebar nav{display:flex!important;height:100%!important;width:100%!important;align-items:center!important;justify-content:space-around!important;overflow:hidden!important}.app-frame .sidebar.teal-theme,.app-frame .sidebar.teal-theme.ct-theme,.app-frame .sidebar.teal-theme.hd-theme,.app-frame .sidebar.teal-theme.ov-theme,.app-frame .sidebar.teal-theme.tk-theme{position:fixed!important;inset:auto 0 0!important;width:100%!important;height:61px!important;min-width:0!important;padding:5px 8px!important;z-index:5!important;background:#fff!important;border:0!important;border-top:1px solid #e6ede7!important}.app-frame .sidebar.teal-theme .brand,.app-frame .sidebar.teal-theme .nav-label,.app-frame .sidebar.teal-theme .sidebar-bottom,.app-frame .sidebar.teal-theme .sidebar-logout,.app-frame .sidebar.teal-theme .sidebar-motto{display:none!important}.app-frame .sidebar.teal-theme nav{display:flex!important;height:100%!important;width:100%!important;align-items:center!important;justify-content:space-around!important;overflow:hidden!important}.app-frame .sidebar.teal-theme .nav-link{flex:1!important;min-width:0!important;justify-content:center!important;flex-direction:column!important;gap:2px!important;padding:6px 2px!important;font-size:11px!important}}@media(max-width:720px){.content:has(.finance-kpi-grid) .data-table{min-width:0!important;table-layout:fixed!important}.content:has(.finance-kpi-grid) .data-table td,.content:has(.finance-kpi-grid) .data-table th{padding:10px 8px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.content:has(.finance-kpi-grid) .data-table td:first-child,.content:has(.finance-kpi-grid) .data-table th:first-child{width:68%!important}.content:has(.finance-kpi-grid) .data-table td:last-child,.content:has(.finance-kpi-grid) .data-table th:last-child{width:32%!important;text-align:right!important}}@media(max-width:720px){.auth-layout{grid-template-columns:1fr}.auth-card{padding:32px 23px}.auth-card h2{font-size:27px}.auth-card>.muted{font-size:13px}}@media(max-width:900px){.approved-cost-grid{grid-template-columns:1fr}}.modal-center-card.modal-wide{max-width:1150px}.modal-center-card.max-w-md{max-width:min(480px,calc(100vw / var(--ui-zoom)))!important}.modal-center-card.modal-bare{padding:0;background:transparent;box-shadow:none;max-height:none;overflow:visible}.modal-bare-backdrop{backdrop-filter:none;background:rgba(15,35,62,.48)}.project-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.project-summary-card{padding:18px}.project-summary-label{font-size:11px;font-weight:700;color:#64748b;margin-bottom:8px;font-family:var(--font-dm-sans,"DM Sans",system-ui,sans-serif)}.project-summary-values{display:flex;gap:14px;align-items:baseline;margin-bottom:6px}.project-summary-values span{font-size:11px;color:#64748b}.project-summary-danger{font-size:11px;color:#dc2626}.project-summary-copy{font-size:11px;color:#334155;margin:0 0 6px}.project-summary-risk{font-size:10px;color:#c2410c;font-weight:700}.project-summary-warning{font-size:10px;color:#b45309;font-weight:700}@media(max-width:720px){.project-summary-grid{grid-template-columns:1fr}}.assign-commander-modal{max-width:460px}.assign-commander-title{margin:0 0 12px;font-size:16px}.assign-commander-description{font-size:11px;margin-bottom:18px}.assign-commander-fields{display:grid;gap:12px}.assign-commander-label{font-size:11px;font-weight:700;font-family:var(--font-dm-sans,"DM Sans",system-ui,sans-serif)}.assign-commander-input{width:100%;margin-top:6px}.assign-commander-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:10px}.hd07-contract-panel-subtitle{font-size:11px;color:#64748b;margin:-6px 0 14px}.hd07-contract-table-head{display:grid;grid-template-columns:2fr .6fr 1fr 1fr;gap:8px;padding:9px 10px;background:#eef4f8;color:#173766;font-size:10px;font-weight:700}.hd07-contract-instruction{margin-top:14px;padding:10px 12px;background:#eefaff;border:1px solid #a9e3f2;border-radius:8px;color:#286b8b;font-size:11px}.hd07-panel-close{display:block;width:100%;margin-top:16px;color:#173766;border-color:#c9dced}.project-detail-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.project-detail-title{font-size:20px;margin:0}.project-detail-subtitle{margin:4px 0 0;font-size:11px}.group-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:18px}.group-kpi-card{padding:14px}.group-kpi-label{font-size:10px;color:#64748b;font-family:var(--font-dm-sans,"DM Sans",system-ui,sans-serif)}.group-kpi-value{font:700 22px Manrope;color:#0f172a}.group-kpi-danger{color:#dc2626}.group-kpi-meta{font-size:9px;color:#94a3b8}.project-detail-note{padding:10px 14px;background:#f8fafc;border-radius:8px;font-size:11px;color:#64748b;border:1px solid var(--line);margin-bottom:18px}.project-detail-table-card{padding:0;overflow:hidden}.project-detail-table-heading{padding:14px 18px;border-bottom:1px solid var(--line)}.project-detail-table-title{margin:0;font-size:13px}.project-work-item-row{cursor:pointer}.project-work-item-name{font-weight:700;color:var(--green)}.project-work-item-meta{font-size:10px}.project-muted-dash{color:#94a3b8}@media(max-width:900px){.group-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.item-meta-grid{padding:18px;margin-bottom:18px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.item-meta-label{font-size:10px;color:#64748b;font-family:var(--font-dm-sans,"DM Sans",system-ui,sans-serif)}.item-meta-value{display:block;font-size:12px;margin-top:4px}.item-meta-progress{font-size:14px;color:var(--green)}@media(max-width:900px){.item-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.project-file-row{display:flex;justify-content:space-between;align-items:center;background:#f8fafc;padding:8px 12px;border-radius:8px}.project-file-name{font-size:11px}.project-file-actions{display:flex;gap:10px;font-size:11px;color:var(--green);font-weight:700}.project-site-card{padding:18px;margin-bottom:18px}.project-block-title{font-size:13px;margin:0 0 12px}.project-site-summary{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.project-meta-label{font-size:10px;color:#64748b;font-family:var(--font-dm-sans,"DM Sans",system-ui,sans-serif)}.project-site-progress{font:700 24px Manrope;color:#0f172a}.project-log-time{font-size:12px;font-weight:700}.project-log-note{color:#64748b}.project-site-actions{display:flex;gap:10px}.project-timeline-card{padding:0;overflow:hidden}@media(max-width:720px){.project-site-summary{align-items:flex-start;flex-direction:column;gap:12px}.project-site-actions{flex-wrap:wrap}.project-file-row{gap:8px;align-items:flex-start;flex-direction:column}}.item-detail-blocks{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:18px}.item-detail-card{padding:18px}.item-detail-stats{display:flex;gap:20px;margin-bottom:12px}.item-detail-value{display:block;font-size:12px}.item-material-stats{display:flex;gap:16px;margin-bottom:12px;align-items:center}@media(max-width:720px){.item-detail-blocks{grid-template-columns:1fr}.item-detail-stats,.item-material-stats{flex-wrap:wrap}}.boq-col-no{width:30px}.boq-col-material{min-width:180px}.boq-col-group{min-width:120px}.boq-col-unit{width:60px}.boq-col-design{width:100px}.boq-col-waste{width:80px}.boq-col-proposed{width:110px}.boq-col-length{width:80px}.boq-col-count{width:70px}.boq-col-weight{width:80px}.boq-col-total{width:100px}.boq-col-note{min-width:120px}.boq-col-delete{width:40px}.kpi-value-code{font-size:20px}.kpi-value-date{font-size:16px}.kpi-source-note{margin-top:6px}.payment-warning-button{margin-top:8px;color:#a26100;border-color:#f0d28a}.project-matrix-card{margin-bottom:20px;padding:0;overflow:hidden}.project-matrix-heading{padding:16px 20px;border-bottom:1px solid var(--line)}.project-matrix-title{margin:0;font-size:14px}.project-matrix-name{font-weight:700}.project-matrix-note{color:#64748b;font-size:10px}.project-data-warning{padding:14px 18px;background:#fffbeb;border:1px solid #fef3c7;border-radius:10px;margin-bottom:20px;font-size:11px;color:#92400e}.notification-col-select{width:40px}.notification-col-type{width:120px}.notification-col-time{width:160px}.notification-col-status{width:120px}.notification-col-actions{width:100px}.p360-tab-hidden{display:none!important}.create-contract-card{display:grid;gap:24px;max-width:900px;margin:0 auto}.create-contract-section{border-top:1px solid #edf2ee;padding-top:20px}.create-contract-section-title{font-size:14px;font-weight:700;margin:0 0 14px;color:#0f172a}.create-contract-grid{display:grid;gap:16px}.create-contract-grid-2{grid-template-columns:1fr 1fr}.create-contract-grid-3{grid-template-columns:repeat(3,1fr)}.create-contract-label{display:block;font-size:11px;font-weight:700;margin-bottom:6px}.create-contract-input,.create-contract-label{font-family:var(--font-dm-sans,"DM Sans",system-ui,sans-serif)}.create-contract-input{width:100%}.create-contract-help{font-size:9px;margin-top:4px}.create-contract-help,.create-contract-note{display:block;color:#64748b;font-family:var(--font-dm-sans,"DM Sans",system-ui,sans-serif)}.create-contract-note{font-size:10px;margin-top:6px}@media(max-width:720px){.create-contract-grid-2,.create-contract-grid-3{grid-template-columns:1fr}}.create-contract-readonly{background:#f8fafc}.create-contract-total{font-weight:700}.create-contract-select{width:100%;height:42px;border-radius:8px;border:1px solid #d9e2db;padding:0 12px;font-size:12px}.create-contract-info{padding:10px 14px;background:#f0f9ff;border-radius:8px;font-size:11px;color:#0369a1;border:1px solid #bae6fd}.create-contract-upload-card{border:1px dashed #cbd5e1;border-radius:10px;padding:18px;background:#f8fafc}.create-contract-upload-title{font-size:12px;display:block;margin-bottom:4px}.create-contract-upload-copy{font-size:10px;color:#64748b;margin:0 0 12px}.create-contract-upload-button{padding:7px 12px;font-size:11px}.create-contract-footer-note{padding:12px 16px;background:#f8fafc;border-radius:8px;font-size:11px;color:#64748b;border:1px solid #edf2ee}.create-contract-actions{display:flex;justify-content:flex-end;gap:12px;border-top:1px solid #edf2ee;padding-top:16px}.create-contract-cancel{padding:10px 18px}.create-contract-submit{padding:10px 22px}.finance-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);gap:16px;margin-bottom:20px}.finance-dashboard-grid>.card-aba{min-width:0}.finance-alert-card{height:max-content}.finance-alert-list{display:grid;gap:10px;padding:14px}.finance-alert-item{display:grid;gap:5px;padding:13px;border:1px solid #e4ebe6;border-radius:10px;background:#fbfdfb}.finance-alert-item strong{font-size:11px;color:#1d342b}.finance-alert-item span{font-size:10px;color:#7d8b83;line-height:1.45}.executive-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.executive-dashboard-sections{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.8fr);gap:24px}.executive-dashboard-sections>.card-aba:first-child{grid-column:1;grid-row:1/span 2}.executive-alerts{grid-column:2;grid-row:1;height:max-content}.executive-running{grid-column:2;grid-row:2;height:max-content}.payment-flow-card{padding-bottom:16px}.payment-flow-list{display:grid;gap:12px;padding:16px;margin:0;list-style:none}.payment-flow-step{display:flex;align-items:flex-start;gap:12px;color:#1f3b57}.payment-flow-step>span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#cbd5e1;color:#475569;font-size:11px;font-weight:700;flex:0 0 auto}.payment-flow-step.is-complete>span{background:#10b981;color:#fff}.payment-flow-step small,.payment-flow-step strong{display:block}.payment-flow-step strong{font-size:12px}.payment-flow-step small{font-size:11px;color:#7890a6;margin-top:2px}.payment-flow-note{margin:0 16px;padding:12px;border:1px solid #b8e6df;border-radius:10px;background:#ecfdf9;color:#3d647a}.construction-readonly-daily>:not(.form-warning){pointer-events:none;opacity:.72}@media(max-width:1023px){.executive-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.executive-kpi-grid{grid-template-columns:1fr}}@media(max-width:1023px){.executive-dashboard-sections{grid-template-columns:1fr;gap:16px}.executive-alerts,.executive-dashboard-sections>.card-aba:first-child,.executive-running{grid-column:1;grid-row:auto}}@media(max-width:720px){.finance-dashboard-grid{grid-template-columns:1fr;gap:12px;margin-bottom:12px}.finance-alert-card{order:-1}}.notification-center-wrap{position:relative}.notification-bell-btn{position:relative;padding:6px 12px;font-size:1.1rem}.unread-badge-dot{position:absolute;top:2px;right:2px;background:#ef4444;color:#fff;font-size:10px;font-weight:700;border-radius:10px;padding:1px 5px;line-height:1}.nc-panel{position:absolute;top:calc(100% + 8px);right:0;width:400px;max-height:min(560px,calc(100vh - 96px));display:flex;flex-direction:column;background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 18px 40px -12px rgba(15,23,42,.28);z-index:1050;overflow:hidden;text-align:left}.nc-head{justify-content:space-between;gap:12px;padding:14px 16px 10px}.nc-head,.nc-title{display:flex;align-items:center}.nc-title{gap:8px;margin:0;font-size:15px;font-weight:700;color:#0f172a}.nc-count{min-width:20px;padding:1px 7px;border-radius:999px;background:#ef4444;color:#fff;font-size:11px;font-weight:700;text-align:center}.nc-link-btn{border:0;background:none;padding:4px 6px;border-radius:6px;color:#0d9488;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap}.nc-link-btn:hover{background:#f0fdfa}.nc-tabs{display:flex;gap:4px;margin:0 16px 10px;padding:3px;border-radius:10px;background:#f1f5f9}.nc-tab{flex:1;border:0;background:transparent;padding:6px 0;border-radius:8px;color:#64748b;font-size:12.5px;font-weight:600;cursor:pointer}.nc-tab[aria-selected=true]{background:#fff;color:#0f172a;box-shadow:0 1px 2px rgba(15,23,42,.1)}.nc-list{flex:1;min-height:0;margin:0;padding:0;list-style:none;overflow-y:auto;overscroll-behavior:contain;border-top:1px solid #eef2f6}.nc-item{display:grid;grid-template-columns:8px minmax(0,1fr) 24px;gap:10px;align-items:start;padding:12px 12px 12px 16px;border-bottom:1px solid #f1f5f9;background:#fff}.nc-item:hover{background:#f8fafc}.nc-item.unread{background:#f0fdfa}.nc-item.unread:hover{background:#e6faf6}.nc-dot{width:8px;height:8px;margin-top:7px;border-radius:50%}.nc-item.unread .nc-dot{background:#0d9488}.nc-main{min-width:0;border:0;background:none;padding:0;text-align:left;color:inherit;font:inherit;cursor:pointer}.nc-meta{display:flex;align-items:center;gap:8px;margin-bottom:4px;min-width:0}.nc-badge{overflow:hidden;text-overflow:ellipsis;padding:2px 8px;border-radius:6px;font-size:11px;font-weight:700;white-space:nowrap}.nc-badge.info{background:#ccfbf1;color:#0f766e}.nc-badge.action{background:#fef3c7;color:#b45309}.nc-badge.warning{background:#fee2e2;color:#b91c1c}.nc-badge.neutral{background:#f1f5f9;color:#475569}.nc-time{flex:none;margin-left:auto;color:#94a3b8;font-size:11.5px;white-space:nowrap}.nc-item-msg,.nc-item-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.nc-item-title{color:#0f172a;font-size:13.5px;font-weight:600;line-height:1.4}.nc-item.unread .nc-item-title{font-weight:700}.nc-item-msg{margin-top:2px;color:#64748b;font-size:12.5px;line-height:1.45}.nc-del{width:24px;height:24px;display:grid;place-items:center;border:0;border-radius:6px;background:transparent;color:#94a3b8;font-size:13px;line-height:1;cursor:pointer}.nc-del:hover{background:#fee2e2;color:#b91c1c}.nc-del:focus-visible,.nc-link-btn:focus-visible,.nc-main:focus-visible,.nc-tab:focus-visible{outline:2px solid #0d9488;outline-offset:2px}.nc-state{padding:32px 16px;color:#94a3b8;font-size:13px;text-align:center}.nc-state.error{color:#b45309}.nc-foot{padding:10px;border-top:1px solid #eef2f6;text-align:center}.nc-foot a{color:#0d9488;font-size:13px;font-weight:600;text-decoration:none}.nc-foot a:hover{text-decoration:underline}.error-boundary-icon{font-size:2rem;margin-right:1rem}.error-boundary-details{max-height:200px}.filter-badge-chevron{font-size:9px}.overview-frame .ov-approval-page{max-width:1280px;margin:0 auto}.ov-approval-heading h1{font:700 30px/1.2 var(--font-manrope,Manrope,system-ui,sans-serif);letter-spacing:-.045em}.ov-approval-heading p{font-size:14px;color:#72817b}.ov-approval-tabs{padding:0 0 8px;border-bottom:1px solid #e4ebe6}.ov-approval-tabs button{border-radius:999px!important;padding:9px 16px!important;font-size:11px!important}.ov-approval-filter,.ov-approval-table-card{border:1px solid #e4ebe6;border-radius:12px;background:#fff;box-shadow:0 8px 24px rgba(20,54,40,.05)}.ov-approval-filter input,.ov-approval-filter select{height:42px;border:1px solid #dce5de;border-radius:10px;background:#fff;padding:0 13px;font-size:12px}.ov-approval-table-card{overflow:hidden}.ov-approval-table-card .table-aba{font-size:11px}.ov-approval-table-card .table-aba th{background:#eef3f6;color:#173766;font-weight:800}.ov-approval-table-card .table-aba td{height:72px}.daily-validation-project{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#8290a5;font-size:9px}.daily-validation-project b{padding:6px 10px;border-radius:999px;background:#fff3d6;color:#a26100;font-size:8px}.validation-card{display:grid;gap:10px;padding:14px;border:1px solid #dfe7f1;border-radius:12px;background:#fff}.validation-card>strong{font-size:12px;color:#173766}.form-warning{padding:10px;border:1px solid #f0d28a;border-radius:10px;background:#fff8e5;color:#9a6b1b;font-size:9px;line-height:1.45}.button-primary{background:var(--teal-button)}.button-primary,.button-secondary{color:#fff;border-color:transparent}.button-secondary{background:#216bd1}.button-quiet{color:#365248;background:#fff;border-color:var(--line)}.button-danger{color:#fff;background:#c8453d;border-color:transparent}.button-sm{padding:8px 11px;font-size:11px}.button-md{padding:10px 15px;font-size:12px}.password-input-wrap{position:relative;display:block}.password-input-wrap input{padding-right:62px!important}.password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--green);font-size:10px;font-weight:800;padding:6px;cursor:pointer}.remember-login{display:flex!important;align-items:center;justify-content:space-between;gap:8px;font-size:11px!important;font-weight:500!important;color:#62746b!important}.remember-login input{width:15px!important;height:15px!important;vertical-align:-3px;margin-right:5px;accent-color:var(--green)}.remember-help{font-size:10px;color:#91a098}.app-frame{grid-template-columns:var(--sidebar-w) minmax(0,1fr)!important;background:#f3f6f9!important}.app-frame .sidebar.teal-theme,.sidebar.teal-theme{width:var(--sidebar-w)!important;background:#082c3c!important;background-image:none!important;border-right:1px solid rgba(255,255,255,.06)!important;padding:24px 16px 16px!important}.sidebar.teal-theme .brand{padding:0 4px 24px!important;border-bottom:1px solid rgba(255,255,255,.08)!important;margin-bottom:16px!important}.sidebar.teal-theme .nav-label{color:#64748b!important;font-size:9px!important;font-weight:800!important;letter-spacing:.14em!important;padding:0 8px!important;margin:0 0 8px!important}.sidebar.teal-theme .nav-link{color:#cbd5e1!important;padding:10px 12px!important;border-radius:8px!important;font-size:13px!important;font-weight:600!important;display:flex!important;align-items:center!important;gap:12px!important;transition:all .15s ease!important}.sidebar.teal-theme .nav-link:hover{background:rgba(255,255,255,.08)!important;color:#ffffff!important}.sidebar.teal-theme .nav-link.active{background:#0b7a74!important;color:#ffffff!important;font-weight:700!important;box-shadow:0 4px 12px rgba(11,122,116,.3)!important}.sidebar.teal-theme .nav-icon{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:20px!important;color:inherit!important}.sidebar.teal-theme .nav-subnav{padding-left:28px!important;display:flex!important;flex-direction:column!important;gap:3px!important;margin:4px 0 8px!important}.sidebar.teal-theme .nav-sublink{color:#94a3b8!important;padding:6px 10px!important;border-radius:6px!important;font-size:11px!important;font-weight:500!important;transition:all .15s ease!important}.sidebar.teal-theme .nav-sublink:hover{color:#ffffff!important;background:rgba(255,255,255,.05)!important}.sidebar.teal-theme .nav-sublink.active{color:#38bdf8!important;font-weight:700!important;background:rgba(56,189,248,.12)!important}.sidebar-motto{margin-top:auto!important;padding:14px 8px 4px!important;border-top:1px solid rgba(255,255,255,.08)!important}.sidebar-motto p{margin:0!important;font-size:9px!important;line-height:1.6!important;color:#64748b!important;font-weight:700!important;letter-spacing:.08em!important}.sidebar-motto small{display:block!important;font-size:9px!important;color:#475569!important;margin-top:6px!important}.sidebar-logout-btn{background:none!important;border:1px solid rgba(255,255,255,.15)!important;border-radius:6px!important;color:#94a3b8!important;font-size:11px!important;padding:5px 10px!important;margin-top:10px!important;cursor:pointer!important;width:100%!important;text-align:center!important;transition:all .15s ease!important}.sidebar-logout-btn:hover{color:#ffffff!important;border-color:rgba(255,255,255,.3)!important;background:rgba(255,255,255,.05)!important}.topbar.modern-bar{height:64px!important;padding:0 28px!important;background:#ffffff!important;border-bottom:1px solid #e2e8f0!important;justify-content:space-between!important;position:sticky!important;top:0!important;z-index:20!important}.topbar-search-box,.topbar.modern-bar{display:flex!important;align-items:center!important}.topbar-search-box{gap:8px!important;background:#f8fafc!important;border:1px solid #e2e8f0!important;border-radius:20px!important;padding:6px 14px!important;width:min(340px,calc(30vw / var(--ui-zoom)))!important;height:36px!important}.topbar-search-box input{border:none!important;background:transparent!important;outline:none!important;font-size:12px!important;color:#0f172a!important;width:100%!important}.topbar-search-icon{color:#94a3b8!important}.topbar-right-actions,.topbar-search-icon{display:flex!important;align-items:center!important}.topbar-right-actions{gap:14px!important}.filter-badge-btn{display:inline-flex!important;align-items:center!important;gap:6px!important;padding:6px 12px!important;border:1px solid #cbd5e1!important;border-radius:20px!important;background:#ffffff!important;cursor:pointer!important;font-size:12px!important;font-weight:600!important;color:#334155!important}.filter-badge-btn select{border:none!important;background:transparent!important;outline:none!important;font:inherit!important;cursor:pointer!important;color:inherit!important}.user-profile-badge{display:flex!important;align-items:center!important;gap:10px!important;padding:4px 8px!important;border-radius:20px!important}.user-profile-badge .avatar-circle{width:32px!important;height:32px!important;border-radius:50%!important;background:#cbd5e1!important;color:#1e293b!important;display:grid!important;place-items:center!important;font-weight:700!important;font-size:13px!important}.user-profile-badge .profile-copy strong{display:block!important;font-size:12px!important;color:#0f172a!important}.user-profile-badge .profile-copy span{display:block!important;font-size:10px!important;color:#64748b!important}.topbar-logout-link{background:none!important;border:none!important;color:#64748b!important;font-size:12px!important;cursor:pointer!important;padding:6px 8px!important;transition:color .15s!important}.topbar-logout-link:hover{color:#ef4444!important}.auth-layout{min-height:calc(100vh / var(--ui-zoom))!important;display:grid!important;grid-template-columns:1.1fr .9fr!important;background:#f8fafc!important}.auth-aside{overflow:hidden!important;background:linear-gradient(145deg,#05202e,#083448 60%,#0c4760)!important;padding:56px clamp(40px,calc(6vw / var(--ui-zoom)),90px)!important;justify-content:space-between!important;color:#ffffff!important}.auth-aside,.auth-aside-content{position:relative!important;display:flex!important;flex-direction:column!important}.auth-aside-content{z-index:2!important;height:100%!important;justify-content:flex-start!important;gap:0!important}.auth-teal-divider{width:50px!important;height:3px!important;background:#00e5ff!important;margin-top:16px!important;border-radius:2px!important}.auth-hero-block{margin-top:56px!important}.auth-hero-title{font-size:clamp(30px,calc(3.6vw / var(--ui-zoom)),46px)!important;font-weight:800!important;color:#ffffff!important;line-height:1.15!important;margin:0 0 10px!important;letter-spacing:-.03em!important}.auth-hero-subtitle{font-size:clamp(16px,calc(1.6vw / var(--ui-zoom)),21px)!important;color:#cbd5e1!important;font-weight:400!important;margin:0 0 40px!important}.auth-features-list{display:grid!important;gap:44px!important;margin-top:24px!important;margin-bottom:20px!important}.auth-feature-item{display:flex!important;align-items:center!important;gap:16px!important}.auth-feature-icon-box{width:36px!important;height:36px!important;border-radius:0!important;background:transparent!important;display:grid!important;place-items:center!important;color:#17b4ab!important;flex-shrink:0!important}.auth-feature-text strong{display:block!important;font-size:15px!important;font-weight:700!important;color:#ffffff!important}.auth-feature-text span{display:block!important;font-size:12px!important;color:#94a3b8!important;margin-top:2px!important}.auth-aside-bottom{margin-top:auto!important;display:flex!important;justify-content:space-between!important;align-items:flex-end!important;padding-top:32px!important;border-top:1px solid rgba(255,255,255,.08)!important}.auth-bottom-pillars{font-size:10px!important;font-weight:700!important;color:#64748b!important;letter-spacing:.1em!important;line-height:1.8!important}.auth-version-text{font-size:10px!important;color:#475569!important;margin-top:12px!important;font-weight:500!important}.auth-motto-stack{text-align:right!important;font-size:10px!important;font-weight:700!important;color:#64748b!important;letter-spacing:.12em!important;line-height:1.7!important}.auth-motto-stack span{display:block!important}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.auth-cyan-line{width:36px!important;height:2px!important;background:#00e5ff!important;margin:0 0 8px auto!important}.auth-backdrop-silhouette{position:absolute!important;inset:0!important;background:url(/images/login-bg.png) no-repeat bottom!important;background-size:cover!important;opacity:.45!important;pointer-events:none!important;z-index:1!important}.auth-card-wrap{display:grid!important;place-items:center!important;padding:36px!important;background:linear-gradient(135deg,#f0f7ff,#e8f4fd 50%,#f0f9ff)!important;position:relative!important;overflow:hidden!important}.auth-card-wrap:before{top:-20px!important;right:-20px!important;width:340px!important;height:340px!important;background:linear-gradient(135deg,rgba(186,230,253,.5),rgba(147,197,253,.15) 60%,transparent)!important;border-radius:0 20px 0 100%!important}.auth-card-wrap:after,.auth-card-wrap:before{content:""!important;position:absolute!important;pointer-events:none!important}.auth-card-wrap:after{bottom:0!important;right:0!important;width:180px!important;height:180px!important;background:linear-gradient(225deg,rgba(186,230,253,.25),transparent 70%)!important;border-radius:0 0 20px 0!important}.auth-card{width:min(100%,460px)!important;background:#ffffff!important;border-radius:20px!important;padding:44px 40px!important;box-shadow:0 20px 45px -10px rgba(12,44,69,.08),0 0 1px 1px rgba(12,44,69,.04)!important;position:relative!important;z-index:1!important}.auth-card-logo-wrap{display:flex!important;justify-content:center!important;margin-bottom:20px!important}.auth-card-title{font-size:26px!important;font-weight:800!important;color:#0f172a!important;text-align:center!important;margin:0 0 6px!important;letter-spacing:-.02em!important}.auth-card-subtitle{font-size:13px!important;color:#64748b!important;text-align:center!important;margin:0 0 32px!important}.auth-input-label{display:grid!important;gap:6px!important;margin-bottom:18px!important}.auth-label-text{font-size:12px!important;font-weight:700!important;color:#334155!important}.auth-input-field{width:100%!important;height:52px!important;border:1px solid #d0d9e6!important;border-radius:8px!important;padding:0 14px 0 46px!important;font-size:14px!important;color:#0f172a!important;outline:none!important;transition:all .15s ease!important;background:#ffffff!important}.auth-input-field:focus{border-color:#17b4ab!important;box-shadow:0 0 0 3px rgba(23,180,171,.15)!important}.remember-login-row{justify-content:space-between!important;margin:4px 0 8px!important}.remember-checkbox-label,.remember-login-row{display:flex!important;align-items:center!important}.remember-checkbox-label{gap:8px!important;font-size:13px!important;color:#475569!important;cursor:pointer!important}.auth-checkbox{width:16px!important;height:16px!important;accent-color:#17b4ab!important;cursor:pointer!important}.forgot-password-btn{background:none!important;border:none!important;color:#0284c7!important;font-size:12px!important;font-weight:600!important;cursor:pointer!important}.forgot-password-btn:hover{text-decoration:underline!important}.auth-primary-submit-btn{width:100%!important;height:52px!important;border-radius:8px!important;background:#0e4070!important;color:#ffffff!important;font-size:15px!important;font-weight:700!important;border:none!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;box-shadow:0 4px 16px rgba(14,64,112,.22)!important;transition:all .15s ease!important;letter-spacing:-.01em!important}.auth-primary-submit-btn:hover{background:#0a3059!important;transform:translateY(-1px)!important}.auth-primary-submit-btn:disabled{opacity:.65!important;cursor:not-allowed!important}.auth-footer-notice{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;font-size:11px!important;color:#64748b!important;margin-top:28px!important}.form-info-banner{background:#f0f9ff!important;border:1px solid #bae6fd!important;border-radius:8px!important;padding:10px 14px!important;font-size:12px!important;color:#0369a1!important;margin-bottom:16px!important}@media (max-width:720px){.auth-layout{display:block!important;min-height:calc(100dvh / var(--ui-zoom))!important;width:100%!important;overflow-x:hidden!important}.auth-aside{display:none!important}.auth-card-wrap{display:grid!important;min-height:calc(100dvh / var(--ui-zoom))!important;width:100%!important;padding:20px 16px!important;place-items:center!important}.auth-card{width:100%!important;max-width:460px!important;padding:32px 23px!important}}.executive-page-header{margin-bottom:24px!important}.executive-title{font-size:26px!important;font-weight:800!important;color:#0f172a!important;margin:0 0 4px!important;letter-spacing:-.02em!important}.executive-subtitle{font-size:13px!important;color:#64748b!important;margin:0!important}.executive-kpi-grid{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:16px!important;margin-bottom:24px!important}.executive-kpi-grid>:first-child{grid-column:span 2}.kpi-stat-card{background:#ffffff!important;border:1px solid #e2e8f0!important;border-radius:12px!important;padding:18px 20px!important;display:flex!important;flex-direction:column!important;box-shadow:0 1px 3px rgba(0,0,0,.03)!important;text-decoration:none!important;transition:transform .15s,box-shadow .15s!important}.kpi-stat-card:hover{transform:translateY(-2px)!important;box-shadow:0 6px 16px rgba(0,0,0,.06)!important}.kpi-stat-header{display:flex!important;align-items:flex-start!important;gap:10px!important;margin-bottom:10px!important;min-height:48px!important}.kpi-icon-square{width:36px!important;height:36px!important;border-radius:9px!important;display:grid!important;place-items:center!important;flex-shrink:0!important}.kpi-icon-green{background:#10b981!important;color:#ffffff!important}.kpi-icon-amber{background:#f59e0b!important;color:#ffffff!important}.kpi-icon-blue{background:#0284c7!important;color:#ffffff!important}.kpi-icon-purple{background:#8b5cf6!important;color:#ffffff!important}.kpi-stat-label{font-size:11.5px!important;font-weight:700!important;color:#475569!important;line-height:1.35!important}.kpi-stat-number{font-size:38px!important;font-weight:800!important;color:#0f172a!important;margin-bottom:4px!important;font-family:Manrope,DM Sans,sans-serif!important;letter-spacing:-.04em!important;line-height:1.1!important}.kpi-stat-footer{font-size:11px!important;color:#64748b!important;margin-top:auto!important}.approved-costs-panel{background:#ffffff!important;border:1px solid #e2e8f0!important;border-radius:14px!important;padding:22px!important;margin-bottom:24px!important;box-shadow:0 1px 3px rgba(0,0,0,.03)!important}.approved-cost-head{display:flex!important;justify-content:space-between!important;align-items:center!important;margin-bottom:16px!important}.period-badge-dropdown{display:inline-flex!important;align-items:center!important;gap:6px!important;padding:5px 12px!important;border:1px solid #cbd5e1!important;border-radius:20px!important;font-size:11px!important;font-weight:600!important;color:#334155!important;background:#ffffff!important}.approved-cost-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important}.approved-cost-split{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:16px}.approved-cost-split-sub{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media (max-width:900px){.approved-cost-split,.approved-cost-split-sub{grid-template-columns:1fr}}.approved-cost-card{padding:20px 22px!important;border-radius:12px!important;display:flex!important;flex-direction:column!important}.approved-cost-card.card-cyan{background:#f0fdf9!important;border:1px solid #ccfbf1!important}.approved-cost-card.card-cream{background:#fffdf5!important;border:1px solid #fef3c7!important}.approved-cost-card.card-gray{background:#f8fafc!important;border:1px solid #e2e8f0!important}.approved-cost-card.card-orange{background:#fff7ed!important;border:1px solid #fed7aa!important}.approved-card-label{font-size:12px!important;font-weight:600!important;color:#475569!important;margin-bottom:8px!important}.approved-card-value{font-size:26px!important;font-weight:800!important;color:#0f172a!important;margin-bottom:6px!important;letter-spacing:-.02em!important}.approved-card-sub{font-size:11px!important;color:#64748b!important}.executive-dashboard-main-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:20px!important;align-items:start!important;width:100%!important;min-width:0!important}.executive-col-left,.executive-col-left>*,.executive-col-right,.executive-col-right>*{min-width:0!important;max-width:100%!important}.executive-col-left,.executive-col-right{align-self:start!important}@media (max-width:1024px){.executive-dashboard-main-grid{grid-template-columns:1fr!important;gap:16px!important}.executive-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media (max-width:640px){.executive-kpi-grid{grid-template-columns:1fr!important}.executive-kpi-grid>:first-child{grid-column:auto}.approved-cost-grid{grid-template-columns:1fr!important}}.card-box{background:#ffffff!important;border:1px solid #e2e8f0!important;border-radius:14px!important;padding:20px!important;box-shadow:0 1px 3px rgba(0,0,0,.03)!important}.card-box-header{display:flex!important;justify-content:space-between!important;align-items:center!important;margin-bottom:14px!important}.header-view-all-link{font-size:12px!important;font-weight:600!important;color:#0284c7!important;text-decoration:none!important}.header-view-all-link:hover{text-decoration:underline!important}.approval-filter-tabs{display:flex!important;gap:8px!important;margin-bottom:14px!important;flex-wrap:wrap!important}.table-responsive-wrap{width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}.table-responsive-wrap>.mockup-data-table:not(.executive-approval-table){width:100%!important;min-width:max-content!important;table-layout:auto!important}.table-responsive-wrap>.executive-approval-table{min-width:0!important;width:100%!important;table-layout:fixed!important}.executive-approval-table td,.executive-approval-table th{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.executive-approval-table td:nth-child(7),.executive-approval-table th:nth-child(7){overflow:visible!important;white-space:nowrap!important}@media (max-width:768px){.table-responsive-wrap>.mockup-data-table{min-width:680px!important}}.tab-pill{padding:6px 14px!important;border-radius:20px!important;font-size:12px!important;font-weight:600!important;background:#f1f5f9!important;color:#475569!important;border:none!important;cursor:pointer!important;transition:all .15s!important}.tab-pill:hover{background:#e2e8f0!important}.tab-pill-active{background:#ccfbf1!important;color:#0f766e!important;font-weight:700!important}.mockup-data-table{width:100%!important;table-layout:fixed!important;border-collapse:collapse!important;text-align:left!important;font-size:12px!important}.mockup-data-table th{padding:10px 12px!important;color:#64748b!important;font-weight:700!important;border-bottom:1px solid #e2e8f0!important;font-size:11px!important;background:transparent!important}.mockup-data-table td,.mockup-data-table th{overflow:hidden!important;text-overflow:ellipsis!important}.mockup-data-table td{padding:12px!important;border-bottom:1px solid #f1f5f9!important;vertical-align:middle!important}.pill-badge{display:inline-flex!important;padding:4px 10px!important;border-radius:14px!important;font-size:11px!important;font-weight:700!important;white-space:nowrap!important}.pill-green{background:#dcfce7!important;color:#15803d!important}.pill-red{background:#fee2e2!important;color:#b91c1c!important}.pill-amber{background:#fef3c7!important;color:#b45309!important}.pill-purple{background:#f3e8ff!important;color:#7e22ce!important}.progress-bar-bg{height:6px!important;border-radius:4px!important;background:#e2e8f0!important;overflow:hidden!important}.progress-bar-fill{height:100%!important;background:#0b7a74!important;border-radius:4px!important;transition:width .3s ease!important}.alerts-stack{display:flex!important;flex-direction:column!important;gap:10px!important}.mockup-alert-card{display:flex!important;align-items:flex-start!important;gap:12px!important;padding:14px 16px!important;border-radius:10px!important}.mockup-alert-card.alert-red{background:#fef2f2!important;border:1px solid #fee2e2!important}.mockup-alert-card.alert-orange{background:#fff7ed!important;border:1px solid #ffedd5!important}.mockup-alert-card.alert-amber{background:#fefce8!important;border:1px solid #fef9c3!important}.alert-circle-icon{width:24px!important;height:24px!important;border-radius:50%!important;display:grid!important;place-items:center!important;font-weight:800!important;font-size:12px!important;flex-shrink:0!important}.icon-red{background:#ef4444!important}.icon-orange,.icon-red{color:#ffffff!important}.icon-orange{background:#f97316!important}.icon-amber{background:#eab308!important;color:#ffffff!important}.alert-body strong{display:block!important;font-size:12px!important;color:#0f172a!important;margin-bottom:2px!important}.alert-body p{font-size:11px!important;color:#64748b!important;margin:0!important;line-height:1.4!important}.site-progress-list{display:flex!important;flex-direction:column!important;gap:10px!important}.site-progress-row{display:flex!important;justify-content:space-between!important;align-items:center!important;padding:8px 0!important;border-bottom:1px solid #f1f5f9!important}.site-name{font-size:13px!important;font-weight:600!important;color:#0f172a!important}.contracts-page-wrapper{display:flex;flex-direction:column;gap:16px}.contracts-toolbar-bar{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;background:transparent;flex-wrap:wrap}.contracts-toolbar-left{display:flex;align-items:center;gap:8px;flex:1;min-width:0;flex-wrap:wrap}.contracts-table td.cell-name{overflow:hidden}@media(max-width:720px){.contracts-toolbar-bar{flex-direction:column;align-items:stretch}.contracts-toolbar-left{flex-wrap:wrap;width:100%}.contracts-search-container{width:100%!important}}.contracts-search-container{position:relative;flex:1 1 200px;min-width:180px;max-width:320px}.contracts-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);pointer-events:none;display:flex;align-items:center}.contracts-search-box{width:100%;height:38px;padding:0 12px 0 34px;background:#ffffff;border:1px solid #cbd5e1;border-radius:8px;font-size:12px;color:#1e293b;outline:none;transition:border-color .2s}.contracts-search-box:focus{border-color:#0b7a74;box-shadow:0 0 0 2px rgba(11,122,116,.15)}.contracts-select-wrapper{position:relative}.contracts-select{height:38px;padding:0 28px 0 12px;background:#ffffff;border:1px solid #cbd5e1;border-radius:8px;font-size:12px;color:#334155;outline:none;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.contracts-select:focus{border-color:#0b7a74}.contracts-toolbar-right{display:flex;align-items:center;gap:10px}.contracts-btn-export{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 14px;background:#ffffff;border:1px solid #cbd5e1;border-radius:8px;font-size:12px;font-weight:500;color:#475569;cursor:pointer;transition:all .2s}.contracts-btn-export:hover{background:#f8fafc;color:#1e293b;border-color:#94a3b8}.contracts-btn-create{display:inline-flex;align-items:center;justify-content:center;height:38px;padding:0 16px;background:var(--teal-button);border:none;border-radius:8px;font-size:12px;font-weight:600;color:#ffffff;cursor:pointer;text-decoration:none;transition:background .2s}.contracts-btn-create:hover{background:var(--teal-button-hover)}.contracts-card{background:#ffffff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,.04);overflow:hidden}.contracts-card-header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid #f1f5f9}.contracts-card-title{font-size:15px;font-weight:700;color:#0f172a;margin:0}.contracts-card-meta{font-size:12px;color:#64748b}.contracts-table{width:100%!important;table-layout:fixed!important;border-collapse:collapse!important;font-size:11px!important;text-align:left!important}.contracts-table thead th{padding:10px 8px;background:#f2f5f9;font-size:11px;font-weight:700;color:#6b7f96;letter-spacing:.03em;border-bottom:1px solid #e2e8f0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contracts-table tbody tr{border-bottom:1px solid #f1f5f9;transition:background .15s}.contracts-table tbody tr:hover{background:#f8fafc}.contracts-table tbody td{padding:10px 8px;vertical-align:middle;overflow:hidden;text-overflow:ellipsis}.cell-code{font-weight:700;color:#0f172a;white-space:nowrap}.cell-name,.cell-project-title,.contracts-table td.cell-name{overflow:hidden!important}.cell-project-title{display:block!important;font-weight:700;color:#0f172a;text-decoration:none;font-size:12px;text-overflow:ellipsis!important;white-space:nowrap!important}.cell-project-title:hover{color:#0b7a74;text-decoration:underline}.cell-value{font-weight:700;color:#0f172a;white-space:nowrap}.cell-dates{font-size:11px;color:#475569;white-space:nowrap}.cell-progress{min-width:110px}.cell-progress-top{display:flex;justify-content:space-between;font-size:11px;font-weight:700;color:#0f172a;margin-bottom:4px}.contracts-progress-track{width:100%;height:6px;background:#e2e8f0;border-radius:999px;overflow:hidden}.contracts-progress-fill{height:100%;border-radius:999px;transition:width .3s}.contracts-progress-fill.is-ok{background:#10b981}.contracts-progress-fill.is-warning{background:#f59e0b}.cell-counts{white-space:nowrap}.cell-counts-groups{font-size:11px;color:#475569}.cell-counts-items{font-size:11px;font-weight:700;color:#0f172a}.cell-alerts-wrap{display:flex;gap:4px;flex-wrap:wrap}.cell-alert-btn,.cell-payment-btn{background:transparent;border:none;padding:0;cursor:pointer;text-align:left}.pill-success{background:#e6f4ea;color:#137333}.pill-success,.pill-warning{display:inline-block;padding:3px 9px;font-size:11px;font-weight:600;border-radius:6px;white-space:nowrap!important;word-break:keep-all!important}.pill-warning{background:#fef7e0;color:#b06000;margin-right:4px}.pill-danger{display:inline-block;padding:3px 9px;background:#fce8e6;color:#c5221f;font-size:11px;font-weight:600;border-radius:6px;white-space:nowrap!important;word-break:keep-all!important}.cell-payment-counts{font-size:11px;color:#475569}.cell-payment-amount{font-size:11px;font-weight:700;color:#0f172a}.status-pill-v1{display:inline-flex;align-items:center;justify-content:center;padding:3px 8px;border-radius:5px;font-size:10px;font-weight:600;white-space:normal;word-break:keep-all;line-height:1.4}.status-active{background:#e6f4ea;color:#137333}.status-paused{background:#fef7e0;color:#b06000}.status-done{background:#e8f0fe;color:#1a73e8}.status-new{background:#e0f2fe;color:#0369a1}.status-warning{background:#fef7e0;color:#b06000}.status-danger{background:#fce8e6;color:#c5221f}.contracts-table tbody tr.row-menu-active{position:relative!important;z-index:90!important}.cell-actions,.contracts-table tbody td.cell-actions{text-align:right;white-space:nowrap;padding:8px 10px!important;overflow:visible!important;position:relative!important}.contracts-table tbody td.cell-actions.cell-menu-active{z-index:100!important}.cell-actions-inner{display:flex;align-items:center;justify-content:flex-end;gap:8px;width:100%;overflow:visible!important;position:relative!important}.cell-action-view{display:inline-flex;align-items:center;padding:5px 10px;border-radius:6px;border:1px solid #d1e8e5;background:#f0fafa;font-size:11px;font-weight:700;color:#0b7a74;text-decoration:none;white-space:nowrap;transition:all .15s}.cell-action-view:hover{background:#e0f2f1;border-color:#0b7a74}.cell-menu-wrapper{position:relative!important}.cell-menu-wrapper.is-open{z-index:1000!important}.cell-menu-btn{background:transparent;border:none;font-size:16px;color:#64748b;cursor:pointer;padding:2px 6px;border-radius:4px}.cell-menu-btn:hover{background:#f1f5f9;color:#0f172a}.cell-dropdown-menu{position:fixed!important;background:#ffffff!important;border:1px solid #e2e8f0!important;border-radius:8px!important;box-shadow:0 10px 25px -5px rgba(0,0,0,.2),0 8px 10px -6px rgba(0,0,0,.1)!important;min-width:160px!important;z-index:99999!important;padding:4px 0!important}.cell-dropdown-menu:empty{display:none!important;padding:0!important;border:none!important;box-shadow:none!important;width:0!important;height:0!important;min-width:0!important}.cell-dropdown-item{display:block;width:100%;padding:8px 12px;text-align:left;background:none;border:none;font-size:12px;color:#1e293b;cursor:pointer}.cell-dropdown-item:hover{background:#f8fafc;color:#0b7a74}.contracts-card-footer{padding:12px 20px;background:#f8fafc;border-top:1px solid #f1f5f9}.contracts-footer-note{font-size:11px;color:#64748b}.hd07-modal-container{padding:20px}.hd07-panel-header{margin-bottom:12px}.hd07-panel-title{font-size:15px;font-weight:700;color:#0f172a}.hd07-panel-sub{font-size:11px;color:#64748b}.hd07-table{width:100%;border-collapse:collapse;font-size:12px}.hd07-table thead th{padding:8px 10px;background:#f8fafc;font-size:11px;font-weight:700;color:#64748b;border-bottom:1px solid #e2e8f0;text-align:left}.hd07-table tbody td{padding:8px 10px;border-bottom:1px solid #f1f5f9}.hd07-panel-footer{display:flex;justify-content:space-between;align-items:center;margin-top:14px}.hd07-footer-hint{font-size:11px;color:#64748b}.hd07-btn-close{padding:6px 14px;background:#ffffff;border:1px solid #cbd5e1;border-radius:6px;font-size:12px;color:#475569;cursor:pointer}.p360-container{display:flex;flex-direction:column;gap:16px}.p360-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:12px}.p360-title{font-size:24px;font-weight:700;color:#0f172a;margin:0 0 4px}.p360-breadcrumb{display:flex;align-items:center;gap:6px;font-size:12px;color:#64748b}.p360-breadcrumb-item,.p360-breadcrumb-link{color:#64748b;cursor:pointer;text-decoration:none}.p360-breadcrumb-item.is-active{color:#0f172a;font-weight:700}.p360-breadcrumb-sep{color:#cbd5e1}.p360-header-right{display:flex;align-items:center;gap:10px}.p360-handoff-badge{display:inline-block;padding:6px 12px;background:#e6f4ea;color:#137333;font-size:12px;font-weight:600;border-radius:6px}.p360-btn-handoff{border-radius:8px}.p360-btn-handoff,.p360-btn-import{height:34px;padding:0 14px;font-size:12px}.p360-btn-import{display:inline-flex;align-items:center;gap:6px;background:#ffffff;border:1px solid #cbd5e1;border-radius:8px;font-weight:600;color:#475569;text-decoration:none}.p360-btn-import:hover{background:#f8fafc}.p360-layout{display:block}@media (max-width:1024px){.p360-layout{grid-template-columns:1fr}}.p360-tree-card{background:#ffffff;border:1px solid #e2e8f0;border-radius:12px;padding:16px}.p360-tree-header{border-bottom:1px solid #f1f5f9;padding-bottom:12px;margin-bottom:12px}.p360-tree-title{font-size:14px;font-weight:700;color:#0f172a;display:block;margin-bottom:6px}.p360-tree-project-badge{display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:700;color:#0f172a}.p360-pct-pill{padding:1px 8px;background:#e6f4ea;color:#137333;border-radius:999px;font-size:11px}.p360-tree-body{display:flex;flex-direction:column;gap:4px}.p360-node-row{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;font-size:12px;color:#1e293b;cursor:pointer;transition:background .15s}.p360-node-row:hover{background:#f1f5f9}.p360-rename-row{display:flex;align-items:center;gap:4px;flex:1;min-width:0}.p360-rename-btn{flex-shrink:0;background:transparent;border:none;cursor:pointer;color:#94a3b8;font-size:13px;padding:0 3px;line-height:1;border-radius:3px;opacity:0;transition:opacity .15s,color .15s}.p360-node-row:hover .p360-rename-btn{opacity:1}.p360-rename-btn:hover{color:#0d9488;background:#f0fdfa}.p360-edit-popup{margin:2px 8px 6px 24px;padding:10px 12px;background:#fff;border:1px solid #0d9488;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.1);display:flex;flex-direction:column;gap:4px;z-index:10}.p360-edit-popup-label{font-size:11px;color:#64748b;font-weight:500;margin-top:4px}.p360-edit-popup-input{width:100%;padding:6px 8px;border:1px solid #cbd5e1;border-radius:6px;font-size:12px;outline:none;box-sizing:border-box}.p360-edit-popup-input:focus{border-color:#0d9488;box-shadow:0 0 0 2px rgba(13,148,136,.15)}.p360-edit-popup-actions{display:flex;gap:8px;margin-top:4px;justify-content:flex-end}.p360-edit-popup-save{background:#0d9488;color:#fff;border:none;border-radius:6px;padding:5px 14px;font-size:12px;font-weight:600;cursor:pointer}.p360-edit-popup-save:hover{background:#0f766e}.p360-edit-popup-cancel{background:transparent;color:#64748b;border:1px solid #e2e8f0;border-radius:6px;padding:5px 14px;font-size:12px;cursor:pointer}.p360-edit-popup-cancel:hover{background:#f1f5f9}.p360-node-row.is-selected{background:#e0f2fe;color:#0369a1;font-weight:600}.p360-node-root{font-weight:700;margin-bottom:6px}.p360-group-block{margin-bottom:4px}.p360-node-group{font-weight:600}.p360-arrow-btn{background:none;border:none;cursor:pointer;padding:0;color:#64748b;font-size:10px}.p360-group-pct{margin-left:auto;font-size:11px;color:#64748b}.p360-items-list{padding-left:20px;display:flex;flex-direction:column;gap:2px}.p360-node-item{font-size:12px;color:#475569}.p360-bullet{color:#94a3b8}.p360-tree-legend{margin-top:20px;padding-top:14px;border-top:1px solid #f1f5f9;font-size:11px;color:#64748b;line-height:1.5}.p360-tree-legend strong{color:#0f172a;display:block;margin-bottom:2px}.p360-content-card{background:#ffffff;border:1px solid #e2e8f0;border-radius:12px;padding:20px}.p360-tab-bar{gap:24px}.p360-tab-btn{border:none;padding:10px 0;position:relative;transition:color .2s}.p360-tab-btn.is-active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:#0b7a74}.p360-kpi-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}@media (max-width:900px){.p360-kpi-grid-4{grid-template-columns:repeat(2,1fr)}}.p360-kpi-card{background:#ffffff;border:1px solid #e2e8f0;border-radius:10px;padding:14px;min-width:0;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start}.p360-kpi-card>*{max-width:100%}.p360-kpi-title{font-size:11px;font-weight:600;color:#64748b;margin-bottom:auto;padding-bottom:6px}.p360-kpi-code,.p360-kpi-val{font-size:18px;font-weight:800;color:#0f172a;margin-bottom:4px}.p360-kpi-date{font-size:14px;font-weight:700;color:#0d9488;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.p360-kpi-sub{font-size:11px;color:#64748b}.p360-kpi-bar-track{width:100%;height:6px;background:#e2e8f0;border-radius:999px;overflow:hidden;margin:6px 0 4px}.p360-kpi-bar-fill{height:100%;background:#0b7a74;border-radius:999px}.p360-kpi-source-note{font-size:10px;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.p360-kpi-sub-link{background:none;border:none;padding:0;color:#0b7a74;font-size:11px;font-weight:600;cursor:pointer;margin-top:4px;display:block}.p360-matrix-card{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;margin-bottom:16px}.p360-matrix-header{padding:12px 16px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.p360-matrix-title{font-size:13px;font-weight:700;color:#0f172a;margin:0}.p360-matrix-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:12px}.p360-matrix-table thead th{padding:9px 10px;background:#f8fafc;font-size:11px;font-weight:700;color:#64748b;border-bottom:2px solid #e2e8f0;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.p360-matrix-table tbody td{padding:9px 10px;border-bottom:1px solid #f1f5f9;vertical-align:middle;overflow:hidden}.p360-matrix-table tbody tr:hover{background:#f8fafc}.p360-matrix-name{font-weight:600;color:#0f172a;overflow:hidden}.p360-matrix-note{color:#64748b;font-size:11px;overflow:hidden}.p360-callout-warning{background:#fffbeb;border:1px solid #fef3c7;border-radius:8px;padding:12px 16px;font-size:12px;color:#92400e;margin-bottom:20px}.p360-callout-warning strong{display:block;margin-bottom:2px}.p360-callout-warning p{margin:0;font-size:11px}.p360-summary-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}@media (max-width:800px){.p360-summary-grid-3{grid-template-columns:1fr}}.p360-summary-card{background:#ffffff;border:1px solid #e2e8f0;border-radius:10px;padding:14px}.p360-summary-title{font-size:12px;font-weight:700;color:#0f172a;margin-bottom:10px}.p360-summary-counts{display:flex;gap:16px}.p360-count-num{color:#0f172a}.p360-count-danger,.p360-count-num{font-size:16px;font-weight:800;display:block}.p360-count-danger{color:#ea580c}.p360-count-label{font-size:11px;color:#64748b}.p360-summary-text{font-size:11px;color:#475569;margin:0 0 6px}.p360-summary-alert{font-size:11px;font-weight:700;color:#dc2626}.p360-detail-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.p360-detail-title{font-size:18px;font-weight:700;color:#0f172a;margin:0 0 4px}.p360-detail-desc{font-size:12px;color:#64748b;margin:0}.p360-kpi-grid-5{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:16px}@media (max-width:900px){.p360-kpi-grid-5{grid-template-columns:repeat(2,1fr)}}.p360-kpi-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px}.p360-kpi-box-label{font-size:11px;color:#64748b;margin-bottom:4px}.p360-kpi-box-val{font-size:18px;font-weight:800;color:#0f172a}.p360-val-danger{color:#ea580c}.p360-kpi-box-sub{font-size:10px;color:#94a3b8}.p360-notice-bar{background:#fefce8;border:1px solid #fef08a;border-radius:8px;padding:10px 14px;font-size:12px;color:#854d0e;margin-bottom:16px}.p360-items-card{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;margin-bottom:12px}.p360-items-header{padding:12px 16px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.p360-items-title{font-size:13px;font-weight:700;color:#0f172a;margin:0}.p360-items-table{width:100%;border-collapse:collapse;font-size:12px}.p360-items-table thead th{padding:10px 12px;background:#f8fafc;font-size:11px;font-weight:700;color:#64748b;border-bottom:1px solid #e2e8f0;text-align:left}.p360-items-table tbody tr{border-bottom:1px solid #f1f5f9;cursor:pointer;transition:background .15s}.p360-items-table tbody tr:hover{background:#f8fafc}.p360-items-table tbody td{padding:10px 12px}.p360-mini-progress{display:flex;align-items:center;gap:8px}.p360-mini-bar-track{width:60px;height:5px;background:#e2e8f0;border-radius:999px;overflow:hidden}.p360-mini-bar-fill{height:100%;background:#0b7a74;border-radius:999px}.p360-chevron-cell{color:#94a3b8;font-size:16px}.p360-bottom-note{font-size:11px;color:#64748b}.p360-badges-wrap{display:flex;gap:6px}.p360-item-meta-bar{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px 16px;margin-bottom:16px}.p360-meta-col{display:flex;flex-direction:column}.p360-meta-label{font-size:10px;font-weight:600;color:#64748b;text-transform:uppercase;margin-bottom:2px}.p360-meta-val{font-size:13px;color:#0f172a}.p360-meta-sub{font-size:10px;color:#94a3b8}.p360-val-pct{font-size:15px;font-weight:800}.p360-meta-bar-track{width:100%;height:5px;background:#e2e8f0;border-radius:999px;overflow:hidden;margin-top:4px}.p360-meta-bar-fill{height:100%;background:#f59e0b;border-radius:999px}.p360-two-blocks{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.p360-block-card{border:1px solid #e2e8f0;border-radius:10px;padding:16px}.p360-block-title{font-size:13px;font-weight:700;color:#0f172a;margin:0 0 12px}.p360-block-stats{display:flex;align-items:center;gap:20px;margin-bottom:12px}.p360-block-label{font-size:11px;color:#64748b;display:block}.p360-block-value{font-size:14px;font-weight:700;color:#0f172a}.p360-file-attachment{display:flex;justify-content:space-between;align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:8px 12px;font-size:12px}.p360-file-name{font-weight:600;color:#0f172a}.p360-file-actions{display:flex;align-items:center;gap:6px;color:#0b7a74;font-size:11px;cursor:pointer}.p360-action-sep{color:#cbd5e1}.p360-external-link{display:inline-block;font-size:11px;font-weight:600;color:#0b7a74;text-decoration:none;margin-top:10px}.p360-site-card,.p360-timeline-card{border:1px solid #e2e8f0;border-radius:10px;padding:16px;margin-bottom:16px}.p360-site-info{display:grid;grid-template-columns:200px 1fr;gap:16px;margin-bottom:16px}.p360-site-pct-num{font-size:20px;font-weight:800;color:#0f172a;margin:4px 0}.p360-site-bar-track{width:100%;height:6px;background:#e2e8f0;border-radius:999px;overflow:hidden}.p360-site-bar-fill{height:100%;background:#f59e0b;border-radius:999px}.p360-log-date{font-size:12px;font-weight:700;color:#0f172a;margin:2px 0}.p360-log-content{font-size:11px;color:#64748b;margin:0}.p360-site-btn-row{display:flex;gap:8px;flex-wrap:wrap}.p360-site-btn{padding:6px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;font-size:12px;color:#475569;cursor:pointer}.p360-site-btn:hover{background:#f1f5f9}.p360-timeline-table{width:100%;border-collapse:collapse;font-size:12px}.p360-timeline-table thead th{padding:8px 10px;background:#f8fafc;font-size:11px;font-weight:700;color:#64748b;border-bottom:1px solid #e2e8f0;text-align:left}.p360-timeline-table tbody td{padding:8px 10px;border-bottom:1px solid #f1f5f9}.p360-muted-col{font-size:11px;color:#64748b}.import-page-wrapper{display:flex;flex-direction:column;gap:16px}.import-card{background:#ffffff;border:1px solid #e2e8f0;border-radius:12px;padding:24px}.import-stepper{display:flex;align-items:center;justify-content:space-around;border-bottom:1px solid #e2e8f0;padding-bottom:18px;margin-bottom:20px}.import-step-item{display:flex;align-items:center;gap:8px;font-size:13px;color:#94a3b8;cursor:pointer}.import-step-item.is-active{color:#0f172a;font-weight:700}.import-step-number{width:24px;height:24px;border-radius:50%;background:#f1f5f9;display:grid;place-items:center;font-size:11px;font-weight:700}.import-step-item.is-active .import-step-number{background:#0b7a74;color:#ffffff}.import-file-banner{display:flex;justify-content:space-between;align-items:center;background:#f0fdfa;border:1px dashed #0b7a74;border-radius:8px;padding:14px 18px;margin-bottom:24px}.import-file-info{display:flex;align-items:center;gap:12px}.import-file-icon{font-size:20px;color:#0b7a74}.import-file-title{font-size:13px;color:#0b7a74}.import-file-meta{font-size:11px;color:#64748b}.import-section{margin-bottom:24px}.import-section-heading{font-size:13px;font-weight:700;color:#0f172a;margin:0 0 12px}.import-mapping-grid-6{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}@media (max-width:768px){.import-mapping-grid-6{grid-template-columns:1fr}}.import-field-group{display:flex;flex-direction:column;gap:4px}.import-field-label{font-size:11px;font-weight:700;color:#64748b}.import-footer-bar{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e2e8f0;padding-top:16px;margin-top:20px}.approvals-page-wrapper{display:flex;flex-direction:column;gap:16px}.approvals-header{margin-bottom:4px}.approvals-title{font-size:24px;font-weight:700;color:#0f172a;margin:0 0 4px;font-family:var(--font-manrope,Manrope,system-ui,sans-serif)}.approvals-subtitle{font-size:12px;color:#64748b;margin:0 0 6px}.approvals-breadcrumb{display:flex;align-items:center;gap:6px;font-size:11px;color:#94a3b8}.approvals-breadcrumb-link{color:#64748b;text-decoration:none}.approvals-breadcrumb-current{color:#0f172a;font-weight:600}.approvals-toolbar-row{justify-content:space-between;gap:12px}.approvals-tabs-group,.approvals-toolbar-row{display:flex;align-items:center;flex-wrap:wrap}.approvals-tabs-group{gap:8px}.approvals-tab-pill{padding:6px 14px;background:#ffffff;border:1px solid #cbd5e1;border-radius:999px;font-size:12px;font-weight:500;color:#475569;cursor:pointer;transition:all .15s}.approvals-tab-pill:hover{background:#f8fafc;color:#0f172a}.approvals-tab-pill.is-active{background:#e6f4ea;border-color:#34a853;color:#137333;font-weight:700}.approvals-search-container{position:relative;width:280px}.approvals-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);pointer-events:none;display:flex;align-items:center;color:#94a3b8}.approvals-search-input{width:100%;height:36px;padding:0 12px 0 32px;background:#ffffff;border:1px solid #cbd5e1;border-radius:8px;font-size:12px;color:#1e293b;outline:none}.approvals-search-input:focus{border-color:#0b7a74;box-shadow:0 0 0 2px rgba(11,122,116,.15)}.approvals-card{background:#ffffff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,.04);overflow:hidden}.approvals-card-header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;border-bottom:1px solid #f1f5f9}.approvals-card-title{font-size:14px;font-weight:700;color:#0f172a;margin:0}.approvals-card-meta{font-size:11px;color:#64748b}.approvals-card-footer{padding:12px 20px;background:#f8fafc;border-top:1px solid #f1f5f9}.approvals-footer-rule{font-size:11px;color:#64748b;line-height:1.5}.order-detail-page{display:flex;flex-direction:column;gap:16px}.order-summary-card{display:flex;justify-content:space-between;align-items:center;background:#ffffff;border:1px solid #e2e8f0;border-radius:12px;padding:18px 24px;gap:20px}@media (max-width:900px){.order-summary-card{flex-direction:column;align-items:stretch}}.order-code-row{display:flex;align-items:center;gap:10px;margin-bottom:6px}.order-code-title{font-size:22px;font-weight:800;color:#0f172a;margin:0}.order-meta-desc{font-size:12px;color:#64748b;margin-bottom:10px}.order-supplier-row{display:flex;align-items:baseline;gap:24px;font-size:13px;color:#0f172a}.order-total-amount{font-size:22px;font-weight:800;color:#0b7a74}.order-terms-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px 18px;min-width:280px}.order-terms-title{font-size:10px;font-weight:700;color:#64748b;letter-spacing:.05em;margin-bottom:4px}.order-terms-line{font-size:12px;font-weight:700;color:#0f172a;margin-bottom:2px}.order-terms-sub{font-size:11px;color:#64748b}.order-grid-layout{display:grid;grid-template-columns:65% 35%;gap:16px;align-items:start}@media (max-width:1024px){.order-grid-layout{grid-template-columns:1fr}}.order-warning-box{background:#fffbeb;border:1px solid #fef3c7;padding:10px 14px;font-size:11px;color:#92400e;line-height:1.5}.order-rationale-body{padding:14px 18px;display:flex;flex-direction:column;gap:8px}.order-rationale-row{display:flex;font-size:12px;gap:12px}.order-rationale-label{width:90px;color:#64748b;flex-shrink:0}.order-rationale-val{color:#0f172a;font-weight:500}.order-attachments-section{border-top:1px solid #f1f5f9;padding-top:10px;margin-top:6px}.order-attachments-title{font-size:11px;font-weight:700;color:#0f172a;margin-bottom:6px}.order-attachment-item{display:flex;justify-content:space-between;align-items:center;padding:6px 0;font-size:11px;color:#0b7a74}.order-attachment-meta{color:#94a3b8}.order-timeline-body{padding:14px 18px;display:flex;flex-direction:column;gap:14px}.order-timeline-step{display:flex;gap:12px}.order-step-dot{width:10px;height:10px;border-radius:50%;margin-top:4px;flex-shrink:0}.order-step-dot.is-done{background:#10b981}.order-step-dot.is-active{background:#f59e0b}.order-step-dot.is-pending{background:#cbd5e1}.order-step-time{font-size:10px;color:#94a3b8}.order-step-actor{font-size:12px;font-weight:700;color:#0f172a}.order-step-action{font-size:11px;color:#64748b}.order-decision-card{padding:18px 24px}.order-decision-row{display:flex;gap:12px;align-items:center}@media (max-width:768px){.order-decision-row{flex-direction:column;align-items:stretch}}.order-decision-input{flex:1}.order-decision-btns{display:flex;gap:10px}.order-btn-reject{padding:0 16px;height:38px;background:#ffffff;border:1px solid #f87171;border-radius:8px;color:#dc2626;font-size:12px;font-weight:600;cursor:pointer}.order-btn-reject:hover{background:#fef2f2}.order-btn-approve{padding:0 20px;height:38px;font-size:12px;font-weight:600}.payment-recon-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:16px 20px}@media (max-width:800px){.payment-recon-grid{grid-template-columns:repeat(2,1fr)}}.payment-recon-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px 14px}.payment-recon-box.is-highlight{background:#fefce8;border-color:#fef08a}.payment-recon-box.is-purple{background:#f5f3ff;border-color:#ddd6fe}.payment-recon-label{font-size:11px;color:#64748b;display:block;margin-bottom:4px}.payment-recon-val{font-size:17px;font-weight:800;color:#0f172a}.payment-validation-box{margin:0 20px 16px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:10px 14px;display:flex;flex-direction:column;gap:4px;font-size:11px;color:#166534}.payment-check-item{display:flex;align-items:center;gap:6px}.payment-check-icon{font-weight:800}.payment-flow-note{padding:12px 16px;background:#f8fafc;border-top:1px solid #f1f5f9;font-size:11px;color:#64748b;line-height:1.5}.ct-kpi-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:20px}@media (max-width:1200px){.ct-kpi-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.ct-kpi-row{grid-template-columns:1fr}}.ct-kpi-card{background:#ffffff;border:1px solid #e2e8f0;border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;justify-content:space-between;min-height:98px;box-shadow:0 1px 3px rgba(0,0,0,.03);transition:all .15s ease;position:relative;text-align:left;overflow:hidden;cursor:pointer}.ct-kpi-card:hover{border-color:#94a3b8;box-shadow:0 4px 12px rgba(0,0,0,.08);transform:translateY(-1px)}.ct-kpi-card.ring-2{background:#f0fdfa}.ct-kpi-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.ct-kpi-card-title{font-size:11px;font-weight:600;color:#64748b;text-transform:none;letter-spacing:.01em}.ct-kpi-card-badge{min-width:24px;height:24px;padding:0 6px;border-radius:6px;font-size:11px;font-weight:700;background:#e0f2fe;color:#0284c7}.ct-kpi-card-badge,.ct-kpi-card-icon-box{display:inline-flex;align-items:center;justify-content:center}.ct-kpi-card-icon-box{width:40px;height:40px;border-radius:10px;color:#ffffff;flex-shrink:0}.ct-kpi-card-val{font-size:26px;font-weight:800;color:#0f172a;line-height:1.1;margin:6px 0 2px}.ct-kpi-card-sub{font-size:11px;color:#94a3b8}.ct-kpi-priority-card{background:#fffdf5;border:1px solid #fef3c7;border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;justify-content:space-between;min-height:98px;text-align:left}.ct-kpi-priority-tag{align-self:flex-start;font-size:10px;font-weight:700;color:#b45309;background:#fef3c7;padding:2px 8px;border-radius:4px;text-transform:uppercase}.ct-kpi-priority-val{font-size:13px;font-weight:700;color:#1e293b;line-height:1.3;margin:6px 0 2px}.ct-kpi-priority-sub{font-size:11px;color:#94a3b8}.ct-delta-negative{color:#e11d48;font-weight:700}.ct-delta-positive{color:#059669;font-weight:700}.ct-delta-neutral{color:#64748b;font-weight:500}.ct-activity-desc{font-size:11px;color:#334155;line-height:1.4}.ct-activity-sub{font-size:10px;color:#94a3b8}.ct-matrix-today-col{background:#f0f7ff!important;font-weight:700}.ct-header-flex{display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;gap:16px}.approvals-btn-primary{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;background:#1877f2!important;color:#ffffff!important;font-size:13px!important;font-weight:600!important;padding:8px 16px!important;border-radius:8px!important;border:1px solid transparent!important;text-decoration:none!important;transition:all .15s ease!important;cursor:pointer!important;white-space:nowrap!important}.approvals-btn-primary:hover{background:#1464cc!important;color:#ffffff!important}.approvals-btn-outline{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;background:#ffffff!important;color:#334155!important;font-size:13px!important;font-weight:600!important;padding:8px 16px!important;border-radius:8px!important;border:1px solid #cbd5e1!important;text-decoration:none!important;transition:all .15s ease!important;cursor:pointer!important;white-space:nowrap!important}.approvals-btn-outline:hover{background:#f8fafc!important;border-color:#94a3b8!important}.global-page-title{font-size:24px;font-weight:800;color:#0f172a;margin:0;line-height:1.2}.global-page-subtitle{font-size:13px;color:#64748b;margin:2px 0 0}.global-page-heading{display:flex;flex-direction:column}.global-page-title{font-size:26px!important;font-weight:800!important;color:#0f172a!important}.global-page-subtitle{font-size:13px!important;color:#64748b!important}.table-responsive{width:100%;overflow-x:auto}.global-page-subtitle,.global-page-title{white-space:nowrap}.global-page-heading{flex-shrink:0}.topbar-right-group{min-width:0;flex:1;justify-content:flex-end}.topbar-search-box{flex-shrink:1;min-width:150px}.global-header-actions{flex-shrink:0;white-space:nowrap}.p360-btn-handoff,.p360-btn-import,.p360-handoff-badge{white-space:nowrap!important;flex-shrink:0!important}.p360-kpi-code,.p360-kpi-val{white-space:nowrap}.global-page-subtitle{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.global-page-heading{min-width:0}.global-page-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.global-page-heading{flex-shrink:1!important}.global-page-subtitle{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.import-footer-bar{justify-content:flex-end!important;gap:12px}.global-page-title{margin:0!important;line-height:1.2!important}.global-page-subtitle{margin:4px 0 0!important}.topbar-right-group{max-width:60%;overflow:hidden}#global-header-actions-portal{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden}#global-header-actions-portal .p360-btn-handoff,#global-header-actions-portal .p360-btn-import{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:1!important}.topbar-right-actions{flex-shrink:0;display:flex;align-items:center;gap:8px}.filter-badge-btn{flex-shrink:0!important;min-width:115px}.global-page-heading{flex:1 1 auto!important}.topbar-right-group{flex:0 1 auto!important}.contracts-table tbody td,.contracts-table thead th{padding:12px 10px!important}.modal-overlay-backdrop{z-index:1000!important}.p360-tab-bar{display:flex;align-items:center;gap:0;border-bottom:1px solid #e2e8f0;margin-bottom:20px}.p360-tab-btn{background:none;border:1px solid transparent;border-bottom:none;padding:10px 16px;white-space:nowrap;font-size:13px;font-weight:500;color:#64748b;cursor:pointer;margin-bottom:-1px}.p360-tab-btn:after{display:none!important}.p360-tab-btn:hover{color:#0f172a}.p360-tab-btn.is-active{background:#eaffff;border-color:#e2e8f0;border-top:2px solid #0b7a74;border-bottom:1px solid #eaffff;color:#0b7a74;font-weight:700}.p360-node-row.is-selected{background:#eaffff!important;color:#0b7a74!important;font-weight:700!important}.truncate-safe{display:inline-block!important;max-width:100%!important;vertical-align:middle!important}.truncate,.truncate-safe{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.line-clamp-2{-webkit-line-clamp:2!important}.line-clamp-2,.line-clamp-3{display:-webkit-box!important;-webkit-box-orient:vertical!important;overflow:hidden!important;word-break:break-word!important}.line-clamp-3{-webkit-line-clamp:3!important}.word-break-safe{word-break:break-word!important;overflow-wrap:break-word!important;hyphens:auto}.table-cell-truncate{min-width:120px!important;max-width:260px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.contracts-table td,.contracts-table th,.data-table td,.data-table th,.mockup-data-table td,.mockup-data-table th,.warning-table td,.warning-table th{overflow-wrap:break-word;word-break:normal}.contracts-table td.cell-truncate,.data-table td.cell-truncate,.mockup-data-table td.cell-truncate{max-width:260px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.crumb-wrap{display:flex!important;align-items:center!important;max-width:100%!important}.crumb-wrap,.crumb-wrap .crumb{min-width:0!important;overflow:hidden!important;white-space:nowrap!important}.crumb-wrap .crumb{text-overflow:ellipsis!important}.crumb-wrap .crumb-sep,.crumb-wrap .crumb:first-child{flex-shrink:0!important}.crumb-wrap .crumb.current{min-width:0!important;max-width:450px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;flex:0 1 auto!important}.admin-card>div:first-child,.admin-card>h2,.approvals-card-header,.card-box>div:first-child,.card-header,.contracts-card-header,.ct-kpi-card-header,.list-toolbar,.role-card-top,.section-title{min-width:0!important;max-width:100%!important;overflow:hidden!important;overflow-wrap:break-word!important}.approvals-card-title,.card-header h1,.card-header h2,.card-header h3,.contracts-card-title,.ct-kpi-card-title,.list-toolbar h2,.section-title h2{min-width:0!important;flex:1 1 auto!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.approvals-card-meta,.contracts-card-meta,.ct-kpi-card-badge{flex-shrink:0!important;white-space:nowrap!important}.action-chip,.badge,.badge-aba,.role-pill,.scope-chip,.status-badge,.status-pill,.subtle-tag,.warning-tag{max-width:100%!important;overflow:visible!important;text-overflow:unset!important;white-space:nowrap!important;flex-shrink:0!important}.warning-tag{min-width:fit-content!important}.admin-card,.auth-card,.commander-modal,.drawer-side-card,.hd07-modal,.modal-center-card,.modal-dialog{max-width:calc(100vw / var(--ui-zoom))!important;box-sizing:border-box!important;overflow-wrap:break-word!important}.drawer-side-card .drawer-close-btn,.drawer-side-card .modal-close-btn,.modal-center-card .modal-close-btn,.modal-close-btn{flex-shrink:0!important}.drawer-side-card h3,.modal-center-card h3{overflow-wrap:break-word!important;word-break:break-word!important;min-width:0!important}.drawer-side-card>.flex:first-child>div:first-child,.modal-center-card>.flex:first-child>div:first-child{min-width:0!important;flex:1 1 auto!important;padding-right:8px!important}@media (max-width:720px){body,html{width:100%!important;max-width:100%!important;overflow-x:hidden!important;position:relative!important}.app-frame{padding-bottom:65px!important}.app-frame,.main-column{display:block!important;width:100%!important;max-width:100%!important;overflow-x:hidden!important;box-sizing:border-box!important}.content,.main-column{min-width:0!important}.content{width:100%!important;max-width:100%!important;box-sizing:border-box!important;padding:16px 12px 80px!important;overflow-x:hidden!important}.overflow-x-auto,.table-responsive,.table-scroll,div:has(>.contracts-table),div:has(>.data-table),div:has(>.mockup-data-table),div:has(>table){width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}.topbar,.topbar.modern-bar{height:58px!important;min-width:0!important;padding:0 12px!important;background:#122d53!important;border-bottom:1px solid #1c3d6e!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;position:sticky!important;top:0!important;z-index:50!important}.global-page-heading{min-width:0!important;flex:1 1 auto!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;justify-content:center!important}.global-page-title{font-size:15px!important;font-weight:700!important;line-height:1.25!important;color:#ffffff!important;margin:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:100%!important;display:block!important}.global-page-subtitle{display:none!important}.crumb-wrap{display:flex!important;align-items:center!important;min-width:0!important}.crumb-wrap,.crumb-wrap .crumb{overflow:hidden!important;white-space:nowrap!important}.crumb-wrap .crumb{font-size:10px!important;color:#94a3b8!important;text-overflow:ellipsis!important}.crumb-wrap .crumb.current{font-size:12px!important;font-weight:700!important;color:#ffffff!important}.crumb-wrap .crumb-sep{color:#64748b!important;margin:0 4px!important}.topbar-right-group{flex:0 0 auto!important;gap:8px!important;margin:0!important}.topbar-right-actions,.topbar-right-group{display:flex!important;align-items:center!important}.topbar-right-actions{gap:6px!important}.topbar-right-actions .filter-badge-btn,.topbar-right-actions .profile-copy,.topbar-search-box{display:none!important}#global-header-actions-portal:empty{display:none!important;margin:0!important}.sidebar,.sidebar.ct-theme,.sidebar.hd-theme,.sidebar.ov-theme,.sidebar.teal-theme,.sidebar.tk-theme{position:fixed!important;inset:auto 0 0!important;width:100%!important;height:61px!important;border:0!important;border-top:1px solid #e2e8f0!important;padding:4px 6px!important;background:#ffffff!important;color:#475569!important;z-index:99!important}.sidebar.teal-theme .nav-link{color:#64748b!important;font-size:12px!important;padding:6px 4px!important;gap:4px!important}.sidebar.teal-theme .nav-link.active{background:#e0f2f1!important;color:#00796b!important;box-shadow:none!important}}.auth-field-error{font-size:12px;color:#ef4444;margin-top:4px;text-align:left;line-height:1.4}.auth-input-field.input-error{border-color:#ef4444!important;box-shadow:0 0 0 1px #ef4444!important}.report-hub-wrapper{width:100%;max-width:100%;box-sizing:border-box}.report-hub-card:hover{border-color:#0d9488!important;box-shadow:0 4px 6px -1px rgba(0,0,0,.05),0 2px 4px -2px rgba(0,0,0,.05)}.admin-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}@media (max-width:750px){.admin-kpi-grid{grid-template-columns:repeat(2,1fr)!important}}@media (max-width:640px){.admin-kpi-grid{grid-template-columns:1fr!important}.report-filter-bar{flex-direction:column!important;align-items:stretch!important}.report-cards-grid,.report-hub-wrapper>div>div[style*=gridTemplateColumns]{grid-template-columns:1fr!important}.bch-table-email,.bch-table-notes{display:none!important}}.mobile-bottom-nav,.mobile-drawer-overlay{display:none}@media (max-width:720px){.sidebar,.sidebar.ct-theme,.sidebar.hd-theme,.sidebar.ov-theme,.sidebar.teal-theme,.sidebar.tk-theme{position:fixed!important;inset:auto 0 0 0!important;width:100%!important;height:60px!important;pointer-events:none!important;opacity:0!important;z-index:10!important}.mobile-bottom-nav{position:fixed!important;inset:auto 0 0 0!important;width:100%!important;height:60px!important;background:#ffffff!important;border-top:1px solid #e2e8f0!important;z-index:1000!important;justify-content:space-around!important;padding:0 4px!important;box-shadow:0 -2px 10px rgba(0,0,0,.05)!important}.mobile-bottom-link,.mobile-bottom-nav{display:flex!important;align-items:center!important}.mobile-bottom-link{flex:1!important;flex-direction:column!important;justify-content:center!important;gap:3px!important;font-size:10px!important;font-weight:600!important;color:#64748b!important;text-decoration:none!important;border:none!important;background:none!important;cursor:pointer!important;padding:6px 0!important;min-width:0!important;-webkit-tap-highlight-color:transparent!important}.mobile-bottom-link.active{color:#0f766e!important;font-weight:700!important}.mobile-bottom-link span{max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:9.5px!important}.mobile-drawer-overlay{display:flex!important;position:fixed!important;inset:0!important;background:rgba(15,23,42,.6)!important;z-index:1100!important;justify-content:flex-end!important;backdrop-filter:blur(4px)!important}.mobile-drawer-sheet{width:85%!important;max-width:320px!important;height:100%!important;background:#ffffff!important;display:flex!important;flex-direction:column!important;box-shadow:-4px 0 20px rgba(0,0,0,.15)!important;animation:slideDrawerLeft .2s ease-out}@keyframes slideDrawerLeft{0%{transform:translateX(100%)}to{transform:translateX(0)}}.mobile-drawer-header{justify-content:space-between!important;padding:16px 20px!important;border-bottom:1px solid #e2e8f0!important;background:#f8fafc!important}.mobile-drawer-header,.mobile-drawer-user{display:flex!important;align-items:center!important}.mobile-drawer-user{gap:12px!important}.mobile-drawer-user strong{display:block!important;font-size:13px!important;color:#0f172a!important}.mobile-drawer-user small{display:block!important;font-size:10px!important;color:#64748b!important}.mobile-drawer-close{background:none!important;border:none!important;color:#64748b!important;cursor:pointer!important;padding:6px!important;border-radius:6px!important}.mobile-drawer-nav{flex:1!important;overflow-y:auto!important;padding:12px 16px!important;display:flex!important;flex-direction:column!important;gap:8px!important}.mobile-drawer-group{border-bottom:1px solid #f1f5f9!important;padding-bottom:8px!important}.mobile-drawer-link{display:flex!important;align-items:center!important;gap:12px!important;font-size:13px!important;font-weight:600!important;color:#1e293b!important;padding:8px 10px!important;border-radius:8px!important;text-decoration:none!important}.mobile-drawer-link:hover{background:#f1f5f9!important}.mobile-drawer-sublinks{padding-left:36px!important;display:flex!important;flex-direction:column!important;gap:4px!important;margin-top:4px!important}.mobile-drawer-sublink{font-size:11px!important;color:#64748b!important;padding:4px 0!important;text-decoration:none!important}.mobile-drawer-sublink:hover{color:#0f766e!important}.mobile-drawer-footer{padding:16px 20px!important;border-top:1px solid #e2e8f0!important;background:#f8fafc!important}.mobile-drawer-logout-btn{width:100%!important;padding:10px!important;background:#fee2e2!important;color:#b91c1c!important;border:1px solid #fecaca!important;border-radius:8px!important;font-size:12px!important;font-weight:700!important;cursor:pointer!important;text-align:center!important}}.tk-dashboard{display:flex;flex-direction:column;gap:20px}.tk-header-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.tk-title{font-size:28px;font-weight:800;color:#0f172a;margin:0;letter-spacing:-.02em;font-family:var(--font-manrope,Manrope,system-ui,sans-serif)}.tk-subtitle{font-size:13px;color:#64748b;margin:4px 0 0}.tk-actions-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tk-btn-primary{display:inline-flex;align-items:center;gap:6px;background:#088395;color:#ffffff!important;font-size:13px;font-weight:700;padding:10px 18px;border-radius:8px;text-decoration:none;border:none;cursor:pointer;transition:background .15s}.tk-btn-primary:hover{background:#066775}.tk-btn-secondary{display:inline-flex;align-items:center;gap:6px;background:#ffffff;color:#334155!important;font-size:13px;font-weight:600;padding:10px 16px;border-radius:8px;border:1px solid #cbd5e1;text-decoration:none;cursor:pointer;transition:all .15s}.tk-btn-secondary:hover{background:#f8fafc;border-color:#94a3b8}.tk-btn-amber{background:#fffbeb;color:#92400e!important;border-color:#fde68a}.tk-btn-amber:hover{background:#fef3c7}.tk-kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.tk-kpi-card{background:#ffffff;border:1px solid #e2e8f0;border-radius:12px;padding:24px 28px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 1px 3px rgba(0,0,0,.04);min-height:88px}.tk-kpi-card.border-cyan{border-left:6px solid #0284c7}.tk-kpi-card.border-amber{border-left:6px solid #f59e0b}.tk-kpi-card.border-rose{border-left:6px solid #ef4444}.tk-kpi-label{font-size:15px;font-weight:700;color:#1e293b}.tk-kpi-sub{font-size:12px;color:#64748b;margin-top:4px}.tk-kpi-value{font-size:48px;font-weight:800;color:#0f172a;letter-spacing:-.03em}.tk-two-col-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:16px}.tk-card-box{background:#ffffff;border:1px solid #e2e8f0;border-radius:12px;padding:20px;box-shadow:0 1px 3px rgba(0,0,0,.04);display:flex;flex-direction:column;justify-content:space-between}.tk-card-title{font-size:15px;font-weight:700;color:#0f172a;margin:0}.tk-progress-track{width:100%;height:10px;background:#e2e8f0;border-radius:9999px;overflow:hidden;margin:12px 0 10px}.tk-progress-fill{height:100%;background:#088395;border-radius:9999px;transition:width .3s ease}.tk-footnote{font-size:12px;color:#64748b;margin:0;font-style:italic}.tk-workload-subgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}.tk-workload-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px;display:flex;flex-direction:column;justify-content:space-between}.tk-workload-name{font-size:12px;font-weight:700;color:#334155}.tk-workload-count{font-size:24px;font-weight:800;color:#0f172a;margin:6px 0}.tk-workload-note{font-size:11px;color:#64748b;line-height:1.3}.tk-section-header{display:flex;align-items:center;justify-content:space-between;margin-top:8px}.tk-section-title{font-size:18px;font-weight:800;color:#0f172a;margin:0}.tk-section-note{font-size:12px;color:#94a3b8}.tk-project-card{background:#ffffff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,.04);overflow:hidden;margin-bottom:16px}.tk-project-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #f1f5f9}.tk-project-name{font-size:18px;font-weight:800;color:#0f172a}.tk-project-sub{font-size:12px;color:#64748b;margin-top:2px}.tk-project-right{display:flex;align-items:center;gap:16px}.tk-mini-stats-strip{display:grid;grid-template-columns:repeat(6,1fr);background:#f8fafc;border-bottom:1px solid #f1f5f9;text-align:center;padding:12px 0}.tk-mini-stat-col{border-right:1px solid #e2e8f0;padding:0 8px}.tk-mini-stat-col:last-child{border-right:none}.tk-mini-stat-val{font-size:28px;font-weight:800;color:#0f172a}.tk-mini-stat-lbl{font-size:11px;color:#64748b;margin-top:2px}.tk-badge{display:inline-block;padding:4px 14px;border-radius:9999px;font-size:11px;font-weight:600}.tk-badge-sky{background:#f0f9ff;color:#0369a1;border:1px solid #bae6fd}.tk-badge-rose{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.tk-badge-amber{background:#fffbeb;color:#b45309;border:1px solid #fde68a}.tk-badge-slate{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.tk-badge-emerald{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.tk-btn-pill-outline{display:inline-block;padding:7px 18px;border-radius:9999px;border:1px solid #cbd5e1;background:#ffffff;color:#334155!important;font-size:12px;font-weight:600;text-decoration:none;transition:all .15s}.tk-btn-pill-outline:hover{background:#f8fafc;border-color:#94a3b8}.tk-btn-pill-solid{display:inline-block;padding:7px 18px;border-radius:6px;background:#088395;color:#ffffff!important;font-size:12px;font-weight:700;text-decoration:none;transition:background .15s}.tk-btn-pill-solid:hover{background:#066775}.tk-btn-pill-danger{display:inline-block;padding:4px 16px;border-radius:6px;background:#b91c1c;color:#ffffff!important;font-size:12px;font-weight:700;text-decoration:none;transition:background .15s}.tk-btn-pill-danger:hover{background:#991b1b}.tk-table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}.tk-table th{padding:12px 20px;font-size:12px;font-weight:700;color:#64748b;border-bottom:2px solid #f1f5f9;background:#f8fafc;letter-spacing:.04em;text-transform:uppercase}.tk-table td,.tk-table th{font-family:var(--font-dm-sans,"DM Sans",system-ui,sans-serif)}.tk-table td{padding:14px 20px;border-bottom:1px solid #f1f5f9;color:#1e293b;vertical-align:middle;font-size:13px;font-weight:500}.tk-table tr:hover td{background:#f8fafc}@media (max-width:1024px){.tk-kpi-grid,.tk-two-col-grid{grid-template-columns:1fr}.tk-mini-stats-strip{grid-template-columns:repeat(3,1fr);row-gap:8px}}@media (max-width:640px){.tk-workload-subgrid{grid-template-columns:1fr}.tk-mini-stats-strip{grid-template-columns:repeat(2,1fr)}}.ct-header-bar{display:flex!important;justify-content:space-between!important;align-items:center!important;margin-bottom:20px!important;gap:16px}.ct-header-title{font-size:24px!important;font-weight:800!important;color:#0f172a!important;letter-spacing:-.02em!important;margin:0!important;font-family:var(--font-manrope,Manrope,system-ui,sans-serif)!important}.ct-header-subtitle{font-size:13px!important;color:#64748b!important;margin:4px 0 0!important}.ct-header-actions{display:flex!important;align-items:center!important;gap:10px!important}.ct-btn-export{display:inline-flex!important;align-items:center!important;gap:6px!important;background:#ffffff!important;border:1px solid #cbd5e1!important;color:#334155!important;font-size:12px!important;font-weight:600!important;padding:8px 16px!important;border-radius:8px!important;box-shadow:0 1px 2px rgba(0,0,0,.05)!important;text-decoration:none!important;cursor:pointer;transition:all .15s ease}.ct-btn-export:hover{background:#f8fafc!important;border-color:#94a3b8!important}.ct-btn-warning{display:inline-flex!important;align-items:center!important;gap:6px!important;background:#1d4ed8!important;border:1px solid #1d4ed8!important;color:#ffffff!important;font-size:12px!important;font-weight:600!important;padding:8px 16px!important;border-radius:8px!important;box-shadow:0 1px 2px rgba(0,0,0,.05)!important;text-decoration:none!important;cursor:pointer;transition:all .15s ease}.ct-btn-warning:hover{background:#1e40af!important}@media (max-width:640px){.ct-header-bar{flex-direction:column!important;align-items:flex-start!important}}.topbar.modern-bar{flex-wrap:nowrap!important;gap:16px!important;overflow:visible!important;height:auto!important;min-height:72px!important}.global-page-heading{flex:1 1 0%!important;min-width:0!important;overflow:visible!important}.global-page-title{white-space:nowrap!important;font-size:22px!important}.global-page-subtitle,.global-page-title{overflow:visible!important;text-overflow:clip!important;max-width:100%!important}.global-page-subtitle{white-space:normal!important;line-height:1.4!important}.global-page-subtitle a,.import-breadcrumb-link{color:#0b7a74!important;text-decoration:none!important;font-weight:600!important;cursor:pointer!important;transition:all .15s ease}.global-page-subtitle a:hover,.import-breadcrumb-link:hover{text-decoration:underline!important;color:#006666!important}.import-breadcrumb-sep{color:#94a3b8;margin:0 4px}.topbar-right-group{flex:0 0 auto!important;display:flex!important;align-items:center!important;gap:14px!important;min-width:0!important}@media (max-width:1100px){.topbar-right-group .profile-copy{display:none!important}.topbar-right-group{gap:8px!important}}.notification-bell-btn,.notification-center-wrap{position:relative!important;display:inline-flex!important;align-items:center!important}.notification-bell-btn{justify-content:center!important;width:36px!important;height:36px!important;padding:0!important;font-size:1rem!important;border-radius:50%!important;overflow:visible!important}.unread-badge-dot{position:absolute!important;top:-4px!important;right:-4px!important;min-width:18px!important;height:18px!important;padding:0 4px!important;font-size:10px!important;font-weight:700!important;line-height:18px!important;text-align:center!important;border-radius:9px!important;background:#ef4444!important;color:#fff!important;z-index:1!important;pointer-events:none!important}.approval-sticky-action-bar{position:fixed;bottom:0;left:0;right:0;z-index:50;background:rgba(255,255,255,.97);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid #e2e8f0;padding:14px 32px;display:flex;align-items:center;justify-content:space-between;gap:16px;box-shadow:0 -4px 24px rgba(0,0,0,.08)}@media (max-width:720px){.approval-sticky-action-bar{bottom:60px!important;padding:10px 14px!important;z-index:1001!important;flex-wrap:wrap;gap:8px}}@media(max-width:1200px){.users-table td:nth-child(3),.users-table th:nth-child(3){display:none}.users-table .table-user{min-width:100px}}.users-table{table-layout:auto!important;width:100%!important;min-width:1050px!important}.users-table td:first-child,.users-table th:first-child{min-width:160px!important;width:auto!important}.users-table td:nth-child(2),.users-table th:nth-child(2){min-width:120px!important;width:auto!important}.users-table td:nth-child(3),.users-table th:nth-child(3){min-width:110px!important;width:auto!important}.users-table td:nth-child(4),.users-table th:nth-child(4){min-width:180px!important;width:auto!important}.users-table td:nth-child(5),.users-table th:nth-child(5){min-width:160px!important;width:auto!important}.users-table td:nth-child(6),.users-table th:nth-child(6){min-width:130px!important;width:auto!important;white-space:nowrap!important}.users-table td:nth-child(7),.users-table th:nth-child(7){min-width:120px!important;width:auto!important;white-space:nowrap!important}.admin-card>.table-scroll,.admin-card>div.table-scroll,.admin-card>div.table-scroll:first-child,.table-scroll{overflow-x:auto!important;width:100%!important;-webkit-overflow-scrolling:touch}@media (max-width:820px){.approved-cost-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))!important}}.filter-badge-btn:focus-within,.topbar-search-box:focus-within{border-color:#0b7a74!important;box-shadow:0 0 0 2px rgba(11,122,116,.25)!important}.admin-card h1,.approvals-header h1,.content>h1,.content>header h1,.page-heading h1,.role-admin-layout h1{font-size:20px!important;font-weight:700!important;line-height:1.3!important;letter-spacing:-.015em!important}.approvals-table th,.contracts-table th,.data-table th,.matrix-table th,.procurement-table th,table.users-table th{background-color:#f2f5f9!important;font-size:12px!important;font-weight:700!important;color:#475569!important}.content>div{max-width:none;margin-left:auto;margin-right:auto;width:100%}:root{--text-h1-size:20px;--text-h1-weight:700;--text-h2-size:15px;--text-h2-weight:600;--text-body-size:13px;--text-body-weight:400;--text-label-size:12px;--text-label-weight:600;--text-note-size:11px;--text-note-weight:400}.page-title,h1{font-size:var(--text-h1-size)!important;font-weight:var(--text-h1-weight)!important;line-height:1.3!important}.section-title,h2{font-size:var(--text-h2-size)!important;font-weight:var(--text-h2-weight)!important;line-height:1.35!important}.label,label{font-weight:var(--text-label-weight)!important}.label,label,th{font-size:var(--text-label-size)!important}th{font-weight:700!important;color:#0f172a!important}a,button,div,input,p,select,td,textarea{font-family:var(--font-inter,var(--font-dm-sans,"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif))}.muted,.note,small{font-size:var(--text-note-size)!important;font-weight:var(--text-note-weight)!important}@media (min-width:640px){.procurement-main-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)!important}}.revoke-btn{font-size:10px!important;color:#94a3b8!important;font-weight:600!important;padding:2px 6px!important;border-radius:4px!important;border:1px solid #e2e8f0!important;background:transparent!important;transition:color .15s,border-color .15s,background .15s!important}.revoke-btn:hover{color:#b91c1c!important;border-color:#fca5a5!important;background:#fff1f2!important}.otp-card{display:grid;gap:14px;padding:20px;border:1px solid #dbe4ef;border-radius:16px;background:#f8fbff}.otp-head{display:flex;align-items:center;gap:12px}.otp-head-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#e3edf8;color:#1b2a5a}.otp-title{display:block;font-size:16px;font-weight:700;color:#0f172a}.otp-sub{font-size:13px;color:#64748b}.otp-sub b{color:#0f172a}.otp-boxes{position:relative;display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.otp-box{display:grid;place-items:center;aspect-ratio:6/7;border:1px solid #dbe4ef;border-radius:10px;background:#fff;font-size:22px;font-weight:700;color:#0f172a}.otp-input{position:absolute;inset:0;width:100%;opacity:0;cursor:text}.otp-boxes:focus-within .otp-box.active{border-color:#17b4ab;box-shadow:0 0 0 3px rgba(23,180,171,.18)}.otp-boxes:has(.otp-input:disabled) .otp-box{background:#f1f5f9;color:#94a3b8}.otp-meta{justify-content:space-between;align-items:center;color:#64748b}.otp-hint,.otp-meta{display:flex;font-size:13px}.otp-hint{gap:10px;padding:12px 14px;border-radius:10px;background:#e8f0fa;color:#1e3a5f;line-height:1.5}.otp-hint-icon{flex:none;margin-top:1px}.ct-obstacles{display:grid;gap:10px}.ct-obstacles-title{display:flex;align-items:center;gap:8px;margin:0;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#92400e}.ct-obstacles-count{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 7px;border-radius:999px;background:#fef3c7;color:#92400e;font-size:11px;letter-spacing:0}.ct-obstacles-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.ct-obstacle-card{display:grid;gap:6px;padding:12px 14px;background:#fff;border:1px solid #f3e1c0;border-left:4px solid #f59e0b;border-radius:10px;box-shadow:0 2px 6px rgba(146,64,14,.05)}.ct-obstacle-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ct-obstacle-head strong{min-width:0;overflow-wrap:anywhere;font-size:14px;color:#1f2937}.ct-obstacle-head time{flex-shrink:0;padding:2px 8px;border-radius:6px;background:#f1f5f9;color:#475569;font:600 11px ui-monospace,monospace}.ct-obstacle-group{font-size:12px;color:#64748b}.ct-obstacle-text{margin:2px 0 0;padding:8px 10px;background:#fffbeb;border-radius:8px;color:#334155;font-size:13px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}