:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#14251e;background:#f3f7f5;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}.topbar{height:76px;background:#fff;border-bottom:1px solid #dfe9e4;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1200px)/2));position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:18px}.brand img{width:118px;height:42px;object-fit:contain}.brand div{display:flex;flex-direction:column;border-left:1px solid #d9e5df;padding-left:18px}.brand span{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#5d7469}.brand strong{font-size:14px;color:#143a2b}button,input,select{font:inherit}.ghost,.primary{border-radius:9px;padding:11px 17px;font-weight:700;cursor:pointer}.ghost{background:#fff;border:1px solid #cbdad3;color:#194d39}.primary{background:#08754d;border:1px solid #08754d;color:#fff;box-shadow:0 5px 15px #08754d2e}main{max-width:1200px;margin:auto;padding:36px 24px 70px}.hero{border-radius:20px;color:#fff;padding:38px 42px;display:flex;align-items:center;justify-content:space-between;gap:40px;background:linear-gradient(120deg,#063b2b,#08754d 70%,#11915f);box-shadow:0 16px 35px #034a3126}.hero h1{font-size:32px;line-height:1.15;margin:4px 0 12px;max-width:670px}.hero p{margin:0;color:#d6ede3;max-width:700px;line-height:1.55}.eyebrow{text-transform:uppercase!important;letter-spacing:.15em!important;font-size:11px!important;font-weight:800!important;color:#4c806a!important}.hero .eyebrow{color:#a4dec5!important}.hero-badge{min-width:220px;background:#ffffff1f;border:1px solid rgba(255,255,255,.22);border-radius:15px;padding:21px}.hero-badge span,.hero-badge small{display:block;color:#cfe8dd}.hero-badge strong{display:block;font-size:27px;margin:7px 0}.upload-panel{margin:22px 0;min-height:118px;background:#fff;border:2px dashed #9fc9b6;border-radius:16px;padding:24px 28px;display:flex;align-items:center;gap:18px;transition:.2s}.upload-panel.dragging{border-color:#08754d;background:#effaf5;transform:translateY(-2px)}.upload-icon{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;background:#e4f4ec;color:#08754d;font-size:27px;font-weight:700}.upload-panel div:nth-child(3){flex:1}.upload-panel p{margin:4px 0 0;color:#71847b;font-size:14px}.message{padding:13px 16px;border-radius:10px;margin:-8px 0 18px;font-size:14px}.message.success{background:#e5f6ed;color:#075d3d}.message.error{background:#fff1ef;color:#9e3024}.status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.status-card{position:relative;display:flex;align-items:center;gap:14px;background:#fff;padding:18px;border:1px solid #e0eae5;border-radius:14px;min-height:101px}.status-icon{width:42px;height:42px;flex:0 0 42px;border-radius:50%;display:grid;place-items:center;background:#edf3f0;color:#668076;font-size:12px;font-weight:900}.status-card.ready .status-icon{background:#dff4e8;color:#08754d}.status-card div:nth-child(2){display:flex;flex-direction:column}.status-card span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#71847b;font-weight:700}.status-card strong{font-size:20px;margin:4px 0}.status-card small{color:#75887f}.remove{position:absolute;right:9px;top:8px;border:0;background:transparent;color:#9aaba3;font-size:20px;cursor:pointer}.tabs{display:flex;gap:6px;margin-top:28px;border-bottom:1px solid #d9e5df}.tabs button{border:0;background:transparent;padding:14px 18px;font-weight:700;color:#62776d;border-bottom:3px solid transparent;cursor:pointer}.tabs button.active{color:#08754d;border-color:#08754d}#content{background:#fff;border:1px solid #e0eae5;border-radius:0 0 16px 16px;padding:28px;min-height:300px}.content-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.content-head h2,.dialog-head h2{margin:3px 0 0;font-size:24px}.content-head .eyebrow,.dialog-head .eyebrow{margin:0}.actions{display:flex;gap:10px}.table-wrap{border:1px solid #e0eae5;border-radius:12px;overflow:auto}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;background:#f3f7f5;color:#536c61;font-size:12px;text-transform:uppercase;letter-spacing:.05em}th,td{padding:15px;border-bottom:1px solid #e5ece8;vertical-align:top}td small{display:block;color:#74867e;margin-top:5px;max-width:630px;line-height:1.4}tfoot td{background:#eaf5f0;font-weight:800;font-size:16px;border:0}tfoot td:last-child{color:#076a46;font-size:19px}.descriptions{margin-top:20px;padding:20px;background:#f5f8f7;border-radius:12px}.descriptions h3{margin:0 0 10px}.descriptions p{margin:8px 0;line-height:1.5}.notice{display:flex;gap:12px;padding:15px 17px;background:#fff8e6;border:1px solid #f0d798;border-radius:10px;margin-bottom:18px;color:#694e0c}.notice span{font-size:14px}.empty-state{text-align:center;padding:55px 20px;color:#6c8077}.empty-state h2{color:#173c2d}.empty-art{font-size:45px;color:#94b9a8}.audit-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:16px}.audit-summary>div,.reason-grid>div{background:#f4f8f6;border-radius:12px;padding:17px}.audit-summary span,.reason-grid span{display:block;color:#6d8178;font-size:13px}.audit-summary strong{display:block;font-size:25px;color:#075d3d;margin-top:5px}.reason-grid{display:flex;gap:12px;margin-bottom:22px}.reason-grid>div{min-width:190px}.reason-grid strong{font-size:19px;margin-right:8px}.file-chip{background:#eaf5f0;color:#08754d;padding:9px 12px;border-radius:30px;font-size:12px;font-weight:800}.filters{display:flex;gap:14px;margin:18px 0}.filters label{display:flex;flex-direction:column;gap:6px;color:#567065;font-size:12px;font-weight:700}.filters label:first-child{flex:1}.filters input,.filters select{border:1px solid #ccdcd4;border-radius:8px;padding:10px;background:#fff}.audit-table{max-height:480px}.audit-table thead{position:sticky;top:0;z-index:1}.pill{display:inline-block;border-radius:30px;padding:5px 9px!important;font-size:11px!important;font-weight:800}.pill.included{background:#ddf3e7;color:#08754d}.pill.excluded{background:#fde6e2;color:#a23b2d}.warning-text{color:#936500!important}.dialog-card{width:min(650px,calc(100vw - 30px));padding:0;border:0}dialog{border:0;border-radius:17px;padding:0;box-shadow:0 24px 70px #0000003d}dialog::backdrop{background:#0521178c}.dialog-head{display:flex;align-items:center;justify-content:space-between;padding:24px 26px 18px;border-bottom:1px solid #e2ebe7}.icon-btn{border:0;background:#eef4f1;border-radius:50%;width:36px;height:36px;font-size:22px;cursor:pointer}.rule-list{display:grid;gap:13px;padding:22px 26px}.rule-list label{display:grid;grid-template-columns:1fr 1.4fr 140px;align-items:center;gap:12px}.rule-list label>span{font-weight:800}.rule-list small{color:#6e8178}.input-suffix,.input-prefix{display:flex;border:1px solid #cbdad3;border-radius:8px;overflow:hidden;align-items:center}.input-suffix input,.input-prefix input{width:100%;border:0;padding:9px}.input-suffix b,.input-prefix b{padding:9px;background:#edf4f1;color:#4e6c5f}.rule-notes{margin:0 26px;padding:16px;background:#f4f8f6;border-radius:10px;font-size:13px;color:#4f665c}.rule-notes ul{padding-left:18px;margin:8px 0 0;line-height:1.55}.dialog-actions{display:flex;justify-content:space-between;padding:20px 26px}.dialog-actions button{min-width:150px}@media(max-width:850px){.topbar{padding:0 16px}.brand div{display:none}.hero{padding:28px;align-items:flex-start;flex-direction:column}.hero-badge{width:100%}.status-grid{grid-template-columns:1fr}.content-head{align-items:flex-start;flex-direction:column}.actions{width:100%;flex-wrap:wrap}.audit-summary,.rule-list label{grid-template-columns:1fr}.upload-panel{align-items:flex-start;flex-wrap:wrap}.upload-panel div:nth-child(3){min-width:220px}.tabs{overflow:auto}}@media print{.topbar,.upload-panel,#messages,.status-grid,.tabs,.actions,.filters,.remove{display:none!important}body{background:#fff}main{padding:0}.hero{color:#111;background:#fff;box-shadow:none;padding:10px 0 25px}.hero p,.hero .eyebrow,.hero-badge span,.hero-badge small{color:#555!important}.hero-badge{border:1px solid #aaa;background:#fff}#content{border:0;padding:0}.audit-table{max-height:none}}
