.tool-page{min-height:100vh;color:var(--text-primary);box-sizing:border-box;background:linear-gradient(135deg,#1a1a1a 0%,#2d2d2d 100%);padding:1rem;overflow-x:hidden}.tool-page *,.tool-page :before,.tool-page :after{box-sizing:border-box}.tool-page .container{width:100%;max-width:1200px;margin:0 auto}.tool-page .container--narrow{max-width:720px}.tool-hero{text-align:center;padding:80px 0 60px;position:relative}.tool-hero:before{content:"";z-index:1;background:radial-gradient(circle at 25% 30%,#ff6b6b1a 0%,#0000 50%),radial-gradient(circle at 75% 70%,#ff6b6b1a 0%,#0000 50%);position:absolute;inset:0}.tool-hero h1{color:var(--text-primary);z-index:2;margin-bottom:24px;font-size:clamp(2.5rem,5vw,3.5rem);font-weight:700;position:relative}.tool-tagline{color:var(--text-secondary);z-index:2;max-width:600px;margin:0 auto;font-size:clamp(1.1rem,2.5vw,1.4rem);font-style:italic;position:relative}.tool-card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem}.tool-card--inset{background-color:var(--bg-primary)}.btn{cursor:pointer;color:#fff;border:none;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:12px 24px;font-family:inherit;font-size:.9rem;font-weight:600;transition:all .3s;display:inline-flex}.btn:active{transform:translateY(0)}.btn:disabled{background:var(--text-secondary);box-shadow:none;opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:linear-gradient(135deg,#ff6b6b,#ff5252);box-shadow:0 4px 15px #ff6b6b4d}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#ff5252,#e84040);transform:translateY(-2px);box-shadow:0 6px 20px #ff6b6b66}.btn-success{background:linear-gradient(135deg,#27ae60,#229954);box-shadow:0 4px 15px #27ae604d}.btn-success:hover:not(:disabled){background:linear-gradient(135deg,#229954,#1e8449);transform:translateY(-2px);box-shadow:0 6px 20px #27ae6066}.btn-danger{background:linear-gradient(135deg,#e74c3c,#c0392b);box-shadow:0 4px 15px #e74c3c4d}.btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#c0392b,#a93226);transform:translateY(-2px);box-shadow:0 6px 20px #e74c3c66}.btn-warning{background:linear-gradient(135deg,#f39c12,#e67e22);box-shadow:0 4px 15px #f39c124d}.btn-warning:hover:not(:disabled){background:linear-gradient(135deg,#e67e22,#d35400);transform:translateY(-2px);box-shadow:0 6px 20px #f39c1266}.btn-info{background:linear-gradient(135deg,#3498db,#2980b9);box-shadow:0 4px 15px #3498db4d}.btn-info:hover:not(:disabled){background:linear-gradient(135deg,#2980b9,#1e6091);transform:translateY(-2px);box-shadow:0 6px 20px #3498db66}.btn-neutral{background:linear-gradient(135deg,#95a5a6,#7f8c8d);box-shadow:0 4px 15px #95a5a64d}.btn-neutral:hover:not(:disabled){background:linear-gradient(135deg,#7f8c8d,#566573);transform:translateY(-2px);box-shadow:0 6px 20px #95a5a666}.btn-block{width:100%}.tool-results-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;display:grid}.tool-result-card{background-color:var(--bg-primary);border:1px solid var(--border-color);text-align:center;border-radius:12px;padding:2rem;transition:transform .3s}.tool-result-card:hover{transform:translateY(-5px)}.tool-result-card h3{color:var(--accent-color);margin:0 0 1rem;font-size:1.2rem;font-weight:600}.tool-result-value{color:var(--text-primary);margin-bottom:.5rem;font-size:2.5rem;font-weight:700}.tool-result-card p{color:var(--text-secondary);margin:0;font-size:.9rem}.toast-container{z-index:9999;flex-direction:column;gap:.5rem;max-width:400px;display:flex;position:fixed;top:90px;right:20px}.toast{color:#fff;cursor:pointer;background:linear-gradient(135deg,#e74c3c,#c0392b);border-radius:8px;align-items:center;gap:1rem;padding:1rem 1.5rem;transition:all .3s;animation:.3s toastSlideIn;display:flex;box-shadow:0 4px 15px #e74c3c66}.toast:hover{transform:translate(-5px);box-shadow:0 6px 20px #e74c3c80}.toast-success{background:linear-gradient(135deg,#27ae60,#229954);box-shadow:0 4px 15px #27ae6066}.toast-success:hover{box-shadow:0 6px 20px #27ae6080}.toast-icon{flex-shrink:0;font-size:1.5rem}.toast-message{flex:1;font-size:.9rem}.toast-close{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:1.5rem;transition:background-color .2s;display:flex}.toast-close:hover{background-color:#fff3}@keyframes toastSlideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.error-boundary{background-color:var(--bg-secondary);text-align:center;border:2px solid #e74c3c;border-radius:12px;max-width:600px;margin:2rem auto;padding:3rem 2rem}.error-boundary h2{color:#e74c3c;margin-bottom:1rem;font-size:2rem}.error-boundary p{color:var(--text-secondary);margin-bottom:2rem;font-size:1.1rem}.tool-slider{flex-direction:column;gap:.5rem;display:flex}.tool-slider-row{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.tool-slider-label{color:var(--text-secondary);font-size:.85rem;font-weight:500;display:block}.tool-slider-value{color:var(--primary-color);text-align:right;min-width:3.5ch;font-size:1.1rem;font-weight:700}.tool-slider-track-wrap{position:relative}.tool-slider-input{appearance:none;background:linear-gradient(to right,var(--primary-color)0%,var(--primary-color)var(--fill,0%),#2a2a2a var(--fill,0%),#2a2a2a 100%);border:1px solid var(--border-color);cursor:pointer;border-radius:999px;outline:none;width:100%;height:8px}.tool-slider-input::-webkit-slider-thumb{appearance:none;background:var(--primary-color);cursor:pointer;border:3px solid #fff;border-radius:50%;width:22px;height:22px;transition:box-shadow .15s,transform .15s;box-shadow:0 2px 8px #ff6b6b80}.tool-slider-input::-moz-range-thumb{background:var(--primary-color);cursor:pointer;border:3px solid #fff;border-radius:50%;width:22px;height:22px;transition:box-shadow .15s,transform .15s;box-shadow:0 2px 8px #ff6b6b80}.tool-slider-input:hover::-webkit-slider-thumb{transform:scale(1.1);box-shadow:0 3px 12px #ff6b6bb3}.tool-slider-input:hover::-moz-range-thumb{transform:scale(1.1);box-shadow:0 3px 12px #ff6b6bb3}.tool-slider-input:focus-visible{border-color:var(--primary-color);box-shadow:0 0 0 3px #ff6b6b4d}.tool-slider-input:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px #ff6b6b59,0 2px 8px #ff6b6b80}.tool-slider-input:disabled{opacity:.5;cursor:not-allowed}.tool-slider-numeric{border:1px solid var(--border-color);width:5rem;color:var(--text-primary);text-align:center;background-color:#1f1f1f;border-radius:6px;outline:none;flex-shrink:0;padding:4px 8px;font-family:inherit;font-size:.9rem;transition:border-color .15s,box-shadow .15s}.tool-slider-numeric:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #ff6b6b33}.tool-slider-hint{color:var(--text-light);justify-content:space-between;font-size:.75rem;display:flex}.tool-dropzone{box-sizing:border-box;border:2px dashed var(--border-color);width:100%;color:var(--text-secondary);cursor:pointer;text-align:center;-webkit-user-select:none;user-select:none;background-color:#1a1a1a;border-radius:16px;outline:none;flex-direction:column;justify-content:center;align-items:center;gap:.6rem;padding:3rem 2rem;transition:border-color .25s,background-color .25s,box-shadow .25s,transform .15s;display:flex;position:relative}.tool-dropzone:hover,.tool-dropzone:focus-visible{border-color:var(--primary-color);background-color:#ff6b6b0d;box-shadow:0 0 #0000,inset 0 0 0 1px #ff6b6b26}.tool-dropzone:focus-visible{box-shadow:0 0 0 3px #ff6b6b4d}.tool-dropzone--over{border-color:var(--primary-color);background-color:#ff6b6b1a;transform:scale(1.01);box-shadow:0 0 0 4px #ff6b6b33,inset 0 0 40px #ff6b6b0f}.tool-dropzone--disabled{opacity:.45;cursor:not-allowed}.tool-dropzone-input{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.tool-dropzone-icon{color:var(--primary-color);opacity:.85;margin-bottom:.25rem;line-height:1;transition:opacity .2s,transform .2s}.tool-dropzone:hover .tool-dropzone-icon,.tool-dropzone--over .tool-dropzone-icon{opacity:1;transform:translateY(-3px)}.tool-dropzone-icon svg{width:40px;height:40px}.tool-dropzone-label{color:var(--text-primary);margin:0;font-size:1rem;font-weight:600}.tool-dropzone-hint{color:var(--text-light);margin:0;font-size:.85rem}.tool-dropzone-sr-status{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:768px){.tool-hero{padding:48px 0 40px}.toast-container{max-width:none;left:10px;right:10px}}@media (max-width:480px){.tool-page{padding:.5rem .25rem}.tool-hero{padding:32px 0 28px}.tool-card{padding:1.5rem 1rem}.toast-container{top:10px}.toast{padding:.75rem 1rem;font-size:.85rem}}:root{--primary-color:#ff6b6b;--primary-hover:#ff5252;--primary-light:#ffebee;--text-primary:#fff;--text-secondary:#ccc;--text-light:#999;--background:#1a1a1a;--background-alt:#2d2d2d;--border-color:#404040;--bg-primary:transparent;--bg-secondary:transparent;--accent-color:var(--text-primary)}@media (prefers-color-scheme:dark){:root{--text-primary:#fff;--text-secondary:#ccc;--text-light:#999;--background:#1a1a1a;--background-alt:#2d2d2d;--border-color:#404040}}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background:linear-gradient(135deg,#1a1a1a 0%,#2d2d2d 100%);height:100%}body{color:var(--text-primary);background:linear-gradient(135deg,#1a1a1a 0%,#2d2d2d 100%);height:100%;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6;overflow-x:hidden}main{background:0 0;min-height:100vh;margin:0;padding:0}.container{max-width:1200px;margin:0 auto;padding:0 20px}h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:700;line-height:1.2}h2{font-size:clamp(2rem,4vw,3rem);font-weight:600;line-height:1.3}h3{font-size:clamp(1.5rem,3vw,2rem);font-weight:500;line-height:1.4}p{font-size:clamp(1rem,2vw,1.2rem);line-height:1.6}
