:root{--brand:#069573;--bg:#F4FAF7;--card:#ffffff;--ink:#2A2829;--muted:#5F6664;--line:#E1E9E5;--danger:#b42318;--radius:12px}.shell *{box-sizing:border-box}body,html{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased}.shell h1{font-size:1.5rem;margin:0 0 .5rem;letter-spacing:-.01em}.shell h2{font-size:1.2rem;margin:0 0 .75rem}.shell p{margin:0 0 1rem}.shell a{color:var(--brand)}.shell .muted{color:var(--muted)}.shell .small{font-size:.85rem}.shell .error{color:var(--danger);font-size:.9rem;margin:.5rem 0 0}.shell .center{text-align:center}.shell{max-width:560px;margin:0 auto;padding:16px 16px 40px;min-height:100dvh}.shell .top{padding:8px 4px 16px}.shell .top .org{font-weight:700;color:var(--brand);font-size:1.05rem}.shell .top .sub{color:var(--muted);font-size:.9rem}.shell .bar{height:4px;background:var(--line);border-radius:4px;margin-top:12px;overflow:hidden}.shell .bar span{display:block;height:100%;background:var(--brand);transition:width .3s ease}.shell .card{background:var(--card);border-radius:var(--radius);padding:24px 20px;box-shadow:0 1px 2px rgba(23,32,29,.05),0 1px 3px rgba(23,32,29,.07)}.shell .foot{text-align:center;color:var(--muted);font-size:.78rem;margin-top:20px}.shell button{font:inherit;cursor:pointer;border-radius:10px;border:0;min-height:48px;padding:0 20px}.shell button:disabled{opacity:.5;cursor:not-allowed}.shell .primary{background:var(--brand);color:#fff;font-weight:600;width:100%}.shell .ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.shell .link{background:none;color:var(--brand);min-height:auto;padding:0;font-size:.9rem}.shell .nav{display:flex;gap:10px;margin-top:24px}.shell .nav .primary{flex:1 1}.shell .q{border:0;padding:0;margin:0 0 22px}.shell .q legend{font-weight:600;margin-bottom:8px;padding:0}.shell .q.has-error .choice,.shell .q.has-error input,.shell .q.has-error textarea{border-color:var(--danger)}.shell .choices{display:grid;grid-gap:8px;gap:8px}.shell .choices.row{grid-template-columns:1fr 1fr}.shell .choice{background:#fff;border:1.5px solid var(--line);color:var(--ink);text-align:left;font-weight:500}.shell .choices.row .choice{text-align:center}.shell .choice.on{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 8%,#fff);color:var(--brand);font-weight:600}.shell .otp,.shell input[type=date],.shell input[type=number],.shell input[type=text],.shell textarea{width:100%;font:inherit;padding:12px 14px;border:1.5px solid var(--line);border-radius:10px;background:#fff}.shell button:focus-visible,.shell input:focus,.shell textarea:focus{outline:3px solid color-mix(in srgb,var(--brand) 30%,transparent);outline-offset:1px}.shell .otp{font-size:1.6rem;letter-spacing:.4em;text-align:center;margin:8px 0 0}.shell .check{display:flex;gap:12px;align-items:flex-start;padding:12px;border:1.5px solid var(--line);border-radius:10px;cursor:pointer}.shell .check input{width:22px;height:22px;margin:1px 0 0;accent-color:var(--brand);flex:none}.shell .consent{background:#F6F9F7;border:1px solid var(--line);border-radius:10px;padding:14px 16px;max-height:40vh;overflow:auto;font-size:.92rem;margin-bottom:14px}.shell .consent p:last-child{margin:0}.shell .sig-head{display:flex;justify-content:space-between;align-items:center;margin:18px 0 6px;font-weight:600}.shell .sig{position:relative;height:180px;border:1.5px dashed #b9ccc4;border-radius:10px;background:#fff;touch-action:none}.shell .sig canvas{width:100%;height:100%;display:block;touch-action:none;cursor:crosshair}.shell .sig-hint{position:absolute;inset:0;display:grid;place-items:center;color:#a0a6b2;pointer-events:none;font-size:1.1rem}.shell .sig-line{position:absolute;left:20px;right:20px;bottom:38px;border-bottom:1px solid #d5d9e0;pointer-events:none}.shell .tick{width:64px;height:64px;border-radius:50%;background:var(--brand);color:#fff;font-size:34px;display:grid;place-items:center;margin:8px auto 16px}.shell .tick.neutral{background:#b45309}.shell .nav.col{flex-direction:column}.shell .nav.col .ghost{width:100%}.shell .brand-card{border-top:4px solid #069573}.shell .foot img{opacity:.9}