:root{font-family:Inter,"Segoe UI","Malgun Gothic",sans-serif;color:#24352f;background:#f5f6f0;font-synthesis:none;--accent:#285d48;--line:#d9dfd5}*{box-sizing:border-box}body{margin:0}header,main,footer{width:min(1200px,calc(100% - 48px));margin:auto}header{height:88px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.brand{font-weight:800;text-decoration:none;color:inherit;letter-spacing:1.5px}.brand span{color:#4c8868}.pill{font-size:11px;font-weight:700;letter-spacing:1.4px;border:1px solid var(--line);padding:7px 10px;border-radius:30px;white-space:nowrap}.intro{padding:42px 0 32px}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:700;color:#557162}h1{font-size:clamp(30px,4vw,49px);letter-spacing:-2px;line-height:1.22;margin:14px 0 20px}h1 span{color:#6b8b75}.intro>p:last-child{line-height:1.8;color:#5f6e64;font-size:14px}.workspace{display:grid;grid-template-columns:minmax(290px,.9fr) minmax(0,1.25fr);gap:22px}.panel{background:white;border:1px solid var(--line);padding:25px;border-radius:16px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:18px}h2{font-size:16px;margin:0;letter-spacing:-.4px}h2 b{font-size:11px;font-weight:500;color:#738c7a;margin-right:8px}.rule-title{margin-top:28px}.text-button{padding:0!important;background:none!important;color:#526b5b!important;font-size:12px!important;border:0!important}.drop{border:1px dashed #9daf9c;border-radius:10px;padding:22px 16px;background:#f7f9f3;display:flex;flex-direction:column;gap:9px;cursor:pointer}.drop strong{font-size:15px}.drop span{font-size:11px;color:#647767}input[type=file]{max-width:100%;font-size:12px}.muted{color:#6b786e;font-size:12px;line-height:1.8}.small{font-size:11px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{font-size:12px;font-weight:600;display:flex;flex-direction:column;gap:8px}input,textarea{width:100%;border:1px solid #cdd7ce;background:#fff;color:inherit;font:inherit;font-size:14px;padding:11px 12px;border-radius:7px}textarea{resize:vertical;line-height:1.6}input:focus,textarea:focus,button:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid #b5d5be;outline-offset:2px}.check{flex-direction:row;align-items:center;align-self:center;line-height:1.7}.check input{width:16px;height:16px;accent-color:var(--accent)}.number-box{background:#f6f8f3;padding:16px;border-radius:10px;margin-top:20px}.number-box>.check{margin-bottom:12px}.table-scroll{overflow:auto;max-height:480px}table{width:100%;border-collapse:collapse;text-align:left;table-layout:fixed}th{font-size:10px;letter-spacing:1px;color:#738477;border-bottom:1px solid var(--line);padding:12px 7px}td{font-size:12px;padding:16px 7px;vertical-align:top;border-bottom:1px solid #edf0e9;overflow-wrap:anywhere;line-height:1.65}td:first-child{color:#748174}.next-name{font-weight:650;color:#285d48}.row-error{display:block;color:#a13c2a;font-size:11px;margin-top:6px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}button{border:1px solid var(--accent);border-radius:7px;background:var(--accent);color:#fff;padding:12px 16px;cursor:pointer;font:inherit;font-size:12px;font-weight:650}button.secondary{background:white;color:var(--accent)}button:disabled{opacity:.4;cursor:not-allowed}details{font-size:12px;line-height:1.8;margin:16px 0}summary{cursor:pointer;color:#58715f}details button{margin-top:10px}.notes{border-top:1px solid var(--line);padding-top:22px;margin-top:30px;color:#637467}.notes a{color:var(--accent)}#status{padding:12px 14px;background:#edf4e9;color:#355a3c;border-radius:8px;font-size:12px;line-height:1.7;margin-bottom:12px}#status.error{background:#fff1e9;color:#963f29}footer{padding:27px 0 30px;display:flex;justify-content:space-between;font-size:11px;color:#788477}footer a{color:#7e827c;text-decoration:none}@media(max-width:760px){header,main,footer{width:calc(100% - 28px)}header{height:70px}.intro{padding-top:27px}.workspace{grid-template-columns:1fr}.panel{padding:18px}h1{letter-spacing:-1.2px}.grid{gap:12px}.pill{font-size:9px}.preview{min-height:320px}footer{gap:18px}}
:root .languages{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;font-size:11px}.languages a{color:#627568;text-decoration:none}.languages a[aria-current]{color:#244d38;font-weight:bold;text-decoration:underline}@media(max-width:480px){header{gap:16px}.brand{font-size:12px}.languages{max-width:220px;gap:5px 10px!important;font-size:10px!important}}
