:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.app{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#667eea,#764ba2)}.app-header{text-align:center;padding:2rem;color:#fff}.app-header h1{font-size:2.5rem;margin:0 0 .5rem;text-shadow:0 2px 4px rgba(0,0,0,.3)}.app-header p{font-size:1.1rem;margin:0;opacity:.9}.app-main{flex:1;display:flex;justify-content:center;align-items:flex-start;padding:2rem}.app-footer{text-align:center;padding:1rem;color:#ffffffb3;font-size:.9rem}#root{width:100%;min-height:100vh}.sunsun-viewer{background:#fff;border-radius:15px;padding:2rem;box-shadow:0 10px 30px #0003;max-width:800px;width:100%}.sunsun-title{text-align:center;color:#4a5568;margin:0 0 2rem;font-size:1.8rem}.fetch-button{background:linear-gradient(45deg,#667eea,#764ba2);color:#fff;border:none;padding:12px 24px;border-radius:25px;cursor:pointer;font-size:16px;transition:all .2s ease;display:block;margin:0 auto 2rem;min-width:200px}.fetch-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 15px #0000004d}.fetch-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.status-message{margin:1rem 0;padding:1rem;border-radius:8px;font-weight:500}.status-loading{background:#bee3f8;color:#2b6cb0;border-left:4px solid #3182ce}.status-success{background:#c6f6d5;color:#38a169;border-left:4px solid #48bb78}.status-error{background:#fed7d7;color:#e53e3e;border-left:4px solid #f56565}.image-container{text-align:center;margin:2rem 0;padding:2rem;border:2px dashed #e2e8f0;border-radius:12px;min-height:200px;display:flex;align-items:center;justify-content:center;background:#f8fafc;transition:all .3s ease}.image-container.has-image{border-style:solid;border-color:#667eea;background:#fff}.sunsun-image{max-width:100%;max-height:400px;border-radius:10px;box-shadow:0 5px 15px #0000004d;transition:transform .3s ease}.sunsun-image:hover{transform:scale(1.02)}.placeholder-text{color:#a0aec0;font-size:1.1rem}.loading-spinner{display:inline-block;width:40px;height:40px;border:3px solid #e2e8f0;border-radius:50%;border-top-color:#667eea;animation:spin 1s ease-in-out infinite;margin-right:1rem}@keyframes spin{to{transform:rotate(360deg)}}.image-info{background:#f0f9ff;color:#0369a1;padding:1.5rem;border-radius:10px;margin:1rem 0;border-left:4px solid #0ea5e9}.image-info h3{margin:0 0 1rem;color:#0c4a6e}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin:1rem 0}.info-item{display:flex;align-items:center;gap:.5rem}.info-icon{font-size:1.2rem}.setup-instructions{background:#fef3cd;color:#92400e;padding:1.5rem;border-radius:10px;margin:1rem 0;border-left:4px solid #f59e0b}.setup-instructions h3{margin:0 0 1rem;color:#78350f}.setup-instructions ol{margin:1rem 0;padding-left:1.5rem}.setup-instructions li{margin:.5rem 0}.current-config{background:#f3f4f6;padding:1rem;border-radius:8px;margin:1rem 0;font-family:monospace;font-size:.9rem;color:#374151}.config-warning{color:#dc2626;font-weight:600}.config-success{color:#059669;font-weight:600}@media(max-width:768px){.sunsun-viewer{padding:1.5rem;margin:1rem}.sunsun-title{font-size:1.5rem}.image-container{min-height:150px;padding:1.5rem}.sunsun-image{max-height:300px}.info-grid{grid-template-columns:1fr}}
