:root{--paper: #e8e7e2;--ink: #1a1a1a;--green: #639922;--amber: #ef9f27;--red: #e24b4a;--blue: #3b5ca8;--hairline: rgba(26, 26, 26, .18);--card: #f4f3ef}*{margin:0;padding:0;box-sizing:border-box}html,body{background:var(--paper);color:var(--ink);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}body{max-width:480px;margin:0 auto;padding:20px 18px 64px;line-height:1.45}.site-header{display:flex;align-items:center;gap:12px;border-bottom:3px solid var(--ink);padding-bottom:14px}.brand-mark{display:inline-flex;width:34px;height:34px}.wordmark{font-size:21px;font-weight:800;letter-spacing:-.3px;line-height:1.1}.wordmark-sub{font-size:11px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase}.site-footer{margin-top:40px;padding-top:16px;border-top:1px solid var(--hairline);font-size:12px}.site-footer p+p{margin-top:8px}.site-footer a{color:var(--blue)}#view{padding-top:22px}.step-label{font-size:11px;font-weight:800;letter-spacing:1.6px;text-transform:uppercase;color:var(--blue)}h1{font-size:25px;font-weight:800;letter-spacing:-.4px;margin:4px 0 6px}h2{font-size:16px;font-weight:800;margin:24px 0 8px}.hint{font-size:14px;margin-bottom:16px}.muted{font-size:13px}.notice{background:var(--card);border:1px solid var(--hairline);border-radius:12px;padding:18px}.notice h1{font-size:21px}.notice p+p{margin-top:10px}.pick-list{list-style:none;border-top:1px solid var(--hairline)}.pick-list li{border-bottom:1px solid var(--hairline)}.pick{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;padding:14px 4px;background:none;border:0;font:inherit;color:inherit;text-align:left;cursor:pointer}.pick:active{background:#1a1a1a0d}.pick strong{font-size:16px;font-weight:700}.pick .sub{display:block;font-size:12.5px}.pick .chev{flex:0 0 auto;font-size:18px}input[type=search],input[type=text],input[type=number],select{width:100%;padding:12px 14px;font:inherit;font-size:16px;color:inherit;background:#fff;border:1px solid var(--hairline);border-radius:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 18px;font:inherit;font-size:16px;font-weight:800;border-radius:10px;border:2px solid var(--ink);background:none;color:var(--ink);cursor:pointer}.btn-primary{background:var(--ink);color:var(--paper)}.btn-block{width:100%}.btn:disabled{opacity:.45;cursor:default}.btn-row{display:flex;gap:10px;margin-top:22px}.btn-row .btn{flex:1}.link-btn{background:none;border:0;padding:0;font:inherit;font-size:14px;font-weight:700;color:var(--blue);text-decoration:underline;cursor:pointer}.period{border:1px solid var(--hairline);border-radius:12px;padding:14px 16px;margin-bottom:12px;background:var(--card)}.period h3{font-size:15px;font-weight:800}.period .season{font-size:12px;margin-bottom:10px}.block-row{display:flex;align-items:baseline;gap:10px;padding:8px 0;border-top:1px solid var(--hairline)}.block-row .rate{font-size:17px;font-weight:800;min-width:74px}.block-row .windows{font-size:13px}.tier-dot{display:inline-block;width:11px;height:11px;border-radius:50%;margin-right:6px;vertical-align:baseline}.tier-cheap{background:var(--green)}.tier-shoulder{background:var(--amber)}.tier-peak{background:var(--red)}.timeline{display:flex;height:28px;border-radius:6px;overflow:hidden;border:1px solid var(--hairline)}.timeline span{display:block;height:100%}.timeline-axis{display:flex;justify-content:space-between;font-size:11px;margin-top:4px}.blocker,.caveat{border-radius:12px;padding:14px 16px;margin-bottom:12px;font-size:14px}.blocker{border:2px solid var(--red);background:#e24b4a17}.blocker strong{display:block;font-size:15px;margin-bottom:4px}.caveat{border:1px solid var(--hairline);background:var(--card)}.error{color:var(--red);font-size:14px;font-weight:700;margin-top:12px}.option{display:flex;align-items:flex-start;gap:12px;padding:14px 0;border-bottom:1px solid var(--hairline)}.option input{width:22px;height:22px;margin-top:2px;flex:0 0 auto;accent-color:var(--ink)}.option .label{font-size:15px;font-weight:700}.option .sub{font-size:12.5px}.saved{border:2px solid var(--green);background:#6399221a;border-radius:12px;padding:16px;font-size:14px}
