@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;450;500;550;600;650;700;750;800;900&display=swap');
:root{font-family:'Noto Sans KR',-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo',sans-serif;color:#263b36;background:#f5f7f8;font-synthesis:none;font-size:13px;--green:#16745d;--dark:#142c27;--muted:#84928f;--border:#e6ece9}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{border:0;background:none;color:inherit}button:disabled{opacity:.45;cursor:not-allowed}a{color:inherit;text-decoration:none}svg.icon{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}button:focus-visible,a:focus-visible{outline:3px solid #88bea8;outline-offset:3px}input:focus,select:focus,textarea:focus{outline:2px solid #91c6b4;outline-offset:1px}.sidebar{width:226px;background:var(--dark);position:fixed;inset:0 auto 0 0;color:#a5b6b0;display:flex;flex-direction:column;padding:30px 18px 18px;z-index:30}.brand{display:flex;align-items:center;gap:12px;padding:0 12px;color:#fff}.brand-mark{font-size:34px;font-weight:900;letter-spacing:-3px;line-height:1}.brand-mark span{color:#8bd6b0}.brand-sub{font-size:11px;border-left:1px solid #4b6059;padding-left:12px;line-height:1.7;color:#d0dad6}.workspace{margin:33px 4px 28px;padding:12px;background:#203a32;border:1px solid #365047;border-radius:9px;display:flex;align-items:center;gap:10px;font-size:12px;color:#e1eae6}.workspace .small{color:#91a89c;font-size:10px;margin-top:3px}.workspace .icon{color:#b7d2c4}.nav-label{font-size:10px;font-weight:600;letter-spacing:1.4px;color:#708e81;padding:0 16px;margin-bottom:12px}.nav{display:flex;flex-direction:column;gap:5px}.nav a{display:flex;align-items:center;gap:12px;padding:13px 16px;border-radius:7px;font-weight:500;font-size:12px;transition:.15s}.nav a:hover{background:#223d34;color:white}.nav a.active{background:#e1efe5;color:#183f2c;font-weight:750}.nav .nav-count{margin-left:auto;background:#345044;color:#cee8da;border-radius:5px;font-size:10px;padding:2px 7px}.nav .active .nav-count{background:#c2dfcc;color:#285438}.nav-divider{border-top:1px solid #30473d;margin:23px 12px}.sidebar-bottom{margin-top:auto}.help-card{margin:25px 5px 20px;padding:16px;background:linear-gradient(135deg,#2e4939,#243f34);border:1px solid #3b5746;border-radius:9px;font-size:11px;line-height:1.9}.help-card b{color:#dce9d9;font-size:12px;display:block;margin:6px 0}.help-card button{padding:0;color:#bfdbc6;margin-top:10px;display:flex;gap:8px;align-items:center}.sidebar-foot{padding:10px 12px 0;font-size:10px;color:#678676;display:flex;justify-content:space-between}.main-shell{margin-left:226px}.topbar{height:76px;background:white;border-bottom:1px solid var(--border);padding:0 36px;display:flex;align-items:center;justify-content:space-between;gap:20px}.crumb{display:flex;align-items:center;gap:13px;color:#94a19b;font-size:11px}.crumb strong{color:#3e514a;font-weight:500}.top-right{display:flex;align-items:center;gap:18px}.demo-tag{font-size:9px;font-weight:750;letter-spacing:.8px;color:#7c8f83;border:1px solid #d8e3dc;border-radius:4px;padding:4px 7px}.icon-btn{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px}.icon-btn:hover{background:#edf3ef}.bell{position:relative}.bell:after{content:'';width:5px;height:5px;border:2px solid white;background:#e4a563;border-radius:50%;position:absolute;right:6px;top:5px}.profile{display:flex;align-items:center;gap:10px;border-left:1px solid var(--border);padding-left:20px}.avatar{width:34px;height:34px;background:#edf0e5;color:#68704c;border:1px solid #e0e5d6;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:700}.profile select{border:0;background:transparent;color:#344a3f;font-size:11px;font-weight:650;max-width:145px;padding:0}.profile small{display:block;color:#929f96;font-size:9px;margin-top:3px}.content{max-width:1600px;margin:0 auto;padding:33px 36px 24px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px}.eyebrow{font-size:10px;letter-spacing:1.5px;font-weight:650;color:#819789;margin-bottom:8px}.page-heading h1{font-size:26px;letter-spacing:-1.2px;margin:0;font-weight:750}.page-heading p{font-size:12px;color:#8a9891;margin:9px 0 0}.actions{display:flex;align-items:center;gap:9px}.btn{height:37px;display:inline-flex;justify-content:center;align-items:center;gap:7px;border:1px solid #dfe6e1;background:white;border-radius:6px;padding:0 13px;font-size:11px;font-weight:550;white-space:nowrap}.btn:hover{background:#f0f5f1;border-color:#b7cdbf}.btn.primary{background:var(--green);border-color:var(--green);color:#fff;box-shadow:0 2px 2px #15372a0b}.btn.primary:hover{background:#105e4b}.btn.danger{color:#bc5955;border-color:#e6cfcd}.btn .icon{width:15px;height:15px}.date{color:#7d8d83;font-size:11px;padding-right:8px}.hero{position:relative;background:#eaf1e9;border:1px solid #dbe6d9;border-radius:11px;padding:26px 30px;display:flex;justify-content:space-between;align-items:center;overflow:hidden;min-height:159px;margin-bottom:23px}.hero:after{position:absolute;content:'';width:265px;height:265px;border:1px solid #d0dfd0;border-radius:50%;right:-10px;top:-110px;pointer-events:none}.hero-copy{z-index:1}.hero-label{font-size:10px;color:#699176;font-weight:650;letter-spacing:1.2px;display:flex;align-items:center;gap:6px}.live-dot{width:5px;height:5px;background:#549769;border-radius:50%;display:inline-block}.hero h2{font-size:22px;font-weight:650;letter-spacing:-.8px;margin:9px 0 8px}.hero h2 em{font-style:normal;color:#367b50}.hero p{color:#82917f;font-size:11px;margin:0}.hero-link{padding:0;margin-top:15px;color:#467456;display:flex;align-items:center;gap:7px;font-size:11px;font-weight:600}.hero-link .icon{width:14px;height:14px}.hero-art{width:280px;height:130px;position:relative;flex-shrink:0}.hero-art svg{position:absolute;width:255px;height:155px;right:4px;top:-9px;z-index:1}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:25px}.stat{background:#fff;border:1px solid var(--border);border-radius:9px;padding:19px 21px;position:relative}.stat-top{display:flex;align-items:center;justify-content:space-between;color:#7f8d85;font-size:11px}.stat-icon{border-radius:7px;width:32px;height:32px;background:#f1f5f1;display:grid;place-items:center;color:#648572}.stat:nth-child(2) .stat-icon{background:#fff6e8;color:#c09651}.stat:nth-child(3) .stat-icon{background:#ecf2fc;color:#7997bd}.stat:nth-child(4) .stat-icon{background:#edf5ef;color:#729779}.stat-value{font-size:30px;font-weight:700;letter-spacing:-1px;margin:9px 0 10px;color:#243a2f}.stat-value small{font-size:12px;font-weight:400;color:#8a988f;margin-left:5px}.stat-bottom{font-size:10px;color:#95a198;display:flex;align-items:center;gap:5px}.stat-bottom b{color:#5c8b6e;font-weight:500}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 302px;gap:22px;align-items:start}.panel{border:1px solid var(--border);border-radius:9px;background:white;overflow:hidden}.panel-heading{padding:21px 23px 17px;display:flex;justify-content:space-between;align-items:center;gap:12px}.panel-heading h2{font-size:14px;font-weight:700;margin:0;letter-spacing:-.3px}.panel-heading h2 small{font-size:11px;color:var(--green);margin-left:8px}.panel-heading p{font-size:10px;color:#9aa59e;margin:6px 0 0}.text-btn{font-size:10px;color:#85948a;display:flex;align-items:center;gap:4px;padding:3px}.text-btn .icon{width:12px;height:12px}.tabs{display:flex;gap:24px;padding:0 23px;border-bottom:1px solid var(--border)}.tab{padding:0 0 14px;font-size:11px;color:#909c94;position:relative}.tab.active{color:#236d4d;font-weight:650}.tab.active:after{content:'';height:2px;background:#247453;position:absolute;left:0;right:0;bottom:-1px}.tab span{font-size:9px;background:#f0f4f1;padding:2px 5px;border-radius:4px;margin-left:5px}.filter-bar{display:flex;align-items:center;gap:9px;padding:15px 23px;flex-wrap:wrap}.field,input,select,textarea{height:35px;border:1px solid #e0e7e2;border-radius:5px;background:white;padding:0 10px;color:#55665b;min-width:0;font-size:11px}.search-box{display:flex;align-items:center;border:1px solid #e0e7e2;border-radius:5px;height:35px;min-width:160px;flex:1;background:white;padding-left:10px}.search-box .icon{width:15px;height:15px;color:#9da99f}.search-box input{width:100%;border:0;background:transparent;outline:0}.search-box:focus-within{outline:2px solid #91c6b4}input::placeholder,textarea::placeholder{color:#a2ada5}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap;text-align:left;font-size:11px}th{background:#f8faf8;color:#8a978d;font-weight:500;height:40px;font-size:10px}td{height:63px;border-bottom:1px solid #eef1ee;color:#637468}th,td{padding:10px 13px}th:first-child,td:first-child{padding-left:23px}tr:last-child td{border-bottom:0}.row-link{color:#304a3b;font-weight:550;text-align:left;padding:0}.row-link:hover{color:#157050;text-decoration:underline}.cell-sub{font-size:9px;color:#9aa79e;margin-top:4px}.company{font-size:9px;letter-spacing:.3px;font-weight:650;border-radius:4px;padding:3px 6px;display:inline-block;background:#edf4ee;color:#628873}.company.KEPS{background:#edf1fc;color:#7c8fbc}.company.OES{background:#f4edf9;color:#9b7dac}.status{display:inline-flex;align-items:center;gap:5px;font-size:9px;border-radius:5px;padding:5px 7px;background:#f0f3f1;color:#839389;font-weight:500}.status:before{content:'';width:4px;height:4px;border-radius:50%;background:currentColor}.status.amber{background:#fff6e9;color:#c49750}.status.blue{background:#edf3fe;color:#7897cd}.status.green{background:#ebf5ef;color:#558e72}.status.purple{background:#f3eefb;color:#9a7bbb}.table-footer{height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 23px;border-top:1px solid #eef1ee;font-size:10px;color:#929e94}.pages{display:flex;gap:5px;align-items:center}.pages button{font-size:10px;width:25px;height:25px;border-radius:4px;display:grid;place-items:center}.pages button .icon{width:13px;height:13px}.pages button.active{background:#edf4ee;color:#346b47;font-weight:600}.right-column{display:grid;gap:20px}.review-summary{padding:0 22px 18px}.review-step{display:flex;align-items:center;gap:12px;padding:13px 0;position:relative}.review-step+.review-step{border-top:1px dashed #e6ede5}.step-icon{height:34px;width:34px;border-radius:9px;background:#f1f5ee;color:#8ba080;display:grid;place-items:center}.step-info{flex:1}.step-info b{font-size:11px;font-weight:500}.step-info small{display:block;font-size:9px;color:#a1ab9e;margin-top:4px}.review-step strong{font-size:20px;font-weight:650;color:#3a5340}.review-step strong small{font-size:10px;color:#9ca799;font-weight:400;margin-left:3px}.review-foot{background:#f7f9f4;padding:11px 15px;color:#8e9e86;font-size:9px;display:flex;align-items:center;gap:7px;margin:0 20px 20px;border-radius:5px}.review-foot .icon{width:13px;height:13px}.company-chart{padding:0 23px 21px}.legend{display:flex;align-items:center;gap:12px;font-size:9px;color:#8a988d;margin:5px 0 20px}.legend i{display:inline-block;width:6px;height:6px;border-radius:2px;margin-right:4px}.chart-row{display:flex;gap:12px;align-items:center;margin:14px 0;font-size:10px}.chart-row span{width:34px;color:#7c8c7e}.bar-track{background:#f5f7f4;border-radius:3px;height:17px;flex:1;overflow:hidden}.bar{height:100%;border-radius:3px;background:#7fa88f;min-width:2px}.chart-row b{font-size:10px;font-weight:500;width:30px;text-align:right}.chart-note{border-top:1px solid var(--border);padding-top:14px;margin-top:19px;font-size:9px;color:#9ba797;display:flex;justify-content:space-between}.activity{margin-top:21px}.activity-items{display:grid;grid-template-columns:repeat(3,1fr);padding:0 23px 22px;gap:20px}.activity-item{display:flex;gap:10px;font-size:10px;line-height:1.7}.activity-dot{width:7px;height:7px;border-radius:50%;background:#89a896;margin-top:6px;flex-shrink:0}.activity-item p{margin:0;color:#63796b}.activity-item small{font-size:9px;color:#a2aca4}.footer{font-size:9px;color:#a5afa7;display:flex;justify-content:space-between;margin-top:25px}.pill{font-size:10px;background:#edf4ee;color:#528566;border-radius:4px;padding:4px 8px}.notice{display:flex;align-items:center;gap:9px;border:1px solid #dfe9df;background:#f0f6ef;color:#6b876c;padding:13px 16px;border-radius:7px;font-size:11px;margin-bottom:20px}.notice .icon{width:16px;height:16px}.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:20px}.product{background:white;border:1px solid var(--border);border-radius:9px;overflow:hidden;transition:.2s}.product:hover{box-shadow:0 8px 24px #173c2210;transform:translateY(-2px)}.product-image{height:160px;background:#f0f3ee;display:grid;place-items:center;position:relative;width:100%}.product-image svg{width:125px;height:125px}.product-image .product-brand{position:absolute;top:12px;left:13px;font-size:9px;letter-spacing:.8px;color:#859084}.product-info{padding:17px}.product-info h3{font-size:13px;margin:7px 0;font-weight:600}.product-info p{font-size:10px;color:#94a092;margin:5px 0}.product-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:18px}.price{font-size:16px;font-weight:650;color:#3d5641}.price small{font-size:10px;font-weight:400}.brand-filters{display:flex;gap:8px;flex-wrap:wrap;padding:0 23px 19px}.chip{font-size:10px;padding:7px 12px;border:1px solid #e3e9e2;border-radius:5px;background:white;color:#83937f}.chip.active{background:#eaf2e8;border-color:#a6c4a4;color:#40703c}.empty{padding:60px 20px;text-align:center;color:#8e9f90}.empty h3{color:#53694f}.checkbox{width:14px;height:14px;accent-color:#28744f;vertical-align:middle;cursor:pointer}.selection-bar{padding:12px 23px;background:#edf5ed;display:flex;align-items:center;gap:10px;border-bottom:1px solid #dce8d9;font-size:11px;color:#52774c}.selection-bar .spacer{flex:1}.table-input{width:78px;height:30px}.table-input.wide{width:145px}.totals{display:flex;align-items:center;justify-content:space-between;padding:23px;border-top:1px solid var(--border)}.totals strong{font-size:24px;color:#285b37;margin-left:15px}.totals small{color:#8b9a88}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.form-field{display:flex;flex-direction:column;gap:7px;font-size:11px;color:#72826b}.form-field input,.form-field select{width:100%;height:38px}.form-field.full{grid-column:1/-1}.form-field textarea{height:75px;padding:10px;resize:vertical}.modal-backdrop{position:fixed;inset:0;background:#102a206b;backdrop-filter:blur(3px);z-index:100;display:flex;align-items:center;justify-content:center;padding:30px}.modal{background:#fff;border-radius:13px;width:610px;max-width:100%;max-height:90vh;overflow:auto;box-shadow:0 25px 100px #10261a40}.modal.large{width:1100px}.modal-head{padding:23px 26px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.modal-head h2{font-size:17px;margin:0}.modal-head p{font-size:11px;color:#95a090;margin:7px 0 0}.modal-body{padding:24px 26px}.modal-actions{padding:17px 26px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:8px;background:#fafcf9}.detail-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:24px}.detail-meta small{display:block;font-size:10px;color:#96a28f;margin-bottom:8px}.detail-meta b{font-size:12px;font-weight:550}.section-title{font-size:12px;margin:22px 0 13px}.timeline{display:flex;gap:0;margin:15px 0 25px}.timeline-step{flex:1;background:#f1f5ee;padding:15px 18px;font-size:11px;color:#92a38a;border-right:3px solid white}.timeline-step.current{background:#e0eedc;color:#46723c;font-weight:600}.timeline-step small{display:block;font-size:9px;margin-top:6px;font-weight:400}.file-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.file-tag{font-size:10px;border:1px solid var(--border);padding:8px 10px;border-radius:5px;display:flex;gap:8px;align-items:center}.file-tag .icon{width:13px;height:13px}.admin-grid{display:grid;grid-template-columns:1.8fr 1fr;gap:20px}.settings-list{padding:0 22px 22px}.setting{border-top:1px solid var(--border);padding:17px 0;display:flex;justify-content:space-between;align-items:center;font-size:11px}.setting small{display:block;color:#98a391;margin-top:5px}.switch{background:#46835a;color:white;padding:5px 10px;border-radius:20px;font-size:9px}.admin-org{padding:0 23px 23px;line-height:2.4;color:#72836a;font-size:12px}.admin-org b{color:#355632}.admin-org p{padding-left:16px;border-left:2px solid #deead8}.warning-text{font-size:11px;color:#b28645}.chart-large{height:230px;display:flex;align-items:flex-end;gap:22px;padding:25px 30px 35px;border-bottom:1px solid var(--border)}.month-bar{flex:1;position:relative;background:#9cbfa0;border-radius:4px 4px 0 0;min-height:2px}.month-bar span{position:absolute;bottom:-24px;width:100%;text-align:center;color:#92a389;font-size:10px}.month-bar b{position:absolute;top:-20px;width:100%;text-align:center;font-size:10px;color:#6e8c63;font-weight:500}#toast{position:fixed;bottom:30px;left:calc(50% + 113px);transform:translate(-50%,20px);background:#203d2d;color:#f1f6ed;padding:14px 22px;border-radius:8px;box-shadow:0 6px 24px #15311d30;opacity:0;pointer-events:none;z-index:200;transition:.2s;font-size:12px;max-width:90vw}#toast.show{opacity:1;transform:translate(-50%,0)}.mobile-toggle{display:none}.doc-icon{width:33px;height:39px;border-radius:5px;background:#edf5e9;color:#5d8b54;display:grid;place-items:center}.mobile-shade{display:none}
@media(min-width:1500px){.content{padding-top:38px}.dashboard-grid{grid-template-columns:minmax(0,1fr) 330px}.hero{min-height:170px}.stat{padding:22px 24px}td{height:67px}}
@media(max-width:1200px){.sidebar{width:202px;padding-left:12px;padding-right:12px}.main-shell{margin-left:202px}.content{padding:26px 25px}.topbar{padding:0 25px}.dashboard-grid{grid-template-columns:minmax(0,1fr) 260px;gap:16px}.stats{gap:12px}.stat{padding:16px}.products{grid-template-columns:repeat(3,minmax(0,1fr))}.hero-art{width:200px}.date{display:none}.activity-items{grid-template-columns:1fr}.activity-item:nth-child(n+3){display:none}.top-right{gap:10px}}
@media(max-width:1000px){.dashboard-grid{grid-template-columns:1fr}.right-column{grid-template-columns:1fr 1fr}.products{grid-template-columns:repeat(2,minmax(0,1fr))}.hero h2{font-size:19px}.hero-art{width:155px}.hero-art svg{width:180px}.stats{grid-template-columns:repeat(2,1fr)}.admin-grid{grid-template-columns:1fr}.page-heading h1{font-size:23px}}
@media(max-width:700px){.sidebar{transform:translateX(-100%);transition:.2s;width:226px}.sidebar.open{transform:translateX(0)}.sidebar.open~.mobile-shade{display:block;position:fixed;inset:0;background:#14291f80;z-index:25}.main-shell{margin-left:0}.mobile-toggle{display:inline-flex}.topbar{height:64px;padding:0 15px;gap:8px}.crumb{gap:8px}.crumb>span,.demo-tag,.bell{display:none}.profile{padding-left:8px}.avatar{display:none}.profile select{max-width:135px}.content{padding:23px 16px}.page-heading{align-items:flex-start;flex-wrap:wrap;margin-bottom:20px}.page-heading .actions{width:100%}.page-heading .actions .btn{flex:1}.hero{padding:22px;min-height:160px}.hero h2{font-size:18px}.hero-art{display:none}.hero p{font-size:10px;line-height:1.8;max-width:230px}.stats{gap:10px}.stat-value{font-size:26px}.stat-top{font-size:10px}.stat{padding:14px}.stat-bottom{font-size:9px}.right-column{grid-template-columns:1fr}.panel-heading{padding:18px}.filter-bar{padding:12px 16px}.filter-bar .search-box{flex-basis:100%}.tabs{gap:20px;padding:0 18px}.tab{font-size:10px}.products{gap:12px}.product-image{height:130px}.product-info{padding:13px}.product-info h3{font-size:11px}.price{font-size:14px}.product-bottom{align-items:flex-start;gap:10px;flex-direction:column}.product-bottom .btn{width:100%}.footer{line-height:1.8;gap:15px}.modal-backdrop{padding:12px}.modal-body{padding:18px}.modal-head{padding:18px}.form-grid{grid-template-columns:1fr}.detail-meta{grid-template-columns:1fr 1fr}.selection-bar{flex-wrap:wrap}.totals{flex-wrap:wrap;gap:15px}.totals strong{font-size:21px}#toast{left:50%}.timeline-step{padding:12px 8px;font-size:10px}.timeline-step small{font-size:8px}.form-field.full{grid-column:auto}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* The document itself has the same A4 geometry on screen and on paper. */
.document-modal{width:960px!important;background:#edf0f2;border-radius:10px}
.document-modal .modal-head{background:white;position:sticky;top:0;z-index:3;padding:18px 25px}
.document-modal .modal-body{padding:0}
.document-modal .modal-actions{position:sticky;bottom:0;z-index:3;background:#fff;border-top:1px solid #d9dddf;flex-wrap:wrap}
.paper-workspace{padding:22px 24px 30px;overflow-x:auto}
.paper-preview-label{display:flex;justify-content:space-between;align-items:center;max-width:210mm;margin:0 auto 15px;color:#7b8389;font-size:11px;gap:15px}
.paper-preview-label>span:first-child{display:flex;align-items:center;gap:7px;color:#525e64}
.paper-preview-label .icon{width:15px;height:15px}
.paper-sheet{width:210mm;min-height:297mm;padding:14mm 14mm 11mm;margin:0 auto 22px;background:#fff;color:#191919;box-shadow:0 2px 12px #1c273323;font-family:'Noto Sans KR','Apple SD Gothic Neo',sans-serif;display:flex;flex-direction:column;font-size:10px;line-height:1.65;box-sizing:border-box}
.paper-sheet:last-child{margin-bottom:0}
.paper-topline{display:flex;align-items:center;gap:12px;border-bottom:2px solid #242424;padding-bottom:9px;font-size:9px;color:#555}
.paper-topline b{font-size:23px;letter-spacing:-1.4px;color:#222;line-height:1}
.paper-topline span:last-child{margin-left:auto;font-weight:700;color:#222;font-size:12px}
.paper-title-row{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:24px 0 23px}
.paper-kicker{font-size:8px;letter-spacing:1.5px;color:#777;margin:0 0 7px}
.paper-title-row h1{font-size:29px;font-weight:750;letter-spacing:7px;margin:0;color:#111}
.paper-title-row h1 small{font-size:17px;letter-spacing:2px}
.paper-number{font-size:9px;color:#555;margin:10px 0 0;letter-spacing:.25px}
.paper-sheet table{border-collapse:collapse;width:100%;table-layout:fixed;white-space:normal;font-size:10px;line-height:1.55;text-align:left;border:1px solid #555}
.paper-sheet table th,.paper-sheet table td{border:1px solid #888;padding:6px 8px;height:auto;color:#222;overflow-wrap:anywhere;vertical-align:middle;font-size:10px}
.paper-sheet table th{background:#f1f1f1;font-weight:600;text-align:center}
.paper-sheet table tr:last-child td{border-bottom:1px solid #888}
.paper-sheet .paper-approval{width:224px;flex-shrink:0;font-size:9px}
.paper-sheet .paper-approval th,.paper-sheet .paper-approval td{font-size:9px;text-align:center;padding:4px;line-height:1.3}
.paper-sheet .paper-approval .approval-label{width:24px;background:white;line-height:2}
.paper-sheet .paper-approval tr:nth-child(2) td{height:47px}
.paper-sheet .paper-approval tr:nth-child(3) td{height:18px;color:#888;font-size:8px}
.paper-meta td{min-height:30px}
.paper-section-label{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#222;margin:22px 0 8px}
.paper-section-label span{font-size:8px;color:#666;font-weight:400}
.paper-sheet .paper-items thead th{height:30px;padding:5px 3px;font-size:9px}
.paper-sheet .paper-items tbody td{height:10mm;padding:5px 5px;font-size:9px}
.paper-items small{display:block;font-size:8px;color:#666;line-height:1.5;margin-top:2px;font-weight:400}
.paper-items b{font-size:10px;font-weight:550}
.paper-sheet .center{text-align:center}
.paper-sheet .number{text-align:right;font-variant-numeric:tabular-nums}
.paper-sheet .paper-items .paper-blank td{color:#999;font-size:8px}
.paper-sheet .paper-items tfoot th,.paper-sheet .paper-items tfoot td{height:34px;border-top:2px solid #555;font-weight:700;font-size:11px;background:#f4f4f4}
.paper-items tfoot th span{font-size:9px;font-weight:400;margin-left:8px}
.paper-sheet .paper-notes{margin-top:14px}
.paper-sheet .paper-notes th{width:15%;font-size:9px}
.paper-sheet .paper-notes td{white-space:pre-wrap;font-size:9px;padding:9px}
.paper-declaration{text-align:center;padding:16px 0 10px;font-size:12px;font-weight:500}
.paper-declaration>div{font-size:10px;margin:9px 0 17px;font-weight:400;letter-spacing:1px}
.paper-declaration p{font-size:10px;text-align:right;font-weight:400;margin:0}
.paper-declaration p span{display:block;margin-top:9px}
.paper-footer{margin-top:auto;padding-top:12px;border-top:1px solid #888;display:flex;justify-content:space-between;font-size:8px;color:#777;gap:12px}
.paper-appendix{font-size:12px;line-height:2;white-space:pre-wrap;overflow-wrap:anywhere;padding:18px;border:1px solid #888}
.document-tools{padding:4px 28px 23px;background:white;border-top:1px solid #dce0e2}
.document-tools .filter-bar{padding:15px 0 0}
.document-tools .timeline{margin-top:20px}
@media(max-width:700px){.document-modal{max-height:95vh}.document-modal .modal-head{padding:15px}.document-modal .modal-actions{padding:12px;gap:6px}.document-modal .modal-actions .btn{font-size:10px;padding:0 9px}.paper-workspace{padding:16px 12px 22px}.paper-preview-label{min-width:210mm}.document-tools{padding:10px 16px 20px}}
@page{size:A4 portrait;margin:0}
@media print{
 html,body{margin:0!important;padding:0!important;width:auto!important;height:auto!important;overflow:visible!important;background:white!important}
 body:has(.document-modal)>#app,body:has(.document-modal)>#toast{display:none!important}
 #modal-root,.modal-backdrop,.document-modal,.document-modal .modal-body,.paper-workspace{display:block!important;position:static!important;width:auto!important;max-width:none!important;height:auto!important;max-height:none!important;overflow:visible!important;margin:0!important;padding:0!important;background:white!important;border:0!important;border-radius:0!important;box-shadow:none!important;backdrop-filter:none!important}
 .document-modal>.modal-head,.document-modal>.modal-actions,.document-tools,.paper-preview-label{display:none!important}
 .paper-sheet{width:210mm!important;min-height:296.5mm!important;margin:0!important;box-shadow:none!important;break-after:page;page-break-after:always;print-color-adjust:exact;-webkit-print-color-adjust:exact}
 .paper-sheet:last-child{break-after:auto;page-break-after:auto}
 .paper-sheet tr,.paper-title-row,.paper-declaration,.paper-footer{break-inside:avoid;page-break-inside:avoid}
 .paper-sheet thead{display:table-header-group}
 .paper-sheet tfoot{display:table-row-group}
}
.login-page{min-height:100vh;display:grid;place-items:center;padding:25px;background:radial-gradient(ellipse at 20% 10%,#e1ebdf,transparent 60%),#eef2ef}.login-card{width:420px;max-width:100%;background:white;border:1px solid #dfe6de;border-radius:14px;padding:40px;box-shadow:0 15px 60px #213c2210}.login-brand{font-weight:900;font-size:35px;letter-spacing:-2px;color:#185c46;margin-bottom:42px}.login-brand span{display:block;font-size:11px;font-weight:500;letter-spacing:0;margin-top:4px;color:#7e8e80}.login-card h1{font-size:23px;letter-spacing:-1px;margin:12px 0}.login-card>p{font-size:11px;color:#80917f;line-height:1.8;margin-bottom:28px}.login-card form .btn{width:100%;height:44px}.login-card input{height:44px}.login-card>small{display:block;font-size:10px;color:#99a398;line-height:1.8;margin-top:30px}#login-error{color:#b44b40;font-size:11px;min-height:15px}.sync-error{position:fixed;bottom:0;left:0;right:0;z-index:300;background:#fff2dd;color:#7a5020;padding:12px 24px;display:flex;gap:18px;align-items:center;justify-content:center;font-size:12px}@media print{.sync-error{display:none!important}}
/* Compact line spacing preserves room for handwritten confirmation on review copies. */
.paper-sheet .paper-items tbody td{line-height:1.35}
.paper-items small{font-size:7.5px;line-height:1.35;margin-top:1px}
.paper-items b{font-size:9px;line-height:1.35}
