body.is-compact-app{overflow:hidden}body.is-compact-app main{max-width:100%;margin:0;padding:0}body.is-compact-app .mobile-header{display:none}@media (width>=900px){body.is-compact-app main{padding-top:72px}}.app-editor{flex-direction:column;height:100dvh;display:flex}@media (width>=900px){.app-editor{border-left:1px solid var(--border);border-right:1px solid var(--border);max-width:560px;height:calc(100dvh - 72px);margin:0 auto}}.app-editor-bar{border-bottom:1px solid var(--border);background:var(--surface);flex:none;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.app-editor-back,.app-editor-download{border:1px solid var(--border);width:36px;height:36px;color:var(--ink);cursor:pointer;background:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.app-editor-back svg,.app-editor-download svg{width:16px;height:16px}.app-editor-download{background:var(--primary);color:#fff;border-color:#0000;transition:transform .15s}.app-editor-download svg{color:#fff}.app-editor-download:active{transform:scale(.92)}.app-editor-download.is-loading{opacity:.6;pointer-events:none}.app-editor-title{text-align:center;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:1;font-family:Baloo,sans-serif;font-size:15px;font-weight:800;overflow:hidden}.download-menu-wrap{flex:none;position:relative}.download-menu{z-index:20;border:1px solid var(--border);width:220px;box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;background:#fff;border-radius:14px;padding:6px;transition:opacity .16s,transform .16s,visibility .16s;position:absolute;top:calc(100% + 8px);right:0;transform:translateY(-6px)scale(.98)}.download-menu.open{opacity:1;visibility:visible;transform:translateY(0)scale(1)}.download-menu-item{cursor:pointer;text-align:left;background:0 0;border:none;border-radius:9px;flex-direction:column;align-items:flex-start;gap:1px;width:100%;padding:9px 12px;display:flex}.download-menu-item:hover,.download-menu-item.is-active{background:#f1faf9}.download-menu-format{color:var(--ink);font-size:13.5px;font-weight:800}.download-menu-hint{color:var(--muted);font-size:11px;font-weight:600}.app-editor-canvas-area{background:#f5f3fa;flex:1;justify-content:center;align-items:center;min-height:0;padding:16px;display:flex;position:relative}.editor-history-controls{z-index:5;gap:6px;display:flex;position:absolute;top:24px;right:24px}.editor-history-btn{border:1px solid var(--border);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer;width:34px;height:34px;color:var(--ink);box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:opacity .15s,transform .15s,border-color .15s;display:flex}.editor-history-btn svg{width:15px;height:15px}.editor-history-btn:disabled{opacity:.35;cursor:not-allowed}.editor-history-btn:not(:disabled):hover{border-color:var(--primary);color:var(--primary);transform:translateY(-1px)}.editor-canvas-frame{background:#efedf5 50%/cover;border-radius:12px;width:100%;max-width:300px;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 10px 26px #201e2b24}.editor-canvas-preview-img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}@media (height>=720px){.editor-canvas-frame{max-width:340px}}.editor-canvas-frame canvas,.editor-canvas-frame>div{width:100%!important;height:100%!important}.app-editor-panel{padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:#fff;flex-direction:column;flex:none;display:flex;box-shadow:0 -4px 16px #201e2b0f}.editor-context-bar{align-items:center;gap:4px;min-height:48px;display:flex}.editor-actions-row{width:100%;display:flex}.editor-action-btn{color:var(--muted);cursor:pointer;text-align:center;background:0 0;border:none;border-radius:12px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:5px;padding:8px 4px;font-family:inherit;font-size:11px;font-weight:700;transition:background .15s,color .15s;display:flex}.editor-action-btn svg{width:19px;height:19px}.editor-action-btn:hover{color:var(--primary)}.editor-action-btn:active{background:#f1faf9}.editor-tool-row{align-items:center;gap:6px;width:100%;display:flex}.editor-tool-btn{color:var(--ink);cursor:pointer;background:#f5f3fa;border:none;border-radius:100px;flex:none;align-items:center;gap:6px;padding:10px 14px;font-family:inherit;font-size:13px;font-weight:700;transition:background .15s,color .15s;display:flex}.editor-tool-btn svg{width:15px;height:15px}.editor-tool-btn:hover{color:var(--primary);background:#e7f8f6}.editor-tool-btn.is-danger{color:#c0392b}.editor-tool-btn.is-danger:hover{background:#fbeaea}.editor-tool-spacer{flex:1}.editor-style-btn{width:34px;height:34px;color:var(--muted);cursor:pointer;background:#f5f3fa;border:none;border-radius:9px;flex:none;font-size:13px;font-weight:800;transition:background .15s,color .15s}.editor-style-btn.is-italic{font-style:italic}.editor-style-btn:hover{color:var(--primary)}.editor-style-btn[aria-pressed=true]{background:var(--primary);color:#fff}.editor-color-btn{cursor:pointer;background:#f5f3fa;border:none;border-radius:9px;flex:none;width:34px;height:34px;display:block;position:relative;overflow:hidden}.editor-color-btn input[type=color]{cursor:pointer;border:none;width:calc(100% + 8px);height:calc(100% + 8px);padding:0;position:absolute;inset:-4px}.editor-tool-row-text input[type=text]{background:#f5f3fa;border:none;border-radius:100px;flex:1;min-width:0;padding:10px 12px;font-family:inherit;font-size:14px}.editor-tool-row-text input[type=text]:focus{outline:2px solid var(--primary);outline-offset:1px}.cropper-modal{z-index:200;opacity:0;visibility:hidden;background:#14121cb3;justify-content:center;align-items:center;padding:20px;transition:opacity .2s,visibility .2s;display:flex;position:fixed;inset:0}.cropper-modal.open{opacity:1;visibility:visible}.cropper-modal-inner{background:#fff;border-radius:18px;width:100%;max-width:420px;padding:18px}.cropper-image-wrap{background:#111;border-radius:10px;width:100%;height:55dvh;max-height:420px;overflow:hidden}.cropper-image-wrap img{max-width:100%;display:block}.cropper-modal-actions{gap:10px;margin-top:16px;display:flex}.cropper-modal-actions button{border:1px solid var(--border);cursor:pointer;background:#f5f3fa;border-radius:10px;flex:1;padding:11px;font-size:13.5px;font-weight:700}.cropper-modal-actions .primary{background:var(--primary);color:#fff;border-color:#0000}.cropper-modal-actions .ghost{background:#fff}.poster-browse-sheet{z-index:210;opacity:0;visibility:hidden;justify-content:center;align-items:flex-end;transition:opacity .2s,visibility .2s;display:flex;position:fixed;inset:0}.poster-browse-sheet.open{opacity:1;visibility:visible}.poster-browse-backdrop{background:#14121c8c;position:absolute;inset:0}.poster-browse-panel{z-index:1;background:#fff;border-radius:22px 22px 0 0;flex-direction:column;width:100%;max-width:560px;max-height:82dvh;transition:transform .22s cubic-bezier(.22,1,.36,1);display:flex;position:relative;transform:translateY(16px)}.poster-browse-sheet.open .poster-browse-panel{transform:translateY(0)}.poster-browse-head{border-bottom:1px solid var(--border);flex:none;justify-content:space-between;align-items:center;padding:16px 18px;font-family:Baloo,sans-serif;font-size:16px;font-weight:800;display:flex}.poster-browse-close{cursor:pointer;width:30px;height:30px;color:var(--muted);background:#f1eff7;border:none;border-radius:50%;font-size:18px;line-height:1}.poster-browse-search-row{flex:none;padding:12px 18px 0}.poster-browse-search-row input{border:1px solid var(--border);border-radius:12px;width:100%;padding:11px 14px;font-family:inherit;font-size:14px}.poster-browse-chips{scrollbar-width:none;flex:none;gap:8px;padding:12px 18px;display:flex;overflow-x:auto}.poster-browse-chips::-webkit-scrollbar{display:none}.poster-browse-chip{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:100px;flex:none;padding:7px 14px;font-family:inherit;font-size:12.5px;font-weight:700}.poster-browse-chip.is-active{background:var(--primary);border-color:var(--primary);color:#fff}.poster-browse-grid{flex:1;grid-template-columns:repeat(3,1fr);gap:10px;min-height:0;padding:4px 18px 18px;display:grid;overflow-y:auto}.poster-browse-card{cursor:pointer;text-align:left;background:0 0;border:none;flex-direction:column;gap:6px;padding:0;font-family:inherit;display:flex}.poster-browse-card-img{aspect-ratio:3/4;object-fit:cover;background:#f1eff7;border-radius:10px;width:100%;display:block}.poster-browse-card-title{color:var(--ink);font-size:11px;font-weight:700;line-height:1.3}.poster-browse-empty{text-align:center;color:var(--muted);grid-column:1/-1;padding:30px 0;font-size:13px}.hidden{display:none!important}
