:root{font-family:Inter,ui-sans-serif,system-ui;color:#202223;background:#f6f6f7}*{box-sizing:border-box}body{margin:0}main{max-width:1080px;margin:auto;padding:32px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}h1{font-size:32px;margin:4px 0}h2{font-size:17px;margin:0 0 12px}.eyebrow{font-weight:800;letter-spacing:.13em;color:#6d28d9}.safe{background:#e3f1df;color:#1f6f35;padding:8px 12px;border-radius:20px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.steps article,section:not(.steps){background:white;border:1px solid #e1e3e5;border-radius:14px;padding:20px;margin-bottom:18px;box-shadow:0 1px 2px #0000000a}.steps article{display:flex;gap:14px}.steps article>b{display:grid;place-items:center;min-width:34px;height:34px;border-radius:50%;background:#6d28d9;color:white}.rate{font-size:30px;font-weight:800}.rate small{display:block;font-size:12px;font-weight:500;color:#6d7175}.template-link{display:inline-block;margin:0 0 12px;padding:8px 11px;border-radius:8px;background:#e3f1df;color:#155724;font-size:13px;font-weight:700;text-decoration:none}.template-link:hover{text-decoration:underline}#file{display:block;max-width:100%;margin-top:2px}.hint{font-size:12px;color:#6d7175;margin:8px 0 0}.primary,.danger,.undo,.secondary{border:0;border-radius:9px;padding:12px 18px;font-weight:700;cursor:pointer}.primary{background:#303030;color:white}.danger{background:#6d28d9;color:white}.secondary{background:#e7e3da;color:#202223}.undo{padding:7px 10px;background:#fee2e2;color:#991b1b}.stats{display:flex;gap:12px;flex-wrap:wrap}.stat{background:#f4f5f7;padding:12px;border-radius:10px;min-width:140px}.stat b{display:block;font-size:23px}.table{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;padding:10px;border-bottom:1px solid #eee}.actions{text-align:right;margin-top:16px}#msg{margin:16px 0}.error{color:#b42318;background:#fee4e2;padding:12px;border-radius:9px}.ok{color:#067647;background:#dcfae6;padding:12px;border-radius:9px}.history>div{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #eee;padding:11px 0}.modal{position:fixed;inset:0;z-index:1000;background:#0009;display:grid;place-items:center;padding:20px}.modal[hidden]{display:none}.modal-card{width:min(680px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:16px;padding:24px;box-shadow:0 24px 60px #0004}.warning-title{display:inline-block;margin-bottom:14px;padding:7px 10px;border-radius:8px;background:#fff3cd;color:#7a5200;font-weight:800}.compare{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.compare>div{padding:15px;border:1px solid #d8d2c4;border-radius:10px;background:#faf9f7}.compare small{display:block;color:#6d7175;margin-bottom:7px}.compare strong{display:block;overflow-wrap:anywhere}.warning-copy{padding:12px;border-left:4px solid #d99b00;background:#fff8e5;color:#594000}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}@media(max-width:800px){.steps{grid-template-columns:1fr}header{align-items:flex-start;gap:12px}main{padding:18px}.compare{grid-template-columns:1fr}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}}

.markup-field{margin-top:16px}.markup-field label{display:block;font-size:13px;margin-bottom:6px}.markup-field input{width:110px;max-width:100%;padding:8px;border:1px solid #babfc3;border-radius:6px}.steps article>div{min-width:0}#plan-markup{margin-bottom:12px}


.adjustment-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 0}.markup-field .adjustment-choice{display:flex;align-items:center;gap:7px;margin:0}.markup-field input[type=checkbox]{width:16px;height:16px;margin:0;flex-shrink:0;accent-color:#6d28d9}.markup-field input[type=number]{width:82px;flex-shrink:0}.adjustment-row.inactive{opacity:.45}.adjustment-row input:disabled{cursor:not-allowed;background:#f1f1f1}button:disabled{opacity:.45;cursor:not-allowed}#unmatched-result{margin-top:20px}#unmatched-result .hint{margin-bottom:10px}

.file-picker{position:relative;display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:4px}.file-picker #file{position:absolute;width:1px;height:1px;opacity:0;padding:0;margin:0}.file-button{display:inline-block;padding:8px 12px;border:1px solid #babfc3;border-radius:7px;background:#f6f6f7;font-size:13px;font-weight:600;cursor:pointer}.file-button:hover{background:#e9eaec}.file-picker:focus-within .file-button{outline:2px solid #6d28d9;outline-offset:2px}#file-name{font-size:12px;color:#6d7175;overflow-wrap:anywhere;max-width:100%}
