:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang TC,Microsoft JhengHei,sans-serif;line-height:1.5;color:#222}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh}.vue-advanced-cropper{text-align:center;position:relative;-webkit-user-select:none;user-select:none;max-height:100%;max-width:100%;direction:ltr}.vue-advanced-cropper__stretcher{pointer-events:none;position:relative;max-width:100%;max-height:100%}.vue-advanced-cropper__image{-webkit-user-select:none;user-select:none;position:absolute;transform-origin:center;max-width:none!important}.vue-advanced-cropper__background,.vue-advanced-cropper__foreground{opacity:1;background:#000;transform:translate(-50%,-50%);position:absolute;top:50%;left:50%}.vue-advanced-cropper__foreground{opacity:.5}.vue-advanced-cropper__boundaries{opacity:1;transform:translate(-50%,-50%);position:absolute;left:50%;top:50%}.vue-advanced-cropper__cropper-wrapper{width:100%;height:100%}.vue-advanced-cropper__image-wrapper{overflow:hidden;position:absolute;width:100%;height:100%}.vue-advanced-cropper__stencil-wrapper{position:absolute}.vue-simple-handler{display:block;background:#fff;height:10px;width:10px}.vue-handler-wrapper{position:absolute;transform:translate(-50%,-50%);width:30px;height:30px}.vue-handler-wrapper__draggable{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.vue-handler-wrapper--west-north{cursor:nw-resize}.vue-handler-wrapper--north{cursor:n-resize}.vue-handler-wrapper--east-north{cursor:ne-resize}.vue-handler-wrapper--east{cursor:e-resize}.vue-handler-wrapper--east-south{cursor:se-resize}.vue-handler-wrapper--south{cursor:s-resize}.vue-handler-wrapper--west-south{cursor:sw-resize}.vue-handler-wrapper--west{cursor:w-resize}.vue-handler-wrapper--disabled{cursor:auto}.vue-line-wrapper{background:none;position:absolute;display:flex;align-items:center;justify-content:center}.vue-line-wrapper--north,.vue-line-wrapper--south{height:12px;width:100%;left:0;transform:translateY(-50%)}.vue-line-wrapper--north{top:0;cursor:n-resize}.vue-line-wrapper--south{top:100%;cursor:s-resize}.vue-line-wrapper--east,.vue-line-wrapper--west{width:12px;height:100%;transform:translate(-50%);top:0}.vue-line-wrapper--east{left:100%;cursor:e-resize}.vue-line-wrapper--west{left:0;cursor:w-resize}.vue-line-wrapper--disabled{cursor:auto}.vue-bounding-box{position:relative;height:100%;width:100%}.vue-bounding-box__handler{position:absolute}.vue-bounding-box__handler--west-north{left:0;top:0}.vue-bounding-box__handler--north{left:50%;top:0}.vue-bounding-box__handler--east-north{left:100%;top:0}.vue-bounding-box__handler--east{left:100%;top:50%}.vue-bounding-box__handler--east-south{left:100%;top:100%}.vue-bounding-box__handler--south{left:50%;top:100%}.vue-bounding-box__handler--west-south{left:0;top:100%}.vue-bounding-box__handler--west{left:0;top:50%}.vue-draggable-area{position:relative}.vue-preview-result{overflow:hidden;box-sizing:border-box;position:absolute;height:100%;width:100%}.vue-preview-result__wrapper{position:absolute}.vue-preview-result__image{pointer-events:none;position:relative;-webkit-user-select:none;user-select:none;transform-origin:center;max-width:none!important}.vue-rectangle-stencil{position:absolute;height:100%;width:100%;box-sizing:border-box}.vue-rectangle-stencil__preview{position:absolute;width:100%;height:100%}.vue-rectangle-stencil--movable{cursor:move}.vue-circle-stencil{position:absolute;height:100%;width:100%;box-sizing:content-box;cursor:move}.vue-circle-stencil__preview{border-radius:50%;position:absolute;width:100%;height:100%}.vue-circle-stencil--movable{cursor:move}.vue-preview{overflow:hidden;box-sizing:border-box;position:relative}.vue-preview--fill{width:100%;height:100%;position:absolute}.vue-preview__wrapper{position:absolute;height:100%;width:100%}.vue-preview__image{pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none;transform-origin:center;max-width:none!important}.vue-simple-line{background:none;transition:border .5s;border-color:#ffffff4d;border-width:0;border-style:solid}.vue-simple-line--south,.vue-simple-line--north{height:0;width:100%}.vue-simple-line--east,.vue-simple-line--west{height:100%;width:0}.vue-simple-line--east{border-right-width:1px}.vue-simple-line--west{border-left-width:1px}.vue-simple-line--south{border-bottom-width:1px}.vue-simple-line--north{border-top-width:1px}.vue-simple-line--hover{opacity:1;border-color:#fff}.home[data-v-d3ad403f]{padding:1.5rem 1rem 3rem;max-width:560px;margin:0 auto}.hero[data-v-d3ad403f]{text-align:center;margin:1rem 0 1.75rem;animation:fade-up-d3ad403f .32s var(--transition) both}.hero-icon[data-v-d3ad403f]{width:64px;height:64px;color:var(--color-primary);margin-bottom:.5rem}h1[data-v-d3ad403f]{font-size:1.5rem;margin:0 0 .35rem;font-weight:600;letter-spacing:.01em}.subtitle[data-v-d3ad403f]{margin:0;color:var(--color-text-muted);font-size:.95rem}.notice[data-v-d3ad403f]{padding:1rem 1.25rem;border-radius:var(--radius);text-align:center;background:var(--color-surface);border:1px solid var(--color-border);margin:1rem 0;display:inline-flex;align-items:center;gap:.5rem;width:100%;justify-content:center;box-sizing:border-box;box-shadow:var(--shadow-sm)}.notice.error[data-v-d3ad403f]{background:#fef2f2;color:#991b1b;border-color:#fecaca}.notice.disabled[data-v-d3ad403f]{color:var(--color-text-muted);flex-direction:column;padding:1.5rem}.notice-icon[data-v-d3ad403f]{width:32px;height:32px;color:var(--color-text-muted);margin-bottom:.25rem}.notice p[data-v-d3ad403f]{margin:0}.hint[data-v-d3ad403f]{font-size:.875rem;color:var(--color-text-muted);margin:.5rem 0 0}.pick[data-v-d3ad403f]{padding:.5rem 0}.drop-zone[data-v-d3ad403f]{width:100%;background:var(--color-surface);border:2px dashed var(--color-border);border-radius:var(--radius);padding:2.5rem 1.25rem;display:flex;flex-direction:column;align-items:center;gap:.5rem;cursor:pointer;color:var(--color-text);transition:border-color var(--transition),transform var(--transition),box-shadow var(--transition),background var(--transition);min-height:44px}.drop-zone[data-v-d3ad403f]:hover,.drop-zone[data-v-d3ad403f]:focus-visible{border-color:var(--color-primary);background:#f5f8ff;transform:translateY(-1px);box-shadow:var(--shadow-md);outline:none}.drop-icon[data-v-d3ad403f]{width:40px;height:40px;color:var(--color-primary)}.drop-title[data-v-d3ad403f]{font-size:1.05rem;font-weight:600}.drop-hint[data-v-d3ad403f]{font-size:.875rem;color:var(--color-text-muted)}.cropper-wrap[data-v-d3ad403f]{animation:fade-up-d3ad403f .24s var(--transition) both}.cropper-hint[data-v-d3ad403f]{text-align:center;color:var(--color-text-muted);font-size:.875rem;margin:0 0 .5rem}.cropper[data-v-d3ad403f]{width:100%;aspect-ratio:1 / 1;background:#000;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-md)}.cropper[data-v-d3ad403f] .cropper-bg,.cropper[data-v-d3ad403f] .vue-advanced-cropper__background{background:#000}.cropper[data-v-d3ad403f] .cropper-fg,.cropper[data-v-d3ad403f] .vue-advanced-cropper__foreground{background:#000000b3;opacity:1}.cropper[data-v-d3ad403f] .vue-advanced-cropper__stencil{box-shadow:0 0 0 2px #ffffffe6;border-radius:50%}.actions[data-v-d3ad403f]{display:flex;gap:.75rem;margin-top:1rem}.btn[data-v-d3ad403f]{padding:.8rem 1.25rem;font-size:1rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);cursor:pointer;min-height:44px;min-width:6rem;transition:transform var(--transition),box-shadow var(--transition),background var(--transition),border-color var(--transition)}.btn[data-v-d3ad403f]:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn[data-v-d3ad403f]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn[data-v-d3ad403f]:disabled{opacity:.55;cursor:not-allowed}.btn.primary[data-v-d3ad403f]{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn.primary[data-v-d3ad403f]:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover);box-shadow:var(--shadow-md)}.btn.wide[data-v-d3ad403f]{flex:1}.btn-spinner-wrap[data-v-d3ad403f]{display:inline-flex;align-items:center;gap:.5rem}.success-card[data-v-d3ad403f]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:2rem 1.5rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1rem;box-shadow:var(--shadow-sm);animation:scale-in-d3ad403f .32s var(--transition) both}.check-circle[data-v-d3ad403f]{color:var(--color-success);width:64px;height:64px}.check-circle svg[data-v-d3ad403f]{width:100%;height:100%;animation:scale-in-d3ad403f .4s var(--transition) both}.success-text[data-v-d3ad403f]{font-size:1.25rem;font-weight:600;color:var(--color-text);margin:0}.hidden[data-v-d3ad403f]{display:none}@keyframes fade-up-d3ad403f{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes scale-in-d3ad403f{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}:root{--color-bg: #fafafa;--color-surface: #ffffff;--color-text: #111827;--color-text-muted: #6b7280;--color-border: #e5e7eb;--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-danger: #dc2626;--color-success: #059669;--radius: 12px;--radius-sm: 8px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--font-sans: -apple-system, BlinkMacSystemFont, "PingFang TC", "Noto Sans TC", "Segoe UI", Roboto, sans-serif;--transition: .18s cubic-bezier(.4, 0, .2, 1)}html,body{margin:0;padding:0}body{background:var(--color-bg);font-family:var(--font-sans);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button{font-family:inherit}input,select,textarea{font-size:16px}@keyframes badge-spin{to{transform:rotate(360deg)}}.badge-spinner{display:inline-block;width:1em;height:1em;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:badge-spin .7s linear infinite;vertical-align:-.15em}
