:root{--teal:#0f766e;--teal-deep:#036765;--teal-soft:#e5f3f1;--coral:#f97362;--coral-soft:#fff1ee;--ink:#14211f;--muted:#5c6b68;--paper:#f3f7f6;--card:#fff;--line:#d5e3e0;color:var(--ink);background:var(--paper);font-family:Figtree,Nunito,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}body{margin:0}h1,h2{color:var(--teal-deep);margin:0 0 8px;font-family:Fraunces,Georgia,Times New Roman,serif}h3{margin:0;font-size:17px}p{margin:0 0 8px;line-height:1.5}.shell{min-height:100vh}.top{background:var(--card);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:12px 24px;display:flex}.brand{color:var(--teal-deep);align-items:center;gap:8px;font-weight:800;text-decoration:none;display:flex}main{flex-direction:column;gap:16px;max-width:1080px;margin:0 auto;padding:24px;display:flex}.demo-banner{background:var(--teal-soft);color:var(--teal-deep);text-align:center;padding:8px;font-weight:700}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:10px;padding:20px;display:flex}.card.inset{background:var(--paper)}.card.narrow{width:100%;max-width:460px;margin:40px auto}.heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.grid3{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;display:grid}.unit{border-top:1px solid var(--line);flex-direction:column;gap:8px;padding-top:12px;display:flex}label{flex-direction:column;gap:4px;font-size:14px;font-weight:600;display:flex}input,select{font:inherit;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:10px;padding:10px 12px}button,.button{font:inherit;background:var(--teal);color:#fff;cursor:pointer;text-align:center;border:0;border-radius:999px;padding:10px 18px;font-weight:700;text-decoration:none;display:inline-block}button.secondary,.button.secondary{background:var(--card);color:var(--ink);border:1px solid var(--line)}button.link{color:var(--teal-deep);background:0 0;padding:0}button:disabled{opacity:.5;cursor:default}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:left;color:var(--muted);border-bottom:1px solid var(--line);padding:6px 4px;font-weight:600}td{border-bottom:1px solid var(--line);vertical-align:top;padding:8px 4px}td.right{text-align:right}.muted{color:var(--muted)}.small{font-size:13px}.note{color:#9a3412;font-weight:600}.pill{background:var(--paper);color:var(--muted);border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700;display:inline-block}.pill.invited{color:#9a3412;background:#fde8d8}.pill.linked,.pill.in_progress{background:var(--teal-soft);color:var(--teal-deep)}.pill.awaiting_signature{background:var(--coral-soft);color:#c2410c}.pill.complete{background:var(--teal);color:#fff}h4{margin:8px 0 0;font-size:15px}textarea{font:inherit;border:1px solid var(--line);background:var(--card);color:var(--ink);resize:vertical;border-radius:10px;padding:10px 12px}fieldset{border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:10px;margin:0;padding:12px;display:flex}legend{padding:0 4px;font-weight:700}label.check{flex-direction:row;align-items:center;gap:8px;font-weight:500}label.inline{flex-direction:row;align-items:center;gap:6px}label.inline select{padding:4px 8px}.grow{flex:220px}.label-text{font-size:14px;font-weight:600}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.callout{background:var(--coral-soft);border-radius:12px;flex-direction:column;gap:8px;padding:12px;display:flex}.banner{border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;font-weight:600;display:flex}.banner.ok{background:var(--teal-soft);color:var(--teal-deep)}.banner.warn{background:var(--coral-soft);color:#9a3412}.actions{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.small-button{padding:6px 12px;font-size:13px}tr.open td{background:var(--teal-soft)}ul.plain{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}ul.areas{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}ul.areas>li{border-bottom:1px solid var(--line);padding:8px 0}.detail{flex-direction:column;gap:10px;padding:10px 0 4px;display:flex}.chips{flex-wrap:wrap;gap:6px;margin:4px 0;padding:0;list-style:none;display:flex}.chip{background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-size:13px;font-weight:600;display:inline-flex}.chip.on{background:var(--teal-soft);color:var(--teal-deep);border-color:var(--teal-soft)}button.chip-x{color:inherit;background:0 0;padding:0 2px;font-size:15px;line-height:1}.stepper{align-items:center;gap:8px;display:inline-flex}.stepper button{padding:4px 12px}.stepper output{text-align:center;min-width:40px;font-weight:700}.code{letter-spacing:4px;text-align:center;border:2px solid var(--teal);background:var(--card);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;border-radius:14px;padding:16px;font-family:Courier New,Courier,monospace;font-size:30px;font-weight:800}@media (width<=560px){.code{letter-spacing:2px;font-size:20px}}.tiles{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.tile{background:var(--card);color:var(--ink);border:1px solid var(--line);text-align:left;border-radius:14px;flex-direction:column;align-items:flex-start;gap:2px;padding:14px 16px;display:flex}.tile:hover,.tile:focus-visible{border-color:var(--teal)}.tile-count{color:var(--teal-deep);font-family:Fraunces,Georgia,Times New Roman,serif;font-size:30px;line-height:1.1}.tile-label{font-size:13px;font-weight:700}.tile.pending{border-left:4px solid #9a3412}.tile.linked,.tile.in_progress{border-left:4px solid var(--teal)}.tile.awaiting_signature{border-left:4px solid var(--coral)}.tile.complete{border-left:4px solid var(--teal-deep)}.dash-grid{grid-template-columns:repeat(auto-fit,minmax(360px,1fr));align-items:start;gap:16px;display:grid}.dash-list{flex-direction:column;gap:10px;display:flex}.dash-list>li{background:var(--paper);border-radius:12px;flex-direction:column;gap:4px;padding:10px 12px;display:flex}.pill.flag-red{background:var(--coral-soft);color:#c2410c}.pill.flag-yellow{color:#9a3412;background:#fef3c7}@media (width<=480px){.dash-grid{grid-template-columns:1fr}}
