:root{font-size:14px;--container-width: 1600px;--col-gap: 3px;--row-gap: 3px;--background-color: #121212;--surface-color: #1a1a1a;--primary-color: #bb86fc;--primary-variant-color: #3700b3;--secondary-color: #ad6aff;--on-background-color: #e0e0e0;--on-surface-color: #cccccc;--on-primary-color: #000000;--error-color: #f08c00;--border-color: #404040;--drop-zone-bg: #2f2f2f;--input-border-color: #585858;--modal-control-bg: rgba(0, 0, 0, .7);--modal-control-fg: #ffffff}body.light-mode{--background-color: #f4f5f7;--surface-color: #ffffff;--primary-color: #6200ee;--primary-variant-color: #3700b3;--secondary-color: #6700f8;--on-background-color: #121212;--on-surface-color: #444444;--on-primary-color: #ffffff;--error-color: #f08c00;--border-color: #bcc0c6;--drop-zone-bg: #e9eef2;--input-border-color: #b0b8c1;--modal-control-bg: rgba(255, 255, 255, .8);--modal-control-fg: #000000}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,Noto Sans SC,sans-serif;background-color:var(--background-color);color:var(--on-background-color);overscroll-behavior:none;transition:background-color .3s ease,color .3s ease}#root{display:grid;grid-template-columns:200px 1fr 1fr 400px 2fr;gap:16px;padding:16px;height:100vh;width:100vw}body:has(.login-container) #root,body:has(.page) #root,body:has(.gallery) #root,body:has(.gallery-main) #root{display:block;padding:0;height:100vh;overflow-x:hidden;overflow-y:auto}h1,h2,h3,h4{font-weight:600;margin-bottom:4px;color:var(--on-background-color)}.panel{background-color:var(--surface-color);border-radius:8px;padding:8px;display:flex;flex-direction:column;gap:8px;overflow-y:auto;border:1px solid var(--border-color);transition:background-color .3s ease,border-color .3s ease;margin-top:50px;min-height:0}.fixed-menu{position:fixed;top:15px;right:17px;display:flex;gap:8px;justify-content:flex-end;background-color:transparent;height:30;z-index:100}.fixed-lang{position:fixed;top:0;left:0;right:0;display:flex;justify-content:flex-end;z-index:1100;background-color:transparent}.fixed-logo{position:fixed;top:15px;left:15px;width:320px;z-index:10}.menu-btn{background:none;border:none;color:var(--text-muted-color);padding:.35rem .7rem;margin:0;cursor:pointer;font-size:.9rem;transition:all .2s ease;width:auto;background-color:#fff;border-radius:0}.menu-btn:hover{color:#fff;background-color:var(--background-color)}.menu-btn.active{background-color:var(--primary-color);color:#fff;font-weight:500}.settings-bar{display:flex;gap:8px;padding-bottom:10px;border-bottom:1px solid var(--border-color);align-items:center}.lang-btn{display:flex;justify-content:center;align-items:center;flex-grow:1;padding:6px 4px;font-size:.9rem;font-family:Inter,Noto Sans SC,sans-serif;background-color:var(--drop-zone-bg);color:var(--on-background-color);border:1px solid var(--border-color);text-align:center;border-radius:6px;cursor:pointer;transition:background-color .3s,border-color .3s;flex-shrink:0}.lang-btn:hover{border-color:var(--secondary-color)}.lang-btn.selected{background-color:var(--primary-color);color:var(--on-primary-color);border-color:var(--primary-color);font-weight:500}.prompt-card{background-color:var(--drop-zone-bg);border:1px solid var(--border-color);border-radius:6px;padding:10px;cursor:pointer;transition:border-color .3s,background-color .3s;font-size:.875rem;word-wrap:break-word;color:var(--on-surface-color)}.input-section:last-child{margin-bottom:0}.drop-zone{border:2px dashed var(--border-color);border-radius:8px;padding:10px;text-align:center;cursor:pointer;transition:border-color .3s,background-color .3s;position:relative;overflow:hidden;background-color:var(--drop-zone-bg);display:flex;justify-content:center;align-items:center;flex-direction:column;color:var(--on-surface-color)}.drop-zone.resizing{cursor:default}.drop-zone-image-preview{position:absolute;top:0;left:0;width:70%;height:100%;object-fit:contain;pointer-events:none}.original-image-drop-zone{width:auto;margin-left:auto;margin-right:auto;max-width:60%;max-height:25vh;min-height:20vh;aspect-ratio:1 / 1;transition:aspect-ratio .3s ease-in-out}.original-image-drop-zone-image{width:auto;margin-left:auto;margin-right:auto;max-height:25vh;aspect-ratio:1 / 1;transition:aspect-ratio .3s ease-in-out}.original-image-drop-zone-image .drop-zone-image-preview{object-fit:contain}textarea{width:100%;padding:4px;border-radius:6px;border:1px solid var(--border-color);background-color:var(--drop-zone-bg);color:var(--on-background-color);font-family:inherit;resize:vertical;min-height:40px}textarea:disabled{opacity:.6;cursor:not-allowed;background-color:color-mix(in srgb,var(--drop-zone-bg) 50%,var(--surface-color) 50%)}.input-group,.input-group:first-child{margin-top:0}.input-label{font-size:.8rem;font-weight:500;color:var(--on-surface-color)}.selector-btn{flex:1;padding:4px 6px;font-size:.8rem;background-color:var(--drop-zone-bg);color:var(--on-background-color);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:background-color .3s,border-color .3s}.selector-btn:hover:not(:disabled){border-color:var(--secondary-color)}.selector-btn.selected{background-color:var(--primary-color);color:var(--on-primary-color);border-color:var(--primary-color)}.selector-btn:disabled{opacity:.5;cursor:not-allowed}.checkbox-group{display:grid;grid-template-columns:1fr 1fr;gap:8px}.checkbox-label{display:flex;align-items:center;gap:4px;padding:4px;background-color:var(--drop-zone-bg);border-radius:6px;cursor:pointer;font-size:.85rem;border:1px solid var(--border-color);transition:all .2s;-webkit-user-select:none;user-select:none;color:var(--on-surface-color)}.checkbox-label input[type=checkbox]{accent-color:var(--primary-color);width:10px;height:10px;cursor:pointer}button,.button-like{padding:4px 10px;border-radius:6px;border:none;font-size:.875rem;font-weight:500;cursor:pointer;font-family:Inter,Noto Sans SC,sans-serif;transition:background-color .3s,transform .1s,filter .3s;background-color:var(--primary-color);color:var(--on-primary-color);text-align:center;text-decoration:none;display:inline-block;flex-shrink:0}button:hover,.button-like:hover{filter:brightness(1.2)}button:active,.button-like:active{transform:scale(.98)}button:disabled{background-color:var(--border-color);color:var(--on-surface-color);cursor:not-allowed;transform:none;filter:none}button.secondary,.button-like.secondary{background-color:var(--drop-zone-bg);color:var(--on-background-color);border:1px solid var(--border-color)}#projects-list-container{padding-top:16px;border-top:1px solid var(--border-color)}.projects-list{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto}.project-btn{width:100%;padding:10px;font-size:.875rem;text-align:left;background-color:var(--drop-zone-bg);color:var(--on-background-color);border:1px solid var(--border-color)}.project-btn.selected{background-color:var(--primary-variant-color);color:#fff;border-color:var(--primary-color);font-weight:700}#result-display{width:100%;height:100%;display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-content:flex-start;gap:10px;position:relative;min-height:300px;overflow-y:auto}.history-item{cursor:pointer;border-radius:6px;overflow:hidden;position:relative;border:2px solid transparent;transition:border-color .3s;background-color:var(--drop-zone-bg)}.history-item-prompt{padding:8px;font-size:.8125rem;color:var(--on-surface-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}.modal-content.project-modal{background-color:var(--surface-color);padding:24px;border-radius:8px;width:100%;max-width:700px;min-width:600px;display:flex;flex-direction:column;gap:20px;border:1px solid var(--border-color)}@media(max-width:1400px){#root{grid-template-columns:200px 200px 400px 1.5fr 1fr}}@media(max-width:1200px){#root{grid-template-columns:200px 1fr 1.5fr;grid-template-rows:auto 1fr;grid-template-areas:"controls inputs results" "library history results";height:100vh}#controls-panel{grid-area:controls}#prompt-library-panel{grid-area:library}#inputs-panel{grid-area:inputs}#results-panel{grid-area:results}#history-panel{grid-area:history}}@media(max-width:992px){#root{grid-template-columns:1fr 1.5fr;grid-template-areas:"inputs results" "controls results" "library library" "history history";height:auto}}@media(max-width:768px){#root{grid-template-columns:1fr;grid-template-areas:"inputs" "results" "controls" "library" "history";padding:8px;gap:8px}.panel{padding:8px}.result-item{flex-basis:100%;max-width:100%}}.app-footer{margin-top:auto;padding:1.5rem 2rem;background-color:var(--surface-color);border-top:1px solid var(--border-color);color:var(--text-muted-color);display:flex;align-items:center;justify-content:center;gap:.5rem 1.5rem;font-size:.875rem;text-align:center;flex-wrap:wrap}.footer-company{display:inline-flex;align-items:center;gap:.5rem;font-weight:500}.footer-logo{height:20px;width:20px}.fixed-login{position:fixed;inset:0;display:flex;justify-content:center;align-items:center;background-color:transparent;z-index:50}.login-container{display:inline-flex;justify-content:center;align-items:center;flex-grow:1;padding:2rem;background-color:var(--background-color)}.login-box{width:100%;max-width:500px;padding:2.5rem;background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--card-shadow);text-align:center}.login-box header{margin-bottom:1.5rem}.login-box header h2{border-bottom:none;padding-bottom:0}.login-box p{color:var(--text-muted-color);margin-bottom:1.5rem}.login-box input[type=email]{text-align:center;margin-bottom:1.5rem}.big-input{width:100%;max-width:420px;height:44px;padding:10px 14px;font-size:1rem;box-sizing:border-box}.fixed-gallery{position:fixed;inset:0;display:flex;justify-content:center;align-items:center;background-color:transparent;z-index:10}.page{display:flex;flex-direction:column;align-items:center;padding:0;margin-top:55px}.title{width:var(--container-width);margin:0 0 10px;font-size:1.125rem;font-weight:600;color:#bbb}.gallery{position:fixed;display:flex;flex-direction:column;align-items:center;padding:0;z-index:10}.gallery-grid{column-count:3;column-gap:var(--col-gap)}.titleBox{background-color:#007bff;padding:10px;border:0px solid #333;border-radius:0;margin:30px auto;text-align:center;color:#fff}.titleBox-h2{background-color:transparent;padding:10px;border:0px solid #333;border-radius:0;margin:15px auto;text-align:center;color:#8245d1}.f-card{display:block;break-inside:avoid;margin-top:0;margin-right:0;margin-bottom:var(--row-gap);margin-left:0;padding:0;border:0;background:transparent;cursor:pointer;position:relative;overflow:hidden;border-radius:0;outline:none}.f-card img,.f-card video{width:100%;height:auto;display:block;object-fit:contain;object-position:center;filter:brightness(.98);transition:transform .25s ease,filter .25s ease}.f-card:hover img,.f-card:hover video{transform:scale(1.01);filter:brightness(1.02)}.loading{text-align:center;padding:16px;color:#888}.sentinel{height:1px}.f-modal-overlay{position:fixed;inset:0;background:#000000a6;display:flex;align-items:center;justify-content:center;padding:24px;z-index:1000}.modal-body{max-width:min(1200px,95vw);max-height:min(95dvh,1200px);overflow:auto;display:flex;align-items:center;justify-content:center}.modal-media{width:auto;height:auto;max-width:100%;max-height:100%;display:block;object-fit:contain}.modal-body img,.modal-body video{height:auto!important;max-height:90%!important}.modal-close{position:absolute;top:8px;right:8px;width:36px;height:36px;border-radius:50%;border:0;background:#1f1f1f;color:#eee;font-size:1.25rem;line-height:1;cursor:pointer}.modal-close:hover{background:#2a2a2a}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:#2a2a2a;border-radius:8px}*::-webkit-scrollbar-track{background:transparent}.login-input{width:100%;padding:14px 16px;font-size:1rem;border-radius:6px;border:1px solid var(--border-color);background-color:var(--drop-zone-bg);color:var(--on-background-color);transition:border-color .2s,box-shadow .2s}.gallery-wrap{width:100%;max-width:2500px;margin:0 auto;padding:12px 8px;overflow:hidden}.main{flex:1}.masonry{position:relative;margin:0 auto;overflow:hidden}.card{position:absolute;border-radius:8px;overflow:hidden;will-change:top,left;z-index:var(--z, 1)}.card:hover{z-index:999999}.card .card-inner{position:relative;width:100%;height:100%}.card-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .25s ease;pointer-events:none;display:block}.card-img-human{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .25s ease;pointer-events:auto;display:block;cursor:pointer}.card-img.after{z-index:1;opacity:1}.card-img.before{z-index:2;opacity:0}.card:hover .card-img.before{opacity:1}.card:hover .card-img.after{opacity:0}.badge-before{position:absolute;left:8px;bottom:8px;padding:2px 6px;font-size:.75rem;background:#0000008c;color:#fff;border-radius:4px;pointer-events:none;z-index:3;opacity:0;transition:opacity .2s ease}.card:hover .badge-before{opacity:1}.masonry.is-hidden{opacity:0}.masonry.is-ready{opacity:1;transition:opacity .15s ease}.history-image-container{position:relative}.history-item-download-btn{position:absolute;top:8px;right:8px;z-index:2;opacity:0;visibility:hidden;transform:translateY(-10px);transition:opacity .2s ease-in-out,transform .2s ease-in-out,visibility .2s;background:var(--modal-control-bg);color:var(--modal-control-fg);border:1px solid color-mix(in srgb,var(--modal-control-fg) 30%,transparent);border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;padding:0;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.history-item:hover .history-item-download-btn{opacity:1;visibility:visible;transform:translateY(0)}.history-item-download-btn:hover{background:color-mix(in srgb,var(--modal-control-bg) 80%,var(--modal-control-fg) 10%);border-color:var(--secondary-color);color:var(--secondary-color)}.history-item-download-btn svg{width:18px;height:18px}.download-options{margin-top:-4px}#inputs-panel>button{margin-top:10px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--surface-color)}::-webkit-scrollbar-thumb{background-color:#4a4a4a;border-radius:10px;border:2px solid var(--surface-color)}::-webkit-scrollbar-thumb:hover{background-color:#6a6a6a}body.light-mode ::-webkit-scrollbar-track{background:var(--background-color)}body.light-mode ::-webkit-scrollbar-thumb{background-color:#c1c1c1;border-color:var(--background-color)}body.light-mode ::-webkit-scrollbar-thumb:hover{background-color:#a8a8a8}#human-library-container{position:fixed;bottom:0;left:50%;transform:translate(-50%);z-index:100;display:flex;flex-direction:column;align-items:center;width:100%;pointer-events:none}#human-library-toggle{width:100px;height:30px;padding:0;font-size:.8rem;border-bottom-left-radius:0;border-bottom-right-radius:0;pointer-events:all}.human-library-panel{width:100%;height:0;background-color:var(--surface-color);border-top:1px solid var(--border-color);box-shadow:0 -4px 12px #0003;overflow:hidden;transition:height .3s ease-in-out,padding .3s ease-in-out;display:flex;flex-direction:column;gap:6px;padding:0 10px;pointer-events:all}#human-library-container.open .human-library-panel{height:200px;padding:5px}.human-library-section{display:flex;flex-direction:column;min-height:0}.human-library-section.full-height{height:100%}.human-library-section h4{margin:0 0 5px 5px;font-size:.8rem;color:var(--on-surface-color);flex-shrink:0}.human-library-list{display:flex;flex-direction:row;gap:5px;overflow-x:auto;padding-bottom:0;flex-grow:1;min-height:0}.human-library-item{width:150px;height:150px;flex-shrink:0;border:2px solid var(--border-color);border-radius:6px;cursor:pointer;transition:border-color .2s;background-color:var(--drop-zone-bg);padding:0;position:relative}.human-library-item:hover{border-color:var(--primary-color)}.human-library-item-inner{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--on-surface-color)}.human-library-item img{max-width:100%;max-height:100%;object-fit:contain;border-radius:0}.human-library-item.folder .human-library-item-inner{font-size:.9rem}.human-library-item.folder svg{width:40px;height:40px;stroke:var(--on-surface-color);transition:stroke .2s,color .2s}.human-library-item.folder:hover svg{stroke:var(--primary-color)}.human-library-item.folder:hover span{color:var(--primary-color)}.human-library-section.dragging-over{border-color:var(--primary-color);background-color:color-mix(in srgb,var(--surface-color) 80%,var(--primary-color) 20%)}.human-library-actions-stack{width:150px;height:150px;flex-shrink:0;display:flex;flex-direction:column;padding:3px;gap:5px}.human-library-action-btn{flex-grow:1;width:100%;height:33px;padding:0;font-size:.8rem;font-weight:500;background-color:var(--drop-zone-bg);color:var(--on-surface-color);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;text-align:center;margin:0}.human-library-action-btn:hover:not(:disabled){border-color:var(--primary-color);color:var(--primary-color)}.human-library-item.small-folder{width:100%;height:35px;flex-grow:1.5;padding:2px}.human-library-item.small-folder .human-library-item-inner{gap:2px;font-size:.8rem}.human-library-item.small-folder svg{width:20px;height:20px}.my-library-delete-btn{position:absolute;bottom:5px;right:5px;width:20px;height:20px;border-radius:50%;background-color:#000000b3;color:#fff;border:1px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;font-size:14px;line-height:20px;padding:0;cursor:pointer;z-index:2;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s,background-color .2s}.human-library-item:hover .my-library-delete-btn{opacity:.5;visibility:visible}.my-library-delete-btn:hover{opacity:1;background-color:var(--error-color);border-color:transparent}button.warning-btn{background-color:var(--error-color);color:var(--on-primary-color)}button.warning-btn:hover{filter:brightness(1.2)}.img-modal-overlay{position:fixed;inset:0;background:#000000a6;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:9990}.img-modal-content{position:relative;max-width:80vw;max-height:80vh;display:flex;align-items:center;justify-content:center;padding:0}.img-modal-img{max-width:80vw;max-height:80vh;object-fit:contain;box-shadow:0 10px 40px #0006;border-radius:16px}.img-modal-actions{position:absolute;right:14px;bottom:14px;display:flex;gap:10px}.img-modal-btn{appearance:none;border:1px solid rgba(255,255,255,.5);background:#14141480;color:#fff;padding:10px 14px;border-radius:999px;font-size:14px;line-height:1;opacity:.5;transition:opacity .15s ease,transform .1s ease,background .2s ease,border-color .2s ease;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);cursor:pointer}.img-modal-btn:hover{opacity:1;transform:translateY(-1px);background:#1e1e1eb3;border-color:#ffffffbf}.img-modal-btn:active{transform:translateY(0)}.img-modal-btn{background-image:linear-gradient(180deg,#ffffff0f,#0000000f)}.history-list-container{flex-grow:1;overflow-y:auto;min-height:0}.settings-menu-container{position:relative}.settings-btn svg{width:18px;height:18px;fill:currentColor}.settings-dropdown{position:absolute;top:100%;right:0;z-index:10;margin-top:4px;background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:6px;box-shadow:0 4px 12px #0003;display:flex;flex-direction:column;width:max-content;min-width:180px;padding:4px;animation:fadeIn .15s ease-out}.settings-dropdown a{padding:8px 12px;font-size:.9rem;color:var(--on-surface-color);text-decoration:none;border-radius:4px;transition:background-color .2s,color .2s}.settings-dropdown a:hover{background-color:var(--primary-color);color:var(--on-primary-color)}.settings-modal-overlay{position:fixed;inset:0;background:color-mix(in srgb,var(--background-color) 85%,transparent);display:flex;justify-content:center;align-items:center;z-index:2000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:fadeIn .3s ease}.settings-modal{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;padding:24px;width:90%;max-width:800px;max-height:80vh;display:flex;flex-direction:column;gap:16px;box-shadow:0 5px 20px #00000040}.settings-modal-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--border-color);flex-shrink:0}.settings-modal-title{font-size:1.25rem;margin:0;color:var(--on-background-color)}.settings-modal-close-btn{background:none;border:none;color:var(--on-surface-color);font-size:1.75rem;font-weight:300;line-height:1;cursor:pointer;padding:0 4px;transition:color .2s}.settings-modal-close-btn:hover{color:var(--primary-color)}.settings-modal-content{overflow-y:auto;padding-right:8px;line-height:1.6}.settings-modal-content h5{font-size:1rem;font-weight:600;color:var(--primary-color);margin-top:1em;margin-bottom:.5em}.settings-modal-content p{font-size:.9rem;color:var(--on-surface-color);margin-bottom:1em}.settings-modal-content strong{font-weight:600;color:var(--on-background-color)}.video-container{display:flex;justify-content:center}.video-wrapper{position:relative;width:99%;padding-bottom:56%;height:0}.video-wrapper iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none}#root.page-photo{font-size:14px;display:grid;grid-template-columns:220px 560px 1fr 300px;grid-template-rows:1fr;width:100vw;height:100vh;padding:16px;gap:16px}#root.page-photo .panel{background-color:var(--surface-color);border-radius:8px;padding:8px;display:flex;flex-direction:column;gap:8px;overflow-y:auto;border:1px solid var(--border-color);transition:background-color .3s ease,border-color .3s ease;margin-top:50px;min-height:0}#root.page-photo #controls-panel-1 h2{font-size:1.125rem;margin-top:0;margin-bottom:0}#root.page-photo #results-panel-1 h2,#root.page-photo #photo-export-panel-1 h2,#root.page-photo #history-panel-1 h2{font-size:1.125rem;margin-top:0;margin-bottom:10}#root.page-photo #left-column-1{display:grid;grid-template-rows:auto 1fr;gap:0px;min-height:0}#root.page-photo #left-column-1>.panel{min-height:0}#root.page-photo #controls-panel-1{justify-content:flex-start}#root.page-photo #inputs-panel-1{gap:5}#root.page-photo #results-panel-1{gap:10px;padding:0}.panel-header{padding:10px 10px 0;display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.panel-header h2,.panel-header h3{margin-bottom:0}#root.page-photo #history-panel-1{gap:12px}#root.page-photo #photo-export-panel-1{gap:5}.project-info{font-size:.9rem;color:var(--on-surface-color);padding:8px;background-color:var(--drop-zone-bg);border-radius:6px;text-align:center;border:1px solid var(--border-color);word-break:break-all}#root.page-photo #inputs-panel-1>.input-section:first-child{padding:8px;align-items:center}.printing-image-container{width:auto;max-width:100%;max-height:25vh;min-height:20vh;aspect-ratio:1/1;background-color:var(--drop-zone-bg);border-radius:8px;color:var(--on-surface-color);border:1px solid var(--border-color);padding:5px}.original-image-drop-zone-1{width:auto;max-width:70%;max-height:30vh;min-height:25vh;aspect-ratio:1 / 1;transition:aspect-ratio .3s ease-in-out}.original-image-drop-zone-1 .drop-zone-image-preview{object-fit:contain}.color-temp-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1;mix-blend-mode:overlay}.crop-box{position:absolute;cursor:move;border:2px solid var(--primary-color);box-shadow:0 0 0 9999px #0009;z-index:2}.resize-handle{position:absolute;width:10px;height:10px;background:var(--primary-color);border:1px solid var(--on-primary-color);z-index:3}.resize-handle.n{top:-5px;left:50%;transform:translate(-50%);cursor:n-resize}.resize-handle.s{bottom:-5px;left:50%;transform:translate(-50%);cursor:s-resize}.resize-handle.e{right:-5px;top:50%;transform:translateY(-50%);cursor:e-resize}.resize-handle.w{left:-5px;top:50%;transform:translateY(-50%);cursor:w-resize}.resize-handle.ne{top:-5px;right:-5px;cursor:ne-resize}.resize-handle.nw{top:-5px;left:-5px;cursor:nw-resize}.resize-handle.se{bottom:-5px;right:-5px;cursor:se-resize}.resize-handle.sw{bottom:-5px;left:-5px;cursor:sw-resize}.remove-image-btn{position:absolute;top:10px;right:10px;background:var(--modal-control-bg);color:var(--modal-control-fg);border:none;border-radius:50%;width:28px;height:28px;cursor:pointer;z-index:3;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;line-height:1;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);transition:all .2s ease-in-out;opacity:.5}.remove-image-btn:hover{background-color:var(--error-color);transform:scale(1.1);opacity:1}.input-row-1{display:flex;gap:16px}.input-row-1 .input-group-1{flex:1}.button-selector,.button-selector-1{display:flex;gap:8px;flex-wrap:wrap}.slider-group{display:flex;align-items:center;gap:8px;margin-top:0}.slider-group:first-of-type{margin-top:0}.slider-group label{flex-basis:155px;flex-shrink:0;font-size:.85rem;color:var(--on-surface-color)}.slider-group input[type=range]{flex-grow:1;width:100%;margin:0;accent-color:var(--primary-color);background:transparent}.slider-group span{font-size:.8rem;flex-basis:60px;flex-shrink:0;text-align:right;color:var(--on-surface-color)}.divider{height:1px;background-color:var(--border-color);margin:10}.checkbox-group-1{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:5px}.checkbox-group-1.single-column{grid-template-columns:1fr}#result-display{width:100%;height:100%;display:flex;flex-wrap:wrap;justify-content:center;align-content:flex-start;gap:16px;position:relative;overflow-y:auto;flex-grow:1;min-height:0;padding:0 10px 10px}.result-actions{position:absolute;bottom:0;left:0;width:100%;display:flex;gap:8px;padding:12px;justify-content:center;background:linear-gradient(to top,var(--modal-control-bg),transparent);opacity:0;transition:opacity .3s ease-in-out}.result-actions .button-like,.result-actions button{padding:6px 10px;font-size:.85rem;background:var(--modal-control-bg);border:1px solid color-mix(in srgb,var(--modal-control-fg) 30%,transparent);color:var(--modal-control-fg);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.result-actions .button-like:hover,.result-actions button:hover{background:color-mix(in srgb,var(--modal-control-bg) 80%,var(--modal-control-fg) 10%);border-color:var(--secondary-color)}#compare-panel{border-top:1px solid var(--border-color);flex-shrink:0;min-height:150px;height:auto;display:flex;flex-direction:column;transition:min-height .3s ease-in-out}.compare-actions{display:flex;gap:8px}.compare-toggle-btn,.compare-reset-btn{padding:6px 12px;font-size:.9rem}.compare-reset-btn{background-color:var(--drop-zone-bg);color:var(--on-background-color);border:1px solid var(--border-color)}.compare-image-container{flex-grow:1;min-height:0;background-color:var(--drop-zone-bg);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--on-surface-color);overflow:hidden;margin:10px;border:1px solid var(--border-color)}.compare-image-container img{width:100%;height:auto;max-height:100%;object-fit:contain;display:block}.printing-image-section{padding:10 10px;align-self:center;width:auto}.printing-image-container img{width:100%;height:100%;object-fit:contain}.format-item{display:flex;align-items:center;gap:8px}.format-item .checkbox-label{flex-grow:1;max-width:calc(100% - 70px)}.format-quantity-input{width:60px;height:20px;padding:4px;font-size:.8rem;border-radius:6px;border:1px solid var(--border-color);background-color:var(--drop-zone-bg);color:var(--on-background-color);text-align:center}.format-quantity-input:disabled{opacity:.5;cursor:not-allowed;background-color:color-mix(in srgb,var(--drop-zone-bg) 50%,var(--surface-color) 50%)}.format-quantity-input::-webkit-outer-spin-button,.format-quantity-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.format-quantity-input[type=number]{-moz-appearance:textfield}.placeholder-text-small{color:var(--on-surface-color);font-size:.9rem;text-align:center;padding:4px}.history-item{cursor:grab;border-radius:6px;overflow:hidden;position:relative;border:2px solid transparent;transition:border-color .3s;background-color:var(--drop-zone-bg)}.history-item:active{cursor:grabbing}.history-item-filename{padding:8px;font-size:.8rem;color:var(--on-surface-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}.modal-close-btn{position:absolute;top:-15px;right:-15px;background:var(--surface-color);color:var(--on-surface-color);border:1px solid var(--border-color);border-radius:50%;width:30px;height:30px;cursor:pointer;font-size:1rem;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1}.project-name-input{width:100%;padding:12px;font-size:1rem;border-radius:6px;border:1px solid var(--border-color);background-color:var(--drop-zone-bg);color:var(--on-background-color)}@media(max-width:1200px){#root.page-photo{grid-template-columns:300px 1fr 1.5fr;grid-template-rows:auto 1fr;grid-template-areas:"left-col inputs results" "left-col export results";height:100vh}#root.page-photo #left-column-1{grid-area:left-col}#root.page-photo #inputs-panel-1{grid-area:inputs}#root.page-photo #results-panel-1{grid-area:results}#root.page-photo #photo-export-panel-1{grid-area:export}#root.page-photo #controls-panel-1,#history-panel-1{grid-area:unset}}@media(max-width:992px){#root.page-photo{grid-template-columns:1fr 1.5fr;grid-template-areas:"inputs results" "left-col results" "export export";height:auto}#root.page-photo #left-column-1{grid-area:left-col}#root.page-photo #inputs-panel-1{grid-area:inputs}#root.page-photo #results-panel-1{grid-area:results}#root.page-photo #photo-export-panel-1{grid-area:export}#root.page-photo #controls-panel-1,#root.page-photo #history-panel-1{grid-area:unset}}@media(max-width:768px){#root.page-photo{grid-template-columns:1fr;grid-template-areas:"inputs" "results" "export" "left-col";padding:8px;gap:8px}#root.page-photo #left-column-1{grid-area:left-col}#root.page-photo #inputs-panel-1{grid-area:inputs}#root.page-photo #results-panel-1{grid-area:results}#root.page-photo #photo-export-panel-1{grid-area:export}#root.page-photo #controls-panel-1,#history-panel-1{grid-area:unset}#root.page-photo .panel{padding:8px}#root.page-photo .result-item{flex-basis:100%;max-width:100%}}.aspect-ratio-grid-1{display:grid;grid-template-columns:repeat(3,1fr)}.aspect-ratio-grid-1 .selector-btn{min-width:0;width:100%}.paper-size-options{display:flex;gap:8px}.paper-size-options .checkbox-label{flex:1;justify-content:center}.download-formats{display:flex;gap:8px;justify-content:center;padding:8px;background-color:var(--drop-zone-bg);border:1px solid var(--border-color);border-radius:6px}.download-formats .checkbox-label{padding:4px;flex-grow:1;justify-content:center;background-color:var(--surface-color)}.aspect-ratio-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.aspect-ratio-controls .button-selector{flex-grow:1}.aspect-ratio-controls>button{flex-shrink:0;padding:4px 8px;font-size:.85rem}.slider-section-wrapper{display:flex;gap:0px;align-items:flex-start}.sliders-container-1{flex:3;display:flex;flex-direction:column;gap:0px;min-width:0}.slider-reset-container{flex:1;display:flex;align-items:center;justify-content:center;align-self:stretch}.slider-reset-container>button{width:100%;height:100%}.slider-reset-container>button{width:auto;height:auto}.input-section:has(.paper-size-options){flex-direction:row;align-items:center}.input-section:has(.paper-size-options)>.input-label{margin-bottom:0}body:has(.login-container) #root,body:has(.gallery-main) #root,body:has(.canvas-editor-container) #root,body:has(.canvas-editor-container-4col) #root{display:block;padding:0;height:100vh}.panel>h2{font-weight:700;margin-bottom:0}#controls-panel{justify-content:flex-start}#inputs-panel{gap:0}#results-panel{justify-content:flex-start;align-items:flex-start;gap:20px}#results-panel h2{width:100%;text-align:center;margin-bottom:0}#history-panel{gap:12px}.language-switcher{display:flex;gap:4px;flex-grow:1}.theme-toggle-btn{padding:6px;background-color:var(--drop-zone-bg);color:var(--on-surface-color);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:background-color .3s,border-color .3s,color .3s;display:flex;align-items:center;justify-content:center;width:40px;height:40px}.theme-toggle-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.theme-toggle-btn svg{pointer-events:none}.lang-btn{flex-grow:1;padding:8px 4px;font-size:.875rem;background-color:var(--drop-zone-bg);color:var(--on-surface-color);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:background-color .3s,border-color .3s,color .3s}.lang-btn:not(.selected):hover{border-color:var(--primary-color);color:var(--primary-color)}.lang-btn.selected{background-color:var(--secondary-color);color:var(--on-primary-color);border-color:var(--secondary-color);font-weight:500}#prompt-library-panel{gap:12px}#prompt-library-list{display:flex;flex-direction:column;gap:10px;height:100%;overflow-y:auto}.prompt-card{background-color:var(--drop-zone-bg);border:1px solid var(--border-color);border-radius:6px;padding:12px;cursor:pointer;transition:border-color .3s,background-color .3s;font-size:.875rem;word-wrap:break-word;color:var(--on-surface-color)}.prompt-card:hover{border-color:var(--primary-color);background-color:color-mix(in srgb,var(--surface-color) 80%,var(--primary-color) 20%)}.input-section{border:1px solid var(--border-color);border-radius:8px;padding:8px;display:flex;flex-direction:column;gap:8px;transition:opacity .3s ease-in-out}.input-section>h3{margin-bottom:0}.disabled-section{opacity:.5;pointer-events:none}.drop-zone{border:2px dashed var(--border-color);border-radius:8px;padding:10px;text-align:center;cursor:pointer;transition:border-color .3s,background-color .3s,opacity .3s;position:relative;overflow:hidden;background-color:var(--drop-zone-bg);display:flex;justify-content:center;align-items:center;flex-direction:column;color:var(--on-surface-color)}.drop-zone.dragging{border-color:var(--primary-color);background-color:var(--primary-variant-color)}.drop-zone:hover{border-color:var(--secondary-color)}.drop-zone-prompt{pointer-events:none}.drop-zone-prompt p{margin-bottom:8px}.drop-zone-image-preview{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:contain;z-index:1}.drop-zone input[type=file]{display:none}.original-image-drop-zone{width:100%;max-height:40vh;aspect-ratio:1 / 1;transition:aspect-ratio .3s ease-in-out}.original-image-drop-zone .drop-zone-image-preview{object-fit:contain}#reference-images-container{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.reference-drop-zone{height:100px}.remove-image-btn{position:absolute;top:5px;right:5px;background:var(--modal-control-bg);color:var(--modal-control-fg);border:none;border-radius:50%;width:20px;height:20px;cursor:pointer;z-index:2;display:flex;align-items:center;justify-content:center;font-size:.75rem;line-height:20px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.input-group:first-child{margin-top:0}.button-selector{display:flex;gap:8px}.generation-mode-selector{display:grid;grid-template-columns:1fr 1fr}.checkbox-group{display:grid;grid-template-columns:1fr 1fr;gap:4px}.checkbox-label:hover{border-color:var(--secondary-color)}.checkbox-label input[type=checkbox]{accent-color:var(--primary-color);width:12px;height:12px;cursor:pointer}.checkbox-label input[type=checkbox]:checked+span{color:var(--primary-color);font-weight:500}.button-like.secondary:not(:disabled):hover{border-color:var(--primary-color);color:var(--primary-color)}#result-display{width:100%;height:100%;display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-content:flex-start;gap:16px;position:relative;min-height:300px;overflow-y:auto}.result-item{display:flex;flex-direction:column;gap:10px;align-items:center;flex-grow:1;flex-basis:calc(50% - 16px);max-width:calc(50% - 16px);position:relative;overflow:hidden;border-radius:8px}.result-item:only-child{flex-basis:100%;max-width:90%}#result-display img{max-width:100%;max-height:calc((100vh - 250px)/2);object-fit:contain;border-radius:8px;border:1px solid var(--border-color);display:block;cursor:pointer;transition:transform .2s ease}#result-display img:hover{transform:scale(1.02)}.text-result-container{width:100%;background-color:var(--drop-zone-bg);padding:20px;border-radius:8px;border:1px solid var(--border-color);color:var(--on-surface-color);white-space:pre-wrap;word-wrap:break-word}.text-result-container h3{margin-bottom:12px;color:var(--on-background-color)}.text-result-container p{line-height:1.6}.result-actions{position:absolute;bottom:0;left:0;width:100%;display:flex;gap:10px;padding:12px;justify-content:center;background:linear-gradient(to top,var(--modal-control-bg),transparent);opacity:0;transition:opacity .3s ease-in-out}.result-item:hover .result-actions{opacity:1}.result-actions .button-like,.result-actions button.secondary{padding:8px 12px;font-size:.875rem;background:var(--modal-control-bg);border:1px solid color-mix(in srgb,var(--modal-control-fg) 30%,transparent);color:var(--modal-control-fg);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.result-actions .button-like:hover,.result-actions button.secondary:hover{background:color-mix(in srgb,var(--modal-control-bg) 80%,var(--modal-control-fg) 10%);border-color:var(--secondary-color)}.placeholder-text{color:var(--on-surface-color);margin:auto;text-align:center;padding:10px}.placeholder-text-small{color:var(--on-surface-color);font-size:.875rem;text-align:center;padding:4px}.error-message{color:var(--error-color);padding:10px;border:1px solid var(--error-color);border-radius:6px;background-color:color-mix(in srgb,var(--error-color) 10%,transparent);word-break:break-word;margin:auto}.loading-overlay{position:fixed;inset:0;background:color-mix(in srgb,var(--background-color) 85%,transparent);display:flex;justify-content:center;align-items:center;z-index:999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .3s ease}.spinner-icon{width:64px;height:64px;border:5px solid color-mix(in srgb,var(--on-background-color) 20%,transparent);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.spinner-icon.small{width:32px;height:32px;border-width:3px}#history-library{display:grid;grid-template-columns:1fr 1fr;gap:10px}.history-item{cursor:pointer;border-radius:6px;overflow:hidden;position:relative;border:2px solid transparent;transition:border-color .3s;background-color:var(--drop-zone-bg);display:flex;flex-direction:column}.history-item:hover,.history-item.active{border-color:var(--primary-color)}.history-item img{width:100%;height:auto;display:block;aspect-ratio:1 / 1;object-fit:cover}.history-text-icon{width:100%;aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center;color:var(--on-surface-color)}.history-text-icon svg{width:40%;height:40%}.history-item-prompt{padding:8px;font-size:.8125rem;color:var(--on-surface-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left;margin-top:auto}.modal-overlay{position:fixed;inset:0;background:color-mix(in srgb,var(--background-color) 85%,transparent);display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:fadeIn .3s ease}.modal-content{position:relative;max-width:90vw;max-height:90vh}.modal-content img{max-width:100%;max-height:90vh;object-fit:contain;border-radius:8px}.modal-close-btn{position:absolute;top:-15px;right:-15px;background:var(--surface-color);color:var(--on-surface-color);border:1px solid var(--border-color);border-radius:50%;width:30px;height:30px;cursor:pointer;font-size:1.1875rem;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1}.modal-content.project-modal{background-color:var(--surface-color);padding:24px;border-radius:8px;width:100%;max-width:400px;display:flex;flex-direction:column;gap:20px;border:1px solid var(--border-color)}.project-modal h3{text-align:center;margin-bottom:0}.project-modal form{display:flex;flex-direction:column;gap:16px}.project-name-input{width:100%;padding:12px;font-size:1rem;border-radius:6px;border:1px solid var(--input-border-color);background-color:var(--drop-zone-bg);color:var(--on-background-color)}.project-name-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px var(--primary-variant-color)}.modal-actions{display:flex;justify-content:flex-end;gap:12px}.login-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;padding:16px}.login-settings-wrapper{display:flex;gap:8px;margin-bottom:24px;width:100%;max-width:420px;justify-content:flex-end}.login-settings-wrapper .language-switcher{flex-grow:0;display:flex;width:auto}.login-settings-wrapper .lang-btn{width:40px;padding-left:0;padding-right:0}.login-form-wrapper{background-color:var(--surface-color);padding:40px 32px;border-radius:8px;border:1px solid var(--border-color);width:100%;max-width:420px;display:flex;flex-direction:column;gap:24px;animation:fadeIn .5s ease}.login-title{text-align:center;font-weight:700;letter-spacing:1px;margin-bottom:0;color:var(--on-background-color)}.login-form{display:flex;flex-direction:column;gap:16px}.login-input{width:100%;padding:14px 16px;font-size:1rem;border-radius:6px;border:1px solid var(--input-border-color);background-color:var(--drop-zone-bg);color:var(--on-background-color);transition:border-color .2s,box-shadow .2s}.login-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary-color) 30%,transparent)}.login-btn-primary{padding:14px 18px;border-radius:6px;border:none;font-size:1rem;font-weight:500;cursor:pointer;background-color:var(--primary-color);color:var(--on-primary-color);transition:filter .2s}.login-btn-primary:hover{filter:brightness(1.2)}.login-divider{display:flex;align-items:center;text-align:center;color:var(--on-surface-color);font-size:.8125rem;margin:8px 0}.login-divider:before,.login-divider:after{content:"";flex:1;border-bottom:1px solid var(--border-color)}.login-divider:not(:empty):before{margin-right:.5em}.login-divider:not(:empty):after{margin-left:.5em}.login-btn-google{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 18px;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;background-color:var(--drop-zone-bg);color:var(--on-background-color);border:1px solid var(--border-color);transition:border-color .2s,background-color .2s}.login-btn-google:hover{border-color:var(--on-surface-color);background-color:color-mix(in srgb,var(--drop-zone-bg) 80%,var(--on-surface-color) 20%)}.google-icon{width:20px;height:20px}.login-footer-actions{display:flex;justify-content:space-between;align-items:center;margin-top:-8px}.login-btn-link{background:none;border:none;color:var(--on-surface-color);cursor:pointer;padding:8px;font-size:.875rem;text-decoration:none;transition:color .2s,text-decoration .2s}.login-btn-link:hover{color:var(--secondary-color);text-decoration:underline}.home-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background-color:var(--surface-color);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:10;transition:background-color .3s ease,border-color .3s ease}.home-header h1{margin:0;font-size:1.5rem}.header-controls{display:flex;align-items:center;gap:16px}.header-controls .button-like{padding:8px 16px;font-size:.875rem}.gallery-main{padding:24px}.gallery-container{max-width:2000px;margin:0 auto;column-count:5;column-gap:3px}.image-card-wrapper{position:relative;width:100%;height:0;background-color:var(--drop-zone-bg);break-inside:avoid;margin-bottom:3px;cursor:pointer;overflow:hidden}.image-card-content{position:absolute;top:0;left:0;width:100%;height:100%}.image-card-image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:opacity .4s ease-in-out;animation:fadeIn .5s ease}.image-card-image.hover-image{z-index:2}.before-label{position:absolute;top:12px;left:12px;z-index:3;padding:4px 10px;font-size:.8125rem;font-weight:500;color:var(--modal-control-fg);background-color:color-mix(in srgb,var(--modal-control-bg) 50%,transparent);border:1px solid color-mix(in srgb,var(--modal-control-fg) 20%,transparent);border-radius:100px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:none;transition:opacity .4s ease-in-out}.gallery-loader{display:flex;justify-content:center;padding:40px;height:80px}@media(max-width:1600px){.gallery-container{column-count:4}}@media(max-width:1200px){.gallery-container{column-count:3}}@media(max-width:800px){.gallery-container{column-count:2}}@media(max-width:500px){.gallery-container{column-count:1}.gallery-main,.home-header{padding:12px}.home-header h1{font-size:1.1875rem}}@media(max-width:1400px){#root:not(:has(.gallery-main)){grid-template-columns:200px 200px 1fr 1.5fr 1fr}}@media(max-width:1200px){#root:not(:has(.gallery-main)){grid-template-columns:200px 1fr 1.5fr;grid-template-rows:auto 1fr;grid-template-areas:"controls inputs results" "library history results";height:100vh}#controls-panel{grid-area:controls}#prompt-library-panel{grid-area:library}#inputs-panel{grid-area:inputs}#results-panel{grid-area:results}#history-panel{grid-area:history}}@media(max-width:992px){#root:not(:has(.gallery-main)){grid-template-columns:1fr 1.5fr;grid-template-areas:"inputs results" "controls results" "library library" "history history";height:auto}}@media(max-width:768px){#root:not(:has(.login-container)):not(:has(.gallery-main)){grid-template-columns:1fr;grid-template-areas:"inputs" "results" "controls" "library" "history";padding:8px;gap:8px;height:auto}.panel{padding:12px}.result-item{flex-basis:100%;max-width:100%}}.canvas-editor-container{display:grid;grid-template-columns:350px 1fr 350px;grid-template-rows:1fr;grid-template-areas:"left-col main-col right-col";height:100vh;gap:16px;padding:16px;width:100vw}#canvas-left-column{grid-area:left-col;display:flex;flex-direction:column;gap:16px;min-height:0}#canvas-controls-panel{flex:1}#canvas-history-panel{flex:2}#canvas-main-panel{grid-area:main-col;display:flex;align-items:center;justify-content:center;background-color:var(--background-color);padding:16px;overflow:auto}.konvajs-content{border:1px solid var(--border-color);border-radius:6px}#canvas-layers-panel{grid-area:right-col}.sidebar-section{border:1px solid var(--border-color);border-radius:8px}.sidebar-section-header{width:100%;padding:6px 10px;text-align:left;font-weight:700;background-color:var(--drop-zone-bg);border:none;color:var(--on-background-color);cursor:pointer;display:flex;align-items:center;gap:8px;border-radius:7px 7px 0 0}.sidebar-section-header:hover{background-color:color-mix(in srgb,var(--drop-zone-bg) 80%,var(--primary-color) 20%)}.sidebar-section-toggle{font-size:.8rem}.sidebar-section-content{padding:8px;display:flex;flex-direction:column;gap:5px}.layers-list-container{display:flex;flex-direction:column}.layer-item{display:flex;justify-content:space-between;align-items:center;padding:3px 12px;background-color:var(--drop-zone-bg);border-bottom:1px solid var(--border-color);transition:background-color .2s,border-color .2s,opacity .2s}.layer-item:last-child{border-bottom:none}.layer-item.selected{background-color:var(--primary-variant-color);border-color:var(--primary-color)}.layer-item-name{cursor:pointer;font-size:.875rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-grow:1;padding-right:10px}.layer-item-controls{display:flex;gap:4px}.layer-item-controls button{padding:4px 8px;font-size:.8125rem;line-height:1;background-color:var(--surface-color);color:var(--on-surface-color);border:1px solid var(--border-color)}.layer-item-controls button.delete{background-color:#f57c00;color:#fff;border:none}.layer-item-controls button:hover:not(.delete){border-color:var(--secondary-color)}.canvas-form-group{display:flex;flex-direction:column;gap:8px}.canvas-form-group-row{display:flex;justify-content:space-between;align-items:center;gap:16px}.canvas-form-group-row>label{white-space:nowrap}.canvas-form-group input[type=number],.canvas-form-group input[type=text],.canvas-form-group select,.canvas-form-group textarea{width:100%;padding:4px;border-radius:6px;border:1px solid var(--border-color);background-color:var(--drop-zone-bg);color:var(--on-background-color)}.canvas-form-group input[type=number],.canvas-form-group input[type=text],.canvas-form-group textarea{border-color:var(--input-border-color)}.canvas-form-group .button-like{width:100%;padding:10px;font-size:.85rem}.canvas-form-group .button-like.danger{background-color:color-mix(in srgb,var(--error-color) 80%,black)}.button-group-split{display:flex;gap:5px}.button-group-split .button-like{flex:1}.radio-group{display:flex;gap:8px;align-items:center}.radio-group label{display:flex;align-items:center;gap:5px;cursor:pointer;font-size:.8rem}.radio-group input[type=radio]{accent-color:var(--primary-color)}@media(max-width:1200px){.canvas-editor-container{grid-template-columns:300px 1fr 300px}}@media(max-width:992px){.canvas-editor-container{grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr;grid-template-areas:"main-col right-col" "left-col left-col";height:auto}}@media(max-width:768px){.canvas-editor-container{grid-template-columns:1fr;grid-template-areas:"main-col" "right-col" "left-col";padding:8px;gap:8px}#canvas-main-panel{min-height:50vh}}.canvas-editor-container-4col{display:grid;grid-template-columns:350px 150px 1fr 350px;grid-template-rows:1fr;grid-template-areas:"controls-col history-col main-col layers-col";height:100vh;gap:16px;padding:16px;width:100vw}#canvas-controls-panel{grid-area:controls-col}#canvas-history-panel{grid-area:history-col}#canvas-wrapper-panel{grid-area:main-col}#canvas-layers-panel{grid-area:layers-col}#canvas-wrapper-panel{display:flex;align-items:center;justify-content:center;overflow:auto;padding:10px}#canvas-main-panel{background-color:transparent;padding:0;width:min-content;height:min-content;overflow:visible;grid-area:unset}#canvas-controls-panel .radio-group{flex-wrap:wrap;gap:8px 16px}#canvas-controls-panel .canvas-form-group-row{flex-wrap:wrap}#canvas-controls-panel .canvas-form-group-row>input{min-width:100px;flex-grow:1}@media(max-width:1600px){.canvas-editor-container-4col{grid-template-columns:300px 125px 1fr 300px}}@media(max-width:1300px){.canvas-editor-container-4col{grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr;grid-template-areas:"main-col layers-col" "controls-col history-col";height:auto}}@media(max-width:800px){.canvas-editor-container-4col{grid-template-columns:1fr;grid-template-areas:"main-col" "layers-col" "controls-col" "history-col";padding:8px;gap:8px}#canvas-wrapper-panel{min-height:50vh}}#ai-generation-prompt{min-height:50px;resize:vertical;font-size:.85rem}.button-like.generating{cursor:wait;background-color:var(--primary-variant-color);filter:brightness(.9)}.error-message-small{color:var(--error-color);font-size:.875rem;padding:8px;border-radius:4px;background-color:color-mix(in srgb,var(--error-color) 10%,transparent);word-break:break-word;margin-top:8px}.labeled-input{display:flex;align-items:center;gap:6px}.labeled-input label{flex-basis:40px;flex-shrink:0;font-size:.8rem;color:var(--on-surface-color)}.labeled-input input[type=number]{flex-grow:0;width:60px;font-size:.8rem;padding:2px}#ai-generation-prompt,#canvas-layers-panel .sidebar-section-content input[type=text]{padding:0 6px;font-size:.85rem}.radio-group-boxed{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));border-radius:6px;overflow:hidden;gap:1px;background-color:var(--border-color);border:1px solid var(--border-color)}.radio-group-boxed>label{padding:6px;font-size:.8rem;margin:0;background-color:var(--drop-zone-bg);transition:background-color .2s;text-align:center;display:flex;align-items:center;justify-content:center;gap:4px;cursor:pointer}.radio-group-boxed>label:hover{background-color:color-mix(in srgb,var(--drop-zone-bg) 80%,var(--on-surface-color) 20%)}.radio-group-boxed.three-items>label{font-size:.8rem}.radio-group-boxed input[type=radio]{accent-color:var(--primary-color)}.radio-group-boxed input[type=radio]:checked+span{color:var(--primary-color);font-weight:500}.button-full-width{width:100%}.input-group-split{display:flex;gap:12px;flex-wrap:wrap}.input-group-split>.labeled-input{flex-grow:0}.controls-disabled{opacity:.6;pointer-events:none;transition:opacity .3s ease-in-out}.project-name-container{display:flex;flex-direction:column;gap:8px}.project-name-display{font-size:.9375rem;font-weight:500;color:var(--on-surface-color);background-color:var(--drop-zone-bg);padding:8px 12px;border-radius:6px;border:1px solid var(--border-color);word-break:break-all;text-align:center}.history-list-canvas{display:flex;flex-direction:column;gap:12px;overflow-y:auto;height:100%}.history-item-canvas{position:relative;border-radius:6px;overflow:hidden;cursor:pointer;border:1px solid var(--border-color);background-color:var(--drop-zone-bg)}.history-item-canvas img{width:100%;height:auto;display:block;aspect-ratio:1 / 1;object-fit:cover}.history-item-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;pointer-events:none}.history-item-canvas:hover .history-item-overlay{opacity:1;pointer-events:auto}.history-download-btn{padding:8px 16px;font-size:.875rem;font-weight:500;border-radius:6px;border:1px solid var(--on-primary-color);background-color:var(--modal-control-bg);color:var(--on-primary-color);cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background-color .2s,transform .1s}.history-download-btn:hover{background-color:var(--primary-color);border-color:var(--primary-color);transform:scale(1.05)}.layer-item-visibility-toggle{background:none;border:none;cursor:pointer;padding:0;margin-right:8px;display:flex;align-items:center;justify-content:center;color:var(--on-surface-color);opacity:.7;transition:opacity .2s,color .2s}.layer-item-visibility-toggle:hover{opacity:1;color:var(--secondary-color)}.layer-item-visibility-toggle svg{width:18px;height:18px}.layer-item.is-hidden{opacity:.6}.layer-item.is-hidden .layer-item-name{text-decoration:line-through}.layer-item[draggable=true]{cursor:grab}.layer-item.is-dragging{cursor:grabbing;opacity:.5;background-color:var(--primary-variant-color);border:1px dashed var(--secondary-color)}.sidebar-section.section-disabled{opacity:.6;transition:opacity .3s ease-in-out}.loading-overlay-global{position:fixed;inset:0;background-color:color-mix(in srgb,var(--background-color) 70%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:1001;animation:fadeIn .3s ease}.checkbox-group-boxed{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));border-radius:6px;overflow:hidden;gap:1px;background-color:var(--border-color);border:1px solid var(--border-color)}.checkbox-group-boxed>label{padding:6px;font-size:.8125rem;margin:0;background-color:var(--drop-zone-bg);transition:background-color .2s;text-align:center;display:flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-group-boxed>label:hover{background-color:color-mix(in srgb,var(--drop-zone-bg) 80%,var(--on-surface-color) 20%)}.checkbox-group-boxed input[type=checkbox]{accent-color:var(--primary-color);cursor:pointer}.checkbox-group-boxed input[type=checkbox]:checked+span{color:var(--primary-color);font-weight:500}body.light-mode .layer-item.selected{color:var(--on-primary-color)}body.light-mode .layer-item.selected .layer-item-visibility-toggle{color:var(--on-primary-color);opacity:.85}body.light-mode .layer-item.selected .layer-item-visibility-toggle:hover{color:var(--secondary-color);opacity:1}#canvas-wrapper-panel.fit-mode-window{overflow:hidden}#canvas-wrapper-panel.fit-mode-pixel{overflow:auto}#canvas-main-panel{transition:transform .2s ease-in-out}.canvas-form-group-row input[type=color]{border:2px solid var(--border-color);padding:0;height:32px;width:48px;border-radius:4px;cursor:pointer;background-color:transparent}.canvas-form-group-row input[type=color]::-webkit-color-swatch{border:none}textarea:not(:disabled),.canvas-form-group input[type=number]:not(:disabled),.canvas-form-group input[type=text]:not(:disabled),.project-name-input:not(:disabled),.login-input:not(:disabled){border-color:var(--primary-color)}.text-edit-content-input{min-height:56px}#canvas-layers-panel .sidebar-section-content .canvas-form-group>label,#canvas-layers-panel .sidebar-section-content .canvas-form-group-row>label{font-size:.8rem;color:var(--on-surface-color)}#canvas-layers-panel .sidebar-section-content .button-like,#canvas-layers-panel .sidebar-section-content select,#canvas-layers-panel .sidebar-section-content input[type=text]{padding-top:6px;padding-bottom:6px;font-size:.8rem}.filter-slider-group{display:flex;align-items:center;gap:12px}.filter-slider-group>label{flex:5;font-size:.8rem;color:var(--on-surface-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.filter-slider-group>input[type=range]{flex:5;margin:0}input[type=range]{height:20px;-webkit-appearance:none;appearance:none;width:100%;background:transparent;cursor:pointer}input[type=range]::-webkit-slider-runnable-track{width:100%;height:4px;cursor:pointer;background:var(--border-color);border-radius:2px}input[type=range]::-moz-range-track{width:100%;height:4px;cursor:pointer;background:var(--border-color);border-radius:2px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;height:14px;width:14px;border-radius:50%;background:var(--primary-color);cursor:pointer;margin-top:-5px;border:1px solid var(--surface-color)}input[type=range]::-moz-range-thumb{height:14px;width:14px;border-radius:50%;background:var(--primary-color);cursor:pointer;border:1px solid var(--surface-color)}input[type=range]:focus{outline:none}input[type=range]:focus::-webkit-slider-thumb{box-shadow:0 0 0 3px color-mix(in srgb,var(--primary-color) 40%,transparent)}input[type=range]:focus::-moz-range-thumb{box-shadow:0 0 0 3px color-mix(in srgb,var(--primary-color) 40%,transparent)}.filter-sliders-container{display:flex;flex-direction:column;gap:4px}.filter-controls-box{display:flex;flex-direction:column;gap:6px;padding:8px;border:1px solid var(--border-color);border-radius:6px}.form-row-split-equal{display:flex;align-items:center;gap:12px}.form-row-split-equal>label{flex:1;white-space:nowrap}.form-row-split-equal>input{flex:1}.form-row-triplet{display:flex;align-items:center;gap:8px}.form-row-triplet>*{flex:1 1 0;min-width:0}.form-row-triplet>.button-like{padding:8px 4px;font-size:.875rem;white-space:nowrap}.form-row-modify-name>input{flex:none;width:150px}.form-row-split-1-2{display:flex;align-items:center;gap:12px}.form-row-split-1-2>label{flex:1}.form-row-split-1-2>select{flex:2;width:100%}.form-row-triplet-1-1-2{display:flex;align-items:center;gap:8px}.form-row-triplet-1-1-2>*:nth-child(1){flex:1}.form-row-triplet-1-1-2>*:nth-child(2){flex:1}.form-row-triplet-1-1-2>*:nth-child(3){flex:2}.form-row-triplet-1-1-2>.button-like{padding:8px 4px;font-size:.875rem;white-space:nowrap}.form-row-modify-name{display:flex;align-items:center;gap:12px}.form-row-modify-name>label{flex:2;font-size:.875rem;color:var(--on-surface-color);white-space:nowrap}.form-row-modify-name>input{flex:3;width:auto}.size-slider-group{display:flex;align-items:center;gap:12px}.size-slider-group>label{flex:1;font-size:.875rem;color:var(--on-surface-color);white-space:nowrap}.size-slider-group>input[type=range]{flex:2;margin:0}.button-like.danger-btn{background-color:#e53935;color:#fff}.button-like.danger-btn:hover{background-color:#f44336;filter:brightness(1.1)}body.light-mode .button-like.danger-btn{background-color:#d32f2f}body.light-mode .button-like.danger-btn:hover{background-color:#e53935}.modal-message{text-align:center;color:var(--on-surface-color);line-height:1.5;margin-bottom:8px}.modal-actions-triplet{display:flex;justify-content:space-between;gap:12px}.modal-actions-triplet .button-like{flex:1;padding-left:8px;padding-right:8px;font-size:.875rem}.reference-image-container{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;transition:opacity .3s ease}.reference-image-container.disabled{opacity:.6;pointer-events:none}.reference-image-dropzone{position:relative;aspect-ratio:1 / 1;border:2px dashed var(--border-color);border-radius:6px;background-color:var(--drop-zone-bg);display:flex;align-items:center;justify-content:center;text-align:center;color:var(--on-surface-color);font-size:.875rem;padding:8px;cursor:pointer;overflow:hidden;transition:border-color .2s,background-color .2s}.reference-image-dropzone:hover,.reference-image-dropzone.dragging{border-color:var(--primary-color);background-color:color-mix(in srgb,var(--drop-zone-bg) 80%,var(--primary-color) 20%)}.reference-image-preview{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.remove-reference-image-btn{position:absolute;top:6px;right:6px;width:22px;height:22px;border:1px solid var(--border-color);border-radius:50%;background-color:var(--modal-control-bg);color:var(--modal-control-fg);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.875rem;line-height:1;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:2}#canvas-history-panel>h4{font-weight:700;margin-bottom:0;font-size:1.125rem}.button-like.warning-btn{background-color:#f57c00;color:#fff}.button-like.warning-btn:hover{filter:brightness(1.1)}.form-row-modify-name>input{flex:none;width:200px}.form-row-left-aligned{justify-content:flex-start}.form-group-boxed{display:flex;flex-direction:column;gap:8px;padding:8px;border:1px solid var(--border-color);border-radius:6px}.form-group-boxed.canvas-form-group-row{flex-direction:row;align-items:center}.form-group-boxed>label{font-size:.8rem;color:var(--on-surface-color)}.edit-layer-controls-container{display:flex;flex-direction:column;gap:5px}body.light-mode .sidebar-section-content input[type=number],body.light-mode .sidebar-section-content input[type=text],body.light-mode .canvas-form-group input[type=number],body.light-mode .canvas-form-group input[type=text],body.light-mode .canvas-form-group textarea{color:var(--on-surface-color)}.sidebar-section-content input[type=number]:focus,.sidebar-section-content input[type=text]:focus{outline:none;box-shadow:0 0 0 2px color-mix(in srgb,var(--primary-color) 40%,transparent)}.canvas-form-group input[type=number]:focus,.canvas-form-group input[type=text]:focus,.canvas-form-group textarea:focus{outline:none;box-shadow:0 0 0 2px color-mix(in srgb,var(--primary-color) 40%,transparent)}.masking-modal-overlay{position:fixed;inset:0;background:color-mix(in srgb,var(--background-color) 85%,transparent);display:flex;justify-content:center;align-items:center;z-index:1002;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:fadeIn .3s ease}.masking-modal-content{background-color:var(--surface-color);padding:20px;border-radius:8px;width:auto;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;gap:16px;border:1px solid var(--border-color);align-items:center}.masking-modal-content>h3{text-align:center;margin-bottom:0}.masking-canvas-container{max-width:100%;max-height:calc(90vh - 180px);display:flex;justify-content:center;align-items:center;border:1px solid var(--border-color);border-radius:6px;background-color:var(--background-color)}.masking-canvas-container .konvajs-content{cursor:crosshair}.masking-controls{display:flex;align-items:center;gap:12px;width:100%;max-width:400px}.masking-controls>label{font-size:.875rem;color:var(--on-surface-color);white-space:nowrap}.masking-controls>input[type=range]{flex-grow:1}.button-reset-mask{margin-right:auto;margin-left:8px}.history-item-canvas img[alt*=_mask_]{border:2px solid var(--secondary-color);padding:1px;background-color:var(--surface-color);box-sizing:border-box}.inpainting-controls-container{display:flex;gap:6px;align-items:center}.inpainting-controls-container>*{flex:1}.inpainting-checkbox-label{display:flex;align-items:center;gap:4px;padding:8px;background-color:var(--drop-zone-bg);border-radius:6px;cursor:pointer;font-size:.8rem;border:1px solid var(--border-color);transition:all .2s;-webkit-user-select:none;user-select:none;color:var(--on-surface-color);height:25px;justify-content:center}.inpainting-checkbox-label input[type=checkbox]{accent-color:var(--primary-color)}.history-item-canvas img[alt*=_inpainting_mask_]{border:1px solid var(--primary-color);padding:1px;background-color:var(--surface-color);box-sizing:border-box}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.app-container *{box-sizing:border-box;margin:0;padding:0}body.sns-hub-active{font-family:Inter,Noto Sans SC,sans-serif;background-color:var(--background-color);color:var(--on-background-color);overscroll-behavior:none;transition:background-color .3s ease,color .3s ease}body.sns-hub-active #root{display:block;padding:0;height:100vh;overflow-x:hidden;overflow-y:auto}.app-container h1,.app-container h2,.app-container h3,.app-container h4{font-weight:600;margin-bottom:4px;color:var(--on-background-color)}.app-container .panel{background-color:var(--surface-color);border-radius:8px;padding:8px;display:flex;flex-direction:column;gap:8px;overflow-y:auto;border:1px solid var(--border-color);transition:background-color .3s ease,border-color .3s ease;margin-top:50px;min-height:0}.app-container .fixed-menu{position:fixed;top:15px;right:17px;display:flex;gap:8px;justify-content:flex-end;background-color:transparent;height:30;z-index:100}.app-container .fixed-lang{position:fixed;top:0;left:0;right:0;display:flex;justify-content:flex-end;z-index:1100;background-color:transparent}.app-container .fixed-logo{position:fixed;top:15px;left:15px;width:320px;z-index:10}.app-container .menu-btn{background:none;border:none;color:var(--text-muted-color);padding:.35rem .7rem;margin:0;cursor:pointer;font-size:.875rem;transition:all .2s ease;width:auto;background-color:#fff;border-radius:0}.app-container .menu-btn:hover{color:#fff;background-color:var(--background-color)}.app-container .menu-btn.active{background-color:var(--primary-color);color:#fff;font-weight:500}.app-container #controls-panel{justify-content:flex-start}.app-container #inputs-panel{gap:0}.app-container #results-panel{justify-content:flex-start;align-items:flex-start;gap:20px}.app-container #results-panel h2{width:100%;text-align:center;margin-bottom:0}.app-container #history-panel{gap:12px}.app-container .settings-bar{display:flex;gap:8px;padding-bottom:10px;border-bottom:1px solid var(--border-color);align-items:center}.app-container .language-switcher{display:flex;gap:4px;flex-grow:1}.app-container .theme-toggle-btn{padding:6px;background-color:var(--drop-zone-bg);color:var(--on-surface-color);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:background-color .3s,border-color .3s,color .3s;display:flex;align-items:center;justify-content:center;width:40px;height:40px}.app-container .theme-toggle-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.app-container .theme-toggle-btn svg{pointer-events:none}.app-container .lang-btn{display:flex;justify-content:center;align-items:center;flex-grow:1;padding:6px 4px;font-size:.8125rem;font-family:Inter,Noto Sans SC,sans-serif;background-color:var(--drop-zone-bg);color:var(--on-background-color);border:1px solid var(--border-color);text-align:center;border-radius:6px;cursor:pointer;transition:background-color .3s,border-color .3s;flex-shrink:0}.app-container .lang-btn:hover{border-color:var(--secondary-color)}.app-container .lang-btn.selected{background-color:var(--primary-color);color:var(--on-primary-color);border-color:var(--primary-color);font-weight:500}.app-container #prompt-library-panel{gap:12px}.app-container #prompt-library-list{display:flex;flex-direction:column;gap:10px;height:100%;overflow-y:auto}.app-container .prompt-card{background-color:var(--drop-zone-bg);border:1px solid var(--border-color);border-radius:6px;padding:10px;cursor:pointer;transition:border-color .3s,background-color .3s;font-size:.875rem;word-wrap:break-word;color:var(--on-surface-color)}.app-container .prompt-card:hover{border-color:var(--primary-color);background-color:color-mix(in srgb,var(--surface-color) 80%,var(--primary-color) 20%)}.app-container .input-section{border:1px solid var(--border-color);border-radius:8px;padding:8px;display:flex;flex-direction:column;gap:8px;transition:opacity .3s ease-in-out}.app-container .input-section:last-child{margin-bottom:0}.app-container .input-section>h3{margin-bottom:0}.app-container .disabled-section{opacity:.5;pointer-events:none}.app-container .drop-zone{border:2px dashed var(--border-color);border-radius:8px;padding:10px;text-align:center;cursor:pointer;transition:border-color .3s,background-color .3s;position:relative;overflow:hidden;background-color:var(--drop-zone-bg);display:flex;justify-content:center;align-items:center;flex-direction:column;color:var(--on-surface-color)}.app-container .drop-zone.dragging{border-color:var(--primary-color);background-color:var(--primary-variant-color)}.app-container .drop-zone:hover{border-color:var(--secondary-color)}.app-container .drop-zone.resizing{cursor:default}.app-container .drop-zone-prompt{pointer-events:none}.app-container .drop-zone-prompt p{margin-bottom:8px}.app-container .drop-zone-image-preview{position:absolute;top:0;left:0;width:70%;height:100%;object-fit:contain;pointer-events:none}.app-container .drop-zone input[type=file]{display:none}.app-container .original-image-drop-zone{width:auto;margin-left:auto;margin-right:auto;max-width:60%;max-height:25vh;min-height:20vh;aspect-ratio:1 / 1;transition:aspect-ratio .3s ease-in-out}.app-container .original-image-drop-zone .drop-zone-image-preview{object-fit:contain}.app-container .original-image-drop-zone-image{width:auto;margin-left:auto;margin-right:auto;max-height:25vh;aspect-ratio:1 / 1;transition:aspect-ratio .3s ease-in-out}.app-container .original-image-drop-zone-image .drop-zone-image-preview{object-fit:contain}.app-container #reference-images-container{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.app-container .reference-drop-zone{height:100px}.app-container .remove-image-btn{position:absolute;top:5px;right:5px;background:var(--modal-control-bg);color:var(--modal-control-fg);border:none;border-radius:50%;width:20px;height:20px;cursor:pointer;z-index:2;display:flex;align-items:center;justify-content:center;font-size:.75rem;line-height:20px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.app-container textarea{width:100%;padding:4px;border-radius:6px;border:1px solid var(--border-color);background-color:var(--drop-zone-bg);color:var(--on-background-color);font-family:inherit;resize:vertical;min-height:40px}.app-container textarea:disabled{opacity:.6;cursor:not-allowed;background-color:color-mix(in srgb,var(--drop-zone-bg) 50%,var(--surface-color) 50%)}.app-container .input-group,.app-container .input-group:first-child{margin-top:0}.app-container .input-label{font-size:.8rem;font-weight:500;color:var(--on-surface-color)}.app-container .button-selector{display:flex;gap:8px}.app-container .selector-btn{flex:1;padding:4px 6px;font-size:.8rem;background-color:var(--drop-zone-bg);color:var(--on-background-color);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:background-color .3s,border-color .3s}.app-container .selector-btn:hover:not(:disabled){border-color:var(--secondary-color)}.app-container .selector-btn.selected{background-color:var(--primary-color);color:var(--on-primary-color);border-color:var(--primary-color)}.app-container .selector-btn:disabled{opacity:.5;cursor:not-allowed}.app-container .checkbox-group{display:grid;grid-template-columns:1fr 1fr;gap:8px}.app-container .checkbox-label{display:flex;align-items:center;gap:4px;padding:4px;background-color:var(--drop-zone-bg);border-radius:6px;cursor:pointer;font-size:.72rem;border:1px solid var(--border-color);transition:all .2s;-webkit-user-select:none;user-select:none;color:var(--on-surface-color)}.app-container .checkbox-label:hover{border-color:var(--secondary-color)}.app-container .checkbox-label input[type=checkbox]{accent-color:var(--primary-color);width:10px;height:10px;cursor:pointer}.app-container .checkbox-label input[type=checkbox]:checked+span{color:var(--primary-color);font-weight:500}.app-container button,.app-container .button-like{padding:4px 10px;border-radius:6px;border:none;font-size:.875rem;font-weight:500;cursor:pointer;font-family:Inter,Noto Sans SC,sans-serif;transition:background-color .3s,transform .1s,filter .3s;background-color:var(--primary-color);color:var(--on-primary-color);text-align:center;text-decoration:none;display:inline-block;flex-shrink:0}.app-container button:hover,.app-container .button-like:hover{filter:brightness(1.2)}.app-container button:active,.app-container .button-like:active{transform:scale(.98)}.app-container button:disabled{background-color:var(--border-color);color:var(--on-surface-color);cursor:not-allowed;transform:none;filter:none}.app-container button.secondary,.app-container .button-like.secondary{background-color:var(--drop-zone-bg);color:var(--on-background-color);border:1px solid var(--border-color)}.app-container #projects-list-container{padding-top:16px;border-top:1px solid var(--border-color)}.app-container .projects-list{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto}.app-container .project-btn{width:100%;padding:10px;font-size:.875rem;text-align:left;background-color:var(--drop-zone-bg);color:var(--on-background-color);border:1px solid var(--border-color)}.app-container .project-btn.selected{background-color:var(--primary-variant-color);color:#fff;border-color:var(--primary-color);font-weight:700}.app-container #result-display{width:100%;height:100%;display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-content:flex-start;gap:10px;position:relative;min-height:300px;overflow-y:auto}.app-container .result-item{display:flex;flex-direction:column;gap:10px;align-items:center;flex-grow:1;flex-basis:calc(50% - 16px);max-width:calc(50% - 16px);position:relative;overflow:hidden;border-radius:8px}.app-container .result-item:only-child{flex-basis:100%;max-width:90%}.app-container #result-display img{max-width:100%;max-height:calc((100vh - 250px)/2);object-fit:contain;border-radius:8px;border:1px solid var(--border-color);display:block;cursor:pointer;transition:transform .2s ease}.app-container #result-display img:hover{transform:scale(1.02)}.app-container .result-actions{position:absolute;bottom:0;left:0;width:100%;display:flex;gap:10px;padding:12px;justify-content:center;background:linear-gradient(to top,var(--modal-control-bg),transparent);opacity:0;transition:opacity .3s ease-in-out}.app-container .result-item:hover .result-actions{opacity:1}.app-container .result-actions .button-like,.app-container .result-actions button.secondary{padding:8px 12px;font-size:.875rem;background:var(--modal-control-bg);border:1px solid color-mix(in srgb,var(--modal-control-fg) 30%,transparent);color:var(--modal-control-fg);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.app-container .result-actions .button-like:hover,.app-container .result-actions button.secondary:hover{background:color-mix(in srgb,var(--modal-control-bg) 80%,var(--modal-control-fg) 10%);border-color:var(--secondary-color)}.app-container .placeholder-text{color:var(--on-surface-color);margin:auto;text-align:center;padding:10px}.app-container .placeholder-text-small{color:var(--on-surface-color);font-size:.875rem;text-align:center;padding:4px}.app-container .error-message{color:var(--error-color);padding:10px;border:1px solid var(--error-color);border-radius:6px;background-color:color-mix(in srgb,var(--error-color) 10%,transparent);word-break:break-word;margin:auto}.app-container .loading-overlay{position:fixed;inset:0;background:color-mix(in srgb,var(--background-color) 85%,transparent);display:flex;justify-content:center;align-items:center;z-index:999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .3s ease}.app-container .spinner-icon{width:64px;height:64px;border:5px solid color-mix(in srgb,var(--on-background-color) 20%,transparent);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.app-container #history-library{display:grid;grid-template-columns:1fr 1fr;gap:10px}.app-container .history-item{cursor:pointer;border-radius:6px;overflow:hidden;position:relative;border:2px solid transparent;transition:border-color .3s;background-color:var(--drop-zone-bg)}.app-container .history-item:hover,.app-container .history-item.active{border-color:var(--primary-color)}.app-container .history-item img{width:100%;height:auto;display:block;aspect-ratio:1 / 1;object-fit:cover}.app-container .history-item-prompt{padding:8px;font-size:.8125rem;color:var(--on-surface-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}.app-container .modal-overlay{position:fixed;inset:0;background:color-mix(in srgb,var(--background-color) 85%,transparent);display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:fadeIn .3s ease}.app-container .modal-content{position:relative;max-width:90vw;max-height:90vh}.app-container .modal-content img{max-width:100%;max-height:90vh;object-fit:contain;border-radius:8px}.app-container .modal-close-btn{position:absolute;top:-15px;right:-15px;background:var(--surface-color);color:var(--on-surface-color);border:1px solid var(--border-color);border-radius:50%;width:30px;height:30px;cursor:pointer;font-size:1.1875rem;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1}.app-container .modal-content.project-modal{background-color:var(--surface-color);padding:24px;border-radius:8px;width:100%;max-width:400px;display:flex;flex-direction:column;gap:20px;border:1px solid var(--border-color)}.app-container .project-modal h3{text-align:center;margin-bottom:0}.app-container .project-modal form{display:flex;flex-direction:column;gap:16px}.app-container .project-name-input{width:100%;padding:12px;font-size:1rem;border-radius:6px;border:1px solid var(--border-color);background-color:var(--drop-zone-bg);color:var(--on-background-color)}.app-container .project-name-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px var(--primary-variant-color)}.app-container .modal-actions{display:flex;justify-content:flex-end;gap:12px}.app-container .fixed-login{position:fixed;inset:0;display:flex;justify-content:center;align-items:center;background-color:transparent;z-index:50}.app-container .login-container{display:inline-flex;justify-content:center;align-items:center;flex-grow:1;padding:2rem;background-color:var(--background-color)}.app-container .login-box{width:100%;max-width:500px;padding:2.5rem;background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--card-shadow);text-align:center}.app-container .login-box header{margin-bottom:1.5rem}.app-container .login-box header h2{border-bottom:none;padding-bottom:0}.app-container .login-box p{color:var(--text-muted-color);margin-bottom:1.5rem}.app-container .login-box input[type=email]{text-align:center;margin-bottom:1.5rem}.app-container .big-input{width:100%;max-width:420px;height:44px;padding:10px 14px;font-size:1rem;box-sizing:border-box}.app-container .fixed-gallery{position:fixed;inset:0;display:flex;justify-content:center;align-items:center;background-color:transparent;z-index:10}.app-container .page{display:flex;flex-direction:column;align-items:center;padding:0;margin-top:55px}.app-container .title{width:var(--container-width);margin:0 0 10px;font-size:1.125rem;font-weight:600;color:#bbb}.app-container .gallery{position:fixed;display:flex;flex-direction:column;align-items:center;padding:0;z-index:10}.app-container .gallery-grid{column-count:3;column-gap:var(--col-gap)}.app-container .titleBox{background-color:#007bff;padding:10px;border:0px solid #333;border-radius:0;margin:30px auto;text-align:center;color:#fff}.app-container .titleBox-h2{background-color:transparent;padding:10px;border:0px solid #333;border-radius:0;margin:15px auto;text-align:center;color:#8245d1}.app-container .f-card{display:block;break-inside:avoid;margin-top:0;margin-right:0;margin-bottom:var(--row-gap);margin-left:0;padding:0;border:0;background:transparent;cursor:pointer;position:relative;overflow:hidden;border-radius:0;outline:none}.app-container .f-card img,.app-container .f-card video{width:100%;height:auto;display:block;object-fit:contain;object-position:center;filter:brightness(.98);transition:transform .25s ease,filter .25s ease}.app-container .f-card:hover img,.app-container .f-card:hover video{transform:scale(1.01);filter:brightness(1.02)}.app-container .loading{text-align:center;padding:16px;color:#888}.app-container .sentinel{height:1px}.app-container .f-modal-overlay{position:fixed;inset:0;background:#000000a6;display:flex;align-items:center;justify-content:center;padding:24px;z-index:1000}.app-container .modal-body{max-width:min(1200px,95vw);max-height:min(95dvh,1200px);overflow:auto;display:flex;align-items:center;justify-content:center}.app-container .modal-media{width:auto;height:auto;max-width:100%;max-height:100%;display:block;object-fit:contain}.app-container .modal-body img,.app-container .modal-body video{height:auto!important;max-height:90%!important}.app-container .modal-close{position:absolute;top:8px;right:8px;width:36px;height:36px;border-radius:50%;border:0;background:#1f1f1f;color:#eee;font-size:1.25rem;line-height:1;cursor:pointer}.app-container .modal-close:hover{background:#2a2a2a}.app-container *::-webkit-scrollbar{width:10px;height:10px}.app-container *::-webkit-scrollbar-thumb{background:#2a2a2a;border-radius:8px}.app-container *::-webkit-scrollbar-track{background:transparent}.app-container .login-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;padding:16px}.app-container .login-settings-wrapper{display:flex;gap:8px;margin-bottom:24px;width:100%;max-width:420px;justify-content:flex-end}.app-container .login-settings-wrapper .language-switcher{flex-grow:0;display:flex;width:auto}.app-container .login-settings-wrapper .lang-btn{width:40px;padding-left:0;padding-right:0}.app-container .login-form-wrapper{background-color:var(--surface-color);padding:40px 32px;border-radius:8px;border:1px solid var(--border-color);width:100%;max-width:420px;display:flex;flex-direction:column;gap:24px;animation:fadeIn .5s ease}.app-container .login-title{text-align:center;font-weight:700;letter-spacing:1px;margin-bottom:0;color:var(--on-background-color)}.app-container .login-form{display:flex;flex-direction:column;gap:16px}.app-container .login-input{width:100%;padding:14px 16px;font-size:1rem;border-radius:6px;border:1px solid var(--border-color);background-color:var(--drop-zone-bg);color:var(--on-background-color);transition:border-color .2s,box-shadow .2s}.app-container .login-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary-color) 30%,transparent)}.app-container .login-btn-primary{padding:14px 18px;border-radius:6px;border:none;font-size:1rem;font-weight:500;cursor:pointer;background-color:var(--primary-color);color:var(--on-primary-color);transition:filter .2s}.app-container .login-btn-primary:hover{filter:brightness(1.2)}.app-container .login-divider{display:flex;align-items:center;text-align:center;color:var(--on-surface-color);font-size:.8125rem;margin:8px 0}.app-container .login-divider:before,.app-container .login-divider:after{content:"";flex:1;border-bottom:1px solid var(--border-color)}.app-container .login-divider:not(:empty):before{margin-right:.5em}.app-container .login-divider:not(:empty):after{margin-left:.5em}.app-container .login-btn-google{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 18px;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;background-color:var(--drop-zone-bg);color:var(--on-background-color);border:1px solid var(--border-color);transition:border-color .2s,background-color .2s}.app-container .login-btn-google:hover{border-color:var(--on-surface-color);background-color:color-mix(in srgb,var(--drop-zone-bg) 80%,var(--on-surface-color) 20%)}.app-container .google-icon{width:20px;height:20px}.app-container .login-footer-actions{display:flex;justify-content:space-between;align-items:center;margin-top:-8px}.app-container .login-btn-link{background:none;border:none;color:var(--on-surface-color);cursor:pointer;padding:8px;font-size:.875rem;text-decoration:none;transition:color .2s,text-decoration .2s}.app-container .login-btn-link:hover{color:var(--secondary-color);text-decoration:underline}body.sns-hub-active #root{display:block;padding:0}.app-container{display:grid;grid-template-columns:380px 1fr 1fr;gap:16px;padding:16px;height:100%;width:100%;max-width:1600px;margin:0 auto}.app-container .left-panel,.app-container .middle-panel,.app-container .right-panel{background-color:var(--surface-color);border-radius:8px;padding:24px;display:flex;flex-direction:column;gap:24px;overflow-y:auto;border:1px solid var(--border-color);transition:background-color .3s ease,border-color .3s ease}.app-container .left-panel header{text-align:center;border-bottom:1px solid var(--border-color);margin:-24px -24px 0;padding:24px 24px 16px}.app-container .left-panel header h1{font-size:1.5rem;color:var(--on-background-color)}.app-container .left-panel header p{font-size:.9rem;color:var(--on-surface-color)}.app-container .settings-section{display:flex;flex-direction:column;gap:16px}.app-container .settings-section h2{font-size:1.1rem;padding-bottom:8px;border-bottom:1px solid var(--border-color);color:var(--primary-color);margin-bottom:0}.app-container .form-group{display:flex;flex-direction:column;gap:6px}.app-container .form-group label{font-size:.875rem;font-weight:500;color:var(--on-surface-color)}.app-container .form-group input[type=text],.app-container .form-group input[type=password]{width:100%;padding:10px;border-radius:6px;border:1px solid var(--input-border-color);background-color:var(--drop-zone-bg);color:var(--on-background-color);font-size:.9rem;transition:border-color .2s,box-shadow .2s}.app-container .form-group input[type=text]:focus,.app-container .form-group input[type=password]:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary-color) 30%,transparent)}.app-container .disclaimer{font-size:.75rem;color:var(--on-surface-color);opacity:.7;margin-top:4px}.app-container .button-group{display:grid;grid-template-columns:1fr 1fr;gap:10px}.app-container .main-actions{margin-top:auto;padding-top:16px;border-top:1px solid var(--border-color)}.app-container .middle-panel{gap:16px}.app-container .concept-section{display:flex;flex-direction:column;gap:12px;height:100%}.app-container .concept-section h2{text-align:center;font-size:1.25rem;color:var(--on-background-color)}.app-container .concept-editor,.app-container .concept-display{flex-grow:1;display:flex;flex-direction:column;gap:12px}.app-container .concept-input{flex-grow:1;resize:none;padding:12px;font-size:1rem;line-height:1.6;border:1px solid var(--input-border-color);background-color:var(--drop-zone-bg);color:var(--on-background-color);border-radius:6px}.app-container .concept-display p{flex-grow:1;background-color:var(--drop-zone-bg);border:1px solid var(--border-color);border-radius:6px;padding:12px;white-space:pre-wrap;word-wrap:break-word;font-size:1rem;line-height:1.6;color:var(--on-surface-color)}.app-container .right-panel-header{display:flex;flex-direction:column;align-items:stretch;gap:8px;flex-shrink:0}.app-container .right-panel-header h2{font-size:1.25rem}.app-container .post-slots-container{display:flex;flex-direction:column;gap:16px;overflow-y:auto;flex-grow:1;padding-right:8px;margin-right:-8px}.app-container .post-slot{display:grid;grid-template-columns:150px 1fr;gap:16px;min-height:150px;flex-shrink:0}.app-container .image-uploader{width:150px;height:150px;border:2px dashed var(--border-color);border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;transition:border-color .2s,background-color .2s;background-color:var(--drop-zone-bg);overflow:hidden}.app-container .image-uploader:hover,.app-container .image-uploader.drag-over{border-color:var(--primary-color);background-color:color-mix(in srgb,var(--drop-zone-bg) 50%,var(--primary-color) 10%)}.app-container .image-uploader-prompt{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--on-surface-color);pointer-events:none}.app-container .image-uploader-prompt span{font-size:.8rem}.app-container .image-uploader img{width:100%;height:100%;object-fit:cover;border-radius:6px}.app-container .image-remover{position:absolute;top:4px;right:4px;width:20px;height:20px;border-radius:50%;background:var(--modal-control-bg);color:var(--modal-control-fg);border:none;font-size:1rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);transition:background-color .2s,transform .2s;opacity:.5}.app-container .image-remover:hover{background-color:var(--error-color);transform:scale(1.1);opacity:1}.app-container .description-area{display:flex;flex-direction:column;gap:8px}.app-container .description-controls{display:flex;gap:8px;justify-content:flex-end}.app-container .description-input{flex-grow:1;resize:none;padding:10px;font-size:.9rem;line-height:1.5;border:1px solid var(--input-border-color);background-color:var(--drop-zone-bg);color:var(--on-background-color);border-radius:6px}.app-container .description-input:read-only{background-color:var(--surface-color);color:var(--on-surface-color);cursor:default}.app-container .btn{padding:8px 16px;border-radius:6px;border:none;font-size:.9rem;font-weight:500;cursor:pointer;font-family:inherit;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}.app-container .btn:hover:not(:disabled){filter:brightness(1.15);transform:translateY(-1px)}.app-container .btn:active:not(:disabled){transform:translateY(0) scale(.98);filter:brightness(1)}.app-container .btn:disabled{background-color:var(--border-color)!important;color:var(--on-surface-color)!important;cursor:not-allowed;filter:none}.app-container .btn-primary{background-color:var(--primary-color);color:var(--on-primary-color)}.app-container .btn-secondary{background-color:var(--drop-zone-bg);color:var(--on-background-color);border:1px solid var(--border-color)}.app-container .btn-ai,.app-container .btn-multi-ai{background-color:var(--secondary-color);color:var(--on-primary-color)}.app-container .btn-save{background-color:#4caf50;color:#fff}.app-container .btn-edit{background-color:var(--drop-zone-bg);color:var(--on-surface-color);border:1px solid var(--border-color);font-size:.8rem;padding:4px 10px}.app-container .description-controls .btn{font-size:.8rem;padding:4px 10px}.app-container .concept-editor .btn-save,.app-container .concept-display .btn-edit{align-self:flex-end}@media(max-width:1400px){.app-container{grid-template-columns:320px 1fr}}@media(max-width:1024px){.app-container{grid-template-columns:320px 1fr;grid-template-rows:auto 1fr;grid-template-areas:"left middle" "left right";height:100vh}.app-container .left-panel{grid-area:left}.app-container .middle-panel{grid-area:middle}.app-container .right-panel{grid-area:right}}@media(max-width:768px){body.sns-hub-active{font-size:16px}.app-container{grid-template-columns:1fr;grid-template-rows:auto auto auto;grid-template-areas:"left" "middle" "right";height:auto;padding:8px;gap:8px}.app-container .left-panel,.app-container .middle-panel,.app-container .right-panel{padding:16px;gap:16px}.app-container .post-slot{grid-template-columns:100px 1fr;min-height:100px}.app-container .image-uploader{width:100px;height:100px}}.app-container .left-panel-top-controls{display:flex;justify-content:flex-start;align-items:center;gap:16px;margin:-24px -24px 16px;padding:12px 24px;border-bottom:1px solid var(--border-color)}.app-container .lang-switcher-group{display:flex;gap:8px}.app-container .control-btn{width:32px;height:32px;padding:0;font-size:.8rem;font-weight:600;border-radius:6px;border:1px solid var(--border-color);background-color:var(--drop-zone-bg);color:var(--on-surface-color);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.app-container .control-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.app-container .control-btn.lang-active{background-color:var(--primary-color);color:var(--on-primary-color);border-color:var(--primary-color)}.app-container .left-panel-top-controls .theme-toggle-btn{width:32px;height:32px;padding:0}.app-container .left-panel-top-controls .theme-toggle-btn svg{width:16px;height:16px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}.app-container .main-actions{margin-top:0;padding-top:0;border-top:none}.app-container .main-actions .btn-primary{width:100%}.app-container .left-panel header{text-align:left;border-bottom:none;padding:0;margin:0 0 16px}.app-container .concept-editor,.app-container .concept-display{flex-grow:0}.app-container .concept-input,.app-container .concept-display p{flex-grow:0;min-height:150px;height:200px}.app-container .description-controls{justify-content:flex-start}.app-container .image-uploader video{width:100%;height:100%;object-fit:cover;border-radius:6px}.app-container .sns-channel-list-section{display:flex;flex-direction:column;gap:6px;border-bottom:1px solid var(--border-color)}.app-container .sns-channel-list-section h2{text-align:center;font-size:1.25rem;color:var(--on-background-color);margin:0}.app-container .channel-list-header{display:flex;justify-content:flex-end}.app-container .channel-list-header .btn{padding:0 12px;font-size:.85rem}.app-container .channel-list-container{display:flex;flex-direction:column;overflow-y:auto;background-color:var(--drop-zone-bg);border-radius:6px;border:1px solid var(--border-color)}.app-container .channel-list-item{display:flex;justify-content:space-between;align-items:center;padding:10px;border-radius:6px;background-color:var(--surface-color);border:1px solid transparent;cursor:pointer;transition:background-color .2s,border-color .2s}.app-container .channel-list-item:hover{border-color:var(--secondary-color)}.app-container .channel-list-item.active{background-color:color-mix(in srgb,var(--surface-color) 80%,var(--primary-color) 20%);border-color:var(--primary-color)}.app-container .channel-info{display:flex;flex-direction:column;gap:2px;flex-grow:1}.app-container .channel-platform{font-size:.75rem;font-weight:500;color:var(--on-surface-color);background-color:var(--drop-zone-bg);padding:2px 6px;border-radius:4px;align-self:flex-start}.app-container .channel-title{font-size:.95rem;font-weight:500;color:var(--on-background-color)}.app-container .concept-editor select{width:100%;padding:10px;border-radius:6px;border:1px solid var(--input-border-color);background-color:var(--drop-zone-bg);color:var(--on-background-color);font-size:.9rem;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em}.app-container .editor-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.app-container .channel-item-actions{display:flex;gap:6px;flex-shrink:0}.app-container .btn-duplicate{background-color:#7e57c2;color:#fff;font-size:.8rem;padding:4px 10px}.app-container .middle-panel{justify-content:flex-start}.app-container .btn-regenerate{background-color:#2979ff;color:#fff;font-size:.8rem;padding:4px 10px}.app-container .concept-editor .editor-actions .btn-save{background-color:var(--primary-color);color:var(--on-primary-color)}.app-container .channel-list-actions-header{display:flex;justify-content:space-between;align-items:center}.app-container .channel-settings-actions{display:flex;gap:8px}.app-container .channel-list-actions-header .btn{padding:0 12px;font-size:.85rem}.app-container .collapsible-section{border:1px solid var(--border-color);border-radius:8px;padding:16px;background-color:var(--surface-color)}.app-container .collapsible-section h2{border-bottom:none;padding-bottom:0}.app-container .collapsible-section-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer}.app-container .collapsible-content{display:flex;flex-direction:column;gap:16px;overflow:hidden;max-height:500px;opacity:1;margin-top:16px;transition:max-height .3s ease-in-out,opacity .3s ease-in-out,margin-top .3s ease-in-out}.app-container .collapsible-content.collapsed{max-height:0;opacity:0;margin-top:0;pointer-events:none}.app-container .toggle-btn{background:none;border:none;color:var(--on-surface-color);cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.app-container .toggle-btn svg{transition:transform .3s ease-in-out}.app-container .toggle-btn.collapsed svg{transform:rotate(-90deg)}.app-container .add-new-channel-container{display:flex;justify-content:flex-end}.app-container .add-new-channel-container .btn{padding:6px 12px;font-size:.85rem}.app-container .channel-list-actions-header{justify-content:flex-start}.app-container .main-hub-title{font-size:1.2rem;margin:0;padding:0;text-align:left}.app-container .main-upload-btn{width:100%;justify-content:center}.app-container .btn-icon{width:20px;height:20px}.app-container .btn-icon.icon-instagram,.app-container .btn-icon.icon-youtube,.app-container .btn-icon.icon-facebook,.app-container .btn-icon.icon-linkedin,.app-container .btn-icon.icon-twitter{fill:currentColor;stroke:none}.app-container{grid-template-columns:300px 1.5fr 1fr}.app-container .section-divider{height:1px;background-color:var(--border-color);margin:8px 0}.app-container .left-panel .sns-channel-list-section{padding-bottom:0;border-bottom:none;margin-bottom:0}@media(max-width:1400px){.app-container{grid-template-columns:300px 1.5fr 1fr}}@media(max-width:1024px){.app-container{grid-template-columns:280px 1.5fr 1fr;grid-template-rows:1fr;grid-template-areas:"left right"}}.app-container .main-hub-title{margin-top:-12px}.app-container .collapsible-section{padding-top:10px;padding-bottom:10px}.app-container .left-panel>.settings-section:nth-of-type(2){margin-top:-12px}.app-container .section-divider{margin:5px 0}.app-container .channel-settings-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.app-container .add-new-channel-container{margin-top:6px}.app-container .left-panel{gap:12px}.app-container .collapsible-section{padding:8px 16px}.app-container .left-panel>.settings-section:nth-of-type(2){margin-top:0}.app-container .section-divider{margin:12px 0}.app-container .concept-section{gap:8px;height:auto}.app-container .concept-editor{gap:8px}.app-container .concept-editor .form-group{gap:4px}.app-container .editor-actions{margin-top:4px}.app-container .right-panel{justify-self:start}.app-container .post-slot{grid-template-columns:112px 1fr;min-height:112px}.app-container .image-uploader{width:112px;height:112px}.app-container .left-panel,.app-container .right-panel{padding:10px;gap:8px;margin-top:50px}.app-container .settings-section,.app-container .sns-channel-list-section,.app-container .post-slots-container,.app-container .post-slot,.app-container .left-panel-top-controls,.app-container .button-group,.app-container .editor-actions{gap:8px}.app-container .sns-channel-list-section{gap:0px}.app-container .form-group,.app-container .channel-item-actions{gap:8px}.app-container .section-divider{margin:8px 0}.app-container .add-new-channel-container{margin-top:8px}.app-container .right-panel{max-width:1200px}.app-container{height:100vh}.app-container .left-panel,.app-container .right-panel{padding:13px}.app-container .left-panel{overflow-x:hidden}.app-container .left-panel-top-controls{margin:0;padding:0 0 8px}.app-container .main-hub-title{margin-top:0}.app-container .right-panel{justify-self:stretch}.app-container .concept-section{border:1px solid var(--border-color);border-radius:8px;padding:16px;margin-top:16px;background-color:var(--drop-zone-bg)}.app-container .concept-section{margin-top:0}.app-container .section-divider{margin:0}.app-container .right-panel-header-actions{display:flex;align-items:center;gap:8px}.app-container .right-panel-header-actions .btn{padding-top:6px;padding-bottom:6px}.app-container .btn-reset{background-color:var(--error-color);color:var(--on-primary-color)}.app-container .description-controls .btn-reset{font-size:.8rem;padding:4px 10px}.app-container .description-controls .btn-save{background-color:var(--primary-color);color:var(--on-primary-color)}.app-container .image-uploader-prompt span{text-align:center}body.sns-hub-active:has(.hub-container) #root{display:block;padding:0;height:100vh;width:100vw;overflow:hidden}.app-container .hub-container{position:fixed;top:0;right:0;height:100vh;z-index:2000;display:flex;align-items:center;transform:translate(1200px);transition:transform .4s ease-in-out;box-shadow:-5px 0 15px #0003}.app-container .hub-container.is-open{transform:translate(0)}.app-container .hub-toggle-btn{width:30px;height:150px;flex-shrink:0;background-color:var(--primary-color);color:var(--on-primary-color);border:none;cursor:pointer;writing-mode:vertical-rl;text-orientation:mixed;font-size:1rem;font-weight:600;letter-spacing:1px;display:flex;align-items:center;justify-content:center;border-top-left-radius:8px;border-bottom-left-radius:8px;padding:0;margin:0}.app-container .hub-content-wrapper{width:1500px;height:100%;overflow:hidden;background-color:var(--background-color);border-left:1px solid var(--border-color)}.app-container .hub-container.is-open{transform:translate(0) translateY(-50%)}.app-container .hub-content-wrapper{box-shadow:-5px 0 15px #0003}.app-container .description-edit-modal-overlay{position:fixed;inset:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:3000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease-out}.app-container .description-edit-modal{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;padding:24px;width:90%;max-width:700px;display:flex;flex-direction:column;gap:16px;box-shadow:0 5px 20px #00000040}.app-container .description-edit-modal h3{text-align:center;margin:0;color:var(--on-background-color)}.app-container .description-input-modal{width:100%;min-height:500px;resize:vertical;padding:12px;font-size:1rem;line-height:1.6}.app-container .description-edit-modal .modal-actions{display:flex;justify-content:flex-end;gap:12px}.app-container .loading-overlay{z-index:4000}.app-container .hub-toggle-btn{height:120px}.app-container .reference-panel .description-area{display:block}.app-container .reference-panel .description-input{height:100%}.app-container .btn-post,.app-container .btn-multi-post{background-color:#1976d2;color:#fff}.app-container .confirmation-modal{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;padding:24px;width:90%;max-width:450px;display:flex;flex-direction:column;gap:16px;box-shadow:0 5px 20px #00000040;text-align:center}.app-container .confirmation-modal p{font-size:1rem;line-height:1.5;color:var(--on-surface-color);margin:0}.app-container .confirmation-modal .modal-actions{justify-content:center}.points-display{background-color:var(--drop-zone-bg);border:1px solid var(--border-color);border-radius:8px;padding:12px;margin-bottom:16px;display:flex;flex-direction:column;gap:8px}.points-item{display:flex;justify-content:space-between;align-items:center;font-size:.9rem;color:var(--on-surface-color)}.points-value{font-weight:600;color:var(--on-background-color);padding:4px 8px;border-radius:4px;background-color:var(--surface-color)}.points-value.required{color:var(--secondary-color)}.points-item>span:first-child{flex-basis:70px;flex-shrink:0}.points-item .points-value{white-space:nowrap}.button-point-cost{font-weight:500;margin-left:6px;opacity:.9}
