.tool-header .outpaint-icon{background:rgba(14,165,233,.14);color:#0ea5e9;font-size:20px;font-weight:700}
.outpaint-panel{overflow-y:auto}
.outpaint-scale-row{width:100%}
.outpaint-ratio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.outpaint-ratio-grid button{min-height:32px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text2);font:inherit;font-size:11px;cursor:pointer;transition:.15s}
.outpaint-ratio-grid button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}
.outpaint-ratio-grid button.active{border-color:var(--accent);background:var(--accent-light);color:var(--accent);font-weight:700}
.outpaint-ratio-grid button:disabled{opacity:.68;cursor:default}
.outpaint-info-section{gap:5px}
.outpaint-dimensions{font-size:12px;color:var(--text);font-weight:650}
.outpaint-edge-values{font-size:10px;color:var(--text3);line-height:1.5}
.outpaint-panel .tool-section-title span{font-weight:400;text-transform:none;opacity:.7}
.outpaint-panel textarea{min-height:64px;resize:vertical}

.outpaint-preview-shell{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:22px;overflow:hidden;user-select:none;touch-action:none;background:radial-gradient(circle at 50% 46%,rgba(var(--accent-rgb),.05),transparent 58%)}
.outpaint-preview-stage{position:relative;flex:0 0 auto;box-sizing:border-box;background-color:#eceff1;background-image:linear-gradient(45deg,#dfe3e6 25%,transparent 25%),linear-gradient(-45deg,#dfe3e6 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#dfe3e6 75%),linear-gradient(-45deg,transparent 75%,#dfe3e6 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0;box-shadow:0 16px 48px rgba(15,23,42,.2);outline:1px solid rgba(var(--accent-rgb),.55)}
.outpaint-preview-stage::before{content:"AI 扩展区域";position:absolute;left:8px;top:7px;z-index:3;padding:3px 7px;border-radius:10px;background:rgba(15,23,42,.68);color:#fff;font-size:9px;letter-spacing:.4px;pointer-events:none}
.outpaint-source-image{position:absolute;display:block;object-fit:fill;pointer-events:none;box-shadow:0 0 0 1px rgba(255,255,255,.82),0 0 0 2px rgba(15,23,42,.18);z-index:2}
.outpaint-source-bounds{position:absolute;z-index:3;border:1px dashed rgba(255,255,255,.9);box-shadow:0 0 0 1px rgba(15,23,42,.26);pointer-events:none}
.outpaint-handle{position:absolute;z-index:6;width:16px;height:16px;border:2px solid #fff;border-radius:50%;background:var(--accent);box-shadow:0 2px 9px rgba(0,0,0,.35);transform:translate(-50%,-50%);touch-action:none}
.outpaint-handle::after{content:"";position:absolute;inset:-8px}
.outpaint-handle[data-dir="n"],.outpaint-handle[data-dir="s"]{cursor:ns-resize}
.outpaint-handle[data-dir="e"],.outpaint-handle[data-dir="w"]{cursor:ew-resize}
.outpaint-handle[data-dir="ne"],.outpaint-handle[data-dir="sw"]{cursor:nesw-resize}
.outpaint-handle[data-dir="nw"],.outpaint-handle[data-dir="se"]{cursor:nwse-resize}
.outpaint-handle[data-dir="n"]{left:50%;top:0}.outpaint-handle[data-dir="s"]{left:50%;top:100%}.outpaint-handle[data-dir="w"]{left:0;top:50%}.outpaint-handle[data-dir="e"]{left:100%;top:50%}
.outpaint-handle[data-dir="nw"]{left:0;top:0}.outpaint-handle[data-dir="ne"]{left:100%;top:0}.outpaint-handle[data-dir="sw"]{left:0;top:100%}.outpaint-handle[data-dir="se"]{left:100%;top:100%}
.outpaint-preview-meta{position:absolute;right:10px;bottom:9px;z-index:4;padding:4px 8px;border-radius:11px;background:rgba(15,23,42,.72);color:#fff;font-size:10px;pointer-events:none}
.outpaint-preview-help{position:absolute;left:50%;bottom:9px;z-index:4;transform:translateX(-50%);padding:4px 10px;border-radius:12px;background:rgba(15,23,42,.72);color:#fff;font-size:10px;white-space:nowrap;pointer-events:none}
.outpaint-preview-result{max-width:100%;max-height:100%;object-fit:contain;display:block;border-radius:8px;box-shadow:0 16px 48px rgba(15,23,42,.2)}
.outpaint-result-wrap{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:18px;overflow:hidden}
.outpaint-result-badge{position:absolute;top:12px;left:50%;transform:translateX(-50%);z-index:4;padding:5px 12px;border-radius:14px;background:rgba(15,23,42,.76);color:#fff;font-size:11px}

@media(max-width:900px){.outpaint-preview-shell{padding:16px}.outpaint-handle{width:18px;height:18px}.outpaint-preview-help{display:none}}
