*{box-sizing:border-box;margin:0;padding:0}:root{--line-green: #06C755;--line-green-dark: #05a847;--text-primary: #111;--text-secondary: #555;--bg: #f7f7f7;--card-bg: #fff;--border: #ddd;--error: #d32f2f;--warning: #e65100;--radius: 8px;--shadow: 0 1px 4px rgba(0, 0, 0, .12)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Noto Sans Thai,Arial,sans-serif;background:var(--bg);color:var(--text-primary);font-size:15px;line-height:1.5;min-height:100vh}#app{max-width:480px;margin:0 auto;padding:16px}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:16px;color:var(--text-secondary)}.spinner{width:36px;height:36px;border:3px solid var(--border);border-top-color:var(--line-green);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.card{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px;margin-bottom:16px}.form-group{margin-bottom:16px}label{display:block;font-weight:600;margin-bottom:6px;font-size:14px}.label-required:after{content:" *";color:var(--error)}select,input[type=text],textarea{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);font-size:15px;font-family:inherit;background:#fff;-webkit-appearance:none}select:focus,input:focus,textarea:focus{outline:none;border-color:var(--line-green);box-shadow:0 0 0 2px #06c75526}textarea{resize:vertical;min-height:100px}.file-zone{border:2px dashed var(--border);border-radius:var(--radius);padding:16px;text-align:center;cursor:pointer;color:var(--text-secondary);font-size:14px;transition:border-color .2s}.file-zone:hover{border-color:var(--line-green)}.file-zone input[type=file]{display:none}.file-preview{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.file-thumb{width:72px;height:72px;object-fit:cover;border-radius:6px;border:1px solid var(--border)}.file-remove-btn{position:relative;display:inline-block}.file-remove-btn button{position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:50%;background:#0000008c;color:#fff;border:none;cursor:pointer;font-size:12px;line-height:20px;text-align:center;padding:0}.btn{display:block;width:100%;padding:13px;border:none;border-radius:var(--radius);font-size:16px;font-weight:700;cursor:pointer;transition:background .2s}.btn-primary{background:var(--line-green);color:#fff}.btn-primary:hover:not(:disabled){background:var(--line-green-dark)}.btn-primary:disabled{background:#aaa;cursor:not-allowed}.btn-secondary{background:#f0f0f0;color:var(--text-primary);margin-top:10px}.banner{border-radius:var(--radius);padding:12px 14px;font-size:14px;margin-bottom:16px}.banner-error{background:#fdecea;color:var(--error)}.banner-warning{background:#fff3e0;color:var(--warning)}.banner-info{background:#e8f5e9;color:#1b5e20}.unregistered{text-align:center;padding:40px 20px}.unregistered h2{font-size:20px;margin-bottom:10px}.unregistered p{color:var(--text-secondary);margin-bottom:20px}.success{text-align:center;padding:32px 16px}.success-icon{font-size:56px;margin-bottom:12px}.success h2{font-size:22px;color:var(--line-green);margin-bottom:8px}.success p{color:var(--text-secondary);font-size:14px;margin-bottom:6px}.case-no{background:#e8f5e9;border-radius:var(--radius);padding:12px;margin:16px 0;font-family:monospace;font-size:16px;font-weight:700;color:#1b5e20}.page-header{display:flex;align-items:center;gap:10px;margin-bottom:20px}.page-header h1{font-size:20px;font-weight:700}.header-icon{font-size:28px}.submitting-overlay{display:flex;align-items:center;gap:10px;justify-content:center;padding:12px;color:var(--text-secondary)}
