:root{font-family:system-ui,sans-serif;color:#252940;background:#faf8f5;font-size:16px}*{box-sizing:border-box}body{margin:0}.app{max-width:740px;margin:auto;padding:20px 18px 110px}header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0 22px}.brand{font-size:21px;font-weight:800;text-decoration:none;color:inherit}button,a{touch-action:manipulation}button{font:inherit;min-height:46px;padding:10px 16px;border:1px solid #d7d2e4;border-radius:12px;background:white;color:inherit;cursor:pointer}button:disabled{opacity:.6;cursor:not-allowed}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #996922;outline-offset:3px}.notice{font-size:13px;background:#eee9f6;border-radius:10px;padding:12px}.affirmation{display:flex;align-items:center;gap:16px;min-height:108px}.affirmation p{font-family:Georgia,serif;font-size:22px;line-height:1.4;flex:1}.affirmation button{font-size:12px;background:transparent;border:0}h1{font-size:32px;letter-spacing:-1px;margin:18px 0 8px}h2{font-size:23px;margin:12px 0}p{line-height:1.6}.muted{color:#696477}.card{background:white;border:1px solid #e0dbe8;border-radius:20px;padding:24px;margin:18px 0;box-shadow:0 5px 20px #35315d06}.tag{display:inline-block;background:#eee9f7;padding:6px 10px;border-radius:8px;font-size:13px;margin:4px 4px 0 0}.actions{display:flex;gap:10px;margin-top:22px}.actions>*{flex:1}.primary{background:#544185;color:white;border-color:#544185}.small{font-size:14px}.eyebrow{text-transform:uppercase;letter-spacing:1.5px;font-size:12px;font-weight:700}.row{display:flex;justify-content:space-between;align-items:center;gap:18px}nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:center;background:#fff;border-top:1px solid #e0dbe8;padding:10px 5px calc(10px + env(safe-area-inset-bottom));z-index:2}nav a{padding:14px 12px;text-decoration:none;color:#696477;border-radius:12px;font-size:14px}nav a[aria-current]{color:#544185;background:#eee9f7;font-weight:700}.foot{text-align:center;font-size:12px;color:#696477}label{display:block;margin:20px 0 8px;font-weight:600}select,input{font:inherit;width:100%;padding:14px;border:1px solid #beb5ce;border-radius:10px;background:white;color:inherit;min-height:48px}.result{padding:16px;background:#eee9f7;border-radius:12px;margin-top:18px}details{margin-top:18px}summary{cursor:pointer;min-height:44px;padding:10px 0}ul{padding-left:20px;line-height:1.8}@media(max-width:380px){.app{padding:12px 12px 100px}.brand{font-size:18px}.card{padding:18px}nav a{padding:14px 9px;font-size:13px}}

/* One vertical feed at every screen size. */
.app{max-width:560px}main{display:flex;flex-direction:column;min-width:0}.card{width:100%;min-width:0;overflow-wrap:anywhere}.actions{flex-direction:column}.actions button{width:100%;min-height:50px}.job-card{padding:0;overflow:hidden}.card-open{display:block;padding:24px;color:inherit;text-decoration:none}.card-open:hover{background:#f5f0fb}.job-card .actions{margin:0;padding:0 24px 24px}.open-label{display:block;font-weight:650;color:#60478b;margin-top:18px}.back-link{display:block;padding:12px 0;min-height:46px;color:#544185}.row{align-items:flex-start}h1{overflow-wrap:anywhere}


/* Keep the decision within reach above mobile navigation. */
.job-detail .app{padding-bottom:280px}
.decision-bar{position:fixed;bottom:calc(77px + env(safe-area-inset-bottom));left:0;right:0;z-index:3;max-width:560px;margin:auto;padding:12px 18px;background:#fff;border-top:1px solid #d7d2e4;box-shadow:0 -4px 20px #35315d10}
.decision-bar strong{display:block;margin-bottom:8px}.decision-buttons{display:flex;gap:10px}.decision-buttons button{flex:1;min-height:50px;padding:10px}.decision-bar small{display:block;text-align:center;color:#696477;margin-top:7px;font-size:12px}.decision-buttons button[aria-pressed="true"]{outline:2px solid #544185;outline-offset:2px}

/* Compact mobile app chrome and readable job details. */
@media all{
.app{padding:12px 16px 100px}header{padding:2px 0 12px}.brand{font-size:19px}header button{font-size:14px;padding:8px 12px;min-height:44px}
.notice{font-size:11px;padding:8px 10px}.affirmation{min-height:0;gap:8px;padding:10px 0}.affirmation p{font-size:18px;line-height:1.35;margin:6px 0}.affirmation button{padding:6px;min-height:44px}
h1{font-size:26px;line-height:1.18;letter-spacing:-.6px}h2{font-size:20px}.card{padding:18px;border-radius:16px;margin:12px 0}.card-open{padding:18px}.job-card{padding:0}.job-card .actions{padding:0 18px 18px}
.job-detail .back-link{padding:10px 0;font-size:14px}.job-detail main>.card{border:0;box-shadow:none;background:transparent;padding:4px 0 16px;margin:4px 0}.job-detail main>.card>h1{margin:12px 0}.job-detail main>.card>p{font-size:15px;line-height:1.45;margin:12px 0}.job-detail .result{padding:12px;font-size:14px}.job-detail .foot{display:none}
nav{height:68px;padding:6px 4px calc(6px + env(safe-area-inset-bottom));gap:0}nav a{flex:1;text-align:center;padding:16px 4px;font-size:12px}
.decision-bar{bottom:68px;padding:10px 16px 12px;box-shadow:0 -3px 12px #35315d08}.decision-bar strong{font-size:14px}.decision-bar small{font-size:11px}.decision-buttons button{font-size:15px;min-height:48px}.job-detail .app{padding-bottom:220px}
}

/* Persistent phone preview: independent of browser viewport overrides. */
body{background:#e6e2eb}
.app{max-width:390px;min-height:100dvh;background:#faf8f5;box-shadow:0 0 0 1px #d4cddb}
nav,.decision-bar{width:100%;max-width:390px;margin-left:auto;margin-right:auto}
nav{height:calc(68px + env(safe-area-inset-bottom))}
.decision-bar{bottom:calc(68px + env(safe-area-inset-bottom))}

.affirmation button{max-width:85px;color:#60478b;font-size:11px;line-height:1.3}.row{flex-wrap:wrap}.row #pause{font-size:13px}.decision-bar[hidden]{display:none}#demoApplied{margin:0 0 12px;width:100%}

.application-status{background:#eee9f7;color:#44336c;border-left:3px solid #544185;padding:10px 12px;margin:12px 0;font-size:14px;font-weight:700;border-radius:6px}
