.pin-editor{color:#29425e;--pin-blue:#3975d4;min-width:0}.pin-editor [hidden]{display:none!important}.pin-editor button,.pin-editor select{font:inherit}.pin-editor button{cursor:pointer;min-height:42px;border:1px solid #cddcef;background:#fff;color:#365c8b;border-radius:10px;padding:10px 14px;font-size:13px;line-height:1.4}.pin-editor button:disabled{opacity:.5;cursor:wait}.pin-editor button:focus-visible,.pin-editor input:focus-visible,.pin-editor select:focus-visible{outline:3px solid #275bbd;outline-offset:3px}.pin-status{font-size:14px;line-height:1.6;margin:8px 0 18px;min-height:24px}.pin-stage{position:relative;isolation:isolate;width:min(100%,calc(48vh * var(--photo-ratio,1.33)));margin:24px auto;touch-action:pan-y}.pin-source{display:block;width:100%;height:auto;user-select:none;pointer-events:none;border-radius:8px}.pin-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;fill:none;stroke:none}.pin-shade{fill:#14253975}.pin-outline{fill:#659bff12;stroke:#80b1ff;stroke-width:3;vector-effect:non-scaling-stroke}.pin-other-outlines polygon{fill:none;stroke:#ffffffa8;stroke-width:1.5;stroke-dasharray:7 6;vector-effect:non-scaling-stroke}.pin-editor .pin-handle{position:absolute;z-index:2;transform:translate(-50%,-50%);width:44px;height:44px;min-height:44px;background:transparent;border:0;padding:8px;border-radius:50%;touch-action:none;cursor:grab;display:grid;place-items:center}.pin-handle span{width:27px;height:27px;border:3px solid #3975d4;border-radius:50%;background:white;box-shadow:0 2px 8px #14253650;color:#245cae;display:grid;place-items:center;font-size:11px;font-weight:700;pointer-events:none}.pin-handle.is-selected span{background:#e5f0ff}.pin-handle:active{cursor:grabbing}.pin-hint{font-size:12px;line-height:1.65;color:#63738a;margin:20px 0 15px}.pin-adjustments{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:14px;background:#f0f5fc;padding:14px;border-radius:12px}.pin-adjustments label{font-size:12px;display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}.pin-adjustments select{width:100%;padding:8px;border:1px solid #ccd8e9;border-radius:7px;background:#fff;color:inherit;min-height:36px;font-size:13px}.pin-adjustments input{width:100%;min-height:28px;accent-color:#3975d4;margin:0}.pin-adjustments output{margin-left:auto;font-size:11px;color:#63738a}.pin-actions{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0}.pin-editor .pin-primary{background:#4d86e7;border-color:#4d86e7;color:white}.pin-actions .pin-primary{margin-left:auto}.pin-warning{border:1px solid #e6c997;background:#fff8e9;border-radius:12px;padding:16px;margin-bottom:18px}.pin-warning strong{font-size:14px;color:#6d4b1d}.pin-warning p{font-size:13px;line-height:1.65;color:#715d41;margin:8px 0 12px}.pin-warning>span{display:block;font-size:12px;line-height:1.6;margin-top:10px;color:#715d41}.pin-warning button{border-color:#d5ba90;color:#715020}.pin-candidates{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.pin-candidates button[aria-pressed=true]{background:#e2edff;border-color:#8cb1f0}.pin-result{margin-top:24px;border-top:1px solid #dce5f2;padding-top:18px}.pin-result h4{margin:0 0 16px;font-size:18px}.pin-result img{display:block;max-width:100%;max-height:45vh;width:auto;height:auto;margin:auto;border-radius:8px}.pin-result p{font-size:12px;line-height:1.6;color:#63738a}.pin-result>.pin-primary{width:100%}.pin-dimensions{text-align:center}.crop-dialog:has(.pin-editor){width:min(800px,calc(100vw - 24px))}.pin-editor-host{min-width:0;padding:22px 26px}.pin-editor-host .pin-status{font-size:13px}.pin-editor-host .pin-stage{width:min(100%,calc(32vh * var(--photo-ratio,1.33)))}
@media(max-width:600px){.pin-adjustments{grid-template-columns:1fr 1fr;padding:12px;gap:10px}.pin-adjustments label:first-child{grid-column:1/-1}.pin-actions>button{flex:1}.pin-actions .pin-primary{flex-basis:100%;margin:0}.pin-editor-host{padding:18px 22px}.pin-editor-host .pin-stage{width:100%}.pin-editor button{font-size:12px}.pin-stage{margin:24px auto}.pin-editor-host .pin-adjustments{grid-template-columns:1fr 1fr}.pin-editor-host .pin-status{min-height:42px}}
/* Crop and prepared preview are separate stages of the same dialog. */
.pin-status{font-size:16px}
.pin-hint{font-size:14px}
.pin-actions{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:12px;margin-top:22px}
.pin-actions>button{font-size:15px;min-height:50px}
.pin-actions .pin-primary{width:100%;min-width:0;margin-left:0;min-height:62px;font-size:20px;font-weight:600}
.pin-actions{grid-template-columns:1fr 1fr 2fr}
.pin-result{margin:0;padding:0;border:0}
.pin-result img{max-height:54dvh;max-width:100%;margin:24px auto 28px}
.pin-preview-actions{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:center;border-top:1px solid #dce5f2;padding-top:22px}
.pin-preview-actions>button{min-height:62px;font-size:20px;font-weight:600}
.pin-preview-actions>[data-pin=back]{justify-self:start;min-width:130px;font-size:17px;font-weight:400}
@media(max-width:600px){.pin-actions{grid-template-columns:1fr 1fr;gap:10px}.pin-actions .pin-primary{grid-column:1/-1;min-height:58px;font-size:19px}.pin-actions>button{font-size:14px;padding:10px}.pin-preview-actions{grid-template-columns:1fr;gap:10px}.pin-preview-actions>[data-pin=apply]{grid-row:1;min-height:58px;font-size:19px}.pin-preview-actions>[data-pin=back]{justify-self:stretch;min-height:48px;font-size:16px}.pin-status{font-size:15px}.pin-result img{max-height:48dvh;margin:18px auto 22px}}
.pin-credit-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#eff5ff;border:1px solid #dce7f9;border-radius:13px;padding:16px 18px;margin:0 0 20px;font-size:15px;color:#344e70}
.pin-credit-summary span{white-space:nowrap;color:#557198}.pin-credit-summary.out-of-credits{background:#fff8ed;border-color:#f1ddbb}
@media(max-width:600px){.pin-credit-summary{flex-direction:column;align-items:flex-start;gap:7px;font-size:14px;padding:14px}}
