:root{--bpc-text: #0F172A;--bpc-surface: #F8FAFC;--bpc-water: #F0F9FF;--bpc-primary: #DC2626;--bpc-primary-strong: #B91C1C;--bpc-link: #DC2626;--bpc-accent: #DC2626;--bpc-grey: #666;--bpc-success: #10b981;--bpc-warning: #f59e0b;--bpc-error: #ef4444;--maxw: 900px;--radius: 16px;--shadow: 0 8px 25px rgba(0,0,0,.08);--shadow-hover: 0 15px 35px rgba(0,0,0,.12);--spacing-xs: 8px;--spacing-sm: 16px;--spacing-md: 24px;--spacing-lg: 48px;--spacing-xl: 80px;--h2: 38px;--h3: 24px;--body: 16px;--small: 13px}@media (max-width: 768px){:root{--h2: 28px;--h3: 20px;--body: 15px;--small: 12px;--radius: 12px}}@media (max-width: 480px){:root{--h2: 24px;--h3: 18px;--body: 14px;--small: 11px;--radius: 10px}}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--bpc-text);background:var(--bpc-surface);font-size:var(--body);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.hero{background:linear-gradient(135deg,var(--bpc-primary) 0%,var(--bpc-primary-strong) 100%);color:#fff;padding:var(--spacing-lg) var(--spacing-md);text-align:center}.hero h1{font-size:32px;font-weight:800;margin:0 0 var(--spacing-xs);letter-spacing:-.5px}.hero p{font-size:16px;opacity:.9;margin:0;max-width:600px;margin-inline:auto}@media (max-width: 768px){.hero{padding:var(--spacing-md) var(--spacing-sm)}.hero h1{font-size:24px}.hero p{font-size:14px}}.tool-container{max-width:var(--maxw);margin:0 auto;padding:var(--spacing-md)}@media (max-width: 768px){.tool-container{padding:var(--spacing-sm)}}.card{background:#fff;border:1px solid #e2e8f0;border-radius:var(--radius);padding:var(--spacing-md);margin-bottom:var(--spacing-md);box-shadow:var(--shadow);transition:box-shadow .2s ease}.card:hover{box-shadow:var(--shadow-hover)}.card h2{font-size:var(--h3);font-weight:700;color:var(--bpc-primary);margin:0 0 var(--spacing-sm);display:flex;align-items:center;gap:8px}@media (max-width: 768px){.card{padding:var(--spacing-sm)}}.form-row{display:grid;grid-template-columns:200px 1fr;gap:var(--spacing-sm);align-items:center;margin:var(--spacing-sm) 0}@media (max-width: 768px){.form-row{grid-template-columns:1fr;gap:var(--spacing-xs)}}.form-label{color:var(--bpc-grey);font-size:14px;font-weight:600}input[type=file],input[type=number],select{width:100%;padding:12px 16px;border-radius:var(--radius);border:2px solid #e2e8f0;background:#fff;color:var(--bpc-text);font-size:14px;font-family:inherit;transition:all .2s ease}input[type=file]:hover,input[type=number]:hover,select:hover{border-color:#cbd5e1}input[type=file]:focus,input[type=number]:focus,select:focus{outline:none;border-color:var(--bpc-primary);box-shadow:0 0 0 3px #dc26261a}input[type=number]::placeholder{color:#94a3b8}input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--bpc-primary)}input[type=file]{cursor:pointer}input[type=file]::file-selector-button{padding:8px 16px;margin-right:12px;border:2px solid var(--bpc-primary);border-radius:8px;background:#fff;color:var(--bpc-primary);font-size:13px;font-weight:700;cursor:pointer;transition:all .2s ease}input[type=file]::file-selector-button:hover{background:var(--bpc-primary);color:#fff}.actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md);flex-wrap:wrap}.btn{padding:14px 24px;border-radius:var(--radius);border:2px solid transparent;background:linear-gradient(135deg,var(--bpc-primary) 0%,var(--bpc-primary-strong) 100%);color:#fff;font-size:15px;font-weight:700;font-family:inherit;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow);flex:1;min-width:150px;text-align:center}.btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-hover)}.btn:active:not(:disabled){transform:translateY(0)}.btn.secondary{background:#fff;color:var(--bpc-primary);border-color:var(--bpc-primary)}.btn.secondary:hover:not(:disabled){background:var(--bpc-water)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}@media (max-width: 768px){.actions{flex-direction:column}.btn{width:100%;min-width:auto}}.status{margin-top:var(--spacing-sm);padding:var(--spacing-sm);border-radius:var(--radius);background:var(--bpc-water);font-size:14px;line-height:1.5;color:var(--bpc-grey);border-left:4px solid var(--bpc-primary)}.results{white-space:pre-wrap;line-height:1.6;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-size:13px;padding:var(--spacing-md);background:#f1f5f9;border-radius:var(--radius);border:1px solid #e2e8f0;max-height:500px;overflow-y:auto;color:var(--bpc-text)}.results.muted{color:var(--bpc-grey);font-style:italic}.results::-webkit-scrollbar{width:8px}.results::-webkit-scrollbar-track{background:#e2e8f0;border-radius:4px}.results::-webkit-scrollbar-thumb{background:#94a3b8;border-radius:4px}.results::-webkit-scrollbar-thumb:hover{background:#64748b}@media (max-width: 768px){.results{font-size:12px;padding:var(--spacing-sm)}}.info-box{background:var(--bpc-water);border-left:4px solid var(--bpc-primary);border-radius:0 var(--radius) var(--radius) 0;padding:var(--spacing-sm);margin-top:var(--spacing-md);font-size:14px;color:var(--bpc-text)}.info-box p{margin:0}.info-box strong{color:var(--bpc-primary)}.tool-footer{text-align:center;margin-top:var(--spacing-lg);padding:var(--spacing-md) 0;border-top:1px solid #e2e8f0}.tool-footer a{color:var(--bpc-primary);text-decoration:none;font-weight:600}.tool-footer a:hover{text-decoration:underline}.tool-footer small{color:var(--bpc-grey);display:block;margin-top:var(--spacing-xs)}.loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,var(--bpc-primary) 0%,var(--bpc-primary-strong) 100%);z-index:99999;display:flex;align-items:center;justify-content:center;transition:opacity .3s ease}.loading-overlay.hidden{opacity:0;pointer-events:none}.loading-content{text-align:center;color:#fff}.loading-content .icon{font-size:64px;margin-bottom:20px}.loading-content h2{font-size:28px;font-weight:800;margin:0 0 12px;color:#fff}.loading-content p{font-size:16px;opacity:.9;margin:0 0 24px}.spinner{width:50px;height:50px;border:4px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin:0 auto}@keyframes spin{to{transform:rotate(360deg)}}*:focus-visible{outline:2px solid var(--bpc-primary);outline-offset:2px}::selection{background:var(--bpc-primary);color:#fff}::-moz-selection{background:var(--bpc-primary);color:#fff}.muted{color:var(--bpc-grey)}strong{color:var(--bpc-primary);font-weight:700}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.card{animation:fadeIn .3s ease}
