.password-page fieldset { border: 1px solid var(--border); border-radius: 10px; margin: 24px 0; padding: 16px 20px; min-width: 0; }
.password-page legend { font-weight: 700; padding: 0 6px; }
.password-page #password-length { max-width: 180px; }
.password-page #drawing-panel { margin-top: 24px; }
.password-page #drawing-board { display: block; width: 100%; height: 260px; margin: 18px 0; border: 2px dashed #94a3b8; border-radius: 10px; background: #f8fafc; touch-action: none; cursor: crosshair; }
.password-page #drawing-board polyline { fill: none; stroke: #1d4ed8; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
.password-page .download-actions { margin-top: 16px; }
.password-page #clear-password { margin-top: 24px; }
.password-page #generated-password { font-family: ui-monospace, monospace; }
.password-page #symbol-list { display: block; overflow-wrap: anywhere; }

/* Keep native selection and iOS long-press menus out of the drawing gesture. */
.password-page #drawing-board, .password-page #drawing-board * {
    -webkit-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    touch-action: none;
}
.password-page.is-drawing, .password-page.is-drawing * {
    -webkit-user-select: none !important;
    user-select: none !important;
    -webkit-touch-callout: none;
}
