/* Contact form as a notepad in a modal dialog, folded into a paper plane after sending. */
.ov{border:0;padding:0;background:transparent;max-width:none;max-height:none;overflow:visible;color:var(--pad-ink)}
.ov::backdrop{background:rgba(10,12,16,.55);backdrop-filter:blur(2px);transition:opacity .5s}
.ov.leaving::backdrop{opacity:0}
.cform{position:relative;width:min(460px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;container-type:inline-size;animation:slidein .45s cubic-bezier(.2,.9,.3,1.1);margin:0}
@keyframes slidein{from{transform:translateY(40px) rotate(4deg);opacity:0}}
.cform .sheet{padding:28px 22px 20px 52px;box-shadow:0 18px 50px rgba(0,0,0,.35);border-radius:3px;
  background:linear-gradient(90deg,transparent 38px,var(--pad-margin) 38px,var(--pad-margin) 40px,transparent 40px),
  repeating-linear-gradient(180deg,transparent 0 31px,var(--pad-line) 31px 32px),var(--pad);background-position:0 0,0 26px,0 0;color:var(--pad-ink);font-family:var(--hand)}
.cform .rings{position:absolute;left:18px;right:18px;top:-9px;height:20px;background:radial-gradient(circle at 50% 60%,#2a2f3a 5px,transparent 6px) 0 0/22px 100% repeat-x;z-index:2}
.cform h2{margin:0;font:700 30px/32px var(--hand);color:var(--pad-hi)}
.cform .sub{margin:0 0 6px;font:400 18px/32px var(--hand)}
.cform label{display:block;font:400 15px/16px var(--hand);opacity:.75;padding-top:8px}
.cform input,.cform select,.cform textarea{display:block;width:100%;box-sizing:border-box;border:0;border-bottom:1.5px dashed color-mix(in srgb,var(--pad-ink) 40%,transparent);background:transparent;color:var(--pad-ink);font:400 20px/32px var(--hand);padding:0 2px;height:32px;border-radius:0;appearance:none}
.cform textarea{height:auto;min-height:96px;resize:vertical;border-bottom:0}
.cform select{cursor:pointer}
.cform .row2{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
@container (max-width:380px){.cform .row2{grid-template-columns:1fr}}
.cform .ok{display:flex;gap:8px;align-items:flex-start;font:400 15px/20px var(--hand);padding-top:10px}
.cform .ok input{width:18px;height:18px;flex:none;appearance:auto;margin:1px 0 0}
.cform .act{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;flex-wrap:wrap}
.cform .send{font:700 19px/1 var(--hand);background:var(--pad-ink);color:var(--pad);border:0;border-radius:var(--radius);padding:12px 18px;cursor:pointer;transform:rotate(-1.5deg)}
.cform .send:disabled{opacity:.6;cursor:wait}
.cform .note2{font:400 12px/1.35 var(--f-ui);opacity:.7;max-width:24ch}
.cform .note2 a{color:inherit}
.cform .x{position:absolute;right:10px;top:12px;z-index:3;width:34px;height:34px;border-radius:50%;border:0;background:transparent;color:var(--pad-ink);font:400 26px/1 var(--f-ui);cursor:pointer}
.cform .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cform .err{color:var(--pad-hi);font:400 14px/1.3 var(--f-ui);min-height:1em;margin:6px 0 0}
.cform .sheet>*{transition:opacity .3s}
.cform.blank .sheet>*{opacity:0}
.plane{position:fixed;left:0;top:0;overflow:visible;z-index:60;pointer-events:none}
.plane polygon{stroke:color-mix(in srgb,var(--pad-ink) 35%,transparent);stroke-width:.4;stroke-linejoin:round}
