@import "https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;450;500;550;600;650;700;750;800&display=swap";
:root{--navy:#101e30;--teal:#008e83;--ink:#1b293a;--muted:#82909d;--border:#e6ebee;--bg:#f5f7f9;--font:"Noto Sans KR","Malgun Gothic",sans-serif}*{box-sizing:border-box}body{font-family:var(--font);color:var(--ink);background:var(--bg);margin:0;font-size:13px}button,input,select,textarea{font:inherit}button{border:1px solid var(--border);color:var(--ink);cursor:pointer;background:#fff;border-radius:7px;justify-content:center;align-items:center;gap:7px;padding:10px 14px;font-weight:500;transition:all .15s;display:inline-flex}button:hover{background:#f0f6f6;border-color:#b5d4d0}button:disabled{opacity:.45;cursor:not-allowed}button.primary{background:var(--teal);border-color:var(--teal);color:#fff}button.primary:hover{background:#00796f}button.icon{background:0 0;border:0;padding:8px;position:relative}button.bordered{border:1px solid var(--border);background:#fff}input,select,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #dce3e7;border-radius:6px;outline:none;padding:11px 12px}input:focus,select:focus,textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px #00998c13}select{cursor:pointer}a{color:var(--teal);text-decoration:none}h1,h2,h3,p{margin:0}small{font-size:11px}.shell{min-height:100vh;display:flex}.sidebar{background:var(--navy);color:#c0cad5;z-index:30;flex-direction:column;width:242px;display:flex;position:fixed;inset:0 auto 0 0}.brand{color:#fff;letter-spacing:.4px;align-items:center;gap:11px;padding:27px 23px;font-size:20px;font-weight:750;display:flex}.brandmark{color:#fff;letter-spacing:-3px;background:#0e9c8e;border-radius:10px;justify-content:center;align-items:center;width:37px;height:37px;font-size:25px;font-weight:800;display:flex}.brandmark span{color:#b4f2cc}.brand small{letter-spacing:1.65px;color:#899da9;margin-top:4px;font-size:7px;font-weight:500;display:block}.brandplus{color:#516579;font-weight:400}.workspace{color:#d2dce5;border:1px solid #2b394a;border-radius:7px;align-items:center;gap:10px;margin:2px 16px 15px;padding:14px 11px;font-size:11px;display:flex}.workspace small{color:#718397;margin-top:5px;font-size:9px;display:block}.workspace>svg:last-child{margin-left:auto}nav{scrollbar-width:thin;scrollbar-color:#2a4056 transparent;flex:1;padding:0 12px 20px;overflow:auto}.navgroup{margin:14px 0 18px}.navgroup>p{color:#677d90;padding:0 14px 8px;font-size:10px;font-weight:600}.navgroup button{color:#a8b8c9;background:0 0;border:0;justify-content:flex-start;gap:11px;width:100%;margin:1px 0;padding:10px 14px;font-size:12px}.navgroup button:hover{color:#fff;background:#203347}.navgroup button.active{color:#fff;background:#0b8c81;box-shadow:0 3px 10px #0001}.navgroup button b{background:#ffffff24;border-radius:5px;margin-left:auto;padding:1px 6px;font-size:10px}.sidefoot{color:#a0b5c2;border-top:1px solid #253344;padding:17px 25px;font-size:10px}.sidefoot small{letter-spacing:1px;color:#5d7386;margin:8px 0 0 12px;font-size:8px;display:block}.online{background:#2fca9d;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}.main{width:calc(100% - 242px);margin-left:242px}header{border-bottom:1px solid var(--border);background:#fff;justify-content:space-between;align-items:center;height:76px;padding:0 36px;display:flex}.breadcrumb{color:#9ba5af;align-items:center;gap:13px;font-size:11px;display:flex}.breadcrumb b{color:#506071;font-weight:500}.headerRight{align-items:center;gap:15px;display:flex}.today{color:#7d8894;margin-right:6px;font-size:11px}.headerRight .icon i{background:#f0a54a;border-radius:50%;width:5px;height:5px;position:absolute;top:6px;right:7px}.avatar{color:#3b7b6e;background:#e5f2ee;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:12px;font-weight:700;display:flex}.profile{font-size:11px;font-weight:600}.profile small{color:#97a0a9;margin-top:3px;font-size:9px;font-weight:400;display:block}main{max-width:1750px;margin:auto;padding:32px 36px 18px}.pageHeading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.eyebrow{letter-spacing:1.6px;color:#82949e;margin-bottom:9px;font-size:9px;font-weight:600}h1{letter-spacing:-1px;align-items:center;gap:12px;font-size:26px;display:flex}.live{color:#208f68;letter-spacing:1px;background:#e1f4ed;border-radius:4px;padding:4px 7px;font-size:8px;font-weight:700}.pageHeading p{color:#83909d;margin-top:10px;font-size:12px}.headingActions{align-items:center;gap:12px;display:flex}.companySwitch{background:#e9eef1;border-radius:8px;gap:3px;padding:4px;display:flex}.companySwitch button{color:#7e8b96;background:0 0;border:0;padding:7px 15px;font-size:11px}.companySwitch .on{color:#087e74;background:#fff;box-shadow:0 2px 5px #1533330b}.welcome{background:linear-gradient(110deg,#eaf4f0,#f4f9f6 48%,#dcefe9);border:1px solid #d4e5e1;border-radius:12px;justify-content:space-between;align-items:center;min-height:224px;margin-bottom:23px;padding:30px 34px;display:flex;overflow:hidden}.welcomeTag{letter-spacing:1.8px;color:#528b7f;font-size:8px;font-weight:650}.welcome h2{letter-spacing:-1px;color:#193f37;margin-top:8px;font-size:26px;line-height:1.5}.welcome p{color:#6d8c83;margin-top:10px;font-size:11px}.welcome button{color:#277768;background:#fff;border-color:#cdded8;margin-top:19px;padding:8px 12px;font-size:10px}.flowGraphic{align-items:center;margin-right:22px;display:flex}.flowCompany{color:#418a7b;background:#ffffffb0;border:1px solid #c3ded5;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;width:112px;height:128px;display:flex;transform:rotate(-4deg);box-shadow:0 12px 30px #3572590a}.flowCompany:last-child{transform:rotate(4deg)}.flowCompany b{letter-spacing:2px;color:#285b50;margin-top:10px;font-size:22px}.flowCompany small{color:#7e9e94;margin-top:5px;font-size:10px}.flowLine{color:#5ca68e;justify-content:center;align-items:center;gap:8px;width:156px;display:flex;position:relative}.flowLine i{border-top:1px dashed #a1caba;width:34px}.flowLine span,.flowLine small{white-space:nowrap;letter-spacing:1.1px;font-size:7px;position:absolute;top:-28px}.flowLine small{letter-spacing:0;font-size:9px;top:55px}.stats{grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:25px;display:grid}.stats.three{grid-template-columns:repeat(3,1fr)}.stat{border:1px solid var(--border);background:#fff;border-radius:10px;padding:21px 23px}.stat>div{color:#6e7c89;justify-content:space-between;align-items:center;font-size:11px;display:flex}.stat>div svg{color:#5d9d92}.stat h2{letter-spacing:-1px;margin:14px 0 8px;font-size:31px;font-weight:650}.stat h2 small{color:#91a0a9;margin-left:7px;font-size:12px;font-weight:400}.stat p{color:#97a2ab;font-size:9px}.dashboardGrid{grid-template-columns:minmax(0,1.8fr) minmax(270px,1fr);gap:22px;margin-bottom:23px;display:grid}.panel{border:1px solid var(--border);background:#fff;border-radius:10px;overflow:hidden}.panelTitle{justify-content:space-between;align-items:center;padding:23px 24px 18px;display:flex}.panelTitle h3{letter-spacing:-.3px;font-size:14px}.panelTitle p{color:#8d99a4;margin-top:6px;font-size:10px}.textButton{color:#81919c;background:0 0;border:0;padding:0;font-size:10px}.projectCards{grid-template-columns:1fr 1fr;gap:15px;padding:0 23px 24px;display:grid}.projectCard{text-align:left;border-color:#e5ecec;border-radius:9px;min-width:0;padding:18px;display:block}.projectCard>div:first-child{justify-content:space-between;align-items:center;display:flex}.projectCard h3{letter-spacing:-.4px;margin:15px 0 8px;font-size:13px;line-height:1.7}.projectCard p{color:#96a0aa;font-size:10px}.projectMeta{color:#89969f;border-top:1px solid #edf0f2;justify-content:space-between;align-items:center;margin-top:18px;padding-top:15px;font-size:10px;display:flex}.projectMeta>span{align-items:center;gap:5px;display:flex}.companyTag{color:#547387;white-space:nowrap;background:#edf3f6;border-radius:4px;padding:4px 8px;font-size:10px;font-weight:650;display:inline-flex}.companyTag.mw{color:#198676;background:#e8f6f1}.companyTag.enm{color:#3a7ac0;background:#eaf2fb}.badge{white-space:nowrap;color:#5c7b98;background:#eef3f8;border-radius:5px;padding:4px 8px;font-size:9px;font-weight:500;display:inline-block}.badge.green{color:#45916b;background:#eaf7ef}.badge.amber{color:#be9443;background:#fff5e6}.badge.red{color:#c46056;background:#fcebea}.quickActions{padding:0 23px 21px}.quickActions button{color:#556674;border:0;justify-content:flex-start;gap:13px;width:100%;padding:10px 0;font-size:11px}.quickActions button>span{color:#5a9d8c;background:#f0f6f4;border-radius:8px;justify-content:center;align-items:center;width:35px;height:35px;display:flex}.quickActions button>svg:last-child{color:#a3afb7;margin-left:auto}.recentList{padding:0 24px 10px}.recentList button{text-align:left;border:0;border-top:1px solid #f0f3f4;border-radius:0;justify-content:flex-start;gap:12px;width:100%;padding:12px 0;display:flex}.docIcon{color:#91a2af;background:#f2f5f7;border-radius:6px;justify-content:center;align-items:center;width:34px;height:36px;display:flex}.recentList b{font-size:11px;font-weight:500}.recentList small{color:#9aa6b0;margin-top:4px;font-size:9px;display:block}.recentList .badge{margin-left:auto}.recentList>button>svg{color:#a1aeb7}.ownership{padding-bottom:22px}.companyBar{margin:12px 24px 23px}.companyBar>div:first-child{justify-content:space-between;font-size:11px;display:flex}.companyBar span{color:#8798a5;font-size:10px}.bar{background:#eef2f5;border-radius:6px;height:7px;margin-top:12px;overflow:hidden}.bar i{border-radius:6px;height:100%;display:block}.infoBox{color:#78948b;background:#f4f8f7;border-radius:6px;align-items:center;gap:10px;padding:14px 16px;font-size:10px;line-height:1.8;display:flex}.ownership .infoBox{margin:12px 24px 0}.toolbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:15px;padding:20px 24px;display:flex}.toolbar>div{align-items:center;gap:9px;display:flex}.toolbar button{font-size:11px}.toolbarFilters select{width:125px;font-size:11px}.search{color:#9daab4;border:1px solid var(--border);background:#fff;border-radius:7px;align-items:center;gap:9px;max-width:300px;padding:0 11px;display:flex}.search input{box-shadow:none;border:0;min-width:170px;padding:10px 0;font-size:11px}.tableScroll{overflow:auto}table{border-collapse:collapse;white-space:nowrap;text-align:left;width:100%;font-size:11px}th{color:#81909e;border-bottom:1px solid var(--border);background:#f8fafb;padding:14px 20px;font-size:10px;font-weight:500}td{color:#687886;text-overflow:ellipsis;border-bottom:1px solid #eff2f4;max-width:310px;padding:18px 20px;overflow:hidden}td b{color:#354759;font-weight:550}td small{color:#9ca8b2;margin-top:5px;font-size:9px;display:block}td:first-child{padding-left:25px}tr.clickable{cursor:pointer}tr.clickable:hover,tbody tr:hover{background:#fafdfc}.tableFoot{color:#8d9ca6;justify-content:space-between;padding:15px 24px;font-size:10px;display:flex}.tableFoot span{color:#b2bac1;font-size:9px}.empty{text-align:center;color:#a3afb6;padding:55px}.empty svg{color:#b9c8ca}.empty p{margin-top:12px;font-size:12px}.teal,.teal b{color:#008d7e!important}.danger{color:#d26654!important}.infoStrip{color:#698b7e;background:#f1f8f6;padding:12px 24px;font-size:11px}.attendanceHero{border:1px solid var(--border);background:#fff;border-radius:10px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;padding:27px;display:flex}.attendanceHero span{letter-spacing:1.7px;color:#6e9f92;font-size:9px}.attendanceHero h2{margin:9px 0;font-size:23px}.attendanceHero p{color:#90a099;font-size:11px}.clockActions{flex-wrap:wrap;gap:9px;display:flex}.reportExports{grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:24px;display:grid}.reportExports button{color:#448e7d;border-radius:10px;flex-direction:column;align-items:flex-start;gap:16px;padding:25px;display:flex}.reportExports b{color:#334e47}.reportExports span{color:#809b92;gap:10px;font-size:10px;display:flex}.auditPanel{margin-top:24px}.auditRow{border-top:1px solid #eff3f3;align-items:center;gap:20px;padding:13px 25px;font-size:11px;display:flex}.auditRow small{color:#a0adb5;margin-left:auto}.auditDot{background:#61aa93;border-radius:50%;width:6px;height:6px}.auditRow span{color:#7e8c97}.alert{border-radius:7px;justify-content:space-between;align-items:center;margin-bottom:17px;padding:13px 16px;font-size:12px;line-height:1.8;display:flex}.error{color:#b4523c;background:#fff0eb}.alert button{color:inherit;background:0 0;border:0;padding:0}.toast{z-index:100;color:#fff;background:#183c35;border-radius:9px;gap:10px;padding:14px 25px;display:flex;position:fixed;bottom:30px;left:50%;transform:translate(-50%);box-shadow:0 7px 40px #0002}.overlay{z-index:60;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#10243166;justify-content:center;align-items:center;padding:25px;display:flex;position:fixed;inset:0}.detail,.formModal{background:#fff;border-radius:13px;flex-direction:column;width:780px;max-width:100%;max-height:92vh;display:flex;overflow:hidden;box-shadow:0 20px 90px #10233133}.modalHeader{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:15px;padding:23px 27px;display:flex}.modalHeader small{letter-spacing:.8px;color:#97a5ac;font-size:9px}.modalHeader h2{margin-top:7px;font-size:19px;line-height:1.6}.detailBody,.formBody{padding:25px 28px;overflow:auto}.detailStatus{align-items:center;gap:10px;margin-bottom:25px;display:flex}.detailStatus>span:last-child{color:#97a5af;margin-left:auto;font-size:10px}.detailFields{grid-template-columns:1fr 1fr;gap:22px 30px;display:grid}.detailFields label{color:#91a0aa;font-size:10px}.detailFields p{white-space:pre-wrap;word-break:break-word;margin-top:8px;font-size:12px;line-height:1.8}.wide{grid-column:1/-1}.modalFooter{border-top:1px solid var(--border);background:#fafcfc;align-items:center;gap:9px;padding:17px 25px;display:flex}.modalFooter button{font-size:11px}.spacer{flex:1}.formModal form{flex-direction:column;min-height:0;display:flex}.formGrid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.formGrid>label{font-size:11px;font-weight:500;display:block}.formGrid input,.formGrid select,.formGrid textarea{margin-top:8px;font-size:12px;display:block}.formGrid em{color:#099584;margin-left:4px;font-style:normal}.requiredNote{color:#90a19e;font-size:10px}.approverPicker{border:1px solid var(--border);border-radius:7px;margin-top:8px;padding:13px}.approverPicker p{color:#96a4ac;font-size:10px}.approverPicker button{margin:9px 6px 0 0;padding:6px;font-size:10px}.attachments{border-top:1px solid var(--border);margin-top:30px;padding-top:20px}.attachments h3{align-items:center;gap:7px;margin-bottom:12px;font-size:12px;display:flex}.attachments>a{align-items:center;gap:10px;margin:10px 0;font-size:11px;display:flex}.upload{color:#728c82;cursor:pointer;background:#f4f9f6;border:1px dashed #bcd5c9;border-radius:6px;align-items:center;gap:6px;padding:12px;font-size:10px;display:inline-flex}.upload input{display:none}.approvalLine{margin-top:25px}.approvalLine h3,.linked h3{margin:20px 0 12px;font-size:12px}.approvalLine>div{background:#f7faf9;border-radius:6px;align-items:center;gap:15px;margin-bottom:10px;padding:12px;font-size:11px;display:flex}.approvalLine>div>span:first-child{color:#4c8c75;background:#e0f0e9;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.approvalLine small{color:#8d9f96}.linked button{color:#8d9eaa;justify-content:flex-start;width:100%;margin:5px 0;font-size:10px}.linked button b{color:#3b4e60;font-size:11px}.linked button .badge{margin-left:auto}.weightResult{text-align:center;background:#f2f8f5;border-radius:9px;margin-bottom:25px;padding:22px}.weightResult>span{color:#809c8e;font-size:11px;display:block}.weightResult strong{margin:9px;font-size:36px;display:block}.weightResult strong small{font-size:13px}.weightResult p{color:#8ba294;font-size:10px}.formBody>.infoBox{margin-bottom:20px}footer{color:#a7b2ba;border-top:1px solid #e7ecef;gap:14px;margin-top:30px;padding-top:18px;font-size:9px;display:flex}footer span{color:#b2bcc3}footer small{margin-left:auto;font-size:9px}.mobile{display:none!important}.loading{color:#81928d;flex-direction:column;justify-content:center;align-items:center;gap:15px;min-height:100vh;display:flex}.loginPage{background:#fff;grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.loginIntro{color:#fff;background:radial-gradient(at 100% 100%,#164b43,#101e30 65%);flex-direction:column;justify-content:space-between;padding:40px 60px;display:flex}.loginIntro .brand{padding:0}.loginIntro h1{letter-spacing:-2px;margin-top:20px;font-size:46px;line-height:1.5}.loginIntro p{color:#8fa9a7;margin-top:20px;font-size:14px;line-height:2}.loginIntro>small{color:#5c787a;letter-spacing:1.5px;font-size:9px}.loginChips{gap:20px;margin-top:30px;display:flex}.loginChips span{color:#90b5a9;align-items:center;gap:7px;font-size:11px;display:flex}.loginForm{justify-content:center;align-items:center;padding:50px;display:flex}.loginForm form{width:360px;max-width:100%}.loginForm h2{letter-spacing:-1px;margin:14px 0;font-size:27px}.loginForm p{color:#93a0a7;margin-bottom:35px;font-size:12px}.loginForm label{margin-bottom:19px;font-size:12px;display:block}.loginForm input{margin-top:9px;padding:14px}.loginForm button{width:100%;margin-top:5px;padding:14px}.loginHint{color:#95a4a8;border-top:1px solid var(--border);align-items:center;gap:12px;margin-top:28px;padding-top:24px;font-size:10px;line-height:1.9;display:flex}@media (min-width:1550px){main{padding-top:38px}.welcome{min-height:245px}.projectCards{padding-bottom:28px}.welcome h2{font-size:30px}.stat{padding:25px}}@media (max-width:1150px){.sidebar{width:213px}.main{width:calc(100% - 213px);margin-left:213px}main{padding:25px 22px}.flowGraphic{transform-origin:100%;width:310px;margin-right:0;transform:scale(.8)}.pageHeading{flex-wrap:wrap;align-items:flex-start}.stats{gap:10px}.stat{padding:18px}.dashboardGrid{grid-template-columns:minmax(0,1.6fr) minmax(230px,1fr)}.projectCards{grid-template-columns:1fr}.today{display:none}}@media (max-width:800px){.sidebar{transform:translate(-100%)}.sidebar.open{width:242px;transform:translate(0)}.main{width:100%;margin-left:0}.mobile{display:inline-flex!important}header{height:65px;padding:0 18px}.breadcrumb,.profile{display:none}main{padding:24px 16px}.pageHeading{gap:16px}h1{font-size:24px}.welcome{min-height:220px;padding:24px}.flowGraphic{display:none}.welcome h2{font-size:24px}.stats{grid-template-columns:1fr 1fr}.stats.three,.dashboardGrid{grid-template-columns:1fr}.projectCards{grid-template-columns:1fr 1fr}.toolbar{flex-wrap:wrap;padding:15px}.toolbar>div{flex-wrap:wrap}.attendanceHero{flex-direction:column;align-items:flex-start}.reportExports,.loginPage{grid-template-columns:1fr}.loginIntro{display:none}.loginForm{padding:35px}.overlay{padding:10px}.formGrid,.detailFields{grid-template-columns:1fr}.modalHeader,.detailBody,.formBody{padding:20px}.modalFooter{flex-wrap:wrap;padding:14px}.modalFooter .requiredNote{display:none}.formModal,.detail{max-height:96vh}footer small{display:none}.headerRight{margin-left:auto}.headingActions{justify-content:space-between;width:100%}}@media (max-width:450px){.projectCards{grid-template-columns:1fr}.stat p{font-size:8px}.stat h2{font-size:26px}.recentList b{font-size:10px}.recentList>button>svg{display:none}.recentList{padding:0 16px}.formGrid{gap:14px}.modalHeader h2{font-size:16px}}.lineEditor{margin-top:9px}.lineEditRow{background:#f7faf9;border:1px solid #e2ece7;border-radius:7px;margin-bottom:12px;padding:15px}.lineEditHead{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.lineEditHead button{padding:4px 8px;font-size:10px}.lineEditGrid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.lineEditGrid span{color:#8ba094;font-size:10px}.lineTable{display:block}.lineTable>span{background:#f6f9f8;margin-bottom:9px;padding:12px;display:block}.lineTable small{color:#8a9b92;margin-top:5px;display:block}.lineEditor>button{font-size:11px}@media print{body{background:#fff}.sidebar,.main,.modalFooter,.attachments .upload,.modalHeader button,.toast{display:none!important}.overlay{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff;padding:0;display:block;position:static}.detail{width:100%;max-height:none;box-shadow:none;border:0}.detailBody{overflow:visible}.modalHeader,.detailBody{padding-left:0}.attachments a{color:#000}.badge{border:1px solid #ccc}}@media screen{body{font-size:15px}small{font-size:12px}button{padding:8px 12px}input,select,textarea{padding:9px 11px;font-size:15px}.brand{padding:19px}.brand small{letter-spacing:1px;font-size:9px}.workspace{margin:0 12px 8px;padding:10px;font-size:12px}.workspace small{font-size:11px}nav{padding:0 10px 12px}.navgroup{margin:9px 0 12px}.navgroup>p{color:#8da2b4;padding:0 10px 5px;font-size:12px}.navgroup button{gap:9px;padding:8px 10px;font-size:14px}.navgroup button svg{flex-shrink:0}.navgroup button b{font-size:12px}.sidefoot{padding:12px 19px;font-size:12px}.sidefoot small{font-size:10px}header{height:62px;padding:0 22px}.breadcrumb,.today,.profile{font-size:13px}.profile small{font-size:12px}main{max-width:1920px;padding:20px 22px 14px}.pageHeading{gap:14px;margin-bottom:18px}.eyebrow{letter-spacing:1px;margin-bottom:5px;font-size:11px}h1{font-size:27px}.live{font-size:10px}.pageHeading p{color:#6c7c89;margin-top:6px;font-size:14px}.companySwitch button{padding:6px 11px;font-size:13px}.welcome{min-height:0;margin-bottom:16px;padding:19px 22px}.welcomeTag{letter-spacing:1px;font-size:11px}.welcome h2{margin-top:5px;font-size:23px;line-height:1.4}.welcome p{margin-top:7px;font-size:13px}.welcome button{margin-top:12px;padding:7px 10px;font-size:13px}.flowCompany{width:100px;height:112px}.flowCompany small{font-size:12px}.flowLine span{letter-spacing:.3px;font-size:9px}.flowLine small{font-size:12px}.stats{gap:12px;margin-bottom:16px}.stat{padding:15px 17px}.stat>div{font-size:14px}.stat h2{margin:8px 0 5px;font-size:30px}.stat h2 small{font-size:14px}.stat p{color:#788996;font-size:12px;line-height:1.5}.dashboardGrid{grid-template-columns:minmax(0,1.7fr) minmax(290px,1fr);gap:16px;margin-bottom:16px}.panelTitle{padding:16px 17px 12px}.panelTitle h3{font-size:16px}.panelTitle p{color:#7c8b97;margin-top:4px;font-size:12px}.textButton{font-size:12px}.projectCards{gap:12px;padding:0 16px 16px}.projectCard{padding:13px}.projectCard h3{margin:11px 0 6px;font-size:15px;line-height:1.6}.projectCard p,.projectMeta{font-size:12px}.projectMeta{margin-top:12px;padding-top:10px}.companyTag,.badge{padding:3px 7px;font-size:12px}.quickActions{padding:0 17px 14px}.quickActions button{padding:7px 0;font-size:14px}.quickActions button>span{width:32px;height:32px}.recentList{padding:0 17px 8px}.recentList button{gap:9px;padding:10px 0}.recentList button>div:nth-child(2){flex:1;min-width:0}.recentList b{text-overflow:ellipsis;white-space:nowrap;font-size:13px;display:block;overflow:hidden}.recentList small{font-size:12px}.recentList .badge,.docIcon{flex-shrink:0}.ownership{padding-bottom:16px}.companyBar{margin:10px 17px 16px}.companyBar>div:first-child,.companyBar span{font-size:13px}.bar{margin-top:9px}.infoBox{color:#607e72;padding:11px 12px;font-size:12px}.ownership .infoBox{margin:10px 17px 0}.toolbar{flex-wrap:wrap;gap:10px;padding:13px 16px}.toolbar button,.toolbarFilters select,.search input{font-size:14px}.search{max-width:330px}.search input{padding:8px 0}table{font-size:14px}th{color:#617584;padding:10px 13px;font-size:13px}td{padding:11px 13px}td:first-child{padding-left:17px}td small{color:#82939f;margin-top:4px;font-size:12px}.tableFoot{padding:11px 17px;font-size:12px}.tableFoot span{font-size:11px}.empty{padding:32px}.empty p,.infoStrip{font-size:13px}.infoStrip{padding:10px 17px}.attendanceHero{margin-bottom:16px;padding:18px}.attendanceHero span{font-size:11px}.attendanceHero p{font-size:13px}.reportExports{gap:14px;margin-bottom:16px}.reportExports button{gap:12px;padding:18px}.reportExports span{font-size:13px}.auditPanel{margin-top:16px}.auditRow{padding:10px 17px;font-size:13px}.alert{padding:10px 13px;font-size:14px}.modalHeader{padding:16px 20px}.modalHeader small{font-size:12px}.modalHeader h2{font-size:21px}.detailBody,.formBody{padding:18px 20px}.detailStatus{margin-bottom:18px}.detailStatus>span:last-child{font-size:12px}.detailFields{gap:16px 22px}.detailFields label{font-size:13px}.detailFields p{margin-top:5px;font-size:15px}.modalFooter{padding:12px 18px}.modalFooter button{font-size:14px}.formGrid{gap:15px}.formGrid>label{font-size:14px}.formGrid input,.formGrid select,.formGrid textarea{margin-top:6px;font-size:15px}.requiredNote,.approverPicker p,.approverPicker button{font-size:12px}.attachments{margin-top:20px;padding-top:15px}.attachments h3,.approvalLine h3,.linked h3{font-size:15px}.attachments>a,.upload,.approvalLine>div{font-size:13px}.linked button{flex-wrap:wrap;font-size:12px}.linked button b{font-size:14px}.weightResult{margin-bottom:18px;padding:16px}.weightResult>span,.weightResult p{font-size:13px}.lineEditRow{padding:12px}.lineEditHead button,.lineEditGrid span,.lineEditor>button,.lineTable small{font-size:13px}footer{margin-top:18px;padding-top:12px;font-size:12px}footer small{font-size:11px}.loginForm label,.loginForm p,.loginIntro p{font-size:15px}.loginHint{font-size:13px}.loginChips span{font-size:14px}}@media screen and (min-width:801px) and (max-width:1150px){.sidebar{width:230px}.main{width:calc(100% - 230px);margin-left:230px}main{padding:18px}.dashboardGrid{grid-template-columns:minmax(0,1fr) minmax(230px,.85fr)}.flowGraphic{display:none}.stat{padding:13px}.stat>div{gap:5px;font-size:13px}.stat>div svg{flex-shrink:0}}@media screen and (max-width:800px){header{height:56px;padding:0 12px}main{padding:16px 12px}.pageHeading{margin-bottom:14px}.pageHeading p{font-size:13px;line-height:1.6}.welcome{padding:17px}.welcome h2{font-size:22px}.stats{gap:9px}.stat{padding:12px}.stat>div{gap:5px;font-size:13px}.stat>div svg{flex-shrink:0;width:16px}.stat h2{font-size:28px}.stat p{font-size:12px}.dashboardGrid{grid-template-columns:1fr;gap:14px}.toolbar{padding:12px}.toolbar>div{flex-wrap:wrap}.search{max-width:100%}.overlay{padding:8px}.modalHeader,.detailBody,.formBody{padding:15px}.modalHeader h2{font-size:19px}.formGrid input,.formGrid select,.formGrid textarea{font-size:16px}.modalFooter{padding:12px}.lineEditGrid{grid-template-columns:1fr}.auditRow{flex-wrap:wrap;gap:10px}}@media screen{:root{--control-border:#bbc7d0;--surface-border:#d6dfe5}button,input,select,textarea,.panel,.stat,.welcome,.projectCard,.workspace,.companySwitch,.companySwitch button,.brandmark,.avatar,.flowCompany,.companyTag,.badge,.live,.infoBox,.alert,.toast,.search,.attendanceHero,.reportExports button,.detail,.formModal,.approverPicker,.upload,.weightResult,.lineEditRow,.quickActions button>span,.docIcon,.approvalLine>div,.approvalLine>div>span:first-child,.navgroup button,.navgroup button b,.bar,.bar i{border-radius:2px}.panel,.stat,.projectCard,.attendanceHero,.reportExports button{border-color:var(--surface-border);box-shadow:none}.flowCompany{box-shadow:none;transform:none}.flowCompany:last-child{transform:none}.companySwitch{background:#eef2f5;border:1px solid #d5dfe5;padding:2px}.companySwitch .on{box-shadow:none;background:#fff}.navgroup button.active{box-shadow:none}input:not([type=file]):not([type=checkbox]):not([type=radio]),select{height:40px;min-height:40px;padding:8px 11px;line-height:22px}input,select,textarea{border:1px solid var(--control-border);color:#243647;box-shadow:none;background-color:#fff;transition:border-color .12s,background-color .12s,box-shadow .12s}input::placeholder,textarea::placeholder{color:#84949f;opacity:1}input:hover:not(:disabled),select:hover:not(:disabled),textarea:hover:not(:disabled){border-color:#829aa8}input:focus,select:focus,textarea:focus{background-color:#fff;border-color:#008b80;outline:none;box-shadow:0 0 0 1px #008b80}input:disabled,select:disabled,textarea:disabled,input:read-only,textarea:read-only{color:#647582;opacity:1;background-color:#eef2f5;border-color:#d5dfe5}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23536b7a' stroke-width='1.6' stroke-linecap='square'/%3E%3C/svg%3E"),linear-gradient(#dce4e9,#dce4e9);background-position:right 11px center,right 35px center;background-repeat:no-repeat;background-size:16px 16px,1px 20px;padding-right:42px}.formGrid select{padding-right:42px}textarea{resize:vertical;min-height:108px;line-height:1.7}button{border-color:#c5d1d9;min-height:36px}button:focus-visible,a:focus-visible,.upload:focus-within{outline-offset:2px;outline:2px solid #008b80}button:hover{background-color:#f0f5f6;border-color:#90a8b3}button.primary{background-color:#087f76;border-color:#087f76}button.primary:hover{background-color:#066b63;border-color:#066b63}.textButton{min-height:28px}.search{border-color:var(--control-border)}.search:focus-within{border-color:#008b80;box-shadow:0 0 0 1px #008b80}.search input:not([type=file]){height:36px;min-height:36px;box-shadow:none;background:0 0;border:0;padding:6px 0}.overlay{-webkit-backdrop-filter:none;backdrop-filter:none;background:#15273770}.detail,.formModal{border:1px solid #afbec8;box-shadow:0 12px 40px #10233129}.modalHeader{background:#f3f6f8;border-bottom-color:#d2dde4}.modalFooter{background:#f3f6f8;border-top-color:#d2dde4}.formGrid>label{color:#405565;font-weight:600}.formGrid input,.formGrid select,.formGrid textarea{font-weight:400}.detailFields label{color:#687d8c}th{background:#eef3f6;border-bottom-color:#d4dee5}.toolbar{border-bottom-color:#dce4e9}.lineEditRow{background:#f5f7f9;border-color:#d3dfe5}.loginForm input{padding:9px 11px}.loginForm button{min-height:42px}.simpleSummary{color:#506977;background:#f0f5f6;border:1px solid #d4e0e4;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;padding:11px 13px;font-size:13px;display:flex}.simpleSummary p{color:#087f76;margin-top:5px;font-size:13px}.simpleSummary button{min-height:30px;padding:5px 9px;font-size:12px}}@media screen and (max-width:600px){.simpleSummary{flex-wrap:wrap}}@media screen{.flowPanel{background:#fff;border:1px solid #cbd8df;margin:18px 0 24px;padding:14px}.flowHeading{justify-content:space-between;align-items:center;gap:12px;display:flex}.flowHeading h3{font-size:16px}.flowHeading p,.flowHeading>span{color:#738796;margin-top:5px;font-size:12px}.flowTabs{border-bottom:1px solid #cbd8df;flex-wrap:wrap;gap:5px;padding:13px 0 8px;display:flex}.flowTabs .on{color:#fff;background:#087f76;border-color:#087f76}.flowHelp{color:#6a8290;margin:13px 0;font-size:13px;line-height:1.7}.flowPanel table{font-size:13px}.flowPanel th,.flowPanel td{padding:8px}.flowPanel td:first-child{padding-left:8px}.flowPanel button{min-height:30px;padding:6px 9px;font-size:12px}.flowEmpty{background:#f3f7f8;padding:18px}.flowEmpty p{margin-bottom:12px}.flowCard{border:1px solid #d6e0e5;margin:13px 0;padding:12px}.flowCard>div:first-child{justify-content:space-between;align-items:center;gap:10px;display:flex}.flowCard span{color:#6a8290;font-size:12px}.flowCard p{margin:7px 0;font-size:13px;line-height:1.6}.flowActions{flex-wrap:wrap;gap:7px;margin-top:12px;display:flex}.flowHistory{border-top:1px solid #e4eaf0;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;padding:8px 0;font-size:12px;display:flex}.flowForm{background:#f5f8f9;border:1px solid #cbd8df;margin-top:16px;padding:15px}.flowForm h4{margin:0 0 16px;font-size:16px}.flowForm details{margin-top:14px}.flowForm summary{cursor:pointer;color:#526d7d;margin-bottom:12px;font-size:13px}.flowCheck{align-items:center;gap:8px;display:flex!important}.flowCheck input{width:17px;height:17px;min-height:0;margin:0}.flowPanel .alert{margin-top:12px}.attachmentCategory{width:180px;margin-bottom:10px;font-size:13px}.flowDocButton{margin-right:7px}.detail:has(.flowPanel){width:1040px}.flowForm .formGrid input,.flowForm .formGrid select{width:100%}}@media screen and (max-width:700px){.flowHeading{flex-direction:column;align-items:flex-start}.flowPanel{padding:10px}.flowCard>div:first-child{flex-direction:column;align-items:flex-start}.flowTabs button{flex:1}.flowForm{padding:10px}}@media print{.flowPanel{display:none}}@media screen{.formModal{width:min(1120px,100vw - 48px)}:is(.detail,.detail:has(.flowPanel)){width:min(1360px,100vw - 48px)}.formGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px 20px}.detailFields{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 24px}.lineEditGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.modalHeader,.detailBody,.formBody{padding-left:22px;padding-right:22px}.detailBody,.formBody{min-height:0}.orderPreview{border-top:1px solid #cad9e0;margin-top:18px;padding-top:15px}.orderPreview h3{margin-bottom:12px;font-size:16px}.orderPreview details,.orderRequirements{background:#f3f7f8;border:1px solid #d5e0e5;margin:12px 0;padding:12px}.orderPreview summary,.orderRequirements summary{cursor:pointer;color:#386771;font-size:13px}.orderPreview p,.orderRequirements p{white-space:pre-wrap;margin:9px 0;font-size:13px;line-height:1.7}.orderRequirements b{font-size:13px}.orderRequirements details{margin-top:9px}.orderPreview a{margin-top:8px;font-size:13px;display:block}.productionLine{color:#426f79;white-space:normal}.flowPanel .itemSpec{white-space:normal;min-width:190px;max-width:400px;line-height:1.6}}@media screen and (max-width:1000px){.formGrid,.detailFields,.lineEditGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media screen and (max-width:600px){:is(.formModal,.detail,.detail:has(.flowPanel)){width:calc(100vw - 16px)}.formGrid,.detailFields,.lineEditGrid{grid-template-columns:1fr}.modalHeader,.detailBody,.formBody{padding-left:14px;padding-right:14px}}
