:root{font-family:Arial,Helvetica,sans-serif;color:#172133;background:#f4f6fa}html,body,#root{width:100%;max-width:100%}*{box-sizing:border-box}body{margin:0;overflow-x:hidden}.page{max-width:1050px;width:100%;margin:0 auto;padding:24px;display:grid;gap:16px}.card{min-width:0;background:#fff;border-radius:12px;padding:20px;border:1px solid #e8ecf5;box-shadow:0 8px 20px #111e3c0f}.spinnerWrap{display:flex;align-items:center;gap:10px;margin:8px 0}.spinnerWrap .subtle{margin:0}.spinner{width:20px;height:20px;border:3px solid #e8ecf5;border-top-color:#2563eb;border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}.logoWrap{display:flex;justify-content:center;margin-bottom:16px}.appLogo{max-width:240px;width:100%;height:auto}h1,h2,h3{margin-top:0}.subtle{color:#44546f;margin-bottom:14px}.uploadRow,.actionsRow{display:flex;gap:10px;align-items:center;min-width:0}.dropZone{margin-top:10px;border:2px dashed #b9c6e6;border-radius:10px;padding:14px;text-align:center;color:#44546f;background:#f7faff;transition:border-color .15s ease,background-color .15s ease}.dropZone.active{border-color:#2c62ff;background:#eef4ff}.dropZone p{margin:0}.previewCard{margin-top:10px;border:1px solid #dbe4f5;border-radius:10px;padding:12px;background:#fafcff}.previewTitle{margin:0 0 8px;font-weight:600;color:#253857}.previewImage{display:block;width:100%;max-width:420px;max-height:420px;object-fit:contain;border:1px solid #d5dff2;border-radius:8px;background:#fff}.uploadRow>*{min-width:0}.uploadRow input[type=file]{width:100%;max-width:100%}.grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}label{display:grid;gap:6px;font-weight:600}input{width:100%;max-width:100%;border:1px solid #ced5e3;border-radius:7px;padding:10px 12px;font-size:14px;transition:border-color .15s ease,box-shadow .15s ease}input:focus{outline:none;border-color:#2c62ff;box-shadow:0 0 0 3px #2c62ff24}button{border:none;border-radius:8px;background:#2c62ff;color:#fff;padding:10px 15px;font-weight:600;cursor:pointer;transition:transform .08s ease,filter .15s ease}button:hover:not(:disabled){filter:brightness(1.03)}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.6;cursor:not-allowed}button.danger{background:#e04444}.primaryBtn{min-height:40px}.rowActionBtn{white-space:nowrap}.tableWrap{overflow-x:auto;max-width:100%;min-width:0}table{width:100%;border-collapse:collapse;table-layout:fixed}th,td{border-bottom:1px solid #e8ecf5;padding:8px 6px;text-align:left;min-width:0}td input{min-width:0}.error{color:#c12323;font-weight:600}.warnings{background:#fff7e1;border:1px solid #f0d89a;padding:10px 12px;border-radius:8px}.sectionHint{margin:-4px 0 12px;font-size:.9rem;color:#576883}.requiredMark{color:#c12323;font-weight:700}.inputError{border-color:#c12323!important;box-shadow:0 0 0 3px #c123232e!important}.confirmCardError{border-color:#f0b0b0}.confirmErrorHint{margin:-4px 0 10px;color:#b42323;font-weight:600}pre{background:#f0f3fa;border-radius:8px;padding:12px;overflow:auto;white-space:pre-wrap;word-break:break-word}@media(max-width:820px){.page{padding:12px;gap:12px}.card{padding:14px}h1{font-size:1.4rem}.grid4{grid-template-columns:1fr}.uploadRow,.actionsRow{flex-direction:column;align-items:stretch}button{width:100%}}@media(max-width:700px){table,thead,tbody,th,td,tr{display:block}thead{position:absolute;left:-9999px;top:-9999px}tbody{display:grid;gap:10px}tr{border:1px solid #e8ecf5;border-radius:10px;padding:8px;background:#fff}td{border:none;padding:6px 0;display:grid;grid-template-columns:88px minmax(0,1fr);gap:10px;align-items:center}td:before{content:attr(data-label);font-weight:700;font-size:.85rem;color:#44546f}.rowActionBtn{width:100%}}
