*{box-sizing:border-box}body{color:#333;background:#f5f7fa;margin:0;font-family:Arial,Helvetica,sans-serif;line-height:1.6}button,a,input,textarea{font:inherit}.container{max-width:920px;margin:0 auto;padding:40px 20px}header{text-align:center;margin-bottom:32px}header h1{color:#1a73e8;margin:0 0 8px;font-size:28px}header p{color:#666;margin:0;font-size:15px}.card{background:#fff;border-radius:8px;margin-bottom:20px;padding:28px;box-shadow:0 2px 8px #00000014}.muted-card{opacity:.72}.card-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.card h2{color:#333;margin:0 0 16px;font-size:18px}.hint{color:#666;margin:-4px 0 16px;font-size:14px}.upload-area{text-align:center;cursor:pointer;background:#fafafa;border:2px dashed #ccc;border-radius:8px;padding:36px;transition:border-color .2s,background .2s}.upload-area:hover,.upload-area:focus{background:#f0f7ff;border-color:#1a73e8;outline:none}.upload-area .icon{margin-bottom:10px;font-size:44px}.upload-area p{color:#666;margin:0;font-size:15px}.upload-area span{color:#999;margin-top:8px;font-size:13px;display:block}.hidden-input{display:none}.button-row,.actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:18px;display:flex}.btn{color:#fff;cursor:pointer;background:#1a73e8;border:0;border-radius:6px;justify-content:center;align-items:center;min-height:44px;padding:12px 24px;font-size:15px;font-weight:600;text-decoration:none;transition:background .2s;display:inline-flex}.btn:hover{background:#1557b0}.btn:disabled{cursor:not-allowed;background:#ccc}.btn-success{background:#34a853}.btn-success:hover{background:#2e8b47}.btn-secondary{background:#666}.btn-secondary:hover{background:#555}.file-list{margin-top:16px}.file-item{background:#f0f7ff;border-radius:6px;align-items:center;gap:12px;margin-bottom:8px;padding:10px 14px;font-size:14px;display:flex}.file-item .name{overflow-wrap:anywhere;flex:1;min-width:0}.file-item .size{color:#888;white-space:nowrap;font-size:12px}.empty,.chosen-file{color:#666;font-size:14px}.status{border-radius:8px;margin-top:16px;padding:16px;font-size:14px}.status.info{color:#1a73e8;background:#e8f0fe;border:1px solid #1a73e8}.status.error{color:#d93025;background:#fce8e8;border:1px solid #d93025}.status.warning{color:#9a5700;background:#fff3e0;border:1px solid #f57c00}.status.warning ul{margin:8px 0 0;padding-left:20px}.result-table{border-collapse:collapse;width:100%;margin-top:16px;font-size:14px}.result-table th,.result-table td{text-align:left;border-bottom:1px solid #e0e0e0;padding:10px 12px}.result-table th{color:#555;background:#f5f5f5;width:38%;font-weight:600}.badge{border-radius:12px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-block}.badge.ok{color:#34a853;background:#e6f4ea}.badge.warn{color:#f57c00;background:#fff3e0}.diff-block{margin-top:20px}.diff-title-row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.diff-title-row h3,.section-title{color:#d93025;margin:0;font-size:14px}.link-button{color:#1a73e8;cursor:pointer;background:0 0;border:0;font-weight:600}.diff-list{color:#333;background:#f5f5f5;border-radius:6px;max-height:360px;padding:12px;font-size:13px;overflow:auto}.diff-list i{color:#888}.text-report{color:#333;resize:vertical;background:#fafafa;border:1px solid #ddd;border-radius:6px;width:100%;min-height:260px;margin-top:10px;padding:12px;font-family:Arial,Helvetica,sans-serif;font-size:13px}@media (width<=640px){.container{padding:24px 12px}.card{padding:20px}.card-header,.diff-title-row{flex-direction:column;align-items:flex-start}.btn{width:100%}.result-table th,.result-table td{width:100%;display:block}}
