: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}}html,body,#root{height:100%;min-height:100dvh}body{margin:0}#root{display:flex;flex-direction:column}main{flex:1;min-height:0}#root{width:100%;max-width:1280px;margin:0 auto;padding:0;box-sizing:border-box;overflow-x:hidden}html,body{margin:0;padding:0;width:100%;overflow-x:hidden;box-sizing:border-box}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.title-block{text-align:center;margin-bottom:40px;color:#fff;padding:40px 20px 20px;background:linear-gradient(135deg,#ff6ec4,#7873f5);border-radius:16px;box-shadow:0 10px 25px #0000001a}.title-block h1{font-size:2.7rem;margin-bottom:12px;font-weight:700;word-break:break-word}.title-block{padding:24px 12px 12px}.title-block h1 span{color:#fff;background-color:#0003;padding:4px 12px;border-radius:8px}.subtitle{font-size:1.2rem;color:#ffe8fa;font-weight:300}.box-container{display:flex;flex-direction:column;gap:24px;margin-bottom:40px}.box{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;background:#fff;border-radius:12px;padding:24px;box-shadow:0 4px 12px #0000001a;gap:20px}.upload-box{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;background:#80e7f2;border-radius:12px;padding:24px;box-shadow:0 4px 12px #00000014;gap:20px;margin-bottom:24px}.generate-box{display:flex;flex-direction:column;align-items:center;background:#6bf2c1;border-radius:12px;padding:24px;box-shadow:0 4px 12px #00000014;gap:16px;margin-bottom:40px}.upload-box label{background-color:#eee;padding:12px 20px;border-radius:8px;cursor:pointer;font-weight:500;font-size:16px;border:2px solid #ccc;color:#000}.upload-box input[type=text]{padding:.5rem;min-width:200px;border-radius:6px;border:1px solid #ccc}.box select{padding:12px 20px;border-radius:6px;border:1px solid #ccc;font-size:16px;font-weight:500;background-color:#fff;color:#333;cursor:pointer;min-width:160px;height:48px;display:flex;align-items:center}.suggestion-buttons{display:flex;flex-direction:column;gap:8px;padding:0;margin:0}.suggestion-buttons button{margin-right:10px;background-color:#ff6ec4;color:#fff;border:none;border-radius:6px;padding:8px 12px;cursor:pointer;transition:background-color .2s}.suggestion-buttons button:hover{background-color:#e14ca2}.generate-btn{background-color:#7873f5;color:#fff;border:none;border-radius:6px;padding:12px 20px;cursor:pointer;font-size:16px;font-weight:500;transition:background-color .2s;height:48px}.generate-btn:hover{background-color:#5a54d1}.styled-select{padding:12px 20px;border-radius:6px;border:1px solid #ccc;font-size:16px;font-weight:500;background-color:#fff;color:#333;cursor:pointer;min-width:160px;height:48px;display:flex;align-items:center}.styled-input{padding:12px 20px;border-radius:6px;border:1px solid #ccc;font-size:16px;font-weight:400;min-width:240px;height:48px;color:#333;background-color:#fff;box-shadow:0 2px 4px #0000000d}.styled-input::placeholder{color:#aaa}.generate-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:center;margin-top:12px}.legend-instruction{text-align:center;font-size:1rem;color:#555;margin-bottom:10px;line-height:1}.step-wrapper{position:relative}.step-label{position:absolute;top:0;left:0;width:50px;height:50px;background-color:#8a6eff;color:#fff;font-weight:700;font-size:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #00000026;z-index:999}.box,.upload-box,.generate-box{width:100%;box-sizing:border-box}@media (min-width: 768px){.box,.upload-box,.generate-box{max-width:800px;margin:0 auto}}.generate-controls{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}@media (max-width: 600px){.generate-controls{flex-direction:column;align-items:center}}.loader{border:4px solid #eee;border-top:4px solid #7873f5;border-radius:50%;width:32px;height:32px;animation:spin 1s linear infinite;margin:0 auto}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.header-container{width:100%;max-width:100%;padding:60px 50px 10px;box-sizing:border-box;background-color:#f6b8b8;color:#fff;text-align:center}.header-content{display:flex;align-items:flex-start;flex-wrap:wrap;max-width:960px;margin:0 auto;align-items:center}.title-main h1{font-size:3.5rem;font-weight:900;margin:0;line-height:1;text-align:left}.title-main span{display:block}.title-sub{font-size:1.2rem;font-weight:700;text-align:right;margin-top:8px}.tagline{margin-top:30px;font-size:1.2rem;font-weight:500;color:#fff;line-height:1.4}@media (max-width: 600px){.header-content,.header-container{flex-direction:column;align-items:center;text-align:center}.title-main h1{font-family:Poppins,sans-serif;font-size:2.5rem;font-weight:800;text-align:center;margin:0}.title-sub{font-size:1rem;text-align:center;margin-top:12px}}.logo-title{font-size:3.5rem;font-weight:900;line-height:1;text-align:left;margin:0 20px 0 0;color:red;flex:1;overflow-wrap:break-word}.header-right{text-align:right;font-size:1.2rem;font-weight:700;margin-top:-120px}.subtitle{margin:0}.tagline{margin-top:0;text-align:left;font-size:1.4rem;font-weight:600;color:#fff;line-height:1}@media (max-width: 600px){.header-inner{width:100%;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap}.logo-title{font-size:2.5rem;text-align:center}.header-right{font-size:1rem;margin-top:10px;text-align:center}.tagline{font-size:1rem;margin-top:20px}}.filter-radio-group{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.filter-option{display:flex;align-items:center;background-color:#eee;padding:8px 14px;border-radius:8px;cursor:pointer;font-weight:500;transition:background-color .2s ease;border:2px solid transparent}.filter-option input[type=radio]{display:none}.filter-option.selected{background-color:#7873f5;color:#fff;border-color:#5a54d1}.app-footer{background-color:#0d1117;color:#fffc;padding:20px 16px;text-align:center;font-size:14px;margin-top:auto}.footer-content{max-width:800px;margin:0 auto}.footer-links{margin-top:8px;display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.footer-links a{color:#fffc;text-decoration:none;transition:color .2s ease}.footer-links a:hover{color:#f56eb3}.reset-button{width:200px;padding:12px 24px;font-size:16px;font-weight:500;background-color:#f56eb3;color:#fff;border:none;border-radius:12px;box-shadow:0 4px 10px #0000001a;cursor:pointer;transition:all .2s ease-in-out}.reset-button:hover{background-color:#e04798;transform:scale(1.05)}.download-button{padding:12px 24px;font-size:16px;font-weight:700;border:none;border-radius:8px;cursor:pointer;transition:background-color .3s ease;width:100%;display:block}.download-button.active{background-color:#28a745;color:#fff}.download-button.disabled{background-color:#ccc;color:#666;cursor:not-allowed}.loader-wrapper{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:16px}.loading-text{font-size:14px;color:#888;font-style:italic;text-align:center}.hint-input{width:100%;padding:10px;margin-top:12px;font-size:14px;border-radius:8px;border:1px solid #ccc;font-family:Poppins,sans-serif}.validate-button{margin-top:10px;padding:8px 16px;background-color:#000;color:#fff;border:none;border-radius:6px;cursor:pointer}.cropper-wrapper{position:relative;width:100%;height:400px;margin-bottom:20px}.cropper-container{position:relative;width:100%;height:100%;overflow:hidden}.cropper-actions{position:absolute;bottom:10px;left:50%;transform:translate(-50%);z-index:10}.crop-confirm-btn{padding:10px 20px;background-color:#222;color:#fff;border:none;border-radius:8px;font-weight:700;cursor:pointer}.box{transition:max-height .4s ease,opacity .4s ease;overflow:hidden}.toggle-menu-btn{display:block;background-color:#fff;color:#000;border:2px solid #000000;border-radius:30px;padding:10px 20px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .3s ease,color .3s ease;margin:10px 0;font-family:Poppins,sans-serif}.toggle-menu-btn:hover{background-color:#000;color:#fff}.a2hs-tooltip{position:absolute;top:110%;left:50%;transform:translate(-50%);background:#fff;color:#000;padding:12px 14px;border-radius:12px;box-shadow:0 10px 24px #00000026;width:min(320px,90vw);z-index:9999;font-family:Poppins,system-ui,sans-serif;animation:a2hs-pop .18s ease-out}@keyframes a2hs-pop{0%{transform:translate(-50%) scale(.95);opacity:0}to{transform:translate(-50%) scale(1);opacity:1}}.a2hs-tooltip p{margin:0 0 10px;line-height:1.35}.a2hs-action{width:100%;padding:10px 12px;border:none;border-radius:10px;font-weight:700;cursor:pointer;background:#000;color:#fff}.a2hs-action.ghost{background:#f5f5f5;color:#111}.a2hs-close{position:absolute;right:6px;top:6px;background:transparent;border:none;font-size:18px;cursor:pointer;line-height:1}.a2hs-steps{display:flex;gap:8px;font-size:.95rem;margin:6px 0 10px}.collection-container{width:100%!important;max-width:100%!important;box-sizing:border-box}.collection-container h2{margin-bottom:15px;width:100% max-width: 100%!important}.save-row{display:flex;align-items:center;gap:12px;margin-top:10px;flex-wrap:wrap;width:100%}.save-button{padding:10px 16px;border-radius:10px;border:1px solid #ddd;background:#e9e9e9;color:#777;font-weight:700;cursor:not-allowed;transition:background .2s ease,color .2s ease,transform .06s ease}.save-button.active{background:#111;color:#fff;border-color:#111;cursor:pointer}.save-button:disabled{opacity:.6;cursor:not-allowed}.save-button.active:active{transform:translateY(1px)}.save-feedback{font-size:14px;color:#0a7a27;opacity:0;transition:opacity .2s ease}.save-feedback.visible{opacity:1}.collection-section{background:#fff;padding:16px;border-radius:12px;box-shadow:0 4px 12px #0000000f;margin-top:24px}.collection-header{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.collection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;margin-top:16px}.pola-item{background:#fafafa;border:1px solid #eee;border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:6px}.thumb-button{padding:0;margin:0;border:0;background:transparent;cursor:zoom-in}.pola-thumb{width:100%;height:auto;border-radius:8px;display:block}.pola-caption{font-weight:600;font-size:14px;margin:4px 0 0}.pola-date{color:#888;font-size:12px;margin:0 0 6px}.danger-outline{padding:8px 10px;border-radius:8px;border:1px solid #e55;background:#fff;color:#c00;cursor:pointer}.danger-ghost{padding:8px 12px;border-radius:8px;border:1px solid #e33;background:#fff5f5;color:#c00;cursor:pointer}.secondary{padding:8px 12px;border-radius:8px;border:1px solid #ddd;background:#fff;cursor:pointer;font-size:12px;color:#000!important}.primary{padding:8px 12px;border-radius:8px;border:1px solid #111;background:#111;color:#fff;cursor:pointer;text-decoration:none}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f0f1499;display:flex;align-items:center;justify-content:center;padding:18px;z-index:9999}.modal-card{max-width:min(92vw,600px);width:100%;background:#d1e3e6;border-radius:14px;overflow:hidden;box-shadow:0 6px 20px #00000040;display:flex;flex-direction:column}.modal-img{width:90%;height:auto;display:block;background:#000;margin:20px auto 0}.modal-footer{padding:12px;display:flex;align-items:center;gap:12px;justify-content:space-between;flex-wrap:wrap}.modal-meta{display:flex;flex-direction:column;gap:2px}.muted{color:#666}.error-text{color:#c00}.masonry{columns:2;column-gap:8px}@media (min-width: 768px){.masonry{columns:3}}@media (min-width:1024px){.masonry{columns:4}}.masonry img{width:100%;display:block;margin:0 0 8px;border-radius:8px}.refresh-btn{--btn-start: #0ea5a5;--btn-end: #0b7f7f;--btn-shadow: rgba(14,165,165,.35);-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:9999px;padding:5px 14px;background:linear-gradient(135deg,var(--btn-start),var(--btn-end));color:#fff;font-weight:400;font-size:12px;letter-spacing:.2px;display:inline-flex;align-items:center;gap:5px;box-shadow:0 6px 14px var(--btn-shadow);cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,opacity .2s ease;margin:15px 15px 5px 5px}.refresh-btn:hover{transform:translateY(-1px);box-shadow:0 10px 20px var(--btn-shadow)}.refresh-btn:active{transform:translateY(0);box-shadow:0 4px 10px var(--btn-shadow)}.refresh-btn:focus-visible{outline:3px solid #fff;outline-offset:2px;box-shadow:0 0 0 4px #0ea5a559,0 6px 14px var(--btn-shadow)}.refresh-btn[disabled]{opacity:.65;cursor:wait}.refresh-icon{display:block}.spinner{width:16px;height:16px;display:block;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (min-width: 768px){.download-button{max-width:480px;margin:0 auto}}
