:root{--bg-primary: #ffffff;--bg-secondary: #f5f5f7;--bg-tertiary: #f9f9fb;--text-primary: #1d1d1f;--text-secondary: #6e6e73;--border-color: #d2d2d7;--accent-color: #0071e3;--accent-hover: #0077ed;--success-color: #30d158;--error-color: #ff3b30;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 12px rgba(0, 0, 0, .15);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .2)}@media(prefers-color-scheme:dark){:root{--bg-primary: #000000;--bg-secondary: #1c1c1e;--bg-tertiary: #2c2c2e;--text-primary: #ffffff;--text-secondary: #d1d1d6;--border-color: #545458;--accent-color: #0a84ff;--accent-hover: #409cff;--success-color: #32d74b;--error-color: #ff453a;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .5);--shadow-md: 0 4px 12px rgba(0, 0, 0, .6);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .7)}}*{box-sizing:border-box;margin:0;padding:0}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:var(--bg-secondary);color:var(--text-primary);line-height:1.6;min-height:100vh;padding:2rem 1rem;transition:background-color .2s ease,color .2s ease}@media(min-width:768px){body{padding:3rem 2rem}}.container{max-width:600px;margin:0 auto}@media(min-width:768px){.container{max-width:900px}}@media(min-width:1024px){.container{max-width:1200px}}header{text-align:center;margin-bottom:3rem}h1{font-size:2rem;font-weight:600;margin-bottom:.75rem;color:var(--text-primary)}@media(min-width:768px){h1{font-size:2.5rem}}.subtitle{color:var(--text-secondary);font-size:1rem}main{background-color:var(--bg-primary);border-radius:12px;padding:2rem;box-shadow:var(--shadow-md);transition:background-color .2s ease,box-shadow .2s ease}@media(min-width:768px){main{padding:2.5rem}}@media(min-width:1024px){main{padding:3rem}}.form-group{margin-bottom:1.5rem}label{display:block;font-weight:500;margin-bottom:.5rem;color:var(--text-primary);font-size:.9rem}input[type=text]{width:100%;padding:.75rem 1rem;font-size:1rem;border:1px solid var(--border-color);border-radius:8px;background-color:var(--bg-primary);color:var(--text-primary);transition:border-color .2s ease,background-color .2s ease,color .2s ease;font-family:inherit}input[type=text]:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px #0071e31a}input[type=text]::placeholder{color:var(--text-secondary)}button[type=submit]{width:100%;padding:.875rem 1.5rem;font-size:1rem;font-weight:500;color:#fff;background-color:var(--accent-color);border:none;border-radius:8px;cursor:pointer;transition:background-color .2s ease,transform .1s ease;font-family:inherit}@media(min-width:768px){button[type=submit]{width:auto;min-width:200px;padding:.875rem 2rem}}button[type=submit]:hover:not(:disabled){background-color:var(--accent-hover);transform:translateY(-1px)}button[type=submit]:active:not(:disabled){transform:translateY(0)}button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.loading{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem;text-align:center;color:var(--text-secondary)}.spinner{width:32px;height:32px;border:3px solid var(--border-color);border-top-color:var(--accent-color);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.result{margin-top:1.5rem;padding:1.5rem;background-color:var(--bg-tertiary);border-radius:8px;border:1px solid var(--border-color);transition:background-color .2s ease,border-color .2s ease}.result h2{font-size:1.25rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.result h3{font-size:1rem;font-weight:600;margin-top:1rem;margin-bottom:.5rem;color:var(--text-primary)}.result>div{margin-bottom:.75rem;color:var(--text-primary)}.result strong{color:var(--text-primary);font-weight:600}.result a{color:var(--accent-color);text-decoration:none;font-weight:500}.result a:hover{text-decoration:underline}.result pre{background-color:var(--bg-secondary);padding:1rem;border-radius:6px;overflow-x:auto;font-size:.875rem;line-height:1.5;border:1px solid var(--border-color);color:var(--text-primary);white-space:pre-wrap;word-wrap:break-word}@media(min-width:768px){.result pre{font-size:.9375rem;padding:1.25rem}}.result p{color:var(--text-primary);margin:0}.hidden{display:none}@media(max-width:640px){body{padding:1rem .5rem}main{padding:1.5rem}h1{font-size:1.5rem}}
