:root{--navy:#061326;--gold:#ffc319;--line:#dce5f0;--surface:#fff;--bg:#eef3f9;--text:#101b2d;--muted:#667389;--danger:#d93446}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:"Noto Sans Thai",sans-serif;letter-spacing:0}button,input,select,textarea{font:inherit}.appeal-header{min-height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 max(16px,calc((100% - 980px)/2));background:var(--navy);color:#fff}.appeal-header>a{color:#fff;text-decoration:none;font-size:23px;font-weight:800}.appeal-header>a b,.appeal-header>a span{color:var(--gold)}.appeal-header>div{display:flex;gap:8px}.appeal-header button,.appeal-header>div a{min-height:38px;display:grid;place-items:center;padding:0 14px;border:1px solid #637086;border-radius:6px;background:transparent;color:#fff;text-decoration:none}.appeal-shell{width:min(100% - 32px,980px);margin:28px auto 70px}.appeal-heading{text-align:center}.appeal-heading p,.appeal-heading h1{margin:0}.appeal-heading p{color:#8b6500;font-weight:700}.appeal-heading h1{font-size:32px}.appeal-heading span{color:var(--muted)}.appeal-stepper{display:grid;grid-template-columns:repeat(4,1fr);padding:0;margin:24px 0 16px;list-style:none}.appeal-stepper li{display:flex;align-items:center;justify-content:center;gap:8px;padding:11px 6px;border-bottom:3px solid #cad5e3;color:#748196}.appeal-stepper li.active{border-color:var(--gold);color:#624800}.appeal-stepper b{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#dfe7f1}.appeal-stepper .active b{background:var(--gold);color:#171100}#appeal-form{padding:25px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 15px 35px rgba(6,19,38,.08)}.appeal-step{display:grid;gap:18px}.appeal-step[hidden]{display:none}.step-title{padding-bottom:15px;border-bottom:1px solid var(--line)}.step-title>span{color:#8b6500;font-size:13px;font-weight:700}.step-title h2{margin:2px 0 0;font-size:22px}.step-title p{margin:3px 0 0;color:var(--muted);font-size:13px}.reason-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.reason-option{position:relative;min-height:152px;display:grid;align-content:start;gap:12px;padding:17px;border:1px solid var(--line);border-radius:7px;background:#f8faff;cursor:pointer}.reason-option input{position:absolute;opacity:0}.reason-number{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#e5ebf3;color:#4b5b72;font-weight:800}.reason-option strong,.reason-option small{display:block}.reason-option strong{font-size:14px;line-height:1.45}.reason-option small{margin-top:5px;color:var(--muted);font-size:11px;line-height:1.55}.reason-option i{position:absolute;top:14px;right:14px;width:24px;height:24px;display:none;place-items:center;border-radius:50%;background:#168a4f;color:#fff;font-style:normal}.reason-option:has(input:checked){border-color:#d69f00;background:#fff9e8;box-shadow:0 0 0 2px rgba(255,195,25,.18)}.reason-option:has(input:checked) .reason-number{background:var(--gold);color:#171100}.reason-option:has(input:checked) i{display:grid}label>span{display:block;margin-bottom:6px;font-size:13px;font-weight:700}em{color:var(--danger);font-style:normal;font-size:11px}input,select,textarea{width:100%;min-height:45px;padding:10px 12px;border:1px solid #c7d3e2;border-radius:6px;background:#fff;color:var(--text);outline:none}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:#d99c00;box-shadow:0 0 0 3px rgba(255,195,25,.2)}input[readonly]{background:#f1f4f8;color:#5f6d81}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}.report-lookup{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end}.report-lookup label>div{display:grid;grid-template-columns:auto 1fr;align-items:center;border:1px solid #c7d3e2;border-radius:6px;background:#fff}.report-lookup label>div span{padding-left:12px;font-weight:800}.report-lookup label>div input{border:0}.report-lookup button{min-height:45px;padding:0 18px;border:0;border-radius:6px;background:var(--gold);font-weight:800}.lookup-result{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #8cd2aa;border-radius:6px;background:#effbf4}.lookup-result strong{color:#16723f}.lookup-result span{color:#536176}.requirements-note{padding:13px 15px;border-left:4px solid var(--gold);background:#fff8e5;color:#664b00;font-size:13px}.appeal-uploads{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.appeal-upload{padding:14px;border:1px dashed #9aabc0;border-radius:7px;background:#f8faff}.appeal-upload.is-required{border-style:solid;border-color:#d5a400}.appeal-upload label>span{font-size:13px}.appeal-upload label>small{min-height:51px;display:block;color:var(--muted);font-size:10px;line-height:1.55}.appeal-upload input{margin-top:8px;padding:7px;background:#fff;font-size:11px}.appeal-file:empty{display:none}.appeal-file{position:relative;display:grid;grid-template-columns:52px 1fr 30px;gap:9px;align-items:center;margin-top:9px;padding:7px;border:1px solid var(--line);border-radius:5px;background:#fff}.appeal-file img{width:52px;height:52px;object-fit:cover;border-radius:4px}.appeal-file strong,.appeal-file small{display:block;overflow-wrap:anywhere}.appeal-file strong{font-size:10px}.appeal-file small{color:#16723f;font-size:9px}.appeal-file button{width:28px;height:28px;border:1px solid #efbdc5;border-radius:5px;background:#fff2f4;color:var(--danger)}.privacy-note{margin:0;color:var(--muted);font-size:11px}.character-count{display:block;margin-top:4px;color:var(--muted);text-align:right}.appeal-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:var(--line)}.appeal-summary div{padding:11px;background:#f8faff}.appeal-summary small,.appeal-summary strong{display:block}.appeal-summary small{color:var(--muted);font-size:10px}.appeal-summary strong{margin-top:2px;font-size:12px}.consent{display:flex;align-items:flex-start;gap:10px}.consent input{width:18px;min-height:18px;margin-top:3px}.consent span{margin:0;font-weight:500}.form-message{min-height:24px;margin-top:13px;color:var(--danger);font-weight:700}.form-nav{display:flex;justify-content:space-between;gap:12px;padding-top:15px;border-top:1px solid var(--line)}.form-nav button{min-height:44px;padding:0 21px;border-radius:6px;font-weight:800}.back-button{border:1px solid #bdc9d9;background:#fff}.next-button,.submit-button{margin-left:auto;border:0;background:var(--gold)}.form-nav button:disabled{opacity:.55}.appeal-success{text-align:center;padding:45px 14px}.appeal-success b{width:58px;height:58px;display:grid;place-items:center;margin:auto;border-radius:50%;background:#daf5e5;color:#168a4f;font-size:28px}.appeal-success h2{margin:15px 0 4px}.appeal-success p{color:var(--muted)}.appeal-success a{display:inline-block;margin-top:12px;padding:10px 18px;border-radius:6px;background:var(--gold);color:#171100;text-decoration:none;font-weight:800}body.dark-mode{--line:#2b3d55;--surface:#0d1b2f;--bg:#061326;--text:#f2f5fa;--muted:#aeb9ca}body.dark-mode #appeal-form,body.dark-mode input,body.dark-mode select,body.dark-mode textarea,body.dark-mode .report-lookup label>div,body.dark-mode .reason-option,body.dark-mode .appeal-upload,body.dark-mode .appeal-file,body.dark-mode .back-button{background:#0a1729;color:#f2f5fa;border-color:#3e5068}body.dark-mode input[readonly]{background:#12243b;color:#d5deeb}body.dark-mode .reason-option:has(input:checked){border-color:#d5a400;background:#201d12}body.dark-mode .lookup-result{border-color:#246b47;background:#102b20}body.dark-mode .requirements-note{background:#28230f;color:#ffe59b}body.dark-mode .appeal-summary div{background:#0a1729}@media(max-width:760px){.appeal-stepper li span{display:none}.reason-grid,.appeal-uploads{grid-template-columns:1fr}.reason-option{min-height:0;grid-template-columns:34px 1fr;align-items:start}.two-columns{grid-template-columns:1fr}.appeal-summary{grid-template-columns:1fr}.appeal-file{grid-template-columns:46px 1fr 30px}.appeal-file img{width:46px;height:46px}}@media(max-width:520px){.appeal-shell{width:min(100% - 24px,980px);margin-top:20px}.appeal-heading h1{font-size:27px}#appeal-form{padding:18px 14px}.appeal-header{padding:0 12px}.appeal-header>a{font-size:20px}.appeal-header>div a{display:none}.report-lookup{grid-template-columns:1fr}.report-lookup button{width:100%}.appeal-stepper{margin-top:18px}.appeal-stepper li{padding-inline:2px}}
.appeal-existing-mark{width:52px;height:52px;display:grid;place-items:center;border-radius:4px;background:#eaf3ff;color:#0c5fba;font-size:10px;font-weight:800;text-align:center;line-height:1.25}.appeal-preview-dialog{width:min(94vw,1040px);padding:46px 12px 12px;border:0;border-radius:8px;background:#071429}.appeal-preview-dialog::backdrop{background:rgba(0,0,0,.82)}.appeal-preview-dialog button{position:absolute;top:8px;right:10px;width:34px;height:34px;border:0;border-radius:6px;background:rgba(255,255,255,.1);color:#fff;font-size:25px;line-height:1;cursor:pointer}.appeal-preview-dialog img{display:block;max-width:100%;max-height:82vh;margin:auto;object-fit:contain}body.dark-mode .appeal-existing-mark{background:#102d50;color:#b8d8ff}
html,body{max-width:100%;overflow-x:hidden}.appeal-step,.lookup-result,.appeal-summary div{min-width:0;overflow-wrap:anywhere}@media(max-width:480px){.lookup-result{align-items:flex-start;flex-direction:column}.form-nav{flex-wrap:wrap}.form-nav button{min-width:0;flex:1 1 120px;padding-inline:12px}.appeal-header button{min-width:44px;padding-inline:10px}}
@media(max-width:760px){
  .reason-option small,em,.appeal-upload label>small,.appeal-upload input,
  .appeal-file strong,.appeal-file small,.privacy-note,.appeal-summary small,
  .appeal-existing-mark{font-size:12px}
}
