:root{--buncss-light:initial;--buncss-dark: ;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,Avenir,Helvetica,Arial,sans-serif;line-height:1.5}@media (prefers-color-scheme:dark){:root{--buncss-light: ;--buncss-dark:initial}}body{position:relative;min-width:320px;min-height:100vh;margin:0}.app{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:2rem}h1{text-align:center;margin-bottom:2rem;font-size:2.5em;line-height:1.1}h3{margin-top:0;margin-bottom:1rem;font-size:1.2em}.upload-section{display:flex;flex-direction:column;gap:2rem}.version-selector{display:flex;background:#1a1a1a;border:2px solid #fbf0df;border-radius:12px;flex-direction:column;gap:1rem;padding:1.5rem}.version-options{display:flex;flex-wrap:wrap;gap:1.5rem}.version-option{display:flex;cursor:pointer;user-select:none;background:#fbf0df1a;border:2px solid #0000;border-radius:8px;align-items: center;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s}.version-option:hover{background:#fbf0df33;border-color:#fbf0df}.version-option input[type=radio]{cursor:pointer;accent-color:#fbf0df;width:18px;height:18px}.version-info{display:flex;flex-direction:column;gap:.25rem}.version-name{color:#fbf0df;font-size:1em;font-weight:500}.version-price{color:#fbf0df;opacity:.8;font-size:.9em;font-weight:600}.version-option:has(input:checked){background:#fbf0df40;border-color:#f3d5a3}.version-option:has(input:checked) .version-name{color:#f3d5a3}.version-option:has(input:checked) .version-price{color:#f3d5a3}.version-option:has(input:checked) .version-name{font-weight:600}.version-option:has(input:checked) .version-price{opacity:1;font-weight:700}.image-upload-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:1rem}.image-upload-item{display:flex;flex-direction:column;gap:1rem}.file-input{display:none}.upload-placeholder{display:flex;cursor:pointer;color:#fbf0df;user-select:none;background-color:#1a1a1a80;border:2px dashed #fbf0df;border-radius:12px;justify-content:center;align-items: center;width:100%;min-height:200px;transition:all .3s;font-size:1.1em}.upload-placeholder:hover{background-color:#1a1a1acc;border-color:#f3d5a3}.upload-placeholder.dragging{background-color:#fbf0df26;border-style:solid;border-color:#f3d5a3;transform:scale(1.02);box-shadow:0 4px 12px #fbf0df4d}.image-preview{overflow:hidden;position:relative;border:2px solid #fbf0df;border-radius:12px;width:100%;transition:all .3s}.image-preview:hover{border-color:#f3d5a3}.image-preview img{display:block;width:100%;height:auto}.prompt-section{display:flex;flex-direction:column;gap:1rem}.prompt-input{color:#fbf0df;resize:vertical;box-sizing:border-box;outline:none;background:#1a1a1a;border:2px solid #fbf0df;border-radius:12px;width:100%;min-height:300px;padding:1rem;transition:border-color .3s;font-family:inherit;font-size:.95em}.prompt-input:focus{border-color:#f3d5a3}.prompt-input::placeholder{color:#fbf0df66}.submit-button{color:#1a1a1a;cursor:pointer;background:#fbf0df;border:0;border-radius:12px;width:100%;max-width:300px;margin:0 auto;padding:1rem 2rem;transition:all .3s;font-size:1.1em;font-weight:700}.submit-button:hover:not(:disabled){background:#f3d5a3;transform:translateY(-2px);box-shadow:0 4px 12px #fbf0df4d}.submit-button:disabled{opacity:.6;cursor:not-allowed}.error-message{color:#ff6b6b;text-align:center;background:#dc354533;border:2px solid #dc354580;border-radius:12px;padding:1rem}.loading-overlay{position:fixed;display:flex;z-index:1000;background:#000000b3;flex-direction:column;justify-content:center;align-items: center;gap:1.5rem;inset:0}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #fbf0df33;border-top-color:#fbf0df;border-radius:50%;width:60px;height:60px}.loading-text{color:#fbf0df;font-size:1.2em;font-weight:500}@keyframes spin{to{transform:rotate(360deg)}}.modal-overlay{position:fixed;display:flex;z-index:2000;background:#000c;justify-content:center;align-items: center;padding:2rem;inset:0}.modal-content{display:flex;overflow:hidden;background:#1a1a1a;border:2px solid #fbf0df;border-radius:16px;flex-direction:column;max-width:90vw;max-height:90vh;box-shadow:0 8px 32px #00000080}.modal-header{display:flex;border-bottom:2px solid #fbf0df;justify-content:space-between;align-items: center;padding:1.5rem}.modal-header h2{color:#fbf0df;margin:0;font-size:1.5em}.modal-close{color:#fbf0df;cursor:pointer;display:flex;background:0 0;border:none;border-radius:4px;justify-content:center;align-items: center;width:32px;height:32px;padding:0;transition:background .3s;font-size:2em}.modal-close:hover{background:#fbf0df33}.modal-body{overflow-y:auto;flex:1;padding:2rem}.modal-footer{display:flex;border-top:2px solid #fbf0df;justify-content:flex-end;padding:1.5rem}.header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items: center;gap:1rem;margin-bottom:2rem}.user-info{display:flex;align-items: center;gap:1rem}.user-logged-in{display:flex;flex-wrap:wrap;align-items: center;gap:1rem}.username{color:#fbf0df;font-weight:500}.usage{color:#888;font-size:.9em}.login-btn,.logout-btn{color:#1a1a1a;cursor:pointer;background:#fbf0df;border:none;border-radius:6px;padding:.5rem 1rem;transition:background .2s;font-weight:500}.login-btn:hover,.logout-btn:hover{background:#e8dcc8}.login-modal{width:90%;max-width:500px}.login-form{display:flex;flex-direction:column;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{color:#fbf0df;font-weight:500}.form-group input{color:#fff;background:#1a1a1a;border:1px solid #333;border-radius:6px;padding:.75rem;font-size:1em}.form-group input:focus{outline:none;border-color:#fbf0df}.login-error{color:#ff6b6b;background:#4a1a1a;border:1px solid #8b2a2a;border-radius:6px;padding:.75rem;font-size:.9em}.form-actions{display:flex;flex-direction:column;gap:.5rem;margin-top:1rem}.modal-button.secondary{color:#fbf0df;background:0 0;border:1px solid #fbf0df}.modal-button.secondary:hover{background:#fbf0df1a}.form-switch{text-align:center;color:#888;margin-top:1rem;font-size:.9em}.switch-link{color:#fbf0df;cursor:pointer;text-decoration:underline;font-size:inherit;background:0 0;border:none;padding:0;transition:color .2s}.switch-link:hover{color:#f3d5a3}.admin-link-container{text-align:center;border-top:1px solid #333;margin-top:1rem;padding-top:1rem}.admin-link{color:#666;cursor:pointer;text-decoration:underline;background:0 0;border:none;padding:.25rem .5rem;transition:color .2s;font-size:.85em}.admin-link:hover{color:#999}.admin-panel{background:#1a1a1a;border:2px solid #fbf0df;border-radius:12px;margin-top:2rem;padding:2rem}.admin-panel-header{display:flex;justify-content:space-between;align-items: center;margin-bottom:1.5rem}.admin-panel-header h2{color:#fbf0df;margin:0}.refresh-btn{color:#1a1a1a;cursor:pointer;background:#fbf0df;border:none;border-radius:6px;padding:.5rem 1rem;transition:background .2s;font-weight:500}.refresh-btn:hover{background:#e8dcc8}.loading-message,.empty-message{text-align:center;color:#888;padding:2rem}.users-table{overflow-x:auto}.users-table table{border-collapse:collapse;width:100%}.users-table th,.users-table td{text-align:left;color:#fbf0df;border-bottom:1px solid #333;padding:1rem}.users-table th{background:#2a2a2a;font-weight:600}.users-table tr:hover{background:#2a2a2a}.status-badge{display:inline-block;border-radius:4px;padding:.25rem .75rem;font-size:.85em;font-weight:500}.status-badge.enabled{color:#6bff6b;background:#1a4a1a}.status-badge.disabled{color:#ff6b6b;background:#4a1a1a}.toggle-btn{cursor:pointer;border:none;border-radius:6px;padding:.5rem 1rem;transition:all .2s;font-weight:500}.toggle-btn.enable{color:#6bff6b;background:#1a4a1a}.toggle-btn.enable:hover{background:#2a6a2a}.toggle-btn.disable{color:#ff6b6b;background:#4a1a1a}.toggle-btn.disable:hover{background:#6a2a2a}.history-btn{color:#fbf0df;cursor:pointer;background:0 0;border:1px solid #fbf0df;border-radius:6px;padding:.5rem 1rem;transition:all .2s;font-weight:500}.history-btn:hover{background:#fbf0df1a}.history-modal{max-width:800px;max-height:90vh}.history-list{display:flex;overflow-y:auto;flex-direction:column;gap:1.5rem;max-height:60vh}.history-item{background:#2a2a2a;border:1px solid #333;border-radius:8px;padding:1rem}.history-item-header{margin-bottom:1rem}.history-item-info{display:flex;flex-wrap:wrap;align-items: center;gap:1rem}.history-version{color:#fbf0df;font-weight:600}.history-time{color:#888;font-size:.9em}.history-status{border-radius:4px;padding:.25rem .75rem;font-size:.85em;font-weight:500}.history-status.completed{color:#6bff6b;background:#1a4a1a}.history-status.processing{color:#ffff6b;background:#4a4a1a}.history-status.failed{color:#ff6b6b;background:#4a1a1a}.history-images{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem;margin-top:1rem}.history-image-item{overflow:hidden;background:#1a1a1a;border:1px solid #333;border-radius:8px}.history-image-item img{display:block;width:100%;height:auto}.admin-badge{color:#ff6b6b;background:#8b2a2a;border-radius:4px;padding:.25rem .75rem;font-size:.9em;font-weight:600}.modal-button{color:#1a1a1a;cursor:pointer;background:#fbf0df;border:0;border-radius:8px;padding:.75rem 2rem;transition:all .3s;font-size:1em;font-weight:700}.modal-button:hover{background:#f3d5a3;transform:translateY(-2px)}.result-images{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.result-image-item{overflow:hidden;background:#1a1a1a;border:2px solid #fbf0df;border-radius:12px}.result-image-item img{display:block;width:100%;height:auto}@media (prefers-reduced-motion){*,:before,:after{animation:none!important}}
