@font-face{font-family:Nanum;src:url('/NanumGothic-Regular.ttf')}*{box-sizing:border-box}body{margin:0;background:#f4f6fa;color:#1c2a3a;font:14px/1.55 Nanum,'Malgun Gothic',Arial,sans-serif}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}a{color:#176d79;text-decoration:none}button{border:1px solid #dce3eb;border-radius:8px;background:#fff;padding:9px 14px;color:#304257;white-space:nowrap}button:hover{background:#eef4f6}button.primary{background:#176d79;color:white;border-color:#176d79}button.primary:hover{background:#125865}button.danger{color:#b54545;border-color:#e8bdbd}button.small{padding:5px 9px;font-size:12px}button.link{border:0;padding:0;color:#176d79;background:none;white-space:normal;text-align:left;font-weight:700}input,select,textarea{border:1px solid #d5dde7;border-radius:7px;background:white;color:#203145;padding:9px 10px;min-height:39px;max-width:100%}input:focus,select:focus,textarea:focus{outline:2px solid #72bec8;outline-offset:1px}input[type=checkbox]{min-height:0;width:16px;height:16px;accent-color:#176d79}textarea{resize:vertical;min-height:80px}label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:700;color:#5d6a7a}label.check{flex-direction:row;align-items:center;gap:8px}.shell{display:grid;grid-template-columns:218px 1fr;min-height:100vh}.sidebar{background:#142c41;color:#c5d0db;padding:28px 17px;position:fixed;inset:0 auto 0 0;width:218px;display:flex;flex-direction:column;z-index:3}.brand{font-size:24px;font-weight:900;color:white;letter-spacing:3px}.brand-sub{font-size:12px;color:#a0b7c6;margin:6px 0 26px}.nav-label{font-size:10px;letter-spacing:1.8px;color:#8298aa;margin:15px 13px 8px}.nav-item{display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:8px;color:#bcd0df;margin-bottom:4px}.nav-item.active{color:#fff;background:#285164;box-shadow:inset 3px 0 #64c7b7}.nav-item:hover{background:#203e53;color:#fff}.icon{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.nav-count{margin-left:auto;background:#376072;color:#c5eee8;font:11px Arial;padding:2px 6px;border-radius:5px}.side-foot{margin-top:auto;padding:24px 11px 0;font-size:11px;color:#91a5b5}.side-foot strong{display:block;color:#c5d4df;margin-bottom:5px}.main{grid-column:2;min-width:0}.topbar{height:72px;background:white;border-bottom:1px solid #e5eaf0;display:flex;align-items:center;justify-content:space-between;padding:0 32px;gap:18px}.topbar .company{font-weight:800;font-size:15px}.topbar .right{display:flex;align-items:center;gap:17px}.version{font-size:11px;color:#748295}.avatar{width:31px;height:31px;background:#e4f0ef;color:#176d79;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-weight:700;margin-right:7px}.userbtn{border:0;padding:4px;background:none}.content{padding:30px 32px 60px;max-width:1800px;margin:auto}.page-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:25px}h1{font-size:25px;line-height:1.4;letter-spacing:-.7px;margin:0 0 5px}h2{font-size:17px;margin:0}h3{font-size:14px;margin:0 0 12px}.subtitle,.muted{color:#7a8797;font-size:12px}.eyebrow{font-size:10px;color:#176d79;letter-spacing:1.5px;font-weight:700;margin-bottom:8px}.actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:24px}.card{background:white;border:1px solid #e1e7ef;border-radius:12px;padding:21px}.card-label{color:#69798a;font-size:12px;margin-bottom:13px}.metric{font:700 29px/1.3 Arial,sans-serif;letter-spacing:-1px;color:#1b3e50}.metric small{font:12px Nanum,sans-serif;color:#84919e;margin-left:5px}.card-note{font-size:11px;color:#8a96a3;margin-top:10px}.panel{background:#fff;border:1px solid #e1e7ef;border-radius:12px;overflow:hidden;margin-bottom:22px}.panel-head{padding:18px 21px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #edf0f4}.panel-body{padding:20px}.split{display:grid;grid-template-columns:1.6fr 1fr;gap:22px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}th{background:#f8fafc;text-align:left;color:#66778a;font-size:11px;font-weight:700;padding:12px;white-space:nowrap;border-bottom:1px solid #e4eaf1}td{padding:13px 12px;border-bottom:1px solid #edf0f4;vertical-align:middle;max-width:350px;overflow-wrap:anywhere}tr:last-child td{border-bottom:none}tbody tr:hover{background:#fafcfd}.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.code{font-family:Arial,sans-serif;font-weight:700;color:#264659;white-space:nowrap}.badge{display:inline-block;padding:3px 8px;background:#eef2f6;color:#596c81;border-radius:5px;font-size:10px;font-weight:700;white-space:nowrap}.badge.teal{background:#e2f3ed;color:#287761}.badge.amber{background:#fff1d9;color:#a47122}.badge.red{background:#fdeaea;color:#b24b4b}.badge.blue{background:#e9effa;color:#516f9d}.empty{padding:42px 20px;text-align:center;color:#8d99a7;font-size:13px}.empty strong{display:block;color:#485e71;font-size:15px;margin-bottom:8px}.filters{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;margin:0 0 18px}.filters input{width:210px}.filters select{min-width:135px}.filters label{font-size:10px}.filters .grow{flex:1}.filters input.wide{width:300px}.selectbar{padding:13px 18px;background:#eaf4f4;border-bottom:1px solid #d7e8ea;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.tabs{display:flex;gap:24px;border-bottom:1px solid #dae2eb;margin-bottom:24px}.tab{border:none;border-radius:0;padding:12px 0;background:none;color:#7c8a98}.tab.active{color:#176d79;border-bottom:3px solid #176d79;font-weight:800}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:15px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.full{grid-column:1/-1}.notice{background:#f0f6f9;border:1px solid #d9e7ed;color:#527181;padding:13px 16px;border-radius:8px;font-size:12px;margin-bottom:18px}.notice.warn{background:#fff8e9;border-color:#eedeb7;color:#937036}.notice ul{margin:5px 0;padding-left:18px}.detail{font-size:12px}.detail dt{color:#8694a3;margin-top:12px}.detail dd{margin:3px 0 0;font-weight:700}.row-actions{display:flex;gap:6px}.profit{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #dee7eb;padding:16px 0 0;margin-top:16px}.bar{height:7px;background:#edf2f6;border-radius:6px;overflow:hidden}.bar span{display:block;height:100%;background:#64a797}.cost-row{margin:16px 0}.cost-row .line{display:flex;justify-content:space-between;font-size:12px;margin-bottom:6px}.activity{padding:14px 0;border-bottom:1px solid #edf0f4;font-size:12px}.activity:last-child{border:0}.activity small{color:#92a0ae;font-size:10px}.step{display:flex;gap:15px;align-items:center;padding:17px 0;border-bottom:1px solid #edf0f4}.step:last-child{border:0}.step-num{background:#eef5f5;color:#28717a;width:32px;height:32px;border-radius:8px;display:grid;place-items:center;font-weight:800}.step strong{font-size:13px}.step p{margin:4px 0 0;color:#7b8a99;font-size:11px}.step button{margin-left:auto}.badge-money{color:#b2772b;font-size:11px}.signature{width:90px;height:45px;object-fit:contain}.approval-flow{display:flex;gap:12px}.sign-card{flex:1;text-align:center;background:#f8fafc;border:1px solid #e0e8ef;padding:12px;border-radius:8px}.sign-card p{margin:4px 0;font-size:11px}.line-editor{min-width:1120px}.line-editor input,.line-editor select{padding:7px 6px;font-size:11px;min-height:33px;width:100%}.line-editor td{padding:5px}.line-editor textarea{font-size:11px;min-height:52px;width:100%;padding:6px}.negative{color:#b54c4c}.money-hero{font:700 31px Arial;color:#176d79}.loading{padding:100px;text-align:center;color:#7d8a99}.login-page{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.login-intro{background:#142c41;color:#d4e1ea;padding:12vh 8vw;display:flex;flex-direction:column;justify-content:center}.login-intro .brand{font-size:36px}.login-intro h1{font-size:35px;color:white;line-height:1.65;margin:40px 0 20px}.login-intro p{color:#a1bbc9;line-height:2;font-size:14px}.login-form-wrap{display:grid;place-items:center;background:#f8fafc}.login-form{width:340px}.login-form h2{font-size:23px;margin-bottom:10px}.login-form label{margin:18px 0}.login-form button{width:100%;margin-top:12px}.login-form .notice{margin-top:23px}.form-error{color:#ae4747;font-size:12px;margin-top:12px;white-space:pre-wrap}dialog{border:0;border-radius:14px;padding:0;box-shadow:0 20px 100px #142c4145;width:720px;max-width:95vw;max-height:92vh;color:#22384b}dialog.wide{width:1250px}dialog::backdrop{background:#13273877;backdrop-filter:blur(2px)}.modal-head{padding:20px 24px;border-bottom:1px solid #e4eaf0;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:white;z-index:2}.modal-body{padding:22px 24px;max-height:70vh;overflow:auto}.modal-foot{padding:16px 24px;border-top:1px solid #e4eaf0;display:flex;align-items:center;justify-content:flex-end;gap:10px;background:#fafcfd;position:sticky;bottom:0}.modal-foot .form-error{margin:0 auto 0 0}.close{border:0;font-size:24px;padding:0 5px;background:none;line-height:1}.filezone{border:1px dashed #8cb5c0;padding:25px;border-radius:10px;background:#f5fafb;margin:15px 0}.filezone input{width:100%;background:transparent;border:0}#toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);max-width:650px;padding:13px 23px;background:#173c48;color:white;border-radius:9px;box-shadow:0 5px 25px #0003;z-index:100;display:none;font-size:13px}#toast.error{background:#943f3f}.footnote{font-size:11px;color:#8897a5;margin-top:15px}.truncate{max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat-list{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #edf0f4}.stat-list:last-child{border:none}.phone-nav{display:none}details{border:1px solid #e0e7ef;border-radius:8px;padding:12px;margin:12px 0;font-size:12px}summary{cursor:pointer;color:#526b80}.hidden{display:none!important}@media(max-width:1100px){.sidebar{width:185px;padding:25px 10px}.shell{grid-template-columns:185px 1fr}.content{padding:24px 20px}.topbar{padding:0 20px}.cards{gap:10px}.card{padding:16px}.metric{font-size:24px}.split{grid-template-columns:1fr}.topbar .version{display:none}}@media(max-width:760px){.sidebar{position:static;width:auto;padding:12px;grid-column:1/-1;display:block}.sidebar .brand{font-size:17px}.brand-sub,.side-foot,.nav-label{display:none}.sidebar nav{display:flex;overflow:auto;gap:3px;margin-top:9px}.nav-item{padding:8px;white-space:nowrap;font-size:11px}.nav-item .icon{display:none}.shell{display:block}.topbar{height:60px}.topbar .company{font-size:12px}.content{padding:20px 12px}.page-head{align-items:flex-start;flex-direction:column}.cards{grid-template-columns:1fr 1fr}.grid3,.grid4{grid-template-columns:1fr 1fr}.login-page{grid-template-columns:1fr}.login-intro{display:none}.login-form-wrap{min-height:100vh}.filters input{width:150px}.userbtn{font-size:11px}.modal-body{padding:16px}.tabs{gap:14px}.metric{font-size:23px}}

.receipt-actions{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin:18px 0}.receipt-actions label{min-width:185px}.receipt-actions button{min-height:42px}.closing-fields{background:#f2f6f8;padding:16px;border-radius:8px;margin-bottom:8px}.date-history{margin:20px 0}.date-history summary{cursor:pointer;font-weight:700;padding:12px 0}.date-history td{white-space:normal}

.orders-table{table-layout:fixed;min-width:1100px}.orders-table .col-check{width:40px}.orders-table .col-date{width:118px}.orders-table .col-amount{width:144px}.orders-table .col-status{width:112px}.orders-table .col-receipt{width:314px}.orders-table .col-open{width:62px}.orders-table td{padding:10px 12px;max-width:none}.orders-table th:nth-child(5),.orders-table .order-amount,.orders-table .order-amount .num{text-align:center}.order-amount .num{font-variant-numeric:tabular-nums}.order-number{display:flex;align-items:center;gap:8px;white-space:nowrap}.order-number .muted{font-size:10px}.order-title,.order-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.order-title button.link{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.order-status{display:flex;align-items:flex-start;flex-direction:column;gap:4px}.order-receipt{font-variant-numeric:tabular-nums;line-height:1.8;color:#526577}.order-receipt>div{white-space:nowrap}.order-receipt .separator{color:#a2afb9;padding:0 4px}.orders-count{padding:9px 18px;border-bottom:1px solid #edf0f4;font-size:12px;color:#66778a;display:flex;justify-content:space-between;gap:16px}.orders-count strong{color:#264659}.orders-table tbody tr{height:65px}

/* Keep all extension menus accessible on shorter desktop windows. */
@media(min-width:761px){.sidebar nav{overflow-y:auto;min-height:0;flex:1}.side-foot{flex-shrink:0}}

/* Company CI: requested CMYK(100,30,0,0), nominal RGB(0,179,255). */
:root{--ci-background:#00b3ff;--ci-ink:#08334d;--ci-accent:#006aa3}
.brand{letter-spacing:normal;background:white;padding:12px;border-radius:10px;display:flex;align-items:center;justify-content:center}
.ci-wordmark{display:block;width:100%;height:auto;max-height:66px;object-fit:contain}
.login-intro .brand{padding:20px;max-width:520px}
.ci-horizontal{display:block;width:100%;height:auto;object-fit:contain}
.login-form-wrap{background:var(--ci-background);padding:30px}
.login-form{background:white;padding:32px;border-radius:16px;width:min(420px,100%);box-shadow:0 16px 48px #004c7820}
.topbar .company{display:flex;align-items:center;gap:14px}
.ci-header{width:150px;height:auto;max-height:35px;object-fit:contain}
@media(max-width:760px){.sidebar .brand{width:140px}.ci-header{width:95px}.topbar .company{gap:6px}.login-form-wrap{padding:18px}.login-form{padding:26px}}

/* Login: white introduction and cyan form background. */
.login-intro{background:#fff;color:#1c2a3a}
.login-intro h1{color:#1c2a3a}
.login-intro p,.login-intro .muted{color:#526577!important}

/* Align the CI artwork with the introduction text. */
.login-intro .brand{padding:0;border-radius:0;justify-content:flex-start;max-width:520px}
.login-intro h1{margin-top:48px}
.login-form button.primary{background:#00b3ff;border-color:#00b3ff;color:#08334d;font-weight:700}
.login-form button.primary:hover{background:#00a3e8;border-color:#00a3e8}

/* Login-only footer and button text. */
.login-intro{position:relative}
.login-version{position:absolute;bottom:24px;left:8vw;right:24px;font-size:11px;line-height:1.6;color:#526577}
.login-form button.primary{color:#fff}

/* Interior theme follows the white and cyan login design. */
.shell{background:#f5fbff}
.shell .main{background:#f5fbff}
.shell .sidebar{background:#00b3ff;color:#08334d}
.sidebar .brand{background:transparent;padding:8px 0;border-radius:0}
.sidebar .brand-sub,.sidebar .nav-label,.sidebar .side-foot,.sidebar .side-foot strong{color:#08334d}
.sidebar .nav-item{color:#08334d;font-weight:700}
.sidebar .nav-item.active{background:#fff;color:#006b9b;box-shadow:inset 3px 0 #006b9b}
.sidebar .nav-item:hover{background:#dff5ff;color:#08334d}
.sidebar .nav-count{background:#fff;color:#006b9b}
.shell .topbar{background:#fff;border-bottom-color:#d5effc}
.shell .card,.shell .panel{border-color:#d5eaf5;box-shadow:0 3px 14px #00547f05}
.shell button.primary,dialog button.primary{background:#00b3ff;border-color:#00b3ff;color:#fff;font-weight:700}
.shell button.primary:hover,dialog button.primary:hover{background:#009fe3;border-color:#009fe3}
.shell a,.shell button.link,.shell .eyebrow{color:#0075a8}
.shell .avatar,.shell .step-num{background:#e3f6ff;color:#006b9b}
.shell th{background:#edf9ff;color:#375769}
.shell tbody tr:hover{background:#f0faff}
.shell .tabs .active{color:#0075a8;border-color:#00b3ff}
.shell input:focus,.shell select:focus,.shell textarea:focus{outline-color:#00b3ff}
.shell input[type=checkbox]{accent-color:#00b3ff}
.login-intro h1,.login-intro p{overflow-wrap:anywhere}
.branding-copy{white-space:pre-wrap;overflow-wrap:anywhere}

.sidebar nav{scrollbar-width:thin;scrollbar-color:#087ca8 transparent}
.sidebar nav::-webkit-scrollbar{width:5px;height:5px}
.sidebar nav::-webkit-scrollbar-thumb{background:#087ca8;border-radius:6px}
.sidebar nav::-webkit-scrollbar-track{background:transparent}

/* Mail-style palette: blue header, quiet navigation, white workspace. */
:root{--ui-blue:#1976f3;--ui-blue-hover:#1165d6;--ui-ink:#263445}
.shell,.shell .main{background:#fff;color:var(--ui-ink)}
.shell .sidebar{background:#f7f8fa;color:#354052;border-right:1px solid #e8ecf1}
.sidebar .brand{background:transparent;padding:8px 0}
.sidebar .brand-sub,.sidebar .side-foot,.sidebar .side-foot strong{color:#526070}
.sidebar .nav-label{color:#7b8695}
.sidebar .nav-item{color:#354052;font-weight:500}
.sidebar .nav-item.active{background:#e4edfc;color:#1467db;box-shadow:none;font-weight:700}
.sidebar .nav-item:hover{background:#edf1f7;color:#263445}
.sidebar .nav-count{background:#dce9ff;color:#1467db}
.shell .topbar{background:var(--ui-blue);border-bottom:0;color:#fff}
.shell .topbar .company,.shell .topbar a,.shell .topbar button,.shell .topbar button.link,.shell .topbar .muted{color:#fff}
.shell .topbar .avatar{background:#ffffff26;color:#fff}
.shell .topbar .userbtn{background:transparent}
.shell .card,.shell .panel{background:#fff;border-color:#e3e8ef;box-shadow:none}
.shell button.primary,dialog button.primary,.login-form button.primary{background:var(--ui-blue);border-color:var(--ui-blue);color:#fff;font-weight:700}
.shell button.primary:hover,dialog button.primary:hover,.login-form button.primary:hover{background:var(--ui-blue-hover);border-color:var(--ui-blue-hover);color:#fff}
.shell a,.shell button.link{color:#1467db}
.shell .eyebrow{color:#526070}
.shell .subtitle,.shell .muted{color:#657183}
.shell .card-label,.shell .card-note{color:#657183}
.shell th{background:#f7f8fa;color:#526070}
.shell tbody tr:hover{background:#f7faff}
.shell .step-num{background:#edf3fd;color:#1467db}
.shell .tabs .active{color:#1467db;border-color:var(--ui-blue)}
.shell input:focus,.shell select:focus,.shell textarea:focus{outline-color:var(--ui-blue)}
.shell input[type=checkbox]{accent-color:var(--ui-blue)}
.sidebar nav{scrollbar-color:#c4cbd5 transparent}
.sidebar nav::-webkit-scrollbar-thumb{background:#c4cbd5}
.login-form-wrap{background:#eef4fb}

/* Source CI blue, sampled from the supplied AI artwork: RGB(0,129,204). */
:root{--ui-blue:#0081cc;--ui-blue-hover:#006dab;--ci-accent:#0081cc}
.sidebar .nav-item.active,.sidebar .nav-count{color:#006dab;background:#e5f2fa}
.shell a,.shell button.link{color:#006dab}
.shell .topbar a,.shell .topbar button.link{color:#fff}
.shell .step-num{color:#006dab;background:#e5f2fa}
.shell .tabs .active{color:#006dab;border-color:#0081cc}
.login-form-wrap{background:#edf6fc}
.login-form .eyebrow{color:#006dab}

/* Clearer navigation typography and larger header branding. */
.shell .ci-header{width:225px;max-height:44px}
.sidebar .nav-label{font-size:12px;font-weight:800;color:#364456;letter-spacing:1.2px}
.sidebar .nav-item{font-size:15px;font-weight:700;color:#263445}
.sidebar .nav-item.active{font-weight:800;color:#006dab}
.sidebar .brand-sub{font-weight:700;color:#455467}
.sidebar .brand-home{display:flex;background:transparent;cursor:pointer}
.sidebar .brand-home:focus-visible{outline:2px solid #0081cc;outline-offset:4px}
@media(max-width:1100px){.shell .ci-header{width:185px}.sidebar .nav-item{font-size:14px}}
@media(max-width:760px){.shell .ci-header{width:120px}.sidebar .nav-item{font-size:12px}}

.sidebar .nav-sub{padding-left:42px;font-size:13px;font-weight:600}
.sidebar .supply-parent{font-weight:800}.supply-nav-group{margin-bottom:5px}
.sidebar .group-active{color:#006dab}
.sort-bar{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;padding:12px 16px;margin:0 0 20px;border:1px solid #e3e8ef;border-radius:10px;background:#f8fafc}
.sort-bar strong{align-self:center}.sort-bar .muted{align-self:center}
.download-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #cbd8e6;padding:9px 14px;border-radius:8px;background:#fff;font-weight:700}

.supply-layout{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:0 0 18px}
.supply-legend{display:flex;align-items:center;gap:7px;flex-wrap:wrap;color:#445568;font-size:12px}.legend-dot{width:12px;height:12px;border-radius:3px;border:1px solid #ccd6df;display:inline-block}
.legend-dot.complete{background:#d7efe2}.legend-dot.waiting{background:#fff2ce}.legend-dot.partial{background:#ffe0bd}.legend-dot.own{background:#e5e8ed}.legend-dot.overdue{background:#f9d8d8}
.matrix-section{padding:16px 14px 24px}.matrix-section h3{font-size:16px;margin-bottom:14px}.matrix-section h3 .muted{margin-left:12px;font-weight:400}
.matrix-scroll{overflow:auto;border:1px solid #dce5ee;border-radius:8px}.supply-matrix{table-layout:fixed;min-width:1180px}.supply-matrix th{text-align:center;white-space:normal;line-height:1.45;background:#edf4fa;color:#314d63;font-size:12px;border-right:1px solid #dce5ee;padding:12px 7px}
.supply-matrix td{padding:7px;vertical-align:top;border-right:1px solid #e1e7ed;border-bottom:1px solid #dce5ee;max-width:none}.supply-matrix .matrix-project{position:sticky;left:0;background:#fff;z-index:1;text-align:left}.supply-matrix th.matrix-project{background:#edf4fa;z-index:2}
.matrix-project strong{font:700 14px Arial,sans-serif}.matrix-project>div{margin-top:5px}.matrix-due{font:12px/1.5 Arial,sans-serif;text-align:center;white-space:nowrap}.matrix-progress{font-size:11px;color:#526475}.matrix-track{height:5px;background:#e8edf2;border-radius:4px;margin-top:7px;overflow:hidden}.matrix-track span{display:block;height:100%;background:#389464}
.matrix-cell{display:block;width:100%;border:1px solid transparent;border-radius:7px;padding:9px 8px;text-align:left;white-space:normal;font-size:11px;line-height:1.5;min-height:100px;color:#294254}.matrix-cell.complete{background:#e7f5ec;border-color:#cce7d7}.matrix-cell.waiting{background:#fff7df;border-color:#efe0ab}.matrix-cell.partial{background:#fff0df;border-color:#f1d1aa}.matrix-cell.own{background:#f0f2f5;border-color:#dce0e7}.matrix-cell.overdue{background:#fff0f0;border-color:#eac4c4}.matrix-cell:hover{filter:brightness(.97);box-shadow:0 0 0 2px #0081cc55}
.matrix-state{display:flex;gap:4px;flex-wrap:wrap;font-size:12px;font-weight:800;color:#263f50}.matrix-own{font-size:10px;color:#66727e}.matrix-vendor{font-weight:700;margin:5px 0;overflow-wrap:anywhere}.matrix-date{color:#536273;font-size:10px}.matrix-overdue{color:#a23f3f;font-weight:700;margin-top:3px}.matrix-note{margin-top:4px;color:#526273}.matrix-na{text-align:center;color:#b1bac4;background:#fafbfc}

/* Completion is visually closed; own purchasing is green until complete. */
.legend-dot.complete{background:#d9dde3}.legend-dot.own{background:#d7efe2}
.matrix-cell.complete{background:#edf0f3;border-color:#d9dfe6;color:#566170}.matrix-cell.complete .matrix-state{color:#526170}
.matrix-cell.own{background:#e6f4eb;border-color:#bedecb;color:#29523d}
.matrix-cell:disabled{opacity:1;cursor:default}.matrix-state .matrix-own{font-weight:600}

.sidebar details{border:0;border-radius:0;padding:0;margin:0;background:transparent;box-shadow:none;font:inherit}.sidebar summary{cursor:pointer;list-style:none}.sidebar summary::-webkit-details-marker{display:none}.sidebar summary .nav-chevron{display:block;margin-left:auto;margin-right:3px;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;font-size:0;line-height:0;transform:rotate(-45deg);opacity:.65;flex-shrink:0}.sidebar details[open]>summary .nav-chevron{transform:rotate(45deg)}.sidebar summary.nav-label{display:flex;align-items:center}.sidebar .supply-nav-group .nav-sub{padding-left:43px}
.plan-toolbar{margin:0 0 18px}.production-scroll{overflow:auto}.production-scroll table{min-width:1450px;table-layout:fixed}.production-scroll th:first-child{width:205px}.production-scroll th:nth-child(2){width:145px}.production-scroll td{max-width:none;vertical-align:top;white-space:normal;padding:9px 7px}.phase-cell{width:100%;min-height:135px;padding:10px 8px;text-align:left;white-space:normal;border:1px solid #e1e5eb;background:#fff8e7;font-size:11px;line-height:1.6;color:#354052}.phase-cell strong{font-size:12px}.phase-cell div{margin-top:5px}.phase-cell.done{background:#edf0f3;border-color:#d9dfe6}.phase-cell.doing{background:#e5f2fa;border-color:#b9dced}.phase-cell.blocked,.phase-cell.late{background:#fff0ee;border-color:#e9c9c5}.phase-cell:disabled{opacity:1;cursor:default}.phase-cell small{display:block;margin-top:4px;color:#815948}.phase-progress{height:4px;border-radius:3px;background:#dfe5eb;overflow:hidden}.phase-progress span{height:100%;display:block;background:#0081cc}.plan-observation{font-size:11px;color:#697786;margin-top:7px;white-space:pre-wrap}.plan-warning{font-size:11px;color:#a35c28;margin-top:4px}.company-stamp-preview{margin:14px 0;min-height:50px;color:#7b8795}.company-stamp-preview img{max-width:140px;max-height:110px;object-fit:contain}
.sidebar .brand-sub{text-align:center;width:100%;margin-left:0;margin-right:0}.quote-lines{overflow:auto;margin:18px 0}.quote-lines table{min-width:780px}.quote-lines input{width:100%;min-width:65px}.quote-lines td{padding:5px}.sales-paging{display:flex;align-items:center;justify-content:center;gap:16px;padding:18px}.sidebar details>summary.group-active{color:#006dab}
.work-tabs{display:flex;align-items:flex-end;gap:4px;min-width:0;flex:1;overflow-x:auto;align-self:stretch;padding-top:20px;scrollbar-width:thin}.work-tab{display:flex;align-items:center;flex-shrink:0;max-width:235px;border-radius:9px 9px 0 0;background:#ffffff16;min-height:41px;color:white}.work-tab.current{background:#f4f7fb;color:#006dab}.work-tab-label,.work-tab-close{border:0;background:transparent!important;color:inherit!important;border-radius:0;padding:11px 10px;min-width:0;font-size:13px;font-weight:700}.work-tab-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.work-tab-close{padding:8px;font-size:17px;font-weight:400;opacity:.75}.work-tab-close:hover{opacity:1}.topbar .right{flex-shrink:0}.topbar{gap:15px}@media(max-width:900px){.work-tabs{padding-top:12px}.topbar .right>a{display:none}}
.first-guide{margin-bottom:22px;padding-bottom:20px;border-bottom:1px solid #e6ebf0}.guide-step{display:flex;align-items:center;justify-content:space-between;padding:10px 0;gap:20px}.notification-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:12px}.notification-grid a{display:flex;justify-content:space-between;align-items:center;padding:16px;background:#edf6fc;border-radius:8px;color:#31536b}.notification-grid strong{font-size:20px;color:#0081cc}
.profile-banner{display:flex;align-items:center;gap:18px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #e5ebf0}.profile-avatar{display:flex;align-items:center;justify-content:center;width:66px;height:66px;border-radius:50%;background:#e2f1fa;color:#0081cc;font-size:25px;font-weight:800}.profile-banner h3{font-size:21px;margin-bottom:4px}.profile-banner small{color:#7c8897}.profile-security{margin:25px 0;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e6ebf0;padding-top:20px;gap:15px}
:root{--brand:#0081cc;--ink:#243445;--line:#e7ebf0}body{color:var(--ink)}.panel,.card{border-color:var(--line);border-radius:12px;box-shadow:none}.panel-head{border-color:#edf0f4}.content{padding-top:32px}.page-head h1{font-size:26px;letter-spacing:-.8px}.table-wrap td,td{font-variant-numeric:tabular-nums}.production-scroll,.matrix-scroll{max-height:68vh;overflow:auto}.production-scroll thead th,.matrix-scroll thead th{position:sticky;top:0;z-index:2;background:#f6f8fb}.phase-cell{background:#fff;border-color:#e7ebf0;border-left:3px solid #ebd6a0;border-radius:8px}.phase-cell.done{background:#f0f2f5;border-left-color:#bfc6d0}.phase-cell.doing{background:#f5fafe;border-left-color:#0081cc}.phase-cell.late,.phase-cell.blocked{background:#fff;border-left-color:#d9948b}.phase-cell.late strong,.phase-cell.blocked strong{color:#a95c55}.phase-cell:hover{background:#f5f9fd;box-shadow:0 0 0 1px #cde4f4}.quote-lines td:first-child{min-width:210px}.quote-lines td:nth-child(2){min-width:140px}.quote-total{margin:18px 0;text-align:right;font-size:18px;font-weight:800;color:#005f98}.sales-paging button{background:transparent}.profile-banner{background:#f7fafc;padding:20px;border:0;border-radius:12px}

/* Shared browser workspace on phones and tablets. */
@media(max-width:760px){
 .sidebar{position:static!important;width:100%!important;padding:12px!important;max-height:none}.sidebar .brand{width:130px!important;margin:auto}.sidebar .brand-sub{display:block;font-size:11px;margin:4px 0 10px}.sidebar nav{display:block!important;overflow:visible!important}.sidebar nav>details>summary{padding:10px}.sidebar nav>details[open]{max-height:35vh;overflow:auto}.sidebar .nav-item{min-height:42px}.sidebar .nav-sub{padding-left:28px!important}.topbar{height:auto!important;min-height:62px;padding:0 12px!important;gap:6px;flex-wrap:wrap}.work-tabs{order:2;flex-basis:100%;padding-top:0;min-height:42px}.topbar .right{margin-left:auto;min-height:45px}.topbar .right .version{display:none}.content{padding:20px 12px!important}.grid2,.grid3,.grid4{grid-template-columns:1fr!important}.cards{grid-template-columns:1fr 1fr}.card{padding:13px}.metric{font-size:23px}.filters{align-items:stretch}.filters label,.filters input,.filters select{width:100%;min-width:0}.filters label{flex:1 1 140px}.actions button,.actions a{min-height:42px}input,select,textarea{font-size:16px;min-height:44px}dialog{max-width:calc(100vw - 16px);width:calc(100vw - 16px)}.modal-body{max-height:70dvh}.modal-foot{flex-wrap:wrap}.notification-grid{grid-template-columns:1fr 1fr}.notification-grid a{padding:12px}.profile-security{flex-wrap:wrap}.production-scroll,.matrix-scroll{max-height:65dvh}.login-form-wrap{padding:16px!important}.login-form{width:100%;max-width:440px}
}
@media(max-width:380px){.cards,.notification-grid{grid-template-columns:1fr}}

.login-feedback{white-space:pre-line;line-height:1.75;font-size:13px;color:#526777;margin-top:14px}.login-feedback:empty{display:none}

.phase-task-count{margin-top:8px;padding-top:7px;border-top:1px solid #e5ebf0;font-size:11px;color:#0081cc;font-weight:700}.phase-detail-summary{display:flex;gap:18px;align-items:center;flex-wrap:wrap;padding:15px;background:#f6f9fc;border-radius:8px}.process-tree{background:#fff;border:1px solid #e5ebf0;border-radius:10px;padding:16px;margin:0 0 14px}.process-tree>summary{font-size:14px}.process-stage{border:0;border-left:2px solid #e1edf5;border-radius:0;padding:10px 0 8px 14px;margin:14px 0 0}.process-stage>summary{font-weight:700;font-size:13px}.process-stage .actions{margin:12px 0}.process-tree .table-wrap{margin-top:10px}.process-tree td{vertical-align:top}

.schedule-sheet-scroll{overflow:auto;max-height:68vh}.schedule-sheet{min-width:2200px;border-collapse:separate;border-spacing:0;font-size:12px}.schedule-sheet th{position:sticky;top:0;background:#f1f6fa;z-index:3;padding:0}.schedule-sheet th button{border:0;border-radius:0;background:transparent;color:#40576a;font-size:11px;font-weight:700;padding:12px;min-height:42px}.schedule-sheet th[aria-sort=ascending],.schedule-sheet th[aria-sort=descending]{background:#e1f0fa}.schedule-sheet td{white-space:nowrap;border-right:1px solid #eef1f4;vertical-align:top;min-width:110px}.schedule-sheet th:first-child,.schedule-sheet td:first-child{position:sticky;left:0;min-width:210px;width:210px;max-width:210px;white-space:normal;z-index:2;background:#fff;border-right:1px solid #dce6ee}.schedule-sheet th:first-child{z-index:4;background:#f1f6fa}.schedule-sheet tbody tr:nth-child(even) td{background:#fafcfe}.schedule-sheet tbody tr:hover td{background:#edf6fc}.schedule-sheet .schedule-complete td{background:#eef0f3!important;color:#677585}.schedule-sheet td.schedule-title{white-space:normal;min-width:210px;max-width:280px}.schedule-sheet td:first-child .muted{margin-top:4px}.schedule-sheet-scroll::-webkit-scrollbar{height:10px}

.schedule-sheet.compact{min-width:1300px}.schedule-sheet.compact .schedule-title{min-width:180px;max-width:230px}

.mini-process{display:flex;flex-wrap:wrap;gap:4px;max-width:300px}.mini-process .phase-done{background:#e8ebef;color:#66717d}.mini-process .phase-active{background:#e0f1fc;color:#006eab}.project-phase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.project-phase-grid .panel{margin:0 0 16px}.project-phase-grid h3{margin:0}@media(max-width:1000px){.project-phase-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.project-phase-grid{grid-template-columns:1fr}}

/* Daily production reports */
.daily-variance{display:inline-block;padding:4px 9px;border-radius:6px;background:#edf3f7;color:#324b5b;font-weight:700;white-space:nowrap}.daily-variance.behind{background:#fff0eb;color:#ad452a}.daily-variance.ahead{background:#e9f6f0;color:#21734e}.daily-content{white-space:pre-wrap;max-width:340px;min-width:150px}.daily-preview{padding:16px;border:1px solid #dce7ed;background:#f5f9fc;border-radius:10px;margin-top:16px}.daily-preview p{margin:8px 0}

.drawing-change{white-space:pre-wrap;overflow-wrap:anywhere;max-width:420px;min-width:150px}.drawing-notice-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#f2f8fc;padding:14px 16px;border-radius:10px;margin:12px 0}.drawing-bell{white-space:nowrap}.topbar .drawing-bell{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);color:white;font-weight:700;padding:7px 10px;border-radius:8px}.download-button.small{display:inline-flex;margin:3px 5px 3px 0}

.por-reference-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,1fr);gap:18px;margin-top:18px}.por-reference-layout aside{min-width:0;background:#f7fafc;border:1px solid #dce7ee;border-radius:12px;padding:14px}.por-pdf{width:100%;height:620px;border:1px solid #d6e1e8;margin-top:12px;background:white}@media(max-width:1000px){.por-reference-layout{grid-template-columns:1fr}.por-pdf{height:500px}}

.por-approval-signs{margin:8px 0;display:flex;justify-content:flex-end}.por-approval-signs .print-signs{width:360px;max-width:100%;border-collapse:collapse}.por-approval-signs th,.por-approval-signs td{border:1px solid #dce6ed;padding:5px 8px;text-align:center;font-size:12px;line-height:1.35}.por-approval-signs img{max-height:26px;max-width:70px;object-fit:contain}.por-reference-layout aside h3{margin:0 0 6px}.por-reference-layout aside p{margin:4px 0}.por-reference-layout .por-pdf{height:560px}

.por-approval-signs{display:block}.por-approval-signs summary{cursor:pointer;color:#456477;font-size:12px;padding:7px 0}.por-approval-signs .print-signs{margin-left:auto}

.dev-preview-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:#eef6fb;border:1px solid #cbdfea;border-radius:12px;padding:14px 18px;margin-bottom:24px;color:#244458}.dev-preview-bar select{max-width:300px;padding:8px;border:1px solid #ccdce7;border-radius:8px;background:white}.dev-preview-bar span{font-size:13px}#signing-settings,#access-settings{scroll-margin-top:24px}

/* Product evidence: clear action summaries and responsive original-file galleries. */
.record-summary{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}.record-summary button{padding:13px 18px;background:#fff;border:1px solid #c7d8e4;border-radius:10px;font-weight:700;color:#24465c}.record-summary button:hover{border-color:#007fb4;background:#eef9ff}
.evidence-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.evidence-gallery>div,.evidence-gallery>figure{margin:0;border:1px solid #dfe7ec;border-radius:10px;padding:12px;min-width:0;background:#fff}.evidence-gallery img{background:#f4f7f9;border-radius:6px}.evidence-gallery p{overflow-wrap:anywhere}.evidence-gallery small{color:#607284}
#packing-lines input{min-width:100px}#packing-lines input[data-pack="name"]{min-width:170px}#packing-lines input[data-pack="qty"],#packing-lines input[data-pack="unit"]{min-width:65px}
@media(max-width:600px){.record-summary button{flex:1 1 45%;font-size:12px}.evidence-gallery{grid-template-columns:1fr}}

.packing-item{padding:18px;border-top:1px solid #e0e8ed}.packing-item>.actions{margin-bottom:14px}.packing-item input{width:100%;min-width:0!important}.packing-item .grid3{gap:12px}

/* Consistent form controls across Safari and Chromium. */
:root{--control-height:42px;--control-radius:8px;--control-border:#cdd8e4}
input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]):not([type=color]),select:not([multiple]){height:var(--control-height);min-height:var(--control-height);line-height:20px;padding:10px 12px;border:1px solid var(--control-border);border-radius:var(--control-radius);font-size:13px;font-weight:400;vertical-align:middle}
input[type=search]{-webkit-appearance:none;appearance:none}
select:not([multiple]){-webkit-appearance:none;appearance:none;padding-right:36px;background-color:#fff;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='%23576c80' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px}
textarea{font-size:13px;font-weight:400;line-height:1.6;padding:10px 12px;border-color:var(--control-border);border-radius:var(--control-radius);min-height:96px}
label:not(.check){min-width:0;gap:7px;line-height:1.5}label:not(.check)>input,label:not(.check)>select,label:not(.check)>textarea{width:100%}
.filters{gap:12px;align-items:flex-end;margin-bottom:20px}.filters label{font-size:12px;flex:0 1 auto;min-width:150px}.filters label:has(input[type=text]),.filters label:has(input[type=search]){min-width:210px}.filters input{width:100%}.filters select{min-width:150px}.filters>button,.filters>button.small{height:var(--control-height);min-height:var(--control-height);padding:0 16px;line-height:20px;font-size:13px;border-radius:var(--control-radius);margin:0;display:inline-flex;align-items:center;justify-content:center}.filters>button[type=submit]{font-weight:700}
.grid2>label,.grid3>label,.grid4>label{align-self:start}.grid2,.grid3,.grid4{row-gap:18px}.modal-foot>button:not(.link):not(.close),.receipt-actions>button{min-height:var(--control-height);padding:9px 16px;line-height:22px}.modal-head .close{min-height:32px;min-width:32px;display:grid;place-items:center}.panel-head{flex-wrap:wrap}.panel-head .actions{row-gap:8px}.empty{padding:36px 20px}.empty strong{margin-bottom:6px}
input:disabled,select:disabled,textarea:disabled{background-color:#f3f6f9;color:#69798a;opacity:1}button:focus-visible,a:focus-visible{outline:2px solid #0081cc;outline-offset:3px}
.line-editor input:not([type=checkbox]):not([type=radio]),.line-editor select{height:36px;min-height:36px;font-size:12px;padding:7px 8px}.line-editor select{padding-right:28px;background-position:right 8px center}.quote-lines input:not([type=checkbox]){height:38px;min-height:38px;font-size:12px}.dev-preview-bar select{height:var(--control-height);padding-right:36px}
@media(max-width:760px){:root{--control-height:44px}.filters label,.filters label:has(input[type=text]),.filters label:has(input[type=search]){flex:1 1 160px;min-width:0}.filters label>input,.filters label>select{min-width:0;width:100%}.filters>button{flex:1 1 100px}input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]):not([type=color]),select:not([multiple]),textarea{font-size:16px}.line-editor input:not([type=checkbox]):not([type=radio]),.line-editor select,.quote-lines input:not([type=checkbox]){height:44px;min-height:44px;font-size:16px}.grid2,.grid3,.grid4{row-gap:16px}}

.workflow-help{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.workflow-help-card{padding:20px;border:1px solid #dfe7ee;border-radius:12px;background:#fff}.workflow-help-card .actions{justify-content:space-between;align-items:center}.workflow-help-card h3{margin:0;font-size:15px}.workflow-help-card ol{padding-left:20px;margin:16px 0 0;color:#526578}.workflow-help-card li+li{margin-top:10px}.notification-grid a{border:1px solid #dce7ef;border-radius:10px;transition:background .15s}.notification-grid a:hover{background:#edf7fd;border-color:#9cc9e4}@media(max-width:760px){.workflow-help{grid-template-columns:1fr}.workflow-help-card{padding:16px}}

/* All work forms share one control size, including table and modal editors. */
:root{--control-height:44px}
body input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]):not([type=color]),body select:not([multiple]),body .line-editor input:not([type=checkbox]):not([type=radio]),body .line-editor select,body .quote-lines input:not([type=checkbox]){height:var(--control-height);min-height:var(--control-height);padding:10px 12px;font-size:14px;line-height:22px;border-radius:8px}
body select:not([multiple]),body .line-editor select,body .dev-preview-bar select{padding-right:38px;background-position:right 12px center}
body button:not(.link):not(.tab):not(.close):not(.userbtn){min-height:var(--control-height);padding:10px 14px;font-size:14px;line-height:22px;border-radius:8px}
body .filters>button,body .filters>button.small{height:var(--control-height);min-height:var(--control-height);padding:10px 16px;font-size:14px;line-height:22px}
body label:not(.check){font-size:12px;line-height:18px;gap:8px;min-width:0}
body .grid2>label,body .grid3>label,body .grid4>label{align-self:stretch;justify-content:flex-end}
body .grid2,body .grid3,body .grid4{gap:18px 16px;grid-auto-rows:auto}
body textarea,body .line-editor textarea{font-size:14px;line-height:22px;min-height:96px;padding:10px 12px;border-radius:8px}
body input[type=file]{min-height:var(--control-height);font-size:14px;padding:5px;line-height:30px;border-radius:8px}
input[type=file]::file-selector-button{font:inherit;border:0;border-radius:5px;padding:0 12px;margin-right:12px;min-height:32px;background:#eaf2f7;color:#304257;cursor:pointer}
body .line-editor td,body .quote-lines td{padding:8px 6px}
.actions,.row-actions{gap:8px;align-items:center;flex-wrap:wrap}
input[readonly],textarea[readonly]{background:#f3f6f9;color:#526578}
input[type=date],input[type=datetime-local],input[type=time]{-webkit-appearance:none;appearance:none;min-width:0}
input::-webkit-date-and-time-value{text-align:left;min-height:22px}
@media(max-width:760px){body input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]):not([type=color]),body select:not([multiple]),body textarea,body .line-editor input:not([type=checkbox]):not([type=radio]),body .line-editor select,body .quote-lines input:not([type=checkbox]),body .line-editor textarea{font-size:16px}.filters label{flex-basis:180px}.row-actions{min-width:100px}}

#print-preview-frame{display:block;width:100%;height:65vh;min-height:340px;border:1px solid #d5dde7;background:#edf1f4;border-radius:8px}.print-preview-controls{align-items:flex-end;gap:12px}.print-preview-controls label{min-width:110px}@media(max-width:760px){#print-preview-frame{height:60dvh;min-height:260px}.print-preview-controls{gap:8px}}

dialog.print-preview-dialog{width:1250px;max-width:calc(100vw - 32px);box-sizing:border-box}.print-preview-dialog .modal-body{min-width:0;overflow:auto}.print-preview-dialog .modal-head,.print-preview-dialog .modal-foot{box-sizing:border-box}

.issued-document-preview{display:block;width:100%;height:65vh;min-height:300px;border:1px solid #d8e2ea;border-radius:10px;margin-top:16px}.mail-body-preview{white-space:pre-wrap;overflow-wrap:anywhere;padding:18px;background:#f6f9fb;border:1px solid #d8e2ea;border-radius:10px;margin:16px 0}

.mail-confirmation-summary{display:grid;grid-template-columns:110px minmax(0,1fr);gap:10px 18px;align-items:start}.mail-confirmation-summary dt,.mail-confirmation-summary dd{margin:0}.file-checksum{overflow-wrap:anywhere;color:#738293}@media(max-width:560px){.mail-confirmation-summary{grid-template-columns:1fr;gap:6px}.mail-confirmation-summary dd{margin-bottom:12px}}

.drawing-owner{margin-top:6px;overflow-wrap:anywhere}.drawing-owner-summary{padding:12px 16px;background:#f5f9fc;border:1px solid #dce6ee;border-radius:10px;display:flex;gap:12px;flex-wrap:wrap}

/* Keep each caption attached to its own control; separate consecutive field groups. */
body label.form-field{display:flex;flex-direction:column;gap:7px;margin:0;min-width:0;align-items:stretch;justify-content:flex-start}
body .form-field>.field-title{display:block;line-height:1.5;font-weight:600;color:#46566b}
body .form-field>input,body .form-field>select,body .form-field>textarea{margin:0;width:100%;box-sizing:border-box;min-width:0}
.modal-body>.form-field+.form-field{margin-top:18px}.modal-body>.form-field+ .notice,.modal-body>.notice+.form-field{margin-top:18px}
.person-cascade,.staff-picker{display:grid;gap:14px;min-width:0;padding:16px;border:1px solid #dce4ec;border-radius:10px;background:#f8fafc}
.staff-picker{grid-column:1/-1;grid-template-columns:1fr 1fr}.staff-picker>.form-field:last-of-type,.staff-picker>small{grid-column:1/-1}
[data-form=approval-policy] .form-error,[data-form=approval-reviewer] .form-error{display:block;margin-top:10px;line-height:1.5}
@media(max-width:760px){.staff-picker{grid-template-columns:1fr}.person-cascade,.staff-picker{padding:12px}.modal-body>.form-field+.form-field{margin-top:18px}}

.login-form>.eyebrow{font-size:14px;font-weight:600;letter-spacing:.08em}.remember-login{margin:0 0 18px;gap:8px}

.login-intro h1{word-break:keep-all;overflow-wrap:break-word}

body .login-form>.form-field{margin-top:18px}body .login-form>.remember-login{margin-top:16px;margin-bottom:18px}

/* Shared document composition with optional live print preview. */
.document-editor{width:min(1280px,96vw)!important;max-width:1280px!important}.document-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 0 20px;color:#64748b;border-bottom:1px solid #e2e8f0;margin-bottom:24px}.document-compose{display:grid;grid-template-columns:minmax(0,1fr);gap:28px}.document-compose.preview-open{grid-template-columns:minmax(320px,.9fr) minmax(380px,1.1fr)}.document-input{max-width:820px;width:100%;margin:auto}.document-input h3{margin:24px 0 14px;font-size:16px}.document-input h3:first-child{margin-top:0}.document-input>label{margin-bottom:18px}.document-input textarea{min-height:110px;line-height:1.65}.document-live-preview{background:#e9eef3;border:1px solid #d4dce5;border-radius:12px;padding:14px;min-width:0}.document-live-preview[hidden]{display:none}.document-preview-label{font-weight:600;color:#334155}.document-live-preview iframe{width:100%;height:720px;border:0;background:#fff;border-radius:4px}.document-live-preview p{font-size:12px;margin:8px 0 14px}@media(max-width:1000px){.document-compose.preview-open{grid-template-columns:minmax(0,1fr)}.document-toolbar{align-items:flex-start;flex-direction:column}.document-live-preview iframe{height:650px}}

.distribution-departments{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:18px 0}.distribution-departments>div,.worker-allocation{border:1px solid #e0e6ed;border-radius:10px;padding:14px}.worker-allocation{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:8px 0}.worker-allocation input[type=number]{width:100px}.distribution-departments input[type=number]{max-width:110px}

/* Compact desktop navigation, comfortable touch targets on narrow screens. */
@media(min-width:901px){.sidebar{padding-top:16px;padding-bottom:14px}.sidebar .brand{padding:4px 0}.sidebar .brand-sub{margin-top:4px;margin-bottom:14px}.sidebar .nav-item{min-height:38px;padding:7px 10px;margin-bottom:2px;gap:9px;font-size:13px;line-height:1.35}.sidebar .nav-sub{min-height:32px;padding:5px 6px 5px 24px;font-size:12px;font-weight:500}.sidebar nav>details>details{margin:4px 0}.sidebar nav{overflow-x:hidden;overflow-y:auto;min-height:0}.sidebar .nav-label{margin:8px 0}.sidebar .side-foot{padding-top:12px;flex-shrink:0}}
.sidebar .nav-item .icon{display:block;width:19px;height:19px;flex:0 0 19px}.sidebar .nav-sub .icon{width:17px;height:17px;flex-basis:17px}.sidebar .nav-item:focus-visible{outline:2px solid #0081cc;outline-offset:-2px}.sidebar .nav-item.active{background:#e5f2fa;color:#006dab}.sidebar .nav-chevron{flex-shrink:0}@media(max-width:900px){.sidebar .nav-item{min-height:44px;white-space:normal}.sidebar .nav-sub{min-height:44px}.sidebar nav{overflow-x:hidden!important}}
/* Quotation editor: consistent controls and product headings. */
.quote-lines{overflow:auto}.quote-lines table{min-width:1000px}.quote-lines td:first-child{min-width:65px;width:65px}.quote-lines td:first-child small{display:block;font-size:10px;color:#637888;margin-top:5px}.quote-lines td:nth-child(2){min-width:210px}.quote-lines td:nth-child(3){min-width:150px}.quote-lines input{min-width:64px;width:100%;height:40px}.quote-lines .quote-group{background:#e9f4fb}.quote-lines .quote-group input{font-weight:600}.quote-lines td:last-child{min-width:110px}.quote-lines td:last-child button{font-size:11px;padding:5px;margin:2px}.quote-customer{position:relative}.quote-matches{position:absolute;z-index:20;top:100%;left:0;right:0;background:white;border:1px solid #b7d7ea;border-radius:8px;box-shadow:0 8px 20px #183b5120;max-height:260px;overflow:auto}.quote-matches button{display:block;width:100%;border:0;text-align:left;border-radius:0;padding:10px 14px}.quote-matches button:hover,.quote-matches button:focus{background:#e9f4fb}.quote-negotiated{background:#fff2b8;padding:12px;border-radius:6px;margin:6px 0}.quote-total small{font-size:12px;font-weight:500}


/* Consistent HR tabs, filters and employee rows. */
.hr-workspace .hr-tabs{gap:12px;margin:0 0 24px;padding-bottom:16px;border-bottom:1px solid #dde5ee}.hr-workspace .hr-groups{gap:10px;margin-bottom:20px}.hr-workspace .filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px;margin-bottom:24px;padding:18px;background:#f8fafc;border-radius:12px}.hr-workspace .filters label{min-width:200px;gap:8px;flex:1;max-width:320px}.hr-workspace .filters input,.hr-workspace .filters select,.hr-workspace .filters button{height:42px;min-height:42px}.hr-workspace td{height:62px;padding:14px 16px;vertical-align:middle}.hr-workspace th{padding:14px 16px;white-space:nowrap}.hr-workspace .panel{margin-bottom:24px}.hr-workspace td:first-child{min-width:110px;white-space:nowrap}@media(max-width:700px){.hr-workspace .filters label{min-width:140px;max-width:none}.hr-workspace .hr-tabs{margin-bottom:16px}}

.org-scroll{overflow-x:auto;padding:18px 0}.org-chart{min-width:1000px;padding:0 12px 24px}.org-card{background:white;border:1px solid #dbe3eb;border-radius:12px;overflow:hidden;align-self:start}.org-card h3{text-align:center;margin:0;padding:13px 14px;background:#edf5fa;border-bottom:1px solid #dde6ee;font-size:15px}.org-card p{padding:0 14px}.org-chief h3{background:#1d4869;color:white}.org-person{display:flex;justify-content:center;gap:8px;align-items:center;width:100%;border:0;border-radius:0;border-bottom:1px solid #edf0f3;padding:12px 14px;background:white;text-align:left}.org-person span{font-size:12px;color:#68778a}.org-top{width:240px;margin:0 auto 32px}.org-support{display:grid;grid-template-columns:240px 210px;gap:32px;margin:0 0 36px calc(50% - 120px)}.org-units{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;border-top:2px solid #c5d3df;padding-top:22px}.org-aux{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:24px}.org-aux .org-card:nth-child(2){grid-column:3}.corporate-file-links{display:grid;gap:10px}

body .quote-lines .quote-line-actions{display:flex;gap:4px;white-space:nowrap}body .quote-lines .quote-line-actions button{height:30px;min-height:30px;min-width:28px;width:auto;padding:3px 6px;margin:0;font-size:12px}body .quote-lines td{padding:8px 6px;vertical-align:middle}body .quote-lines input:not([type=hidden]){height:36px;min-height:36px;padding:6px 8px}body .quote-lines td:nth-child(4),body .quote-lines td:nth-child(5){width:72px}body .quote-lines .quote-line-amount{min-width:110px;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
/* Company schedule palette and calendar */
.badge.gray{background:#e8ebef;color:#66717d}.badge.purple{background:#d9cfee;color:#55476e}.badge.blue{background:#e0f1fc;color:#006eab}
.palette-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:20px;margin:18px 0}.palette-grid input[type=color]{width:100%;height:40px;padding:4px}.calendar-legend{display:flex;flex-wrap:wrap;gap:18px;padding:16px 20px;font-size:12px}.calendar-legend i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:6px;vertical-align:middle}.calendar-scroll{overflow:auto;max-height:620px}.project-calendar{display:grid;grid-template-columns:240px minmax(930px,1fr);min-width:1170px}.calendar-name{padding:10px 12px;border-bottom:1px solid #e5eaf0;background:#fff;position:sticky;left:0;z-index:1;font-size:12px}.calendar-name div{font-size:11px;color:#637486;max-width:214px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-days{display:grid;grid-template-columns:repeat(var(--days),1fr);background:#f7f9fb;align-items:center;text-align:center;font-size:11px}.calendar-days .weekend{color:#96787a}.calendar-track{position:relative;min-height:60px;border-bottom:1px solid #e5eaf0;background:repeating-linear-gradient(to right,transparent 0,transparent calc(100% / var(--days) - 1px),#eef1f5 calc(100% / var(--days) - 1px),#eef1f5 calc(100% / var(--days)))}.calendar-bar{position:absolute;top:13px;min-height:32px;line-height:32px;padding:0 8px;border-radius:5px;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-bar:hover{outline:2px solid #6a879b;outline-offset:1px}.calendar-note{padding:12px 20px;margin:0}

/* Login progress */
.login-form button[type=submit]{display:flex;align-items:center;justify-content:center;gap:10px;min-height:44px}
.login-spinner{display:inline-block;flex:none;width:18px;height:18px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:login-progress-spin .8s linear infinite}
@keyframes login-progress-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.login-spinner{animation:none}}

.org-aux .org-nde{grid-column:1;min-width:0}.org-nde h3{white-space:nowrap;font-size:13px;padding-left:6px;padding-right:6px}

/* Compact project lists and schedule rows */
.compact-project-work td{padding-top:7px;padding-bottom:7px;line-height:1.4}
.compact-project-work td .muted{line-height:1.35}
.compact-project-work .schedule-sheet th button{padding-top:8px;padding-bottom:8px;min-height:34px}
.compact-project-work .schedule-sheet td:first-child .muted{margin-top:2px}
.compact-project-work .matrix-project>div{margin-top:2px}
.compact-project-work .calendar-name{padding-top:6px;padding-bottom:6px}
.compact-project-work .calendar-track{min-height:46px}
.compact-project-work .calendar-bar{top:9px;min-height:26px;line-height:26px}

/* Four-month project calendar */
.calendar-period>div{display:flex;text-align:center;background:#f1f6fa;border-bottom:1px solid #dbe3eb;font-size:12px}.calendar-period span{padding:5px 0;border-right:1px solid #dbe3eb}.calendar-weeks{font-size:10px!important}.calendar-navigation{padding:10px 16px}.project-calendar{grid-template-columns:220px minmax(700px,1fr);min-width:920px}

/* Monthly week groups do not follow a fixed seven-day grid. */
.project-calendar .calendar-track{background:none}

/* Four weekly sections per month, compact calendar */
.project-calendar{grid-template-columns:180px minmax(480px,1fr);min-width:660px;width:100%}
.calendar-period span{flex-shrink:0;min-width:0;white-space:nowrap;padding:3px 0;line-height:1.3}
.calendar-period>div{font-size:11px}
.calendar-navigation{padding:6px 12px;gap:6px;margin:0}
.calendar-navigation button{padding:5px 10px;min-height:30px;font-size:12px}
.calendar-legend{gap:10px;padding:6px 12px;font-size:11px}
.calendar-note{padding:6px 12px;font-size:11px}
.compact-project-work .calendar-name{padding:4px 8px;line-height:1.3}
.calendar-name div{max-width:164px}
.compact-project-work .calendar-track{min-height:38px;background:none}
.compact-project-work .calendar-bar{top:6px;min-height:24px;line-height:24px}

/* Compact production schedule and process board */
.schedule-sheet.compact{min-width:960px;font-size:12px}
.schedule-sheet.compact td{min-width:84px;padding:6px 8px}
.schedule-sheet.compact th:first-child,.schedule-sheet.compact td:first-child{min-width:160px;width:160px;max-width:160px}
.schedule-sheet.compact td.schedule-title{min-width:150px;max-width:190px}
.schedule-sheet.compact th button{padding:6px 8px;min-height:30px}
.schedule-sheet.compact td:last-child .small{padding:4px 6px;min-height:28px;font-size:11px}
.compact-project-work .phase-cell{min-height:0;padding:6px 7px;line-height:1.35}
.compact-project-work .phase-cell div{margin-top:2px}
.compact-project-work .phase-cell small{margin-top:2px}
.compact-project-work .phase-task-count{margin-top:4px;padding-top:3px}
.compact-project-work .plan-toolbar{gap:6px;margin:8px 0}
.compact-project-work .process-tree{padding:10px;margin-bottom:8px}
.compact-project-work .project-phase-grid{gap:10px}

/* Inspection and delivery calendars */
.work-calendar-scroll{overflow:auto}.work-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));min-width:770px}.work-calendar-week{text-align:center;background:#edf5fa;padding:6px;font-size:12px}.work-calendar-day{border-right:1px solid #e3e9ef;border-bottom:1px solid #e3e9ef;min-height:84px;padding:5px}.work-calendar-day.outside{background:#f7f9fb}.work-calendar-day.today{box-shadow:inset 0 0 0 1px #0081cc}.day-number{font-size:12px}.work-calendar-event{padding:4px 6px;margin-top:4px;border-left:2px solid #8fb8d1;background:#f2f7fa;font-size:11px;overflow-wrap:anywhere}.work-calendar-event.done{background:#edf0f3;border-color:#bfc6d0}.work-calendar-event .link{padding:0;min-height:0;font-size:11px}.work-calendar-event small{color:#637486}

/* Aligned monthly calendar: equal day cells and centered period. */
.work-calendar-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;margin:16px 0 12px}
.work-calendar-navigation{display:flex;gap:6px;flex-wrap:wrap}.work-calendar-navigation.next{justify-content:flex-end}
.work-calendar-navigation button{min-height:34px;padding:6px 12px;font-size:12px}
.work-calendar-month{margin:0;text-align:center;font-size:23px;font-weight:700;line-height:1.35;letter-spacing:-.5px;color:#20384b;white-space:nowrap}
.work-calendar-grid{grid-template-rows:28px;grid-auto-rows:144px;gap:0}
.work-calendar-week{display:flex;align-items:center;justify-content:center;padding:0}
.work-calendar-day{height:144px;min-height:0;box-sizing:border-box;padding:8px;min-width:0;overflow:auto;scrollbar-width:thin;scrollbar-gutter:stable}
.work-calendar-day .day-number{display:block;position:sticky;top:-8px;background:#fff;padding:2px 0;z-index:1}
.work-calendar-scroll{border-top:1px solid #e3e9ef}
.work-calendar-toolbar+.panel>.panel-head{padding-top:10px;padding-bottom:10px}
.work-calendar-toolbar+.panel>.panel-head h2{font-size:13px;line-height:1.5;font-weight:600;color:#536579}
.work-calendar-event{margin-top:6px;padding:5px 6px;line-height:1.4}
@media(max-width:600px){.work-calendar-toolbar{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:6px}.work-calendar-month{font-size:19px}.work-calendar-navigation button{padding:5px 7px;font-size:11px}.work-calendar-day{padding:6px}}

/* Identity, verified percentage and process status remain separate. */
.project-calendar{grid-template-columns:120px 120px 120px 64px minmax(480px,1fr);min-width:904px}
.project-calendar .calendar-manufacturing{left:0}.project-calendar .calendar-hull{left:120px}.project-calendar .calendar-type{left:240px}.project-calendar .calendar-progress-value{left:360px;text-align:center}
.project-calendar .calendar-heading{display:flex;align-items:center;justify-content:center;background:#f1f6fa;font-weight:700}
.project-calendar .calendar-name{border-right:1px solid #e5eaf0;overflow-wrap:anywhere}
.calendar-progress-fill{position:absolute;top:0;bottom:0;left:0;border-radius:inherit;pointer-events:none}
.calendar-progress-label{position:relative;z-index:1;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Shared header alerts */
.topbar .right>a[href="#approvals"],.topbar .top-notice{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.notice-dot{width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:#c74747}.notice-count{font-size:11px;line-height:18px;min-width:18px;text-align:center;background:#fbeeee;color:#a82f36;border-radius:9px;padding:0 4px}

.common-form-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}.common-form-card{border:1px solid #dbe3ea;border-radius:12px;overflow:hidden;background:#fff}.common-form-preview{height:230px;background:#f5f7fa;overflow:hidden;border-bottom:1px solid #e3e8ee}.common-form-preview iframe{border:0;width:100%;height:100%}.common-form-preview img{width:100%;height:100%;object-fit:contain}.common-form-info{padding:16px}.common-form-info h3{margin:0 0 8px;font-size:16px}.common-form-info p{overflow-wrap:anywhere}.form-file-cover{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:20px;text-align:center}.form-file-cover strong{font-size:26px;color:#49687d}

.common-form-preview{height:302px;position:relative}.common-form-preview iframe{position:absolute;width:760px;height:1075px;left:50%;margin-left:-380px;transform:scale(.28);transform-origin:top center;pointer-events:none}.common-form-info .actions{flex-wrap:wrap}

/* Company references follow the requested fixed document rows. */
.company-library-row>.common-form-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
.company-library-row.three>.common-form-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}
.common-form-gallery:has(>.company-profile-card){grid-template-columns:minmax(0,1fr)}
.company-profile-card .common-form-preview{aspect-ratio:16/9;height:auto;min-height:0}
.company-profile-card .common-form-preview iframe{width:100%;height:100%;transform:none}
.company-profile-pending{border:1px dashed #cbd5df;border-radius:14px;padding:22px;margin:14px 0;display:flex;gap:12px;align-items:center;color:#64748b}
@media(max-width:700px){.company-library-row.three>.common-form-gallery,.company-library-row>.common-form-gallery{grid-template-columns:1fr}.company-profile-pending{align-items:flex-start;flex-direction:column}}

.company-library-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0}.company-library-row.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.company-library-row>.common-form-gallery,.company-library-row.three>.common-form-gallery{grid-template-columns:minmax(0,1fr)}
.company-profile-card .common-form-preview iframe{position:static;left:auto;margin:0;width:100%;height:100%;transform:none}
.company-slot-pending{padding:24px;color:#64748b;background:#fafcfd;border-style:dashed;min-height:110px}.company-slot-pending p{font-size:12px}
.canonical-forms{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:900px){.canonical-forms{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.company-library-row,.company-library-row.three,.canonical-forms{grid-template-columns:1fr}}

/* Uniform portrait reference cards; incomplete rows stay left aligned. */
.common-form-gallery,.canonical-forms,.company-library-row,.company-library-row.three{grid-template-columns:repeat(3,minmax(0,280px));justify-content:start;gap:18px}
.company-library-row>.common-form-gallery,.company-library-row.three>.common-form-gallery{display:block;min-width:0}
.common-form-preview{height:auto;aspect-ratio:210/297}
.common-form-preview iframe{position:static;left:auto;margin:0;width:100%;height:100%;transform:none}
.common-form-gallery:has(>.company-profile-card){grid-template-columns:minmax(0,1fr);width:100%}
.company-profile-card{width:100%}.company-profile-card .common-form-preview{aspect-ratio:4/3}
@media(max-width:1000px){.common-form-gallery,.canonical-forms,.company-library-row,.company-library-row.three{grid-template-columns:repeat(2,minmax(0,280px))}}
@media(max-width:620px){.common-form-gallery,.canonical-forms,.company-library-row,.company-library-row.three{grid-template-columns:minmax(0,280px)}.common-form-gallery:has(>.company-profile-card){grid-template-columns:minmax(0,1fr)}}

.canonical-forms .common-form-preview iframe{width:271.4286%;height:271.4286%;transform:scale(.368421);transform-origin:top left}

/* All reference cards share a fixed portrait viewport and aligned controls. */
.common-form-card{display:flex;flex-direction:column;height:100%}.common-form-info{display:flex;flex-direction:column;flex:1;min-height:176px}.common-form-info h3{min-height:44px}.common-form-info .actions{margin-top:auto}.common-form-preview{flex:none;background:white}.company-profile-card{width:360px;max-width:100%}.common-form-gallery:has(>.company-profile-card){grid-template-columns:minmax(0,360px);width:auto}.company-profile-card .common-form-preview{display:block;aspect-ratio:4/3}.company-profile-card .common-form-info{min-height:176px}.profile-cover-link img{display:block;object-fit:contain;width:100%;height:100%}.org-nde p{text-align:center}

.emergency-contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.emergency-contact-card{border:1px solid #dbe3eb;border-radius:12px;background:#fff;padding:20px;display:flex;flex-direction:column;gap:12px}.emergency-contact-card h3,.emergency-contact-card p{margin:0}.emergency-contact-card p{color:#607184;line-height:1.6;min-height:48px}.emergency-contact-card .download-button{align-self:start;margin-top:auto}.contact-phone{font-variant-numeric:tabular-nums;text-decoration:none}@media(max-width:760px){.emergency-contact-grid{grid-template-columns:1fr}}

/* Borderless, consistent header controls and a separate sidebar footer. */
.topbar .top-notice,.topbar .right>a[href="#approvals"]{position:relative;display:inline-flex!important;align-items:center;gap:6px;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0;padding:6px 9px!important;color:inherit!important;font-size:13px;font-weight:600;line-height:1.5}
.topbar .notice-count{padding:0;min-width:0;background:none;color:inherit;line-height:inherit;font-size:inherit}.topbar .notice-dot{position:absolute;top:1px;right:2px;width:5px;height:5px;min-width:5px}
.sidebar .side-foot{display:block;flex:none;margin-top:auto;padding:12px 3px 0}.sidebar .side-release{display:block;width:100%;font-size:10px!important;line-height:1.5;text-align:left;color:#708195!important;white-space:normal}.sidebar nav{flex:1;min-height:0;overflow-y:auto}
.common-form-preview img{display:block}.common-form-card>a.common-form-preview{display:block}
@media(min-width:761px){.sidebar{height:100vh;height:100dvh;overflow:hidden}}
@media(max-width:760px){.sidebar .side-foot{padding:6px 0 0}.sidebar .side-release{text-align:right}.sidebar nav{flex:initial}}

@media(max-width:600px){.topbar .right{gap:8px}.topbar .top-notice,.topbar .right>a[href="#approvals"]{font-size:12px;padding:5px 7px!important}.topbar .userbtn .muted{display:none}}

.org-aux .org-nde{grid-column:4;min-width:0}

.org-order-controls{display:flex;gap:6px;justify-content:center;padding:3px 8px 9px;border-bottom:1px solid #edf0f3}.org-order-controls button{min-width:30px;min-height:28px;padding:2px 8px;font-size:14px;line-height:1.2}

/* Shared organization connectors, also included in saved/printed charts. */
.org-chart{display:block;min-width:1000px;padding:0 12px 24px}.org-top{position:relative;width:240px;margin:0 auto 32px}.org-support{position:relative;display:grid;grid-template-columns:240px 210px;gap:32px;margin:0 0 36px calc(50% - 120px)}.org-support>.org-card,.org-units>.org-card{align-self:start}.org-top:after{content:"";position:absolute;left:50%;top:100%;height:32px;border-left:2px solid #bdccd8}.org-support:before{content:"";position:absolute;left:240px;top:28px;width:32px;border-top:2px solid #bdccd8}.org-support:after{content:"";position:absolute;left:120px;top:100%;height:36px;border-left:2px solid #bdccd8}.org-units{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;border-top:0;padding-top:24px}.org-units:before{content:"";position:absolute;top:0;left:calc((100% - 56px)/10);right:calc((100% - 56px)/10);border-top:2px solid #bdccd8}.org-units>.org-card{position:relative;overflow:visible}.org-units>.org-card:before{content:"";position:absolute;left:50%;top:-24px;height:24px;border-left:2px solid #bdccd8}.org-aux{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:24px}.org-aux .org-nde{position:relative;grid-column:4;min-width:0;overflow:visible}.org-aux .org-nde:before{content:"";position:absolute;left:50%;top:-24px;height:24px;border-left:2px solid #bdccd8}.org-order-controls{display:flex;gap:6px;justify-content:center;padding:3px 8px 9px;border-bottom:1px solid #edf0f3}.org-order-controls button{min-width:30px;min-height:28px;padding:2px 8px;font-size:14px;line-height:1.2}@media print{.org-order-controls{display:none}}

.page-admin-tools{display:flex;align-items:center;justify-content:flex-start;gap:8px;margin:0 0 14px;color:#7a8796;font-size:11px}.page-admin-tools button.small{background:#f4f6f8;border:1px solid #dce3eb;color:#617184;font-size:11px;padding:4px 9px;min-height:28px}.library-search{margin-top:24px;margin-bottom:24px}.library-search .filters{margin-bottom:0;row-gap:18px;column-gap:16px}.library-search label{gap:8px}.library-tabs{row-gap:10px}

body .org-order-controls button.small{height:28px;min-height:28px;width:32px;min-width:32px;padding:2px 6px}@media(max-width:760px){body .org-order-controls button.small{height:44px;min-height:44px;width:44px;min-width:44px}}
.page-admin-tools button.small{height:28px;min-height:28px}

.department-task-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;padding:20px}.department-task{display:block;border:1px solid #e0e7ee;border-radius:12px;background:#fff;padding:18px;color:#314658}.department-task>span{font-size:13px;font-weight:600}.department-task>strong{display:block;font-size:28px;margin-top:10px}.department-task small{font-size:12px;margin-left:6px;color:#7b8996}.department-task p{font-size:12px;color:#7b8996;margin:8px 0 0}.department-task:hover{border-color:#94b8ce;background:#f8fbfd}@media(max-width:650px){.department-task-grid{grid-template-columns:1fr 1fr;padding:12px;gap:10px}.department-task{padding:14px}}

.writing-toolbar{position:sticky;top:0;z-index:3;background:#fff;display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:10px 20px;border-bottom:1px solid #e2e8ee}.writing-toolbar .document-toolbar{display:contents}.writing-toolbar button,.writing-toolbar a{min-height:36px}.writing-toolbar span{font-size:11px;color:#64748b}.writing-toolbar+ .modal-body{max-height:calc(78dvh - 135px)}@media(max-width:700px){.writing-toolbar{padding:8px 12px;gap:6px}.writing-toolbar span{display:none}.writing-toolbar button,.writing-toolbar a{font-size:12px}}

.sidebar-edit-tools{padding:2px 8px 8px}.sidebar-edit-tools button{font-size:11px;min-height:28px}.sidebar-editor-group{margin:16px 0;border-bottom:1px solid #e2e8ee;padding-bottom:12px}.sidebar-editor-row{display:flex;align-items:center;gap:6px;margin:6px 0}.sidebar-editor-row input{min-width:0;flex:1}.sidebar-editor-row.sub{padding-left:18px}.sidebar-editor-row button{flex-shrink:0}

.writing-toolbar{align-items:center;gap:8px 10px}.writing-toolbar .writing-language{order:-1;display:flex;align-items:center;gap:8px;margin:0;flex:0 0 auto;white-space:nowrap;font-size:12px}.writing-toolbar select{width:110px;height:36px;min-height:36px;margin:0;padding:6px 10px;font-size:13px}.writing-toolbar button,.writing-toolbar a.download-button{height:36px;min-height:36px;display:inline-flex;align-items:center;justify-content:center;margin:0;padding:7px 12px;line-height:20px;white-space:nowrap;font-size:12px;box-sizing:border-box}.writing-toolbar .writing-save{margin-left:auto}.writing-context{display:block;font-size:11px;font-weight:400;color:#64748b;margin-top:5px}.writing-toolbar+.modal-body{max-height:calc(86dvh - var(--writing-toolbar-height,60px) - 140px)}@media(max-width:700px){.writing-toolbar{gap:6px;padding:10px 12px}.writing-toolbar .writing-save{margin-left:0}.writing-toolbar .writing-language{flex-basis:100%;justify-content:flex-start}.writing-toolbar .writing-language select{width:130px}.writing-toolbar+.modal-body{max-height:calc(90dvh - var(--writing-toolbar-height,120px) - 120px)}}

.writing-toolbar .writing-language{flex-direction:row!important}.document-editor form,.document-compose,.document-input{min-width:0}.writing-toolbar .writing-language select{flex-shrink:0}@media(max-width:700px){dialog.document-editor{width:calc(100vw - 16px)!important;max-width:calc(100vw - 16px)!important;min-width:0}.document-editor .modal-head{padding:16px}.document-editor form{width:100%}.writing-toolbar .writing-language{flex-direction:row!important}.writing-toolbar .writing-language select{font-size:16px}.document-input input,.document-input select,.document-input textarea{width:100%;min-width:0}}

.writing-toolbar .writing-language{flex:0 0 210px;min-width:210px;max-width:none}.writing-toolbar button,.writing-toolbar a.download-button,.writing-toolbar select{height:44px!important;min-height:44px!important;max-height:44px!important;padding-top:9px;padding-bottom:9px}.writing-toolbar .writing-language select{flex:0 0 110px;width:110px}@media(max-width:700px){.writing-toolbar .writing-language{flex-basis:100%;min-width:0}.writing-toolbar .writing-language select{flex-basis:130px;width:130px}}

[data-form="approval-reviewer"]{padding:14px 0;border-bottom:1px solid #e5eaf0;align-items:center}.reviewer-target{width:110px;flex:0 0 110px}[data-form="approval-reviewer"] .person-cascade{flex:1;min-width:280px;margin:0;padding:10px}.reviewer-target+.person-cascade label{min-width:0}@media(max-width:700px){.reviewer-target{width:100%;flex-basis:100%}[data-form="approval-reviewer"] .person-cascade{min-width:0;flex-basis:100%;grid-template-columns:1fr}}

.sales-inline-class{min-width:210px;display:grid;gap:8px}.sales-inline-class label{font-size:11px;min-width:0}.sales-inline-class select{width:100%;min-width:180px;max-width:280px}.sales-inline-class button{justify-self:start}.sales-classification-tools{margin:12px 0 18px}

/* Keep tabs and account notifications together in the existing header. */
.shell .main>.topbar{position:sticky;top:0;z-index:10;background:var(--ui-blue,#0081cc);isolation:isolate}
.shell .topbar .work-tabs{overscroll-behavior-x:contain;scroll-padding-inline:8px}
@media print{.shell .main>.topbar{position:static;display:none}}

.remote-selection{display:grid;gap:6px;min-width:0;margin-top:6px}.remote-selection input{width:100%}.remote-selection-list{max-height:230px;overflow:auto;display:grid;gap:3px}.remote-selection-option{text-align:left;white-space:normal;overflow-wrap:anywhere;min-height:40px}.remote-selection-option[aria-selected=true]{background:#e5f2fa;border-color:var(--ui-blue,#0081cc)}

.purchase-draft-preview{margin-top:20px;padding-top:14px;border-top:1px solid #dde5ed}.purchase-draft-preview iframe{width:100%;height:65vh;border:1px solid #dde5ed;border-radius:8px;background:white}@media(max-width:760px){.purchase-draft-preview iframe{height:50vh}}

.query-multi{display:grid;gap:5px;min-width:150px;max-width:320px;flex:1 1 150px}.query-multi details{border:1px solid #d5dde7;border-radius:7px;background:white}.query-multi summary{padding:10px;cursor:pointer;min-height:42px}.query-multi-options{max-height:220px;overflow:auto;padding:6px 10px;display:grid;gap:8px}.query-chips{display:flex;flex-wrap:wrap;gap:4px}.query-chip{font-size:11px;padding:4px 7px;white-space:normal;background:#eaf4fb;border-color:#d8eaf7}.query-multi>[data-query-clear]{justify-self:start;font-size:11px}.query-multi label.check{font-size:12px}
[data-drawing-component-picker]{display:grid;gap:12px;margin:8px 0 16px;grid-column:1/-1;min-width:0}
[data-drawing-component-picker]>.notice{margin:0}
[data-drawing-component-picker]>strong{font-size:13px;line-height:1.5}
.tabs{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
.tabs>button,.tabs>.tab{flex:0 0 auto}

.mobile-nav-toggle,.mobile-nav-backdrop{display:none}
@media(max-width:760px){
 .shell>.sidebar{display:none!important}
 .shell .mobile-nav-toggle{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:40px;padding:7px 10px;color:#fff;background:transparent;border-color:#ffffff66}
 .shell.mobile-nav-open>.mobile-nav-backdrop{display:block;position:fixed;inset:0;z-index:60;width:100%;height:100dvh;border:0;border-radius:0;background:#14273566;touch-action:none}
 .shell.mobile-nav-open>.sidebar{display:block!important;position:fixed!important;left:0;top:0;width:min(300px,86vw)!important;height:100dvh!important;max-height:100dvh!important;z-index:70;overflow-y:auto;overscroll-behavior:contain;box-shadow:8px 0 28px #14273522;padding:20px 14px}
 .shell.mobile-nav-open>.sidebar nav{display:block!important;max-height:calc(100dvh - 160px);overflow-y:auto;margin-top:18px}
}

/* Shared compact preview and aligned search fields across workspaces. */
.dev-preview-bar{width:fit-content;max-width:100%;gap:8px 12px;padding:8px 12px;margin-bottom:18px;border-radius:9px;font-size:12px}
.dev-preview-bar strong{font-size:12px;white-space:nowrap}
body .dev-preview-bar select{width:190px;max-width:100%;height:36px;min-height:36px;padding:6px 34px 6px 10px;font-size:12px}
body .dev-preview-bar button.small{min-height:34px;padding:5px 10px;font-size:12px}
.dev-preview-bar span{font-size:12px}
.filters{column-gap:12px;row-gap:16px;align-items:flex-end}
.filters>label,.filters>.query-multi{gap:7px;min-width:150px}
.query-multi{position:relative;display:flex;flex-direction:column;max-width:280px;flex:0 1 240px;gap:7px}
.query-multi-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:19px}
.filters .query-multi-heading>label{flex:none;min-width:0;margin:0;font-size:12px}
.query-multi-heading>[data-query-clear]{font-size:11px;line-height:19px;white-space:nowrap;padding:0;min-height:0}
.query-multi>details{margin:0;padding:0;min-width:0;width:100%;border:1px solid var(--control-border);border-radius:var(--control-radius)}
.query-multi>details>summary{box-sizing:border-box;height:var(--control-height);min-height:var(--control-height);padding:10px 12px;line-height:22px;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.query-multi>details[open]{position:relative;z-index:5}
.query-multi>details>input[type=search]{width:calc(100% - 16px);margin:8px}
.query-multi>.query-chips:empty{display:none}
.query-multi>.query-chips:not(:empty){max-width:100%;margin-top:1px}
.filters:has(.query-chips:not(:empty)){align-items:flex-start}
.filters:has(.query-chips:not(:empty))>button{margin-top:26px}
@media(max-width:760px){.dev-preview-bar{width:100%;gap:8px}.dev-preview-bar span{flex-basis:100%}.query-multi{flex:1 1 160px;max-width:none;min-width:0}.query-multi>details>summary{font-size:16px}.filters:has(.query-chips:not(:empty))>button{margin-top:0}}

.page-help-actions{display:flex;flex-direction:column;gap:6px;align-items:stretch}.page-head{margin-bottom:20px}.page-head>.actions{align-items:flex-start}body .page-help-actions>button.small{min-height:32px;padding:4px 10px;font-size:12px;line-height:22px}.page-help-actions>button[data-action="refresh-work"]{color:#617184;background:#f8fafc;border-color:#e2e8ef}
.filters .query-multi-heading>label{width:auto;max-width:100%;min-width:0}.query-multi-heading{min-width:0}.query-multi-heading>[data-query-clear]{flex-shrink:0}

.login-language-footer{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:16px;padding-top:12px;border-top:1px solid #edf0f4}
.login-form .login-language-footer label{margin:0;font-size:11px;font-weight:400;color:#7a8797}
body .login-form .login-language-footer select{width:112px;height:30px;min-height:30px;padding:3px 30px 3px 9px;font-size:12px;line-height:22px;border-color:#e1e7ef;background-position:right 9px center}

.login-language-picker{position:relative;display:inline-flex;align-items:center;gap:7px;padding:6px 10px;color:#5d6a7a;border:1px solid #dce3eb;border-radius:18px;background:#fff;font:12px/18px Arial,sans-serif}
.login-language-picker>svg{flex-shrink:0;pointer-events:none}.login-language-picker>span{pointer-events:none}.login-language-picker .language-chevron{margin-left:3px}
body .login-form .login-language-picker>select{position:absolute;inset:0;width:100%;height:100%;min-height:0;margin:0;padding:0;opacity:0;cursor:pointer;font-size:16px}
.login-language-picker:focus-within{outline:2px solid #0084c4;outline-offset:3px}.login-language-picker:hover{border-color:#aab9c9;background:#f8fafc}

/* Quiet, compact administrative chrome; business actions retain their sizing. */
.sidebar-edit-tools{padding:0 8px 6px;display:flex;justify-content:flex-end}
body .sidebar-edit-tools>button.small:not(.link):not(.tab):not(.close):not(.userbtn),body .page-admin-tools>button.small:not(.link):not(.tab):not(.close):not(.userbtn){height:26px;min-height:26px;padding:3px 8px;font-size:11px;line-height:18px;font-weight:400;border-radius:6px;border:1px solid #e1e7ed;background:#f8fafc;color:#748193;box-shadow:none}
body .sidebar-edit-tools>button.small:not(.link):not(.tab):not(.close):not(.userbtn):hover,body .page-admin-tools>button.small:not(.link):not(.tab):not(.close):not(.userbtn):hover{color:#285a7b;border-color:#bdcbd8;background:#edf3f8}
.page-admin-tools{gap:6px;margin-bottom:8px;font-size:10px;line-height:18px}
@media(pointer:coarse){body .sidebar-edit-tools>button.small:not(.link):not(.tab):not(.close):not(.userbtn),body .page-admin-tools>button.small:not(.link):not(.tab):not(.close):not(.userbtn){min-height:32px;height:32px;padding:6px 9px}}

/* Compact settings/edit dialogs while preserving control and touch target sizes. */
#modal .modal-head{padding:14px 20px;gap:10px}
#modal .modal-body{padding:16px 20px}
#modal .modal-foot{padding:12px 20px;gap:8px}
#modal .grid2,#modal .grid3,#modal .grid4{row-gap:12px;column-gap:14px}
body #modal label.form-field{gap:5px;justify-content:flex-start;align-self:start}
#modal .modal-body>.form-field+.form-field,#modal .modal-body>.form-field+.notice,#modal .modal-body>.notice+.form-field{margin-top:12px}
#modal .modal-body>.grid2+.grid2,#modal .modal-body>.grid3+.grid3,#modal .modal-body>.grid4+.grid4{margin-top:12px}
#modal .modal-body>h3{margin:18px 0 10px}
#modal .modal-body>h3:first-child{margin-top:0}
#modal .person-cascade,#modal .staff-picker{padding:12px;gap:10px}
#modal .notice{padding:10px 12px;margin-bottom:12px}
#modal .document-input>label{margin-bottom:12px}
#modal .document-input h3{margin:18px 0 10px}
#modal .document-toolbar{padding-bottom:12px;margin-bottom:16px;gap:12px}
#modal .document-compose{gap:18px}
#modal .sidebar-editor-group{margin:12px 0;padding-bottom:10px}
#modal .sidebar-editor-row{margin:5px 0}
@media(max-width:760px){#modal .modal-head{padding:12px 14px}#modal .modal-body{padding:14px}#modal .modal-foot{padding:10px 14px}#modal .grid2,#modal .grid3,#modal .grid4{row-gap:12px}#modal .person-cascade,#modal .staff-picker{padding:10px}}

/* Multi-value filters keep the familiar appearance of a standard select. */
.query-multi>details>summary{list-style:none;padding-right:34px;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='%235d6a7a' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;color:#203145}
.query-multi>details>summary::-webkit-details-marker{display:none}
.query-multi>.query-chips{display:none}
.filters:has(.query-chips:not(:empty)){align-items:flex-end}
.filters:has(.query-chips:not(:empty))>button{margin-top:0}
.query-multi-options>label.check{padding:7px 9px;border-radius:5px;cursor:pointer;font-weight:400}
.query-multi-options>label.check:hover{background:#f0f6fb}
.query-multi-options>label.check:has(input:checked){background:#e8f3fb;color:#007bb7}

.org-chart .org-card{height:auto;min-height:0;align-self:start}.org-chart .org-person:last-child{border-bottom:0}

/* Select one item, close, then reopen to add another; selected chips stay below. */
.query-multi>details{position:relative}
.query-multi>details>.query-dropdown{position:absolute;top:calc(100% + 5px);left:-1px;right:-1px;z-index:20;padding:8px;background:#fff;border:1px solid #cdd8e4;border-radius:8px;box-shadow:0 8px 24px #20314524}
.query-dropdown>input[type=search]{width:100%;margin:0 0 6px}
.query-dropdown .query-multi-options{padding:0;gap:2px;max-height:240px}
.query-multi>.query-chips:not(:empty){display:flex;position:relative;flex-wrap:wrap;gap:5px;margin-top:0}
body .query-multi .query-chips>.query-chip:not(.link):not(.tab):not(.close):not(.userbtn){height:auto;min-height:24px;max-width:100%;padding:3px 7px;font-size:11px;line-height:16px;white-space:normal;overflow-wrap:anywhere}
.filters:has(.query-chips:not(:empty)){align-items:flex-start}
.filters:has(.query-chips:not(:empty))>button{margin-top:26px}
@media(max-width:760px){.filters:has(.query-chips:not(:empty))>button{margin-top:0}.query-dropdown .query-multi-options>label.check{min-height:40px}}

/* Dense business lists: compact rows and secondary actions, full-size primary forms. */
.table-wrap table th{padding:9px 12px}
.table-wrap table td{padding:8px 12px;height:auto}
body .table-wrap td button.small:not(.link):not(.tab):not(.close):not(.userbtn),body .table-wrap td .download-button.small{display:inline-flex;align-items:center;justify-content:center;min-height:28px;height:auto;padding:4px 8px;font-size:12px;line-height:18px;border-radius:6px}
.table-wrap .row-actions{gap:5px;flex-wrap:wrap}
.hr-workspace .table-wrap td{height:auto;padding:9px 12px}
.hr-workspace .table-wrap th{padding:9px 12px}
@media(pointer:coarse){body .table-wrap td button.small:not(.link):not(.tab):not(.close):not(.userbtn),body .table-wrap td .download-button.small{min-height:36px;padding:7px 9px}.table-wrap table td{padding-top:8px;padding-bottom:8px}}

/* Crisp typography inside document/transaction editors, without changing layout. */
#modal form .modal-body{font-family:-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo','Malgun Gothic','Segoe UI',sans-serif;color:#243447}
body #modal form .modal-body label.form-field>.field-title,#modal form .modal-body label:not(.check){color:#34465b;font-size:13px;font-weight:600}
body #modal form .modal-body input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]):not([type=color]),body #modal form .modal-body select:not([multiple]),body #modal form .modal-body textarea{font-family:inherit;color:#172b40;font-size:15px;font-weight:400;line-height:1.5;letter-spacing:0;text-shadow:none}
body #modal form .modal-body .line-editor input:not([type=checkbox]):not([type=radio]),body #modal form .modal-body .line-editor select,body #modal form .modal-body .line-editor textarea{font-size:14px}
#modal form .modal-body input::placeholder,#modal form .modal-body textarea::placeholder{color:#6d7c8e;opacity:1}
#modal form .modal-body .muted,#modal form .modal-body .footnote,#modal form .modal-body .writing-context{color:#586b80}
#modal form .modal-body input:disabled,#modal form .modal-body select:disabled,#modal form .modal-body textarea:disabled{color:#5f6d7d;background:#f1f4f7;opacity:1;-webkit-text-fill-color:#5f6d7d}
#modal form .modal-body h3{color:#1c3249;font-weight:700}
@media(max-width:760px){body #modal form .modal-body input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]):not([type=color]),body #modal form .modal-body select:not([multiple]),body #modal form .modal-body textarea,body #modal form .modal-body .line-editor input:not([type=checkbox]):not([type=radio]),body #modal form .modal-body .line-editor select,body #modal form .modal-body .line-editor textarea{font-size:16px}}

/* Stronger editor type after review on the user's actual Chrome screen. */
#modal:has(form){font-family:-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo','Malgun Gothic','Segoe UI',sans-serif}
body #modal form .modal-body label.form-field>.field-title,body #modal form .modal-body label:not(.check){font-size:14px;font-weight:700;color:#26384b}
body #modal form .modal-body input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]):not([type=color]),body #modal form .modal-body select:not([multiple]),body #modal form .modal-body textarea{font-size:16px;font-weight:600;color:#142638}
body #modal form .modal-body .line-editor input:not([type=checkbox]):not([type=radio]),body #modal form .modal-body .line-editor select,body #modal form .modal-body .line-editor textarea{font-size:15px;font-weight:600}
#modal:has(form) .writing-toolbar,#modal:has(form) .writing-toolbar button,#modal:has(form) .writing-toolbar select,#modal:has(form) .writing-toolbar a{font-family:inherit;font-weight:600;color:#26384b}
#modal:has(form) .writing-toolbar .primary{color:white}
#modal form .modal-body .muted,#modal form .modal-body .footnote,#modal form .modal-body .writing-context{font-size:12px;color:#506176;line-height:1.6}

/* Apply the same readable typography to all edit and detail dialogs. */
#modal{font-family:-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo','Malgun Gothic','Segoe UI',sans-serif;color:#243447}
#modal .modal-body{font-family:inherit;font-size:14px;color:#243447;line-height:1.6}
body #modal .modal-body label.form-field>.field-title,body #modal .modal-body label:not(.check){font-size:14px;font-weight:700;color:#26384b}
body #modal .modal-body input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]):not([type=color]),body #modal .modal-body select:not([multiple]),body #modal .modal-body textarea{font-family:inherit;font-size:16px;font-weight:600;color:#142638}
#modal .modal-body .detail dt{font-size:13px;color:#506176}
#modal .modal-body .detail dd{font-size:14px;color:#243447}
#modal .modal-body .muted,#modal .modal-body .footnote{color:#506176}
#modal .modal-body .table-wrap table{font-family:inherit;font-size:13px}
#modal .modal-body .table-wrap th{color:#42566c;font-size:12px}

/* Balanced editor hierarchy: restrained labels, normal-weight entered values. */
body #modal .modal-body label.form-field>.field-title,body #modal .modal-body label:not(.check),body #modal form .modal-body label.form-field>.field-title,body #modal form .modal-body label:not(.check){font-size:13px;font-weight:600;color:#34465b}
body #modal .modal-body input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]):not([type=color]),body #modal .modal-body select:not([multiple]),body #modal .modal-body textarea,body #modal form .modal-body input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]):not([type=color]),body #modal form .modal-body select:not([multiple]),body #modal form .modal-body textarea{font-size:14px;font-weight:400;color:#243447}
body #modal form .modal-body .line-editor input:not([type=checkbox]):not([type=radio]),body #modal form .modal-body .line-editor select,body #modal form .modal-body .line-editor textarea{font-size:13px;font-weight:400}
#modal:has(form) .writing-toolbar button,#modal:has(form) .writing-toolbar select,#modal:has(form) .writing-toolbar a{font-weight:400}
@media(max-width:760px){body #modal .modal-body input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]):not([type=color]),body #modal .modal-body select:not([multiple]),body #modal .modal-body textarea,body #modal form .modal-body input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]):not([type=color]),body #modal form .modal-body select:not([multiple]),body #modal form .modal-body textarea{font-size:16px;font-weight:400}}

/* Semantic text tones in editors: heading / caption / value / guidance. */
#modal .modal-head h2,#modal .modal-body h3,#modal form .modal-body h3{color:#20364d}
body #modal .modal-body label.form-field>.field-title,body #modal .modal-body label:not(.check),body #modal form .modal-body label.form-field>.field-title,body #modal form .modal-body label:not(.check){color:#607087}
body #modal .modal-body input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]):not([type=color]),body #modal .modal-body select:not([multiple]),body #modal .modal-body textarea,body #modal form .modal-body input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]):not([type=color]),body #modal form .modal-body select:not([multiple]),body #modal form .modal-body textarea{color:#293747}
#modal .modal-body .muted,#modal .modal-body .footnote,#modal form .modal-body .muted,#modal form .modal-body .footnote,#modal form .modal-body .writing-context{color:#718096}
#modal .modal-body input::placeholder,#modal .modal-body textarea::placeholder,#modal form .modal-body input::placeholder,#modal form .modal-body textarea::placeholder{color:#7b8798;opacity:1}
#modal .modal-body .form-error,#modal form .modal-body .form-error{color:#b23f3f}

/* Captions lead; selected/entered values stay quieter and normal weight. */
body #modal .modal-body label.form-field>.field-title,body #modal .modal-body label:not(.check),body #modal form .modal-body label.form-field>.field-title,body #modal form .modal-body label:not(.check){color:#263c54;font-weight:700}
body #modal .modal-body input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]):not([type=color]),body #modal .modal-body select:not([multiple]),body #modal .modal-body textarea,body #modal form .modal-body input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]):not([type=color]),body #modal form .modal-body select:not([multiple]),body #modal form .modal-body textarea{color:#58677a;font-weight:400}
body #modal .remote-selection-option:not(.link):not(.tab):not(.close):not(.userbtn){font-family:inherit;font-size:14px;font-weight:400;color:#58677a}
.remote-selection>span[role=status]{display:block;min-height:20px}

/* One font and spacing system throughout every dialog, including moved toolbars. */
#modal,#modal :is(h1,h2,h3,h4,p,span,div,label,input,select,textarea,button,a,small,strong,table,th,td,dt,dd,summary,option){font-family:-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo','Malgun Gothic','Segoe UI',sans-serif;letter-spacing:normal;font-kerning:auto}
#modal .modal-head h2{font-size:18px;line-height:1.45;font-weight:700;letter-spacing:normal}
#modal .modal-body h3,#modal form .modal-body h3{font-size:15px;line-height:1.5;font-weight:700}
#modal .writing-toolbar .writing-language{font-size:12px;font-weight:600;color:#263c54}
#modal .writing-toolbar button,#modal .writing-toolbar a,#modal .writing-toolbar select{letter-spacing:normal;font-size:12px}
#modal .modal-body .field-title{line-height:1.5}

/* Unified application typography. Printed document templates remain separate. */
:root{--erp-ui-font:-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo','Malgun Gothic','Segoe UI',sans-serif}
body,body :is(h1,h2,h3,h4,h5,h6,p,span,div,label,input,select,textarea,button,a,small,strong,b,table,thead,tbody,tr,th,td,dt,dd,summary,option,li,section,article,header,footer,nav,form,legend,fieldset){font-family:var(--erp-ui-font);letter-spacing:normal}
body #modal,body #modal :is(h1,h2,h3,h4,p,span,div,label,input,select,textarea,button,a,small,strong,table,th,td,dt,dd,summary,option),body .metric,body .metric small,body .money-hero,body .code,body .nav-count{font-family:var(--erp-ui-font);letter-spacing:normal}
body .num,body .metric,body .money-hero{font-variant-numeric:tabular-nums}

/* Shared visual hierarchy for business, edit and read-only screens. */
.panel-head{background:#f8fafc;border-bottom-color:#dce4ed}
.panel-head h2{color:#263c54;font-weight:700}
.detail dt{color:#425770;font-size:12px;font-weight:700;border-top:1px solid #e5eaf0;padding-top:10px;margin-top:10px}
.detail dt:first-child{border-top:0;padding-top:0;margin-top:0}
.detail dd{color:#566577;font-size:14px;font-weight:400;line-height:1.6;margin:4px 0 0;padding-bottom:2px}
#modal .modal-body .detail dt{color:#334c67;font-weight:700}
#modal .modal-body .detail dd{color:#58677a;font-weight:400}
#modal .modal-body>h3,#modal .document-input>h3{padding-bottom:7px;border-bottom:1px solid #dde5ee}
#modal .modal-body>h3:not(:first-child),#modal .document-input>h3:not(:first-child){margin-top:18px}
#modal .modal-body>.actions:first-child{padding-bottom:12px;border-bottom:1px solid #e4eaf0;margin-bottom:12px}
.table-wrap table th{background:#f4f7fa;color:#40566f;font-weight:700;border-bottom:1px solid #d9e2ec}
.table-wrap table td{color:#4c5e73}
#modal .modal-body input[readonly],#modal .modal-body textarea[readonly]{background:#f4f6f9;border-color:#dce3eb;color:#657387}
#modal .modal-body label.form-field{line-height:1.5}

/* Air between field groups, with quiet separators rather than heavy boxes. */
#modal .modal-body>.form-field+.form-field,#modal .modal-body>.form-field+.notice,#modal .modal-body>.notice+.form-field{margin-top:16px}
#modal .grid2,#modal .grid3,#modal .grid4{row-gap:16px}
#modal .document-input>label{margin-bottom:16px}
#modal .modal-body>.grid2+.grid2,#modal .modal-body>.grid3+.grid3,#modal .modal-body>.grid4+.grid4{margin-top:16px}
#modal .modal-body>.form-field+.form-field,#modal .document-input>.form-field+.form-field{border-top:1px solid #eff2f6;padding-top:12px}
#modal .modal-body>h3,#modal .document-input>h3{border-bottom-color:#e9eef4;padding-bottom:8px}
.detail dt{margin-top:14px;padding-top:14px;border-top-color:#edf1f5}
.detail dd{margin-top:5px;padding-bottom:4px}
.panel-head{border-bottom-color:#e8edf3}
#modal .modal-body>.actions:first-child{border-bottom-color:#edf1f5}
@media(max-width:760px){#modal .grid2,#modal .grid3,#modal .grid4{row-gap:16px}}

/* Compact summary panels; make each work-check link a distinct item. */
.content>.panel>.panel-head,.content>.split>.panel>.panel-head{padding:12px 18px}
.content>.panel>.panel-body,.content>.split>.panel>.panel-body{padding:14px 18px}
.panel:has(>.work-check-items){margin-bottom:14px}
.panel:has(>.work-check-items)>.panel-head{padding:10px 16px}
.panel>.work-check-items{padding:10px 16px;display:flex;align-items:center;gap:8px 0;flex-wrap:wrap}
.work-check-items>a{display:inline-flex;align-items:center;min-height:24px;padding:0 18px;line-height:24px;font-size:13px;border-left:1px solid #e6ecf2}
.work-check-items>a:first-child{padding-left:0;border-left:0}
@media(max-width:760px){.panel>.work-check-items{gap:0;align-items:stretch}.work-check-items>a{flex:1 1 100%;padding:8px 0;border-left:0;border-top:1px solid #edf1f5;min-height:36px}.work-check-items>a:first-child{border-top:0}.content>.panel>.panel-head,.content>.split>.panel>.panel-head{padding:10px 14px}.content>.panel>.panel-body,.content>.split>.panel>.panel-body{padding:12px 14px}}

/* Keep notification labels and counts intact; wrap whole cards instead. */
.notification-grid{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch}
.notification-grid>a{flex:1 1 max-content;min-width:min(100%,260px);max-width:100%;gap:16px;padding:12px 14px;min-height:56px}
.notification-grid>a>span{white-space:nowrap;min-width:0;overflow:hidden;text-overflow:ellipsis}
.notification-grid>a>strong{white-space:nowrap;flex:0 0 auto;font-size:19px;line-height:1.3}
@media(max-width:760px){.notification-grid>a{flex-basis:100%;min-width:0;padding:12px;gap:12px}.notification-grid>a>span{font-size:13px}.notification-grid>a>strong{font-size:18px}}

body .topbar .right>button.top-notice:not(.link):not(.tab):not(.close):not(.userbtn){display:inline-flex;align-items:center;justify-content:center;height:34px;min-height:34px;padding:5px 10px;font-family:var(--erp-ui-font);font-size:13px;font-weight:600;line-height:22px;border-radius:8px;gap:6px}

.query-multi>.query-choice-state[hidden]{display:none!important}
.query-multi>select[data-query-add]{width:100%;min-width:0;max-width:100%;font-weight:400}

/* Search support for short and long selectors throughout the application. */
.local-selection-search{position:relative;margin-top:5px;gap:0}
body .local-selection-search>input[type=search]{height:32px;min-height:32px;padding:5px 9px;font-size:12px;line-height:20px;background:#fafcfe;border-color:#e1e7ee}
.local-selection-search>.remote-selection-list:not(:empty){position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:30;background:#fff;border:1px solid #d5dfea;border-radius:7px;box-shadow:0 6px 18px #20314522;padding:4px;max-height:230px}
body .local-selection-search .remote-selection-option:not(.link):not(.tab):not(.close):not(.userbtn){min-height:30px;padding:5px 8px;font-size:13px;line-height:20px;border:0;background:#fff;font-weight:400;color:#43566c}
body .local-selection-search .remote-selection-option:hover{background:#eef5fb}
.local-selection-search>[hidden]{display:none!important}
@media(max-width:760px){body .local-selection-search>input[type=search]{font-size:16px;min-height:36px;height:36px}}

/* One editable combobox, rather than a select plus a second search field. */
body select.search-selection-source{display:none!important}
.remote-selection.unified-selection{position:relative;display:block;margin:0;min-width:0;width:100%}
body .unified-selection>input:is([type=search],[type=text]),body .local-selection-search.unified-selection>input:is([type=search],[type=text]){width:100%;height:44px;min-height:44px;padding:10px 32px 10px 12px;font-family:var(--erp-ui-font);font-size:14px;line-height:22px;font-weight:400;color:#58677a;background-color:white;border:1px solid var(--control-border);border-radius:8px}
.unified-selection>input::placeholder{color:#58677a;opacity:1}
.unified-selection>.remote-selection-list:not(:empty){position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:40;background:white;border:1px solid #d5dfea;border-radius:8px;padding:4px;box-shadow:0 6px 18px #20314522;max-height:230px;overflow:auto}
.unified-selection>[hidden]{display:none!important}
@media(max-width:760px){body .unified-selection>input:is([type=search],[type=text]),body .local-selection-search.unified-selection>input:is([type=search],[type=text]){font-size:16px}}

/* Development preview is a compact utility strip, not a searchable business field. */
body .dev-preview-bar{display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;width:max-content;max-width:100%;gap:10px;padding:7px 10px;margin-bottom:16px;overflow-x:auto}
body .dev-preview-bar>strong{font-size:11px;line-height:18px;flex:0 0 auto;white-space:nowrap}
body .dev-preview-bar>select#department-preview{display:block!important;flex:0 0 175px;width:175px;max-width:175px;height:32px;min-height:32px;padding:5px 30px 5px 9px;font-size:12px;line-height:20px}
body .dev-preview-bar>span{flex:0 0 auto;white-space:nowrap;font-size:11px;line-height:18px}
body .dev-preview-bar>button.small:not(.link):not(.tab):not(.close):not(.userbtn){flex:0 0 auto;min-height:30px;height:30px;padding:4px 8px;font-size:11px;line-height:20px;border-radius:6px}
@media(max-width:760px){body .dev-preview-bar{width:100%;gap:8px}body .dev-preview-bar>span{flex-basis:auto}body .dev-preview-bar>select#department-preview{flex-basis:155px;width:155px;max-width:155px;font-size:16px}}

/* Narrower searchable selectors; preserve responsive fit and readable long results. */
.remote-selection.unified-selection{width:100%;max-width:300px}
.filters .remote-selection.unified-selection{max-width:210px}
.filters>.query-multi{flex:0 1 210px;max-width:210px;min-width:150px}
.filters>label:has(>select.search-selection-source){flex:0 1 190px;min-width:150px;max-width:210px}
body #modal .remote-selection.unified-selection{max-width:360px}
body #modal .line-editor .remote-selection.unified-selection{max-width:100%}
.unified-selection>.remote-selection-list:not(:empty){min-width:100%;width:max-content;max-width:min(480px,calc(100vw - 40px));right:auto}
@media(max-width:760px){.filters>.query-multi{flex:1 1 150px;max-width:100%;min-width:0}.filters>label:has(>select.search-selection-source){flex:1 1 150px;min-width:0;max-width:100%}.remote-selection.unified-selection,.filters .remote-selection.unified-selection,body #modal .remote-selection.unified-selection{max-width:100%}.unified-selection>.remote-selection-list:not(:empty){width:100%;max-width:100%;right:0}}

.shared-language-picker{width:max-content;max-width:100%;font-size:12px;line-height:18px;font-weight:400;letter-spacing:normal;flex:0 0 auto}
body .shared-language-picker>select{position:absolute;inset:0;width:100%;height:100%;min-height:0;margin:0;padding:0;opacity:0;cursor:pointer;font-size:16px}
.side-foot>.shared-language-picker{margin-top:8px;padding:5px 9px;color:#617184;border-color:#dce3eb;background:#fff}
.common-form-info>.shared-language-picker{margin:4px 0 8px}
@media(max-width:760px){.sidebar .side-foot:has(.shared-language-picker){display:flex;align-items:center;gap:10px;padding-top:10px}.side-foot>.shared-language-picker{margin-top:0}}

/* Sidebar editing sits directly above the left-aligned WORKSPACE caption. */
.sidebar .sidebar-edit-tools{justify-content:flex-start;padding:0 10px 4px;margin:0}
.sidebar .sidebar-edit-tools+details[data-nav-group=workspace]>.nav-label{margin-top:4px}

.sidebar summary.workspace-heading{display:flex;align-items:center;gap:7px;padding-right:8px;min-height:28px;margin:6px 0}
.sidebar .workspace-heading>span:first-child{flex:0 1 auto;min-width:0;letter-spacing:1px}
body .sidebar .workspace-heading>button.sidebar-inline-edit.small:not(.link):not(.tab):not(.close):not(.userbtn){flex:0 0 auto;min-height:22px;height:22px;padding:1px 5px;font-size:10px;line-height:18px;font-weight:400;border:1px solid #e1e7ed;border-radius:5px;background:transparent;color:#788697;letter-spacing:normal}
.sidebar .workspace-heading>.nav-chevron{margin-left:auto;margin-right:2px;flex-shrink:0}

.sidebar details[open]>.workspace-heading.groups-collapsed>.nav-chevron{transform:rotate(-45deg)}

body .sidebar>button.sidebar-size-toggle:not(.link):not(.tab):not(.close):not(.userbtn){position:absolute;right:6px;top:4px;height:24px;min-height:24px;width:24px;padding:0;font-size:20px;line-height:22px;color:#6c7c8f;border:0;background:transparent;border-radius:5px;z-index:2}
@media(min-width:761px){
.shell.sidebar-compact{grid-template-columns:64px minmax(0,1fr)}
.shell.sidebar-compact>.sidebar{width:64px!important;padding:32px 7px 12px!important}
.shell.sidebar-compact .brand{width:46px!important;min-width:0!important;padding:0!important;margin:0 auto 16px!important}
.shell.sidebar-compact .brand img{width:46px!important;max-width:46px!important}
.shell.sidebar-compact .brand-sub,.shell.sidebar-compact .workspace-heading,.shell.sidebar-compact .side-foot,.shell.sidebar-compact .nav-sub{display:none!important}
.shell.sidebar-compact .sidebar nav .nav-item{display:flex;align-items:center;justify-content:center;gap:0;font-size:0!important;padding:10px!important;min-height:42px;margin:3px 0;line-height:1}
.shell.sidebar-compact .sidebar .nav-item>.icon{width:20px;height:20px;display:inline-flex!important}
.shell.sidebar-compact .sidebar .nav-chevron,.shell.sidebar-compact .sidebar .nav-count{display:none!important}
.shell.sidebar-compact .sidebar nav>details>details{margin:0}
}
@media(max-width:760px){body .sidebar>button.sidebar-size-toggle{display:none}}

/* Project selectors prioritize dense, readable manufacturing/hull labels. */
body .project-selection.unified-selection>input:is([type=text],[type=search]),body #modal form .modal-body .project-selection.unified-selection>input:is([type=text],[type=search]),body #modal .modal-body .project-selection.unified-selection>input:is([type=text],[type=search]){font-size:13px;font-weight:400;height:36px;min-height:36px;padding:7px 10px;line-height:20px}
.project-selection.unified-selection>.remote-selection-list:not(:empty){width:max-content;min-width:100%;max-width:min(680px,calc(100vw - 48px));max-height:320px;gap:1px;padding:4px}
body .project-selection .remote-selection-list>button.remote-selection-option:not(.link):not(.tab):not(.close):not(.userbtn),body #modal .project-selection .remote-selection-list>button.remote-selection-option:not(.link):not(.tab):not(.close):not(.userbtn){display:block;min-height:30px;padding:5px 8px;font-size:12px;font-weight:400;line-height:19px;text-align:left;border:0;border-radius:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:760px){body .project-selection.unified-selection>input:is([type=text],[type=search]),body #modal form .modal-body .project-selection.unified-selection>input:is([type=text],[type=search]),body #modal .modal-body .project-selection.unified-selection>input:is([type=text],[type=search]){font-size:16px;height:40px;min-height:40px}.project-selection.unified-selection>.remote-selection-list:not(:empty){width:100%;max-width:100%;max-height:300px}body .project-selection .remote-selection-list>button.remote-selection-option:not(.link):not(.tab):not(.close):not(.userbtn){min-height:36px;font-size:12px;white-space:normal}}

@media(min-width:761px){body .project-selection.unified-selection>input:is([type=text],[type=search]){font-size:13px!important;height:36px!important;min-height:36px!important}}

.attachment-dropzone{border:1px dashed #c3d2e1;border-radius:8px;background:#fafcfe;padding:12px;margin-top:10px;gap:7px}
.attachment-dropzone.drag-active{border-color:#0084c4;background:#eaf5fc}
.attachment-drop-hint{display:block;font-size:12px;font-weight:400;color:#6c7e93}
.attachment-file-list{display:grid;gap:4px}.attachment-file-list:empty{display:none}
.attachment-file-list>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:5px 8px;background:white;border:1px solid #e5ebf1;border-radius:5px;font-size:12px;font-weight:400;overflow-wrap:anywhere}
.attachment-file-list button{flex-shrink:0;padding:2px 5px}

/* Large, full-width drop target with a quiet upload illustration. */
body #modal .attachment-dropzone,body .attachment-dropzone{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;grid-column:1/-1;width:100%;max-width:none;min-width:0;min-height:170px;padding:18px 20px;gap:7px;margin-top:14px;border:1.5px dashed #bed0e2;border-radius:12px;background:#f7fafd;color:#526a84;cursor:pointer;text-align:center;transition:background-color .15s,border-color .15s}
body .attachment-dropzone:hover{background:#f0f7fc;border-color:#79acd0}
.attachment-drop-visual{display:flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:14px;background:#eaf3fb;color:#3686b9;margin-top:4px;pointer-events:none}
body .attachment-dropzone .attachment-drop-hint{font-family:var(--erp-ui-font);font-size:14px;line-height:1.6;font-weight:600;color:#324f6d;pointer-events:none}
.attachment-drop-sub{font-size:12px;font-weight:400;line-height:1.5;color:#7a8b9d;pointer-events:none}
body .attachment-dropzone>input[type=file]{max-width:360px;width:100%;min-height:30px;height:auto;font-size:12px;padding:3px;background:transparent;border:0;text-align:left}
.attachment-dropzone .attachment-file-list{align-self:stretch;width:100%;margin-top:8px;text-align:left;cursor:default}
body .attachment-dropzone.drag-active{background:#e8f4fd;border-color:#1689c7;box-shadow:inset 0 0 0 1px #1689c733}
.attachment-dropzone.drag-active .attachment-drop-visual{background:#d5ebfb;color:#087ebb}
@media(max-width:760px){body #modal .attachment-dropzone,body .attachment-dropzone{min-height:160px;padding:14px 12px}.attachment-drop-visual{width:46px;height:46px}}
[data-form="drawing-upload"] [hidden]{display:none!important}

/* Clear upload action and a brighter illustration background. */
body .attachment-dropzone>input.attachment-native-input[type=file]{position:absolute;width:1px;height:1px;min-height:0;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.attachment-dropzone .attachment-drop-visual{background:#fff;color:#1686c3;border:1px solid #e0edf7;box-shadow:0 2px 8px #3677a00a}
body .attachment-dropzone>button.attachment-pick-button:not(.link):not(.tab):not(.close):not(.userbtn){display:inline-flex;align-items:center;justify-content:center;align-self:center;width:auto;min-width:104px;min-height:34px;height:34px;margin:3px 0 2px;padding:6px 16px;border:1px solid #1684bd;border-radius:7px;background:#1684bd;color:#fff;font-family:var(--erp-ui-font);font-size:13px;font-weight:600;line-height:20px;box-shadow:0 2px 4px #1684bd14}
body .attachment-dropzone>button.attachment-pick-button:hover{background:#0874ad;border-color:#0874ad}
.attachment-dropzone .attachment-file-list:not(:empty){padding-top:10px;border-top:1px solid #e4ebf2;margin-top:8px}
.attachment-dropzone.drag-active .attachment-drop-visual{background:white;border-color:#a9d8f2}

/* Compact account utilities; the department preview remains reachable while scrolling. */
.side-foot-row{display:flex;align-items:center;justify-content:space-between;gap:6px;min-width:0}
.side-foot-row>.side-release{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}
.side-foot-row>.shared-language-picker{margin:0;padding:5px;border:0;background:transparent;flex:0 0 28px;width:28px;height:28px;justify-content:center}
.side-foot-row>.shared-language-picker>span{display:none}
.account-recent-activity details{border-top:1px solid #edf0f4}
.account-recent-activity summary{cursor:pointer;padding:9px 14px;color:#607489;font-size:12px}
.account-history-scroll{max-height:280px;overflow:auto}
body .dev-preview-bar{position:sticky;top:72px;z-index:9;background:#eef7fc;box-shadow:0 2px 5px #2031450c}

/* Quiet globe utility and a small, upward-opening language popover. */
.sidebar-language{position:relative;flex:0 0 30px;color:#66788b}
.sidebar-language>summary{display:flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:1px solid transparent;border-radius:9px;cursor:pointer;list-style:none;transition:background .15s,color .15s}
.sidebar-language>summary::-webkit-details-marker{display:none}
.sidebar-language>summary:hover,.sidebar-language[open]>summary{background:#e5edf4;color:#0081c4}
.sidebar-language>summary:focus-visible{outline:2px solid #0081c4;outline-offset:2px}
.sidebar-language-menu{position:absolute;right:0;bottom:calc(100% + 9px);width:180px;padding:6px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 8px 28px #20314520;z-index:80}
.sidebar-language-heading{display:block;padding:5px 9px 7px;font-size:10px;color:#8794a3;font-weight:600;letter-spacing:0}
body .sidebar-language-menu>button{display:flex;align-items:center;gap:9px;width:100%;height:36px;min-height:36px;padding:6px 9px;border:0;border-radius:7px;background:transparent;color:#45566a;font-size:12px;font-weight:400;line-height:20px;text-align:left}
body .sidebar-language-menu>button:hover{background:#f3f7fa}
body .sidebar-language-menu>button[aria-pressed=true]{background:#edf6fc;color:#007dbb}
.language-code{font-size:9px;font-weight:600;color:#8091a1;width:23px}
.language-check{margin-left:auto;font-size:13px;color:#0081c4}
.sidebar-language>select[hidden]{display:none!important}

.account-recent-activity>.account-history-scroll{max-height:280px}.account-recent-activity>details{border-top:0}.account-history-scroll{overscroll-behavior:contain;scrollbar-gutter:stable}.account-history-scroll th{position:sticky;top:0;z-index:1}

.account-history-pagination{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:9px 14px;border-top:1px solid #edf0f4}.account-history-pagination>span{font-size:11px;color:#718195}

/* Shared compact section heading rhythm. */
body .panel>.panel-head{min-height:44px;padding:8px 15px;gap:10px}
body .panel>.panel-head>h2{margin:0;font-size:14px;line-height:22px;font-weight:600}
body .panel>.panel-head button.small{min-height:28px;padding:3px 8px;font-size:11px;line-height:20px}
.company-information-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}
body button.company-stamp-thumb{display:flex;align-items:center;justify-content:center;width:30px;height:30px;min-height:30px;padding:2px;border:1px solid #e3e9ef;border-radius:6px;background:#fff}
.company-stamp-thumb img{width:100%;height:100%;object-fit:contain}
.company-stamp-empty{font-size:10px}
.company-stamp-large{display:flex;justify-content:center;align-items:center;padding:20px}
.company-stamp-large img{max-width:100%;max-height:55vh;object-fit:contain}
@media(max-width:760px){body .panel>.panel-head{padding:8px 12px}}

.company-information-body{display:grid;grid-template-columns:minmax(0,1fr) 130px;align-items:start;gap:20px}
.company-information-text{min-width:0}.company-information-text .detail{margin-bottom:0}
.company-stamp-card{border:1px solid #e5eaf0;border-radius:9px;background:#fafbfd;padding:10px;text-align:center}
.company-stamp-card>span{display:block;margin-bottom:8px;font-size:11px;font-weight:600;color:#64758a}
body .company-stamp-card>button{display:flex;justify-content:center;align-items:center;width:100%;height:100px;min-height:100px;padding:6px;background:#fff;border:0;border-radius:5px}
.company-stamp-card img{max-width:100%;max-height:88px;object-fit:contain}
.company-stamp-placeholder{display:flex;align-items:center;justify-content:center;height:100px;font-size:11px;color:#8a96a5;background:#fff;border-radius:5px}
@media(max-width:480px){.company-information-body{grid-template-columns:minmax(0,1fr) 100px;gap:12px}.company-stamp-card{padding:8px}body .company-stamp-card>button,.company-stamp-placeholder{height:80px;min-height:80px}.company-stamp-card img{max-height:68px}}

body .panel>.panel-head button.small:not(.link):not(.tab):not(.close):not(.userbtn){height:28px;min-height:28px;padding:3px 8px;font-size:11px;line-height:20px;border-radius:6px}body .panel>.panel-head{min-height:42px;padding-top:6px;padding-bottom:6px}

#app .content .panel>.panel-head{min-height:42px;padding:6px 15px}

/* Open selection results never participate in the filter row layout. */
.unified-selection>.selection-more{display:none!important}
.unified-selection>.remote-selection-list>.selection-more{position:sticky;bottom:0;width:100%;margin:3px 0 0;background:#f6f9fc}
.unified-selection>.remote-selection-list>.selection-more[hidden]{display:none!important}
