.blur-mosaic-page{flex:1 0 auto;min-height:0;display:flex;flex-direction:column}.is-hidden{display:none!important}.tool-intro{padding:34px 24px 12px;text-align:center}.tool-intro h1{margin:0 0 10px;font-size:clamp(28px,3vw,38px)}.tool-intro p{margin:0;color:#7a5c66;line-height:1.7}.upload-start{width:min(760px,calc(100% - 32px));margin:18px auto 90px}.drop-zone{min-height:330px;padding:44px 28px;border:2px dashed #e8bcc9;border-radius:20px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;outline:none;transition:.16s}.drop-zone:hover,.drop-zone:focus,.drop-zone.is-dragover{border-color:var(--primary);background:#fff5f7;box-shadow:0 12px 32px rgba(159,18,57,.12)}.drop-zone p{margin:14px 0 8px;color:#7a5c66}.drop-zone small{color:#9a7682;line-height:1.6}.tool-unavailable{width:min(680px,calc(100% - 32px));margin:34px auto 90px;padding:42px;text-align:center;background:#fff;border:1px solid var(--border);border-radius:16px}.editor-layout{position:relative;width:min(1600px,100%);margin:8px auto;flex:1 0 auto;min-height:0;display:grid;grid-template-columns:320px minmax(0,1fr);align-items:stretch;border:1px solid var(--border);background:var(--page-bg)}.editor-layout::before{content:"";position:absolute;z-index:0;top:0;bottom:0;left:0;width:320px;background:#fff;border-right:1px solid var(--border);pointer-events:none}.options-panel,.image-workspace{position:relative;z-index:1}.options-panel__sticky{position:sticky;top:var(--header-height);max-height:calc(100vh - var(--header-height));overflow-y:auto;padding-bottom:22px}.options-panel h2{margin:0;padding:22px 20px;text-align:center;font-size:20px;border-bottom:1px solid var(--border)}.option-section{background:#fff}.option-heading{padding:17px 16px 12px;font-size:13px;font-weight:800;color:#6f4955;border-bottom:1px solid var(--border)}.mode-grid{padding:14px 16px 16px;display:grid;grid-template-columns:1fr 1fr;gap:10px;border-bottom:1px solid var(--border)}.mode-card{min-height:48px;padding:0 12px;border:1px solid #e6c0cc;border-radius:10px;display:flex;align-items:center;gap:8px;font-weight:700;color:#6c3144;cursor:pointer}.mode-card input{accent-color:var(--primary)}.field-row{min-height:68px;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--border);font-size:14px}.field-row>label:first-child{flex:0 0 72px;font-weight:700;color:#5f4250}.field-inline{display:flex;align-items:center;gap:10px;flex:1}.field-inline input[type=range]{width:100%;accent-color:var(--primary)}.option-actions{padding:16px;display:grid;gap:10px;border-bottom:1px solid var(--border)}.option-actions button{width:100%}.option-section--notice{padding:14px 16px 16px}.notice-box{padding:14px;border-radius:8px;background:#f8e7ec;color:#6c3144;font-size:13px;font-weight:700;line-height:1.6;text-align:center}.process-button{width:calc(100% - 32px);margin:18px 16px 0}.image-workspace{min-width:0;padding:20px;display:flex;flex-direction:column;gap:14px}.workspace-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.workspace-toolbar strong{font-size:18px;color:#402530}.file-count{margin-left:8px;font-size:13px;font-weight:700;color:#7f5b68}.workspace-toolbar__actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.upload-progress,.upload-feedback,.process-message{border-radius:12px;padding:12px 14px;background:#fff;border:1px solid #e7cad3}.upload-progress__bar{height:10px;border-radius:999px;background:#f4dbe3;overflow:hidden}.upload-progress__bar span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#b01443,#e14a7f);transition:width .2s}.upload-progress__text{margin-top:8px;color:#6d4753;font-size:13px}.upload-feedback,.process-message{white-space:pre-line;color:#8f183f;background:#fff6f8}.upload-feedback.is-success,.process-message.is-success{color:#155724;background:#f1fbf4;border-color:#b9e1c2}.preview-shell{background:#fff;border:1px solid #ead2da;border-radius:20px;padding:18px;display:flex;flex-direction:column;gap:16px}.preview-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap}.preview-toolbar__nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.preview-nav-button{min-height:40px;padding:0 14px;border:1px solid #dcb4c3;border-radius:10px;background:#fff;color:#6e3347;font-weight:700;cursor:pointer}.preview-nav-button:disabled{opacity:.45;cursor:default}.preview-toolbar__select{display:flex;align-items:center;gap:10px;color:#6f4955;font-size:13px;font-weight:700}.preview-toolbar__select select{min-width:280px;min-height:40px;padding:0 10px;border:1px solid #d7a2b0;border-radius:7px;background:#fff}.preview-toolbar__meta{color:#7d5f69;font-size:13px;line-height:1.5}.preview-stage{min-height:540px;padding:20px;border-radius:18px;border:1px dashed #e9c5d2;background:#fbf3f6;display:flex;align-items:center;justify-content:center}.preview-canvas-wrap{width:100%;display:flex;align-items:center;justify-content:center;padding:18px;border-radius:18px;background:linear-gradient(45deg,#f2dde5 25%,transparent 25%,transparent 75%,#f2dde5 75%),linear-gradient(45deg,#f2dde5 25%,transparent 25%,transparent 75%,#f2dde5 75%),#fff;background-position:0 0,12px 12px;background-size:24px 24px}.preview-canvas-stage{position:relative;display:inline-block;max-width:100%;max-height:68vh}#previewCanvas{display:block;max-width:100%;max-height:68vh;width:auto;height:auto;border-radius:12px;box-shadow:0 18px 36px rgba(95,66,80,.12)}.region-editor{position:absolute;inset:0;z-index:2;pointer-events:none}.region-box{position:absolute;box-sizing:border-box;border:2px dashed #cf5379;border-radius:8px;background:rgba(255,255,255,.05);cursor:move;pointer-events:auto;touch-action:none}.region-box.is-active{box-shadow:0 0 0 2px rgba(255,255,255,.8),0 0 0 4px rgba(207,83,121,.18)}.region-box[data-shape=ellipse]{border-radius:50%}.region-label{position:absolute;left:6px;top:-29px;padding:5px 8px;border-radius:999px;background:rgba(111,39,68,.92);color:#fff;font-size:11px;font-weight:700;white-space:nowrap;pointer-events:none}.region-handle{position:absolute;width:14px;height:14px;border-radius:50%;border:2px solid #fff;background:#cf5379;box-shadow:0 2px 6px rgba(95,66,80,.18);pointer-events:auto;touch-action:none}.region-handle--nw{left:-8px;top:-8px;cursor:nwse-resize}.region-handle--ne{right:-8px;top:-8px;cursor:nesw-resize}.region-handle--sw{left:-8px;bottom:-8px;cursor:nesw-resize}.region-handle--se{right:-8px;bottom:-8px;cursor:nwse-resize}.preview-empty,.preview-caption{color:#85636f;font-size:13px;line-height:1.5;text-align:center}.thumbnail-heading{font-size:14px;font-weight:800;color:#6f4955}.image-grid--thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}.image-card{position:relative;background:#fff;border:1px solid #ead1da;border-radius:16px;overflow:hidden;box-shadow:0 8px 18px rgba(90,45,62,.05)}.image-card.is-current{border-color:#cf5379;box-shadow:0 0 0 2px rgba(207,83,121,.15),0 12px 22px rgba(90,45,62,.1)}.image-card__main{width:100%;padding:0;border:0;background:transparent;text-align:left;cursor:pointer}.image-card__preview{aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;padding:10px;background:#fff5f7}.image-card__preview img{max-width:100%;max-height:100%;object-fit:contain}.image-card__meta{padding:10px 12px 12px}.image-card__name{font-size:13px;font-weight:700;color:#4d2f3b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-card__sub{margin-top:5px;font-size:12px;color:#80616b}.image-card__remove{position:absolute;top:8px;right:8px;width:28px;height:28px;border:0;border-radius:999px;background:rgba(73,43,55,.72);color:#fff;font-size:18px;cursor:pointer}@media(max-width:1040px){.editor-layout{grid-template-columns:1fr}.editor-layout::before{display:none}.options-panel__sticky{position:static;max-height:none;overflow:visible}}@media(max-width:640px){.image-workspace{padding:16px}.workspace-toolbar,.preview-toolbar{flex-direction:column;align-items:stretch}.preview-toolbar__nav{flex-direction:column;align-items:stretch}.preview-toolbar__select{flex-direction:column;align-items:stretch}.preview-toolbar__select select{min-width:0}.preview-stage{min-height:320px;padding:12px}.preview-canvas-wrap{padding:10px}.image-grid--thumbs{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}
