*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f8fa;color:#2c3e50}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.app{--accent-color: #ff7300;max-width:1200px;margin:0 auto;padding:20px}.app-header{display:flex;align-items:baseline;gap:15px;padding:20px 0;border-bottom:3px solid var(--accent-color);margin-bottom:20px}.app-title{font-size:1.5rem;font-weight:700;color:#2c3e50}.app-subtitle{font-size:.9rem;color:#6c757d;font-weight:500}.family-bar{display:flex;gap:6px;margin-bottom:12px;flex-wrap:wrap}.family-button{padding:8px 20px;border:2px solid #dee2e6;background:#fff;color:#495057;font-size:.9rem;font-weight:600;cursor:pointer;border-radius:6px;transition:all .2s}.family-button:hover{border-color:#adb5bd;color:#2c3e50}.family-button.active{background:var(--family-color, #ff7300);border-color:var(--family-color, #ff7300);color:#fff}.tab-bar{display:flex;gap:0;margin-bottom:20px;background:#e9ecef;border-radius:8px;padding:4px;width:fit-content}.tab-button{padding:10px 24px;border:none;background:transparent;color:#495057;font-size:.9rem;font-weight:500;cursor:pointer;border-radius:6px;transition:all .2s}.tab-button:hover{color:#2c3e50;background:#ffffff80}.tab-button.active{background:#fff;color:var(--accent-color);font-weight:600;box-shadow:0 1px 3px #0000001a}.decoder-card{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000000d;padding:25px}.decoder-card h2{font-size:1.2rem;font-weight:600;color:#2c3e50;margin-bottom:5px}.subtitle{font-size:.85rem;color:#6c757d;margin-bottom:20px}.form-row{margin-bottom:15px}.form-label{display:block;font-size:.85rem;font-weight:500;color:#495057;margin-bottom:5px}.form-input,.form-select{padding:8px 12px;border:1px solid #ced4da;border-radius:5px;font-size:.9rem;color:#2c3e50;background:#fff;transition:border-color .2s,box-shadow .2s;width:100%}.form-input:focus,.form-select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.form-select{max-width:450px}.input-group{display:flex;gap:8px;align-items:stretch}.input-group .form-input{flex:1}.btn{padding:8px 20px;border:none;border-radius:5px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background-color .2s,transform .1s}.btn:active{transform:scale(.98)}.btn-primary{background-color:var(--accent-color);color:#fff}.btn-primary:hover{filter:brightness(.9)}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#5a6268}.btn-sm{padding:5px 12px;font-size:.8rem}.alert{padding:10px 15px;border-radius:5px;font-size:.85rem;margin-bottom:15px}.alert-error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.result-section{margin-top:20px}.result-section h3{font-size:1rem;font-weight:600;color:#2c3e50;margin-bottom:10px}.result-table{width:100%;border-collapse:collapse;font-size:.9rem}.result-table thead th{background:#f8f9fa;padding:10px 12px;text-align:left;font-weight:600;color:#495057;border-bottom:2px solid #dee2e6;position:sticky;top:0}.result-table tbody td{padding:8px 12px;border-bottom:1px solid #dee2e6;color:#2c3e50}.result-table tbody tr:nth-child(2n){background:#f9f9f9}.result-table tbody tr:hover{background:#f0f4f8}.value-cell{font-weight:600;font-family:source-code-pro,Menlo,Monaco,Consolas,monospace;color:var(--accent-color)}.unit-cell{color:#6c757d;font-size:.85rem}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:15px}.setting-field{background:#f8f9fa;padding:12px;border-radius:5px;border-left:4px solid var(--accent-color)}.setting-field .form-label{margin-bottom:4px}.setting-field .form-input{margin-bottom:3px}.field-hint{font-size:.75rem;color:#6c757d}.output-box{display:flex;align-items:center;gap:12px;background:#f8f9fa;padding:12px 15px;border-radius:5px;border:1px solid #dee2e6}.hex-output{flex:1;font-size:1.1rem;font-weight:600;color:var(--accent-color);letter-spacing:1px;word-break:break-all}@media(max-width:768px){.app{padding:10px}.app-header{flex-direction:column;gap:5px}.family-bar{gap:4px}.family-button{padding:6px 14px;font-size:.8rem}.tab-bar{width:100%}.tab-button{flex:1;text-align:center;padding:10px 12px;font-size:.8rem}.decoder-card{padding:15px}.settings-grid{grid-template-columns:1fr}.form-select{max-width:100%}}
