:root{--bg:#faf7f2;--surface:#f2ede4;--card:#fff;--ink:#1c1917;--muted:#57534e;--line:#e4dcd0;--accent:#c2410c;--accent-hover:#9a3412;--on-accent:#fff;--ok:#166534;--ok-bg:#ecfdf3;--bad:#b42318;--bad-bg:#fef3f2;--paper:#fff;--paper-line:#d6d3d1;--serif:"Fraunces", Georgia, "Times New Roman", serif;--sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--radius:12px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#161412;--surface:#211e1b;--card:#1c1a17;--ink:#f5f1ea;--muted:#b8b0a6;--line:#34302b;--accent:#f97316;--accent-hover:#fb923c;--on-accent:#1c1917;--ok:#86efac;--ok-bg:#0f2a1a;--bad:#fda29b;--bad-bg:#2c1210}}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font:17px/1.55 var(--sans);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit}img{max-width:100%}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.owner-main,.sign-page,.narrow{width:100%;padding:1rem max(1rem, env(safe-area-inset-right)) calc(2.5rem + env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));margin:0 auto}.owner-main{max-width:46rem}.sign-page{flex-direction:column;gap:1.25rem;max-width:44rem;display:flex}.narrow{max-width:26rem}.pad-top{padding-top:3rem}.stack{flex-direction:column;gap:1rem;display:flex}.stack-sm{flex-direction:column;gap:.5rem;display:flex}.row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.row-between{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.grow{flex:1}.center{text-align:center}.muted{color:var(--muted);margin:0}.small{font-size:.875rem}p{margin:0}.topbar{padding:calc(.75rem + env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right), calc((100vw - 46rem) / 2)) .75rem max(1rem, env(safe-area-inset-left), calc((100vw - 46rem) / 2));border-bottom:1px solid var(--line);background:var(--bg);z-index:10;justify-content:space-between;align-items:center;gap:1rem;display:flex;position:sticky;top:0}.topnav{align-items:center;gap:1.25rem;display:flex}.topnav a{font-weight:600;text-decoration:none}.wordmark{font-family:var(--serif);letter-spacing:-.01em;font-size:1.35rem;font-weight:600;text-decoration:none}.page-title{font-family:var(--serif);letter-spacing:-.015em;margin:0;font-size:1.75rem;font-weight:600;line-height:1.2}.section-title{margin:0;font-size:1.05rem;font-weight:650}.back{color:var(--muted);align-items:center;min-height:44px;font-size:.95rem;text-decoration:none;display:inline-flex}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.1rem}.card--success{border-color:color-mix(in srgb, var(--ok) 35%, var(--line));background:var(--ok-bg)}.field{flex-direction:column;gap:.35rem;display:flex}.label{font-size:.95rem;font-weight:600}.hint{color:var(--muted);margin:0;font-size:.875rem}.reason{color:var(--muted);min-height:1.4em;margin:0;font-size:.9rem}.input{border:1px solid var(--line);background:var(--card);border-radius:10px;width:100%;min-height:48px;padding:.6rem .8rem;font-size:17px}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 25%, transparent);outline:none}.textarea{resize:vertical;min-height:6rem;line-height:1.5}.mono{font-family:var(--mono);font-size:.9rem}select.input{appearance:auto}.button{border:1px solid var(--line);background:var(--card);cursor:pointer;touch-action:manipulation;border-radius:10px;justify-content:center;align-items:center;gap:.5rem;min-height:48px;padding:.6rem 1.1rem;font-weight:650;text-decoration:none;transition:background-color .12s,border-color .12s,transform 80ms;display:inline-flex}.button:active:not(:disabled){transform:translateY(1px)}.button:disabled{opacity:.5;cursor:not-allowed}.button--primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.button--primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.button--quiet:hover:not(:disabled){background:var(--surface)}.button--danger{background:var(--bad);border-color:var(--bad);color:#fff}.button--small{min-height:40px;padding:.35rem .8rem;font-size:.9rem}.button--block{width:100%}.link-button{text-underline-offset:3px;cursor:pointer;background:0 0;border:0;min-height:44px;padding:.5rem 0;font-weight:600;text-decoration:underline}.link-button.danger,.danger{color:var(--bad)}.icon-button{cursor:pointer;background:0 0;border:0;border-radius:10px;flex-shrink:0;width:44px;height:44px;font-size:1.1rem}.icon-button:hover{background:var(--surface)}.check{cursor:pointer;align-items:flex-start;gap:.75rem;min-height:44px;font-weight:600;display:flex}.check input{width:24px;height:24px;accent-color:var(--accent);flex-shrink:0;margin:.1rem 0 0}.feedback{overflow-wrap:anywhere;border-radius:10px;margin:0;padding:.7rem .9rem;font-size:.95rem}.feedback--error{background:var(--bad-bg);color:var(--bad)}.feedback--success{background:var(--ok-bg);color:var(--ok)}.feedback--info{background:var(--surface)}.badge{white-space:nowrap;border-radius:999px;padding:.15rem .6rem;font-size:.8rem;font-weight:650;display:inline-block}.badge--draft{background:var(--surface);color:var(--muted)}.badge--waiting{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--accent)}.badge--done{background:var(--ok-bg);color:var(--ok)}.badge--off{background:var(--surface);color:var(--muted);text-decoration:line-through}.list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.list-row{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:1rem;min-height:64px;padding:.9rem 1rem;text-decoration:none;display:flex}.list-row:hover{border-color:var(--muted)}.list-main{flex-direction:column;min-width:0;display:flex}.list-title{overflow-wrap:anywhere;font-weight:650}.list-side{text-align:right;flex-direction:column;flex-shrink:0;align-items:flex-end;gap:.25rem;display:flex}.steps{flex-wrap:wrap;gap:.5rem;margin:.25rem 0 0;padding:0;list-style:none;display:flex}.step{color:var(--muted);align-items:center;gap:.4rem;font-size:.9rem;font-weight:600;display:inline-flex}.step-n{border:1px solid var(--line);border-radius:999px;place-items:center;width:1.5rem;height:1.5rem;font-size:.8rem;display:inline-grid}.step--on{color:var(--ink)}.step--on .step-n{background:var(--ink);color:var(--bg);border-color:var(--ink)}.sticky-actions{padding:.75rem 0 calc(.75rem + env(safe-area-inset-bottom));background:linear-gradient(transparent, var(--bg) 30%);position:sticky;bottom:0}.danger-zone{border-top:1px solid var(--line);padding-top:1rem}.timeline{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.timeline li{overflow-wrap:anywhere;flex-wrap:wrap;justify-content:space-between;gap:1rem;display:flex}.doc{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem 1.15rem}@media (min-width:640px){.doc{padding:2.25rem 2.5rem}}.doc-title{font-family:var(--serif);margin:0 0 .35rem;font-size:1.6rem;font-weight:600;line-height:1.2}.doc-parties{color:var(--muted);margin:0 0 1.25rem}.doc-parties strong{color:var(--ink)}.doc-h2{margin:1.6rem 0 .5rem;font-size:1.15rem;font-weight:700}.doc-h3{margin:1.2rem 0 .4rem;font-size:1.02rem;font-weight:700}.doc-p{margin:0 0 .75rem}.doc-item{gap:.55rem;margin:0 0 .4rem;display:flex}.doc-marker{min-width:1.1rem;color:var(--muted);font-variant-numeric:tabular-nums}.doc-table-wrap{-webkit-overflow-scrolling:touch;margin:.5rem 0 1rem;overflow-x:auto}.doc-table{border-collapse:collapse;width:100%;font-size:.95rem}.doc-table th,.doc-table td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:.5rem .65rem}.doc-table th{background:var(--surface)}.doc-signatures{border-top:1px solid var(--line);margin-top:1.5rem}.sig-grid{grid-template-columns:1fr;gap:1.25rem;display:grid}@media (min-width:640px){.sig-grid{grid-template-columns:1fr 1fr}}.signed-by{flex-direction:column;gap:.15rem;display:flex}.sig-paper{background:var(--paper);border-bottom:1px solid var(--paper-line);border-radius:8px 8px 0 0;align-items:center;height:5rem;margin-bottom:.35rem;padding:.4rem .75rem;display:flex}.sig-paper .sig-image{max-height:4rem}.signed-name{font-weight:650}.fingerprint{color:var(--muted);overflow-wrap:anywhere;margin-top:1rem;font-size:.75rem}.consent{background:var(--surface);border-radius:10px;padding:.9rem 1rem;font-size:.95rem}.consent .doc-p:first-child{font-weight:700}.consent .doc-item:last-child,.consent .doc-p:last-child{margin-bottom:0}.accept{color:var(--muted);font-size:.95rem}.sign-brand{padding-top:calc(.5rem + env(safe-area-inset-top))}.intro p,.help-line{color:var(--muted)}.help-line a{color:var(--ink);font-weight:600}.sign-foot{flex-direction:column;gap:.25rem;display:flex}.sig-field{flex-direction:column;gap:.4rem;display:flex}.sig-line{background:var(--paper);color:#292524;border-radius:10px;width:100%;height:6rem;position:relative}.sig-line--empty{cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;border:2px dashed #a8a29e;justify-content:center;align-items:center;gap:.5rem;font-size:1.05rem;font-weight:650;display:flex}.sig-line--empty:hover:not(:disabled){border-color:#57534e}.sig-line--filled{border:2px solid #e7e5e4;align-items:center;gap:.75rem;padding:0 1rem;display:flex}.sig-line--filled .button{color:#292524;background:#fff;border-color:#d6d3d1;position:relative}.sig-rule{pointer-events:none;border-top:1px solid #d6d3d1;position:absolute;bottom:1rem;left:1rem;right:1rem}.sig-x{color:#a8a29e;pointer-events:none;font-size:1.1rem;line-height:1;position:absolute;bottom:1.1rem;left:1rem}.sig-image{object-fit:contain;object-position:left center;flex:1;min-width:0;height:4rem;position:relative}.sheet-backdrop{z-index:50;background:#1c19178c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.sheet{background:var(--bg);color:var(--ink);border-radius:16px;outline:none;flex-direction:column;gap:.9rem;width:calc(100vw - 2rem);max-width:40rem;max-height:calc(100dvh - 2rem);padding:1.25rem;animation:.16s ease-out sheet-in;display:flex;box-shadow:0 20px 60px #0000004d}@keyframes sheet-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.sheet{animation:none}}@media (max-width:767px),(max-height:560px){.sheet-backdrop{align-items:stretch}.sheet{width:100%;max-width:none;height:100dvh;max-height:none;padding:max(.75rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(.75rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));border-radius:0;gap:.7rem}}@media (max-height:560px){.sheet-sub{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}}.sheet-head{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.sheet-title{font-family:var(--serif);margin:0;font-size:1.35rem;font-weight:600}.sheet-sub{color:var(--muted);margin-top:.15rem;font-size:.95rem}.tabs{background:var(--surface);border-radius:10px;flex-shrink:0;grid-template-columns:1fr 1fr;padding:4px;display:grid}.tab{cursor:pointer;background:0 0;border:0;border-radius:8px;min-height:44px;font-weight:650}.tab[aria-selected=true]{background:var(--card);box-shadow:0 1px 2px #0000001f}.sheet-body{overscroll-behavior:contain;flex-direction:column;gap:.9rem;min-height:0;display:flex;overflow-y:auto}.sheet-body--pad{height:18rem;overflow:hidden}@media (max-width:767px),(max-height:560px){.sheet-body{flex:1}.sheet-body--pad{height:auto}}.styles{gap:.5rem;display:grid}.style-tile{background:var(--paper);cursor:pointer;border:2px solid #e7e5e4;border-radius:10px;align-items:center;height:5rem;padding:0 1rem;display:flex;position:relative}.style-tile input{opacity:0;pointer-events:none;position:absolute}.style-tile[data-checked=true]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.style-tile:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:2px}.style-image{object-fit:contain;object-position:left center;max-width:100%;height:3.5rem;transition:opacity .12s}.style-image[data-stale=true]{opacity:.45}.style-empty{color:#78716c;font-size:.95rem}.style-loading{background:#e7e5e4;border-radius:6px;width:60%;height:1.5rem;animation:1.2s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.5}}.sheet-foot{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:.5rem .75rem;display:flex}.sheet-reason{width:100%;min-height:1.4em;color:var(--muted);font-size:.9rem}@media (min-width:640px){.sheet-reason{flex:1;width:auto}}.sheet-actions{gap:.5rem;display:flex}.pad{flex-direction:column;gap:.4rem;height:100%;min-height:0;display:flex}.pad-head{justify-content:space-between;align-items:center;min-height:32px;display:flex}.pad-head .link-button{min-height:32px;padding:0}.pad-paper{background:var(--paper);border:2px solid #e7e5e4;border-radius:10px;flex:1;min-height:140px;position:relative;overflow:hidden}.pad-line{pointer-events:none;border-top:1px solid #d6d3d1;position:absolute;bottom:22%;left:1.5rem;right:1.5rem}.pad-x{color:#a8a29e;pointer-events:none;font-size:1.1rem;line-height:1;position:absolute;bottom:calc(22% + 4px);left:1.25rem}.pad-prompt{text-align:center;color:#a8a29e;pointer-events:none;font-size:.95rem;position:absolute;inset:30% 0 auto}.pad-canvas{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;cursor:crosshair;width:100%;height:100%;display:block;position:absolute;inset:0}
