:root{--ink:#213c35;--muted:#738179;--green:#235547;--pale:#eaf0eb;--line:#e1e6df;--bg:#f5f6f1;--white:#fff;--amber:#a46b17;--red:#aa4338}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:16px;line-height:1.55}a{color:var(--green);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}.sidebar{width:232px;background:#edf1e9;border-right:1px solid var(--line);position:fixed;inset:0 auto 0 0;padding:36px 22px;display:flex;flex-direction:column;z-index:2}.brand{display:flex;align-items:center;font-size:31px;font-weight:760;letter-spacing:-1.4px;gap:9px}.brand:hover{text-decoration:none}.brand-dot{color:#79977b;margin-left:-8px}.brand-icon{display:grid;place-items:center;background:var(--green);color:#fff;width:36px;height:39px;font-size:24px;letter-spacing:0;border-radius:9px}.sidebar-caption{font-size:11px;letter-spacing:1.8px;margin:19px 0 42px;color:#7b887e}nav{display:grid;gap:8px}.nav-item{padding:11px 13px;border-radius:8px;display:flex;align-items:center;gap:12px;color:#637268;font-size:15px}.nav-item span{font-size:22px;line-height:1}.nav-item.active,.nav-item:hover{background:#dce6db;color:#254c3d;text-decoration:none;font-weight:600}.sidebar-bottom{margin-top:auto;color:#63766a;font-size:14px}.local-note{padding:18px 4px;border-bottom:1px solid #dce3d8;margin-bottom:22px}.local-note small{display:block;margin:5px 0 0 13px;font-size:12px}.status-dot,.amber-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#508164;margin-right:5px}.user{display:flex;gap:10px;align-items:center}.avatar{width:32px;height:32px;border-radius:50%;background:#d8e2d4;display:grid;place-items:center}.user strong{font-weight:600}.text-button{padding:0;border:0;background:none;color:#7c8076;font-size:13px}.text-button:hover{text-decoration:underline}.main{margin-left:232px;min-height:100vh;display:flex;flex-direction:column}.topbar{height:66px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 46px;color:#859185;font-size:13px}.version{font-size:11px;letter-spacing:1.8px}.content{padding:36px 46px;max-width:1640px;width:100%;margin:auto;flex:1}.heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:32px}.eyebrow{font-size:12px;letter-spacing:1.8px;font-weight:600;color:#849280;margin:0 0 6px}h1{font-size:36px;letter-spacing:-1.3px;line-height:1.2;margin:0 0 12px;font-weight:640}h2{font-size:18px;margin:0;font-weight:600;letter-spacing:-.2px}h3{font-size:17px;font-weight:600}p{margin:8px 0 14px}.lead{color:var(--muted);font-size:15px;margin-bottom:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 19px;border:1px solid var(--green);border-radius:6px;color:#fff;background:var(--green);font-size:14px;font-weight:600;white-space:nowrap;cursor:pointer}.button:hover{background:#193e34;text-decoration:none}.button.secondary{color:var(--green);background:transparent;border-color:#d1dbce}.button.secondary:hover{background:#eaf0e7}.button.small{padding:8px 13px;font-size:13px}.button:disabled{opacity:.4;cursor:not-allowed}.full{width:100%}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:0 0 30px}.stat{border:1px solid var(--line);border-radius:8px;background:#fcfdf9;padding:22px 25px;display:flex;flex-direction:column}.stat>span{font-size:14px;color:#6c7d70}.stat strong{font-size:37px;line-height:1.6;font-weight:500;letter-spacing:-1.6px}.stat small{font-size:12px;color:#929e90}.amber-dot{background:#ca9a49;width:7px;height:7px;margin-left:12px;vertical-align:middle}.card{background:#fff;border:1px solid var(--line);border-radius:9px;overflow:hidden}.card-top{padding:21px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.search{display:flex;gap:7px}.search input{width:200px;font-size:13px;padding:8px 10px}.tabs{display:flex;gap:25px;padding:0 24px;border-bottom:1px solid var(--line)}.tabs a{font-size:13px;color:#889385;padding:0 0 13px;border-bottom:2px solid transparent}.tabs .selected{border-bottom-color:#547258;color:#315d46}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:14px}th{font-size:12px;letter-spacing:.2px;font-weight:500;color:#85907f;background:#fafbf7;white-space:nowrap}td,th{padding:16px 19px;border-bottom:1px solid #eef0ea;vertical-align:middle}th:first-child,td:first-child{padding-left:24px}td input[type=checkbox]{width:14px;height:14px}.file-name{display:flex;align-items:center;gap:12px;font-weight:550;color:#374c3b;overflow-wrap:anywhere}.file-name small{font-weight:400;display:block;font-size:11px;color:#98a190;margin-top:4px}.pdf-icon{background:#f5f0e4;color:#968364;padding:11px 6px;font-size:10px;font-weight:650;border-radius:4px;flex-shrink:0}.badge{font-size:12px;border-radius:5px;padding:5px 8px;display:inline-block;white-space:nowrap;background:#eef0eb;color:#778072}.badge.review{background:#fcf2dd;color:#a17c36}.badge.ready{background:#eaf2e6;color:#527543}.badge.failed{background:#faebe6;color:#a24d3b}.badge.processing,.badge.queued{background:#eaf0f4;color:#5d7a8c}.arrow-link{font-size:21px;color:#759175}.table-footer{padding:17px 24px;display:flex;gap:20px;align-items:center;justify-content:space-between}.muted{color:var(--muted);font-size:14px}.info-strip{display:flex;gap:20px;align-items:center;border:1px dashed #d3decf;border-radius:8px;padding:21px 24px;margin:22px 0}.info-strip>span{font-size:30px;color:#7a9174}.info-strip strong{font-size:14px;font-weight:500}.info-strip p{font-size:13px;color:#8d9987;margin:3px 0 0}.info-strip a{margin-left:auto;font-size:12px;white-space:nowrap}.empty{text-align:center;padding:52px 24px}.empty-symbol{display:inline-grid;place-items:center;border-radius:12px;background:#eff3eb;color:#8da183;font-size:33px;width:62px;height:62px;margin-bottom:15px}.empty p{color:#92a08b;font-size:14px;margin-bottom:23px}.pagination{display:flex;justify-content:center;gap:20px;font-size:14px;padding:18px}.back{font-size:13px;display:block;margin-bottom:21px;color:#809077}.upload-layout{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:30px}.form-card{padding:28px}.dropzone{border:1.5px dashed #bcccb6;border-radius:8px;background:#f8faf5;text-align:center;padding:29px 18px;margin-bottom:28px}.dropzone.dragging{background:#e3eddb;border-color:#688758}.dropzone p{font-size:14px;color:#8a9881}.dropzone input{max-width:100%;background:transparent;border:0;font-size:14px}.dropzone small{display:block;color:#929d88;font-size:12px;margin-top:13px}.upload-symbol{font-size:37px;color:#7c9871;display:block;margin-bottom:10px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:20px}.field label,label{display:block;font-size:14px;font-weight:500;margin-bottom:7px}.field small,.helptext{display:block;font-size:12px;color:#8b9882;margin-top:6px}.span-two{grid-column:1/-1}input:not([type=checkbox]),select,textarea{width:100%;padding:10px 11px;border:1px solid #dbe2d4;border-radius:5px;background:#fff;color:#3e5239;min-height:39px}input[type=checkbox]{accent-color:#386037;width:16px;height:16px;flex-shrink:0}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid #a8bea0;border-color:#6c8e60}.form-actions{display:flex;justify-content:flex-end;align-items:center;gap:25px;margin-top:28px;border-top:1px solid var(--line);padding-top:23px;font-size:14px}.upload-guide{padding:6px 0}.upload-guide h3{font-size:14px}.steps{padding:0 0 0 25px;counter-reset:steps;list-style:none}.steps li{position:relative;margin:25px 0 29px}.steps li:before{counter-increment:steps;content:counter(steps);position:absolute;left:-26px;top:1px;color:#8b9b7d;font-size:13px}.steps strong{font-size:14px;font-weight:500}.steps p{font-size:13px;color:#89987d;line-height:1.8}.soft-note{font-size:13px;color:#849478;line-height:1.8;border-top:1px solid #dce5d4;padding-top:18px}.message{border:1px solid #d7e3d0;border-radius:7px;padding:14px 18px;margin-bottom:20px;font-size:14px;background:#eff5e9}.message.error{background:#fff1ea;color:#975d43;border-color:#ecd8ca}.errorlist{list-style:none;padding:0;color:#b75338;font-size:13px}.notice{background:#fcf9ed;border:1px solid #ece3c8;border-radius:7px;padding:13px 18px;margin-bottom:24px;font-size:14px;color:#9a8050}.notice ul{margin-bottom:0;padding-left:20px}.notice li{margin:8px 0}summary{cursor:pointer;font-size:14px;font-weight:500}.review-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:20px 0;font-size:14px}.actions{display:flex;gap:13px;align-items:center;font-size:14px}.review-toolbar .badge{margin-left:10px}.right{text-align:right;font-variant-numeric:tabular-nums}.negative{color:#ac6552}.description{max-width:420px;min-width:240px}.description strong,.description small{display:block;font-size:12px;color:#8e9b82}.description strong{font-weight:500;color:#69855e;margin-bottom:3px}.description .error-text{color:#ae6545}.incomplete{background:#fffbf1}.excluded{opacity:.47}.row-actions{display:flex;gap:10px;align-items:center;font-size:13px;white-space:nowrap}.confirm-box{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:22px;padding:23px;background:#eaf1e3;border:1px solid #d6e2cd;border-radius:8px}.confirm-box h3{margin:0 0 10px}.checkbox-label{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:#778b67;max-width:620px;font-weight:400}.source-tables{margin-top:20px;padding:18px 23px}.table-options{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}.table-options a{display:grid;gap:7px;background:#f8faf5;border:1px solid #e0e8d9;padding:14px;border-radius:5px}.table-options strong{font-size:13px}.table-options small,.table-options span{font-size:12px}.original{margin-top:30px}.pdf-preview{display:block;width:100%;height:auto;border-top:1px solid #e5ebdf;background:#f4f6f0}.original>img{max-height:1000px;object-fit:contain}.raw-text{padding:17px 22px}.raw-text pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;max-height:350px;overflow:auto;background:#f7f9f3;padding:14px}.raw-text details{margin-top:12px}.raw-text dt{font-size:12px;color:#859875}.raw-text dd{font-size:13px;margin:2px 0 10px}.edit-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.comparison .card-top{padding:15px}.comparison h2{font-size:14px}.comparison a{font-size:13px}.edit-layout .raw-text{margin-top:15px}.mapping-form{margin-top:24px}.card.processing{text-align:center;padding:50px}.processing p{color:#7f9370;font-size:15px}.processing small{color:#8ca07d}.spinner{width:30px;height:30px;border:3px solid #dce7d4;border-top-color:#558041;border-radius:50%;display:block;margin:0 auto 22px;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-wrap{max-width:570px;margin:25px auto}.auth-wrap h1{font-size:44px;line-height:1.25}.auth-card{margin-top:30px;padding:30px}.auth-card h2{margin-bottom:22px}.auth-card label{margin-top:16px}.auth-card ul{font-size:12px;color:#889b79;padding-left:18px}.auth-card .errorlist{color:var(--red)}.auth-card button{margin-top:10px}.auth-card>p{font-size:13px;margin-top:20px}footer{padding:10px 46px 22px;color:#a2ad98;font-size:11px}.filename-title{overflow-wrap:anywhere}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#file-list{color:#4e7440;font-size:13px;margin-top:12px;overflow-wrap:anywhere}
@media(max-width:1100px){.sidebar{width:195px;padding:30px 16px}.main{margin-left:195px}.content{padding:30px 26px}.topbar{padding:0 26px}.upload-layout{grid-template-columns:1fr}.upload-guide{max-width:550px}.edit-layout{grid-template-columns:1fr}.info-strip{flex-wrap:wrap}.info-strip a{margin-left:48px}.table-options{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.sidebar{position:static;width:auto;padding:14px 20px;flex-direction:row;align-items:center;gap:20px}.brand{font-size:25px}.brand-icon{width:29px;height:31px;font-size:20px}.sidebar-caption,.sidebar-bottom{display:none}nav{display:flex;margin-left:auto}.nav-item{padding:8px;font-size:0}.nav-item span{font-size:24px}.main{margin-left:0}.topbar{height:44px;padding:0 20px}.content{padding:25px 17px}.heading{align-items:flex-start;flex-direction:column;gap:18px}h1{font-size:31px}.stats{gap:8px}.stat{padding:13px}.stat>span{font-size:12px}.stat small{display:none}.stat strong{font-size:29px}.card-top{padding:16px;flex-wrap:wrap}.search{width:100%}.search input{flex:1;width:auto}.tabs{gap:17px;padding:0 16px}.table-footer,.confirm-box,.review-toolbar{align-items:flex-start;flex-direction:column}.form-card{padding:20px}.form-grid{grid-template-columns:1fr}.span-two{grid-column:auto}.auth-wrap h1{font-size:34px}.table-options{grid-template-columns:1fr}.actions{flex-wrap:wrap}.info-strip{padding:17px}.info-strip a{margin-left:0}.stat .amber-dot{display:none}}

.client-search{margin-bottom:24px}.client-folder{padding:0;margin-bottom:16px;overflow:hidden}.client-summary{display:flex;align-items:center;gap:16px;padding:24px;cursor:pointer;list-style:none}.client-summary::-webkit-details-marker{display:none}.client-summary:focus-visible{outline:2px solid #214e45;outline-offset:-4px}.client-chevron{font-size:34px;transition:transform .15s}.client-folder[open]>.client-summary .client-chevron{transform:rotate(90deg)}.client-name{display:flex;flex:1;flex-direction:column;gap:6px}.client-name strong{font-size:21px}.client-name small{color:#697b73}.client-content{border-top:1px solid #e1e7df;padding:0 24px 20px}.client-tools{display:flex;align-items:center;gap:24px;padding:20px 0;flex-wrap:wrap}.client-rename summary{cursor:pointer;color:#526f60}.client-rename form{margin-top:12px}.client-folder .table-footer{flex-wrap:wrap;gap:12px}.client-folder td small{display:block;color:#7a877e;margin-top:6px}@media(max-width:700px){.client-summary{padding:18px}.client-summary>.muted{display:none}.client-content{padding:0 12px 16px}}
