:root{--background: #fbf8f3;--surface: #ffffff;--surface-border: #e5dfd3;--input-border: #d6d0c2;--text-primary: #1f3a3d;--text-secondary: #8b7355;--header: #1f3a3d;--header-text: #fbf8f3;--primary: #2d6e5e;--primary-text: #fbf8f3;--warning: #d4683a;--warning-bg: #fbeae3;--danger: #a32d2d;--danger-bg: #fbeae3;--danger-border: #e2a0a0;--success: #2d6e5e;--success-bg: #e8efe9;--radius-sm: 12px;--radius-md: 16px;--radius-lg: 28px;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--text-primary);background:var(--background)}*{box-sizing:border-box}body{margin:0;background:var(--background);color:var(--text-primary);min-height:100vh}.header{background:var(--header);color:var(--header-text);padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.header .eyebrow{font-size:13px;opacity:.7;margin:0 0 2px}.header h1{font-size:22px;font-weight:600;margin:0}.container{max-width:860px;margin:0 auto;padding:24px}.centered{max-width:420px;margin:0 auto;padding:48px 24px}.card{background:var(--surface);border:1px solid var(--surface-border);border-radius:var(--radius-md);padding:20px}.med-row{display:flex;align-items:center;gap:16px;background:var(--surface);border:1px solid var(--surface-border);border-radius:var(--radius-md);padding:16px;margin-bottom:10px}.med-bar{width:6px;height:44px;border-radius:3px;flex-shrink:0}.med-info{flex:1;min-width:0}.med-name{font-size:17px;font-weight:600;margin:0 0 2px}.med-detail{font-size:15px;font-weight:500;margin:0}.med-adherence{font-size:13px;color:var(--text-secondary);text-align:right;flex-shrink:0}.is-late{color:var(--warning)}.bar-late{background:var(--warning)}.is-taken{color:var(--success)}.bar-taken{background:var(--primary)}.is-pending{color:var(--text-secondary)}.bar-pending{background:var(--primary)}.banner{border-radius:var(--radius-sm);padding:12px 16px;margin-bottom:16px;font-weight:600;font-size:15px}.banner-warning{background:var(--warning-bg);color:var(--warning)}.banner-error{background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger);font-weight:500}.banner-ok{background:var(--success-bg);color:var(--success)}label{display:block;font-size:14px;font-weight:600;margin-bottom:6px}input,select{width:100%;padding:12px 14px;font-size:16px;font-family:inherit;color:var(--text-primary);background:var(--surface);border:1px solid var(--input-border);border-radius:var(--radius-sm);margin-bottom:16px}input:focus,select:focus{outline:2px solid var(--primary);outline-offset:1px}.input-code{text-transform:uppercase;letter-spacing:6px;font-size:26px;font-weight:700;text-align:center;color:var(--primary)}button{width:100%;padding:14px;font-size:16px;font-weight:600;font-family:inherit;color:var(--primary-text);background:var(--primary);border:none;border-radius:var(--radius-lg);cursor:pointer}button:disabled{opacity:.6;cursor:not-allowed}button.link{background:none;color:var(--text-primary);border:1px solid var(--input-border);border-radius:var(--radius-md);margin-top:10px}button.plain{width:auto;padding:8px 14px;background:none;border:1px solid rgba(251,248,243,.4);color:var(--header-text);border-radius:var(--radius-md);font-size:14px}.muted{color:var(--text-secondary);font-size:15px;line-height:1.5}h2{font-size:20px;margin:0 0 8px}.section-title{font-size:13px;text-transform:uppercase;letter-spacing:1px;color:var(--text-secondary);margin:28px 0 10px}.hero{background:var(--header);color:var(--header-text);padding:72px 24px 80px}.hero-inner{max-width:720px;margin:0 auto}.hero-eyebrow{font-size:14px;letter-spacing:3px;text-transform:uppercase;opacity:.7;margin:0 0 16px}.hero-title{font-size:clamp(32px,6vw,52px);line-height:1.1;font-weight:700;margin:0 0 20px}.hero-sub{font-size:clamp(17px,2.2vw,20px);line-height:1.5;opacity:.85;margin:0 0 36px;max-width:34em}.hero-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.hero-cta{width:auto;padding:15px 28px;font-size:17px;background:var(--primary-text);color:var(--header)}.hero-link{color:var(--header-text);font-size:16px;font-weight:500;text-decoration:underline;text-underline-offset:4px}.landing h2{font-size:clamp(22px,3vw,28px);margin:0 0 12px}.section-heading{margin-top:8px}.landing section{margin-bottom:56px}.landing .muted{font-size:17px;line-height:1.6;max-width:42em}.steps{list-style:none;padding:0;margin:24px 0 0}.step{display:flex;gap:20px;margin-bottom:28px}.step-num{flex-shrink:0;width:40px;height:40px;border-radius:20px;background:var(--primary);color:var(--primary-text);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px}.step-title{font-size:18px;margin:8px 0 6px}.split{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:20px}.card-title{font-size:18px;margin:0 0 10px;color:var(--primary)}.highlight{background:var(--success-bg);border-radius:var(--radius-md);padding:28px}.final-cta{text-align:center;margin:64px 0 24px}.final-cta button{width:auto;padding:16px 36px;font-size:17px}.footer{border-top:1px solid var(--surface-border);padding:28px 24px;text-align:center;color:var(--text-secondary);font-size:14px}.footer p{margin:0}@media(max-width:768px){.container{padding:18px}.hero{padding:48px 20px 56px}.landing section{margin-bottom:40px}.header{padding:16px 18px}.hero-actions{flex-direction:column;align-items:flex-start;gap:14px}.hero-cta{width:100%;text-align:center}}@media(max-width:560px){.med-row{flex-wrap:wrap;gap:12px}.med-adherence{text-align:left;width:100%;padding-left:22px}.centered{padding:32px 18px}.step{gap:14px}.step-num{width:34px;height:34px;border-radius:17px;font-size:16px}}@media(max-width:400px){.input-code{font-size:20px;letter-spacing:3px}.hero-title{letter-spacing:-.5px}.container,.centered{padding-left:14px;padding-right:14px}}
