*{margin:0;padding:0;box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:#fafafa;color:#333;display:flex;flex-direction:column;height:100vh;overflow:hidden}.navbar{background:#fff;border-bottom:1px solid #e0e0e0;padding:.6rem 1rem;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;flex-shrink:0}.navbar-left{display:flex;justify-content:flex-start}.navbar-info{font-size:.75rem;color:#666}.navbar-title{font-size:.85rem;font-weight:600;color:#333;display:flex;align-items:center;gap:.4rem}.logo-icon{font-size:1.2rem}.navbar-right{display:flex;justify-content:flex-end;gap:.5rem}.navbar-btn{background:#333;color:#fff;border:none;padding:.4rem .5rem;border-radius:4px;cursor:pointer;transition:background .2s ease;display:flex;align-items:center;justify-content:center}.navbar-btn:hover{background:#111}.container{display:flex;flex-direction:column;height:calc(100vh - 53px);max-width:1200px;margin:0 auto;width:100%;padding:1rem;gap:1rem}.response-container{flex:1;display:flex;flex-direction:column;background:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden;min-height:0}.response-header{padding:.75rem 1rem;border-bottom:1px solid #e0e0e0;background:#fafafa;display:flex;justify-content:flex-end;align-items:center}.response-controls{display:flex;gap:.5rem}.control-btn{background:#fff;border:1px solid #ddd;padding:.4rem .75rem;border-radius:4px;font-size:.8rem;cursor:pointer;display:flex;align-items:center;gap:.4rem;transition:all .2s ease;color:#333}.control-btn:hover{background:#f5f5f5;border-color:#ccc}.use-as-ref-btn{background:#e8f0fe;border-color:#a8c4f5;color:#1a56db}.use-as-ref-btn:hover:not(:disabled){background:#d0e4fd;border-color:#1a56db}.use-as-ref-btn:disabled{opacity:.5;cursor:not-allowed}.response-content{flex:1;overflow-y:auto;padding:1.5rem;min-height:0;display:flex;align-items:center;justify-content:center}.generated-image-container{position:relative;cursor:pointer;max-width:100%;max-height:100%;display:flex;flex-direction:column;align-items:center;gap:1rem}.generated-image{max-width:100%;max-height:calc(100vh - 300px);object-fit:contain;border-radius:8px;box-shadow:0 2px 8px #0000001a;transition:transform .2s ease,box-shadow .2s ease}.generated-image-container:hover .generated-image{transform:scale(1.02);box-shadow:0 4px 16px #00000026}.image-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#000000b3;color:#fff;padding:1rem 2rem;border-radius:8px;opacity:0;transition:opacity .2s ease;pointer-events:none;display:flex;flex-direction:column;align-items:center;gap:.5rem}.generated-image-container:hover .image-overlay{opacity:1}.image-overlay svg{opacity:.9}.image-overlay p{margin:0;font-size:.9rem;font-weight:500}.image-info{text-align:center;max-width:600px}.image-prompt{display:block;font-size:.9rem;color:#666;margin-bottom:.3rem;line-height:1.4}.image-meta{display:block;font-size:.75rem;color:#999}.generated-video-container{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:800px;margin:0 auto;cursor:pointer;border-radius:8px;overflow:hidden;transition:transform .2s ease}.generated-video-container:hover{transform:scale(1.01)}.generated-video-container:hover .video-overlay{opacity:1}.generated-video{width:100%;max-width:800px;border-radius:8px;background:#000}.video-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;opacity:0;transition:opacity .2s ease;border-radius:8px}.video-overlay svg{opacity:.9}.video-overlay p{margin:0;font-size:.9rem;font-weight:500}.video-info{text-align:center;max-width:600px}.video-prompt{display:block;font-size:.9rem;color:#666;margin-bottom:.3rem;line-height:1.4}.video-meta{display:block;font-size:.75rem;color:#999}.lightbox-video{width:100%;max-width:90vw;max-height:80vh;border-radius:4px;background:#000}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#999;text-align:center;gap:.5rem}.empty-state svg{margin-bottom:1rem;opacity:.5}.empty-state p{font-size:.95rem;margin:0}.empty-hint{font-size:.8rem;color:#bbb}.input-container{flex-shrink:0;background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1rem}.image-preview-container{margin-bottom:.75rem;padding:.75rem;background:#f9f9f9;border-radius:8px;border:1px solid #e0e0e0;display:flex;flex-wrap:wrap;gap:.75rem}.image-preview-wrapper{position:relative;display:inline-block}.image-preview{max-width:200px;max-height:150px;object-fit:contain;border-radius:6px;border:1px solid #ddd}.remove-image-btn{position:absolute;top:-8px;right:-8px;background:#f44;color:#fff;border:none;border-radius:50%;width:24px;height:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease;box-shadow:0 2px 4px #0003}.remove-image-btn:hover{background:#c00}.input-wrapper{position:relative;display:flex;gap:.75rem}.input-textarea{flex:1;border:1px solid #ddd;border-radius:6px;padding:.75rem;font-family:inherit;font-size:.95rem;resize:vertical;min-height:120px;max-height:300px;line-height:1.5}.input-textarea:focus{outline:none;border-color:#333}.input-buttons{display:flex;flex-direction:column;gap:.5rem;align-self:flex-end}.send-btn{background:#333;color:#fff;border:none;border-radius:6px;padding:.75rem 1rem;cursor:pointer;transition:background .2s ease;display:flex;align-items:center;justify-content:center}.send-btn:hover:not(:disabled){background:#111}.send-btn:disabled{background:#ccc;cursor:not-allowed}.restore-btn{background:#f5f5f5;color:#666;border:1px solid #ddd;border-radius:6px;padding:.5rem .75rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.restore-btn:hover{background:#e8e8e8;color:#333;border-color:#bbb}.enhance-btn{background:#eef6ea;color:#2f6b2f;border:1px solid #c8dfc5;border-radius:6px;padding:.5rem .75rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.enhance-btn:hover:not(:disabled){background:#e2f0dd;color:#214d21;border-color:#9fc29b}.enhance-btn:disabled{background:#f3f3f3;color:#999;border-color:#ddd;cursor:not-allowed}.reset-enhance-btn{background:#f5f3ea;color:#7a5b1f;border-color:#e1d3ad}.reset-enhance-btn:hover:not(:disabled){background:#f0ead6;color:#5f4516;border-color:#d0bc84}.input-footer{display:flex;justify-content:space-between;align-items:center;margin-top:.5rem;font-size:.75rem;color:#666}.input-footer-left{display:flex;align-items:center;gap:1rem}.char-count{color:#999}.audio-input-group{display:flex;align-items:center;gap:.5rem;flex:1;max-width:300px}.audio-url-input{flex:1;padding:.4rem .6rem;border:1px solid #ddd;border-radius:6px;font-size:.8rem;background:#fff;color:#333;font-family:monospace}.audio-url-input:focus{outline:none;border-color:#666;box-shadow:0 0 0 2px #6666661a}.audio-url-input::placeholder{color:#ccc}.audio-clear-btn{background:#f5f5f5;color:#666;border:1px solid #ddd;border-radius:4px;padding:.3rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.audio-clear-btn:hover{background:#e0e0e0;color:#333}.attach-image-btn{background:#f5f5f5;color:#666;border:1px solid #ddd;border-radius:6px;padding:.4rem .75rem;cursor:pointer;font-size:.8rem;transition:all .2s ease;display:flex;align-items:center;gap:.4rem}.attach-image-btn:hover:not(:disabled){background:#e8e8e8;color:#333;border-color:#bbb}.attach-image-btn:disabled{opacity:.5;cursor:not-allowed}.status-bar{margin-top:.5rem;padding:.5rem;border-radius:4px;font-size:.85rem;text-align:center}.status-bar.loading{background:#e3f2fd;color:#1976d2}.status-bar.success{background:#e8f5e9;color:#388e3c}.status-bar.error{background:#ffebee;color:#d32f2f}.status-bar.info{background:#f5f5f5;color:#666}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner{animation:spin 1s linear infinite}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #0000004d}.modal-header{padding:1.5rem;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center}.modal-header h2{font-size:1.2rem;font-weight:600;margin:0}.close-btn{background:none;border:none;font-size:2rem;line-height:1;cursor:pointer;color:#666;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.close-btn:hover{background:#f5f5f5;color:#333}.modal-body{padding:1.5rem}.params-section{margin-bottom:2rem}.params-section:last-child{margin-bottom:0}.params-section h3{font-size:1rem;font-weight:600;margin-bottom:1rem;color:#333}.mode-selector-settings{display:flex;flex-direction:column;gap:.75rem}.mode-btn-settings{background:#fff;border:2px solid #e0e0e0;padding:1rem;border-radius:8px;cursor:pointer;transition:all .2s ease;text-align:left;display:flex;flex-direction:column;gap:.3rem}.mode-btn-settings:hover{border-color:#bbb;background:#f9f9f9}.mode-btn-settings.active{border-color:#333;background:#f0f0f0}.mode-icon{font-size:1.5rem;display:block}.mode-label{font-weight:600;font-size:.95rem;display:block;color:#333}.mode-desc{font-size:.8rem;color:#666;display:block}.param-group{margin-bottom:1.25rem}.param-group:last-child{margin-bottom:0}.param-group label{display:flex;flex-direction:column;gap:.5rem}.param-group label>span:first-child{font-size:.9rem;font-weight:500;color:#333}.param-description{font-size:.75rem;color:#999;font-weight:400}.param-group input[type=range]{width:100%;height:6px;border-radius:3px;background:#e0e0e0;outline:none;-webkit-appearance:none}.param-group input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:#333;cursor:pointer}.param-group input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#333;cursor:pointer;border:none}.param-group select{padding:.5rem;border:1px solid #ddd;border-radius:6px;font-size:.9rem;font-family:inherit;background:#fff;cursor:pointer}.param-group select:focus{outline:none;border-color:#333}.lightbox-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000f2;display:flex;align-items:center;justify-content:center;z-index:2000;padding:2rem;cursor:zoom-out}.lightbox-content{max-width:95%;max-height:95%;display:flex;flex-direction:column;align-items:center;gap:1rem;cursor:default}.lightbox-content img{max-width:100%;max-height:calc(95vh - 100px);object-fit:contain;border-radius:8px;box-shadow:0 8px 32px #00000080}.lightbox-close{position:absolute;top:1rem;right:1rem;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;border:2px solid rgba(255,255,255,.3);font-size:2.5rem;line-height:1;cursor:pointer;padding:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.lightbox-close:hover{background:#ffffff4d;border-color:#ffffff80;transform:rotate(90deg)}.lightbox-info{background:#000c;padding:1rem 1.5rem;border-radius:8px;text-align:center;max-width:600px}.lightbox-prompt{color:#fff;font-size:.95rem;margin:0 0 .5rem;line-height:1.4}.lightbox-meta{color:#bbb;font-size:.8rem;margin:0}@media(max-width:768px){.container{padding:.5rem;gap:.5rem}.navbar-title{font-size:.75rem}.navbar-title span:nth-child(2){display:none}.input-container{padding:.75rem}.input-textarea{min-height:80px;font-size:.9rem}.input-footer,.input-footer-left{flex-direction:column;align-items:stretch;gap:.5rem}.attach-image-btn{width:100%;justify-content:center;padding:.6rem 1rem;font-size:.85rem}.char-count{text-align:center}.image-preview-container{padding:.5rem;margin-bottom:.5rem;gap:.5rem}.response-content{padding:1rem}.control-btn span{display:none}.modal-content{max-width:100%}.lightbox-overlay{padding:1rem}.lightbox-close{width:40px;height:40px;font-size:2rem}}
