:root{--danger: #a02d18;--ok: #176357;--gap-sm: 16px;--gap-md: 24px;--gap-lg: 48px}.app-shell{display:flex;flex-direction:column;padding:56px 0 96px;min-height:60vh}@media (max-width: 768px){.app-shell{padding:32px 0 64px}}.app-focus{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:var(--paper)}.app-focus__main{flex:1 0 auto;display:flex;align-items:center;justify-content:center;padding:72px 64px 0}.app-focus__foot{flex:none;min-height:72px;display:flex;align-items:center;justify-content:center;padding:16px 20px;text-align:center}@media (max-width: 768px){.app-focus__main{align-items:flex-start;padding:24px 20px 0}}.app-lockup{display:inline-flex;align-items:center;gap:12px;min-height:44px;align-self:flex-start;color:var(--ink);text-decoration:none}.app-lockup__name{font-family:var(--font-display);font-weight:700;font-size:24px;line-height:1;letter-spacing:-.02em;position:relative;top:2px}.app-lockup:focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-radius:var(--r-ctl)}.app-shell h1,.app-focus h1{font-family:var(--font-display);font-weight:700;font-size:48px;line-height:1;letter-spacing:-.032em;color:var(--ink);margin:0 0 var(--gap-sm);text-wrap:balance}.app-shell h1 em,.app-focus h1 em{font-style:italic;color:var(--accent-deep);font-weight:400}.app-shell .eyebrow,.app-focus .eyebrow{font-family:var(--font-ui);font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:0 0 12px}.app-shell .dek,.app-focus .dek{font-family:var(--font-ui);font-size:16px;line-height:1.5;color:var(--ink-2);margin:0 0 var(--gap-md);max-width:56ch}.app-shell a:focus-visible,.app-focus a:focus-visible,.app-shell button:focus-visible,.app-focus button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}@media (max-width: 768px){.app-shell h1,.app-focus h1{font-size:40px;line-height:1}}.app-shell .btn,.app-focus .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;box-sizing:border-box;min-height:44px;padding:0 20px;font-family:var(--font-ui);font-size:12px;font-weight:600;letter-spacing:.17em;text-transform:uppercase;line-height:1.2;border:1px solid var(--ink);border-radius:var(--r-ctl);background:var(--ink);color:var(--paper);text-decoration:none;cursor:pointer;transition:background var(--t-micro) var(--ease),border-color var(--t-micro) var(--ease),color var(--t-micro) var(--ease)}.app-shell .btn:hover,.app-focus .btn:hover{background:var(--ink-2);border-color:var(--ink-2);color:var(--paper)}.app-shell .btn:disabled,.app-focus .btn:disabled{background:var(--paper-3);border-color:var(--hair);color:var(--muted);cursor:not-allowed}.app-shell .btn--ghost,.app-focus .btn--ghost{background:transparent;color:var(--ink);border-color:var(--ink)}.app-shell .btn--ghost:hover,.app-focus .btn--ghost:hover{background:var(--paper-3);color:var(--ink);border-color:var(--ink)}.app-shell .btn--danger,.app-focus .btn--danger{background:transparent;color:var(--danger);border-color:var(--danger)}.app-shell .btn--danger:hover,.app-focus .btn--danger:hover{background:var(--danger);color:var(--paper);border-color:var(--danger)}.app-shell .btn--block,.app-focus .btn--block{display:flex;width:100%}.app-shell .btn--tall,.app-focus .btn--tall{min-height:52px;font-size:12px}.app-shell .field,.app-focus .field{display:flex;flex-direction:column;gap:8px}.app-shell .field label,.app-focus .field label{font-family:var(--font-ui);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;line-height:1.4;color:var(--ink)}.app-shell .field input[type=email],.app-focus .field input[type=email],.app-shell .field input[type=text],.app-focus .field input[type=text]{box-sizing:border-box;width:100%;height:52px;padding:0 16px;font-family:var(--font-ui);font-size:16px;color:var(--ink);background:var(--paper-2);border:1px solid var(--hair-2);border-radius:var(--r-ctl);outline:2px solid transparent;outline-offset:2px;transition:border-color var(--t-micro) var(--ease),outline-color var(--t-micro) var(--ease)}.app-shell .field input::placeholder,.app-focus .field input::placeholder{color:var(--muted)}.app-shell .field input:focus,.app-focus .field input:focus{border-color:var(--ink);outline-color:var(--ink)}.app-shell .field input:disabled,.app-focus .field input:disabled{background:var(--paper-3);color:var(--muted);cursor:not-allowed}.app-shell .notice,.app-focus .notice{margin:0;padding:12px 16px;font-family:var(--font-ui);font-size:14px;line-height:1.5;color:var(--ink-2);background:var(--paper-3);border-left:2px solid var(--ink);border-radius:var(--r-ctl)}.app-shell .notice--ok,.app-focus .notice--ok{border-left-color:var(--ok)}.app-shell .notice--err,.app-focus .notice--err{border-left-color:var(--danger);color:var(--danger)}.app-shell .divider,.app-focus .divider{display:flex;align-items:center;gap:16px;font-family:var(--font-ui);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.app-shell .divider:before,.app-shell .divider:after,.app-focus .divider:before,.app-focus .divider:after{content:"";flex:1;height:1px;background:var(--hair)}.app-shell .empty,.app-focus .empty{margin:0;padding:24px 0;font-family:var(--font-display);font-size:19px;line-height:1.5;color:var(--ink-2)}.app-shell .app-back,.app-focus .app-back{display:inline-flex;align-items:center;align-self:flex-start;min-height:44px;margin-top:var(--gap-lg);font-family:var(--font-ui);font-size:14px;font-weight:500;color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.app-shell .app-back:hover,.app-focus .app-back:hover{color:var(--accent-deep)}@media (prefers-reduced-motion: reduce){.app-shell *,.app-focus *{transition:none!important}}
