/* Generated from app/globals.css. Do not edit directly. */
.iris-btb-app { --cream:#fffaf3; --paper:#fffdf9; --blush:#f7e8ed; --lavender:#e9e2ff; --sage:#dfe9d9; --gold:#d4ad63; --plum:#4f3b52; --rose:#aa627d; --ink:#2f2931; --muted:#6f6670; --line:#e8ded5; --shadow:0 16px 44px rgba(83,55,63,.09); --font-display:"Bloom Cormorant",Georgia,serif; --font-body:"Bloom DM Sans",Arial,sans-serif; --btb-admin-bar-height:0px; --btb-site-header-height:64px; --btb-route-nav-height:0px; --btb-rail-nav-height:0px; }
.iris-btb-app * { box-sizing:border-box; }
.iris-btb-app { scroll-behavior:smooth; scroll-padding-top:0; }
.iris-btb-app { margin:0; background:var(--cream); color:var(--ink); font-family:var(--font-body),sans-serif; line-height:1.55; }
.iris-btb-app a { color:inherit; text-decoration:none; }
.iris-btb-app button,.iris-btb-app input,.iris-btb-app select,.iris-btb-app textarea { font:inherit; color:inherit; }
.iris-btb-app button,.iris-btb-app a { -webkit-tap-highlight-color:transparent; }
.iris-btb-app button { cursor:pointer; }
.iris-btb-app :focus-visible { outline:3px solid #7a54ad; outline-offset:3px; }
.iris-btb-app .skip-link { position:fixed; z-index:100; left:16px; top:-80px; background:var(--plum); color:white; padding:12px 18px; border-radius:10px; }
.iris-btb-app .skip-link:focus { top:12px; }
.iris-btb-app .visually-hidden { position:absolute!important; width:1px!important; height:1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; }

.iris-btb-app .site-header { position:sticky; top:var(--btb-admin-bar-height); z-index:50; height:76px; display:flex; align-items:center; gap:34px; padding:0 max(22px,4vw); background:rgba(255,253,249,.94); border-bottom:1px solid var(--line); backdrop-filter:blur(18px); }
.iris-btb-app .brand { min-height:48px; display:flex; align-items:center; gap:11px; font-family:var(--font-display),serif; font-size:24px; font-weight:600; line-height:1; white-space:nowrap; }
.iris-btb-app .brand small { display:block; margin-top:6px; font-family:var(--font-body),sans-serif; font-size:7px; font-weight:600; line-height:1; letter-spacing:.19em; text-transform:uppercase; color:var(--muted); }
.iris-btb-app .brand-orbit { width:42px; height:42px; display:grid; place-items:center; border:1px solid var(--plum); border-radius:50%; font-style:italic; position:relative; }
.iris-btb-app .brand-orbit:after { content:""; position:absolute; width:52px; height:20px; border:1px solid var(--rose); border-radius:50%; transform:rotate(-28deg); }
.iris-btb-app .site-header nav { display:flex; justify-content:center; gap:26px; flex:1; font-size:14px; }
.iris-btb-app .site-header nav a { padding:10px 0; border-bottom:1px solid transparent; }
.iris-btb-app .site-header nav a:hover { color:var(--rose); border-color:var(--rose); }
.iris-btb-app .mobile-section-nav { display:none; }

.iris-btb-app #today,.iris-btb-app #plan,.iris-btb-app #journey,.iris-btb-app #money,.iris-btb-app #library,.iris-btb-app #reflect,.iris-btb-app #from-iris { scroll-margin-top:calc(var(--btb-admin-bar-height) + var(--btb-site-header-height) + var(--btb-route-nav-height) + var(--btb-rail-nav-height) + 16px); }

.iris-btb-app .button { border:1px solid var(--plum); border-radius:999px; background:var(--plum); color:#fff; min-height:46px; padding:12px 22px; display:inline-flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; box-shadow:0 7px 20px rgba(79,59,82,.12); }
.iris-btb-app .button:hover { transform:translateY(-1px); }
.iris-btb-app .button.secondary { background:rgba(255,255,255,.75); color:var(--plum); box-shadow:none; }
.iris-btb-app .button.tiny { min-height:40px; padding:10px 18px; }

.iris-btb-app .hero { min-height:650px; display:grid; grid-template-columns:minmax(0,.95fr) minmax(500px,1.15fr); align-items:stretch; background:linear-gradient(115deg,#fffaf4 0%,#faedf0 48%,#eadff6 100%); border-bottom:1px solid #decfd4; overflow:hidden; }
.iris-btb-app .hero-copy { padding:clamp(60px,7vw,104px) clamp(30px,6vw,100px); align-self:center; position:relative; z-index:2; }
.iris-btb-app .eyebrow,.iris-btb-app .kicker { margin:0 0 12px; font-size:12px; line-height:1.2; letter-spacing:.15em; text-transform:uppercase; font-weight:800; color:var(--rose); }
.iris-btb-app .eyebrow span { color:var(--muted); }
.iris-btb-app h1,.iris-btb-app h2,.iris-btb-app h3,.iris-btb-app p { text-wrap:pretty; }
.iris-btb-app h1 { margin:0; max-width:760px; font-family:var(--font-display),serif; font-size:clamp(54px,5.3vw,88px); font-weight:600; line-height:.93; letter-spacing:-.04em; color:#241e25; }
.iris-btb-app h1 em { color:var(--rose); font-weight:500; }
.iris-btb-app .hero-dek { margin:26px 0 12px; max-width:650px; font-size:18px; color:#514852; }
.iris-btb-app .script-line { margin:0 0 30px; font-family:var(--font-display),serif; font-size:20px; font-style:italic; font-weight:600; line-height:1.2; color:#715f82; }
.iris-btb-app .hero-actions { display:flex; gap:12px; flex-wrap:wrap; }
.iris-btb-app .microcopy { max-width:590px; margin:20px 0 0; font-size:12px; color:var(--muted); }

.iris-btb-app .hero-scene { min-height:650px; position:relative; overflow:hidden; background:linear-gradient(#f9d8cf 0 16%,#d9d0df 46%,#b8c6bd 68%,#728676 100%); isolation:isolate; }
.iris-btb-app .hero-scene:before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 60% 16%,rgba(255,249,192,.95),rgba(255,220,180,.25) 15%,transparent 35%),linear-gradient(100deg,rgba(113,77,107,.15),transparent 42%); }
.iris-btb-app .sun { position:absolute; width:100px; height:100px; border-radius:50%; left:58%; top:14%; background:#fff7c8; box-shadow:0 0 70px 30px rgba(255,232,189,.52); }
.iris-btb-app .mountain { position:absolute; left:-10%; width:120%; clip-path:polygon(0 100%,7% 70%,15% 79%,26% 48%,35% 76%,46% 42%,55% 69%,66% 30%,77% 65%,87% 44%,100% 76%,100% 100%); }
.iris-btb-app .mountain.far { bottom:25%; height:48%; background:#a49bab; opacity:.78; }
.iris-btb-app .mountain.near { bottom:0; height:63%; background:linear-gradient(120deg,#637366,#8d8576 58%,#5d6f61); clip-path:polygon(0 100%,0 72%,12% 50%,23% 72%,36% 28%,45% 59%,61% 10%,72% 52%,84% 24%,100% 58%,100% 100%); }
.iris-btb-app .trail { position:absolute; bottom:-5%; left:40%; width:22%; height:68%; background:linear-gradient(110deg,transparent 0 31%,rgba(236,217,192,.75) 35% 56%,transparent 60%); transform:rotate(-6deg); filter:blur(1px); }
.iris-btb-app .hero-note,.iris-btb-app .hero-stat { position:absolute; z-index:3; background:rgba(255,253,249,.91); box-shadow:var(--shadow); backdrop-filter:blur(10px); }
.iris-btb-app .hero-note { top:70px; right:6%; max-width:260px; padding:22px 26px; transform:rotate(2deg); font-family:var(--font-display),serif; font-size:21px; font-style:italic; font-weight:500; line-height:1.2; border:1px solid rgba(255,255,255,.8); }
.iris-btb-app .hero-note span { display:block; margin-top:10px; text-align:right; color:var(--rose); }
.iris-btb-app .hero-stat { left:8%; bottom:50px; border-radius:18px; padding:18px 22px; min-width:180px; }
.iris-btb-app .hero-stat span,.iris-btb-app .hero-stat small { display:block; font-size:11px; color:var(--muted); }
.iris-btb-app .hero-stat strong { font-family:var(--font-display),serif; font-size:36px; font-weight:700; line-height:1; color:var(--plum); }
.iris-btb-app .hero-focus strong { max-width:250px; margin:7px 0 5px; font-size:22px; line-height:1.05; }

.iris-btb-app .mode-wrap { max-width:1120px; margin:-30px auto 42px; padding:12px; border:1px solid var(--line); border-radius:999px; position:relative; z-index:5; background:rgba(255,253,249,.96); box-shadow:var(--shadow); display:flex; align-items:center; justify-content:space-between; gap:20px; }
.iris-btb-app .segmented { display:flex; background:#f1ece8; border-radius:999px; padding:4px; }
.iris-btb-app .segmented button { min-height:42px; border:0; background:transparent; border-radius:999px; padding:8px 22px; font-weight:700; }
.iris-btb-app .segmented button[aria-pressed="true"] { background:var(--paper); color:var(--plum); box-shadow:0 4px 14px rgba(80,60,70,.1); }
.iris-btb-app .mode-wrap p { margin:0 18px 0 0; font-size:12px; color:var(--muted); }

.iris-btb-app .content-shell { max-width:1520px; margin:0 auto; padding:0 clamp(18px,3vw,48px) 80px; display:grid; grid-template-columns:190px minmax(0,1fr); gap:42px; }
.iris-btb-app .side-nav { position:sticky; top:112px; align-self:start; display:flex; flex-direction:column; gap:4px; }
.iris-btb-app .side-nav>p { margin:0 0 10px; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.15em; color:var(--muted); }
.iris-btb-app .side-nav a { min-height:42px; padding:10px 12px 10px 22px; font-size:13px; border-radius:10px; position:relative; }
.iris-btb-app .side-nav a:before { content:""; position:absolute; left:8px; top:50%; width:5px; height:5px; border:1px solid var(--rose); border-radius:60% 40% 60% 40%; transform:translateY(-50%) rotate(45deg); opacity:0; }
.iris-btb-app .side-nav a:hover,.iris-btb-app .side-nav a.active { background:linear-gradient(90deg,rgba(247,232,237,.88),transparent); color:var(--plum); }
.iris-btb-app .side-nav a.active:before { opacity:1; background:var(--rose); }
.iris-btb-app .side-nav blockquote { margin:34px 8px 0; padding-top:22px; border-top:1px solid var(--line); color:#766778; font-family:var(--font-display),serif; font-size:19px; font-style:italic; font-weight:600; line-height:1.25; }
.iris-btb-app .page-flow { min-width:0; }
.iris-btb-app .section { padding:32px 0 72px; border-bottom:1px solid var(--line); }
.iris-btb-app .section:last-child { border:0; }
.iris-btb-app .section-heading { display:flex; align-items:end; justify-content:space-between; gap:26px; margin-bottom:16px; }
.iris-btb-app .section-heading.compact { align-items:center; }
.iris-btb-app .section-heading h2,.iris-btb-app .reflection-copy h2 { margin:0; font-family:var(--font-display),serif; font-size:clamp(36px,4vw,56px); font-weight:600; line-height:.96; letter-spacing:-.025em; color:#2b232c; }
.iris-btb-app .section-intro { max-width:880px; margin:0 0 28px; color:var(--muted); font-size:16px; }
.iris-btb-app .date-badge,.iris-btb-app .local-badge,.iris-btb-app .impact-badge { display:inline-flex; align-items:center; min-height:34px; padding:7px 13px; border:1px solid #dbcdd4; border-radius:999px; font-size:11px; font-weight:800; color:var(--plum); background:#fff; white-space:nowrap; }
.iris-btb-app .impact-badge { background:var(--sage); border-color:#bfd0b7; }
.iris-btb-app .text-link { min-height:44px; display:inline-flex; align-items:center; font-weight:800; color:var(--rose); font-size:14px; }
.iris-btb-app .card,.iris-btb-app .metric,.iris-btb-app .tool-card { background:rgba(255,253,249,.88); border:1px solid var(--line); border-radius:20px; box-shadow:0 10px 28px rgba(74,53,60,.05); }

.iris-btb-app .metric-grid { display:grid; grid-template-columns:1.3fr repeat(3,1fr); gap:12px; }
.iris-btb-app .today-money { margin-top:14px; }
.iris-btb-app .metric { min-height:145px; padding:22px; position:relative; overflow:hidden; }
.iris-btb-app .metric:after { content:""; width:64px; height:64px; position:absolute; right:-18px; bottom:-18px; border:14px solid var(--lavender); border-radius:50%; opacity:.55; }
.iris-btb-app .metric.featured { background:linear-gradient(135deg,#fffefd,#f7ebef); }
.iris-btb-app .metric.awarded { background:linear-gradient(135deg,#fffefd,#edf3e9); }
.iris-btb-app .metric span,.iris-btb-app .metric small { display:block; font-size:11px; color:var(--muted); }
.iris-btb-app .metric strong { display:block; margin:13px 0 6px; font-family:var(--font-display),serif; font-size:clamp(27px,3vw,40px); font-weight:600; line-height:1; color:var(--plum); }
.iris-btb-app .today-grid { display:grid; grid-template-columns:1fr 1.25fr .85fr; gap:14px; margin-top:14px; }
.iris-btb-app .today-grid .card { min-height:260px; padding:24px; }
.iris-btb-app .today-grid h3 { margin:0 0 18px; font-family:var(--font-display),serif; font-size:27px; font-weight:600; line-height:1.1; }
.iris-btb-app .check-list { padding:0; margin:0; list-style:none; display:grid; gap:9px; font-size:13px; }
.iris-btb-app .check-list li:before { content:""; width:16px; height:16px; display:inline-grid; place-items:center; margin-right:8px; border:1px solid #a99da7; border-radius:4px; vertical-align:-3px; }
.iris-btb-app .check-list li.done:before { content:"✓"; background:var(--sage); color:#3e6937; border-color:#9fbb96; font-size:11px; }
.iris-btb-app .path-line { height:3px; margin:52px 12px 18px; background:linear-gradient(90deg,var(--rose),#9a7ad0); display:flex; justify-content:space-between; }
.iris-btb-app .path-line i { width:14px; height:14px; margin-top:-6px; border:3px solid white; border-radius:50%; background:#956fb4; box-shadow:0 0 0 1px #956fb4; }
.iris-btb-app .path-labels { display:flex; justify-content:space-between; gap:6px; font-size:10px; }
.iris-btb-app .progress-card>p:last-child { margin:26px 0 0; font-size:12px; color:var(--muted); }
.iris-btb-app .calm-card { background:linear-gradient(145deg,#f9f1f4,#eee7ff); }
.iris-btb-app .calm-card a { font-size:13px; color:var(--rose); font-weight:800; }
.iris-btb-app .focus-card { position:relative; }
.iris-btb-app .focus-card:not(.focus-done) { background:linear-gradient(145deg,#fffdf9,#f8eef2); }
.iris-btb-app .focus-card.focus-done { background:linear-gradient(145deg,#fffdf9,#edf3e9); }
.iris-btb-app .focus-card>div { padding-left:46px; }
.iris-btb-app .focus-check { position:absolute; left:24px; top:70px; width:40px; height:40px; border:1px solid #bbaeb6; border-radius:10px; background:#fff; color:#487147; font-weight:900; }
.iris-btb-app .focus-done .focus-check { background:var(--sage); border-color:#9fbb96; }
.iris-btb-app .focus-timeframe,.iris-btb-app .done-message { display:block; margin-top:7px; font-size:10px; }
.iris-btb-app .done-message { color:#487147; }
.iris-btb-app .focus-actions { display:flex; gap:12px; margin-top:17px; }
.iris-btb-app .focus-actions button { min-height:40px; padding:6px 8px; border:0; background:transparent; color:var(--rose); font-size:11px; font-weight:800; }
.iris-btb-app .focus-input { display:grid; gap:7px; font-size:11px; font-weight:800; }
.iris-btb-app .focus-card>select { margin:9px 0; }
.iris-btb-app .focus-history { margin-top:16px; padding-top:12px; border-top:1px solid var(--line); }
.iris-btb-app .focus-history summary { min-height:40px; display:flex; align-items:center; font-size:10px; font-weight:800; }
.iris-btb-app .focus-history button { width:100%; min-height:40px; padding:7px 0; border:0; border-bottom:1px solid var(--line); background:transparent; text-align:left; font-size:9px; }

.iris-btb-app .explain-term { position:relative; display:inline-flex; align-items:center; gap:5px; max-width:100%; }
.iris-btb-app .term-label { font-size:inherit; color:inherit; }
.iris-btb-app .explain-trigger { width:40px; height:40px; min-height:40px; padding:0; border:1px solid #cdbfc6; border-radius:50%; background:#fffdf9; color:#70465a; font-family:var(--font-body),sans-serif; font-size:15px; font-style:normal; font-weight:800; line-height:1; box-shadow:none; }
.iris-btb-app .explain-trigger>span { width:100%; height:100%; display:grid; place-items:center; }
.iris-btb-app .explain-trigger:hover,.iris-btb-app .explain-trigger:focus-visible { border-color:var(--rose); background:#f7e8ed; color:var(--plum); }
.iris-built-to-bloom-page .explain-popover { position:absolute; z-index:80; top:calc(100% + 8px); left:0; width:min(330px,calc(100vw - 40px)); padding:17px; display:grid; gap:11px; border:1px solid #d9cbd2; border-radius:14px; background:#fffdfa; box-shadow:0 18px 42px rgba(71,49,61,.18); text-align:left; font-family:var(--font-body),sans-serif; font-size:11px; font-weight:400; line-height:1.45; color:var(--ink); text-transform:none; letter-spacing:0; }
.iris-built-to-bloom-page .explain-popover>strong { font-family:var(--font-display),serif; font-size:22px; line-height:1; color:var(--plum); }
.iris-built-to-bloom-page .explain-popover span { display:block; }
.iris-built-to-bloom-page .explain-popover b { display:block; margin-bottom:3px; color:var(--rose); font-size:9px; text-transform:uppercase; letter-spacing:.08em; }
.iris-built-to-bloom-page .explain-close { min-height:40px; padding:8px 12px; border:1px solid var(--line); border-radius:999px; background:#fff; color:var(--rose); font-size:10px; font-weight:800; justify-self:start; }
.iris-btb-app .metric:nth-child(n+3) .explain-popover,.iris-btb-app .field-grid label:nth-child(even) .explain-popover,.iris-btb-app .field-grid .loan-field:nth-child(even) .explain-popover { left:auto; right:0; }

.iris-btb-app .loan-anatomy { margin:0 0 16px; padding:20px 22px; display:grid; grid-template-columns:1fr auto 1fr auto 1fr; align-items:center; gap:14px; border-block:1px solid var(--line); background:rgba(255,253,249,.58); }
.iris-btb-app .loan-anatomy article { min-width:0; }
.iris-btb-app .loan-anatomy strong { display:block; margin-top:8px; font-family:var(--font-display),serif; font-size:28px; line-height:1; color:var(--plum); }
.iris-btb-app .loan-anatomy>b { color:var(--rose); font-size:24px; }
.iris-btb-app .why-change { margin:12px 0; padding:14px 18px; border:1px solid var(--line); border-radius:14px; background:#fffdfa; }
.iris-btb-app .why-change summary { font-size:12px; font-weight:850; color:var(--rose); }
.iris-btb-app .why-change p { margin:10px 0 0; color:var(--muted); font-size:11px; }

.iris-btb-app .planner-promo { display:grid; grid-template-columns:1fr 1fr; gap:52px; align-items:center; padding:68px clamp(24px,5vw,70px); margin:34px 0; border:1px solid #d9d0c8; border-radius:26px; background:linear-gradient(120deg,#fffdfa 0 48%,#f3e7ee 48% 100%); box-shadow:var(--shadow); }
.iris-btb-app .planner-promo h2 { margin:0 0 14px; font-family:var(--font-display),serif; font-size:clamp(46px,5vw,72px); font-weight:600; line-height:.95; }
.iris-btb-app .planner-promo p:not(.kicker) { max-width:620px; color:var(--muted); }
.iris-btb-app .planner-promo .button { margin-top:12px; }
.iris-btb-app .mini-planner { min-height:330px; padding:42px 24px 24px; display:grid; grid-template-columns:repeat(5,1fr); grid-template-rows:30px repeat(6,1fr); gap:8px; border:1px solid rgba(96,74,84,.14); border-radius:20px; background:rgba(255,253,249,.88); box-shadow:0 18px 45px rgba(78,55,70,.1); transform:rotate(1.5deg); }
.iris-btb-app .mini-planner span { text-align:center; font-size:9px; text-transform:uppercase; letter-spacing:.08em; color:var(--muted); }
.iris-btb-app .mini-planner i { min-height:56px; border-radius:8px; opacity:.9; }
.iris-btb-app .mini-planner .lav { grid-column:1/3; grid-row:2/4; background:#d9caef; }
.iris-btb-app .mini-planner .sage { grid-column:3; grid-row:3/6; background:#cfdcc8; }
.iris-btb-app .mini-planner .blush { grid-column:4/6; grid-row:2/3; background:#efcdd6; }
.iris-btb-app .mini-planner .blue { grid-column:2/4; grid-row:6; background:#c9d8e5; }
.iris-btb-app .mini-planner .peach { grid-column:5; grid-row:4/7; background:#edcfb2; }

.iris-btb-app .journey-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin-bottom:22px; }
.iris-btb-app .journey-stats div { padding:17px 20px; background:#f5efe9; border-radius:14px; display:flex; align-items:center; justify-content:space-between; gap:10px; }
.iris-btb-app .journey-stats span { font-size:11px; color:var(--muted); }
.iris-btb-app .journey-stats strong { font-family:var(--font-display),serif; font-size:28px; font-weight:700; line-height:1; }
.iris-btb-app .filter-row { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:18px; }
.iris-btb-app .filter-row button,.iris-btb-app .preset-row button { min-height:44px; padding:7px 14px; border:1px solid var(--line); border-radius:999px; background:#fff; font-size:11px; font-weight:700; }
.iris-btb-app .filter-row button[aria-pressed="true"],.iris-btb-app .preset-row button[aria-pressed="true"] { color:white; background:var(--plum); border-color:var(--plum); }
.iris-btb-app .application-list { border:1px solid var(--line); border-radius:20px; overflow:hidden; background:rgba(255,255,255,.52); }
.iris-btb-app .application-row { display:grid; grid-template-columns:54px minmax(0,1fr) minmax(230px,.55fr); gap:16px; align-items:center; padding:19px 22px; border-bottom:1px solid var(--line); }
.iris-btb-app .application-row:last-child { border:0; }
.iris-btb-app .application-row:hover { background:#fffdfa; }
.iris-btb-app .growth-mark { width:40px; height:40px; display:grid; place-items:center; border:1px solid #c8b7c7; border-radius:50% 50% 46% 54%; background:var(--lavender); color:var(--plum); font-family:var(--font-display),serif; font-size:17px; font-weight:700; transform:rotate(-4deg); }
.iris-btb-app .status-awarded .growth-mark { background:var(--sage); border-color:#9fbc94; }
.iris-btb-app .status-not_selected .growth-mark { background:#eee9e6; }
.iris-btb-app .application-main>p { margin:0; color:var(--rose); font-size:10px; text-transform:uppercase; letter-spacing:.09em; font-weight:800; }
.iris-btb-app .application-main h3 { margin:2px 0 7px; font-family:var(--font-display),serif; font-size:23px; font-weight:600; line-height:1.1; }
.iris-btb-app .application-meta { display:flex; flex-wrap:wrap; gap:7px; }
.iris-btb-app .application-meta span { padding:3px 7px; border-radius:5px; background:#f3eee9; font-size:9px; text-transform:capitalize; color:var(--muted); }
.iris-btb-app .record-note { margin:7px 0 0!important; text-transform:none!important; letter-spacing:0!important; color:var(--muted)!important; font-weight:400!important; }
.iris-btb-app .application-outcome { display:flex; flex-direction:column; align-items:flex-start; gap:5px; }
.iris-btb-app .status-badge { font-size:10px; font-weight:800; padding:5px 9px; background:var(--blush); border-radius:999px; }
.iris-btb-app .status-awarded .status-badge { background:var(--sage); }
.iris-btb-app .status-not_selected .status-badge { background:#eee9e6; }
.iris-btb-app .application-outcome strong { font-size:12px; }
.iris-btb-app .application-outcome small { color:var(--muted); font-size:10px; }
.iris-btb-app .empty-state { padding:30px; text-align:center; color:var(--muted); }

.iris-btb-app .tracker-form { display:grid; grid-template-columns:1.4fr 1fr 1fr auto; align-items:end; gap:12px; padding:22px; background:var(--blush); border-radius:18px; }
.iris-btb-app .tracker-form label,.iris-btb-app .field-grid label,.iris-btb-app .field-grid .loan-field { display:grid; gap:6px; font-size:11px; font-weight:800; }
.iris-btb-app input,.iris-btb-app select,.iris-btb-app textarea { width:100%; border:1px solid #d7cbc4; border-radius:10px; background:rgba(255,255,255,.87); padding:11px 12px; min-height:44px; }
.iris-btb-app textarea { resize:vertical; }
.iris-btb-app .custom-items { display:grid; gap:8px; margin-top:12px; }
.iris-btb-app .custom-items article { display:grid; grid-template-columns:1fr 150px 42px; gap:12px; align-items:center; padding:14px 18px; background:#fff; border:1px solid var(--line); border-radius:12px; }
.iris-btb-app .custom-items strong,.iris-btb-app .custom-items span { display:block; }
.iris-btb-app .custom-items span { font-size:11px; color:var(--muted); }
.iris-btb-app .icon-button { width:40px; height:40px; border:1px solid var(--line); background:#fff; border-radius:50%; font-size:20px; }

.iris-btb-app .payment-section { position:relative; }
.iris-btb-app .payment-layout { display:grid; grid-template-columns:minmax(360px,.9fr) minmax(420px,1.1fr); gap:16px; align-items:start; }
.iris-btb-app .payment-controls { padding:25px; }
.iris-btb-app .slider-label { display:flex; justify-content:space-between; align-items:end; gap:20px; font-size:12px; font-weight:800; }
.iris-btb-app .slider-label strong { font-family:var(--font-display),serif; font-size:40px; font-weight:700; line-height:1; color:var(--plum); }
.iris-btb-app .slider { appearance:none; margin:20px 0 14px; padding:0; min-height:28px; height:8px; border:0; border-radius:999px; background:linear-gradient(90deg,var(--rose),#8d70c3); }
.iris-btb-app .slider::-webkit-slider-thumb { appearance:none; width:28px; height:28px; border-radius:50%; background:white; border:2px solid var(--plum); box-shadow:0 4px 12px rgba(50,30,50,.2); }
.iris-btb-app .preset-row { display:flex; flex-wrap:wrap; gap:6px; }
.iris-btb-app .field-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:22px; }
.iris-btb-app .payment-controls details { margin-top:16px; border-top:1px solid var(--line); padding-top:14px; }
.iris-btb-app .payment-controls summary { font-size:12px; font-weight:800; color:var(--rose); }
.iris-btb-app .details-grid { margin-top:14px; }
.iris-btb-app .checkbox-label { grid-template-columns:22px 1fr!important; align-items:center; }
.iris-btb-app .checkbox-label input { width:20px; min-height:20px; }
.iris-btb-app .payment-results { display:grid; gap:12px; }
.iris-btb-app .interpretation-card { padding:22px; display:grid; grid-template-columns:130px 1fr; align-items:center; gap:22px; background:linear-gradient(140deg,#fff,#f5f0ff); }
.iris-btb-app .interpretation-card h3 { margin:0 0 8px; font-family:var(--font-display),serif; font-size:30px; font-weight:600; line-height:1; }
.iris-btb-app .interpretation-card p:last-child { margin:0; color:var(--muted); font-size:12px; }
.iris-btb-app .ring { --coverage:0deg; width:120px; aspect-ratio:1; border-radius:50%; background:conic-gradient(var(--rose) var(--coverage),#eadfdc 0); position:relative; display:grid; place-items:center; text-align:center; }
.iris-btb-app .ring:before { content:""; position:absolute; inset:13px; background:#fffdfa; border-radius:50%; }
.iris-btb-app .ring span,.iris-btb-app .ring small { position:relative; z-index:1; display:block; }
.iris-btb-app .ring span { font-family:var(--font-display),serif; font-size:27px; font-weight:700; line-height:1; }
.iris-btb-app .ring small { max-width:55px; font-size:8px; line-height:1.1; text-transform:uppercase; color:var(--muted); }
.iris-btb-app .result-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.iris-btb-app .result-grid article { min-height:118px; padding:16px; border:1px solid var(--line); border-radius:15px; background:#fff; }
.iris-btb-app .result-grid span { display:block; min-height:34px; color:var(--muted); font-size:10px; }
.iris-btb-app .result-grid strong { display:block; margin-top:12px; font-family:var(--font-display),serif; font-size:24px; font-weight:600; line-height:1; }
.iris-btb-app .result-grid small { font-family:var(--font-body),sans-serif; font-size:9px; font-weight:500; color:var(--muted); }
.iris-btb-app .chart-card { margin-top:16px; padding:24px; }
.iris-btb-app .chart-title { display:grid; grid-template-columns:1fr 1fr; gap:24px; align-items:center; }
.iris-btb-app .chart-title h3 { margin:0; font-family:var(--font-display),serif; font-size:27px; font-weight:600; line-height:1; }
.iris-btb-app .bar-compare { display:grid; gap:5px; align-items:start; }
.iris-btb-app .bar-compare span { display:block; min-width:45%; background:#ddd4e8; border-radius:999px; padding:5px 9px; font-size:8px; white-space:nowrap; }
.iris-btb-app .bar-compare span:last-child { background:var(--rose); color:white; }
.iris-btb-app .loan-chart svg { width:100%; height:auto; margin-top:14px; overflow:visible; }
.iris-btb-app .chart-grid { stroke:#ebe3de; stroke-width:1; }
.iris-btb-app .line { fill:none; stroke-width:4; stroke-linecap:round; stroke-linejoin:round; }
.iris-btb-app .line.baseline { stroke:#a69fa8; stroke-dasharray:8 8; }
.iris-btb-app .line.selected { stroke:var(--rose); }
.iris-btb-app .loan-chart figcaption { display:flex; justify-content:center; gap:24px; font-size:10px; color:var(--muted); }
.iris-btb-app .legend { display:inline-block; width:24px; height:3px; margin-right:7px; vertical-align:middle; }
.iris-btb-app .legend.baseline { background:#a69fa8; }
.iris-btb-app .legend.selected { background:var(--rose); }
.iris-btb-app .table-wrap { margin-top:16px; overflow:auto; border:1px solid var(--line); border-radius:14px; background:#fff; }
.iris-btb-app table { width:100%; border-collapse:collapse; min-width:680px; font-size:12px; }
.iris-btb-app caption { padding:14px 18px; text-align:left; font-weight:800; color:var(--plum); }
.iris-btb-app th,.iris-btb-app td { padding:12px 18px; border-top:1px solid var(--line); text-align:left; }
.iris-btb-app thead th { background:#f6f1ec; font-size:10px; text-transform:uppercase; letter-spacing:.06em; }
.iris-btb-app .assumption-note { margin:14px 4px 0; font-size:11px; color:var(--muted); }

.iris-btb-app .tool-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.iris-btb-app .tool-card { padding:25px; }
.iris-btb-app .tool-card h3 { margin:20px 0 8px; font-family:var(--font-display),serif; font-size:26px; font-weight:600; line-height:1; }
.iris-btb-app .tool-card p,.iris-btb-app .tool-card li { font-size:12px; color:var(--muted); }
.iris-btb-app .tool-card ul { padding-left:18px; }
.iris-btb-app .tag-cloud { display:flex; flex-wrap:wrap; gap:7px; margin-top:22px; }
.iris-btb-app .tag-cloud span { padding:6px 9px; border-radius:999px; background:var(--lavender); font-size:10px; }
.iris-btb-app .word-bars { display:grid; gap:7px; margin-top:20px; }
.iris-btb-app .word-bars span { padding:5px 8px; border-radius:5px; background:linear-gradient(90deg,#e3d8f4,#f1e4e8); font-size:9px; white-space:nowrap; }
.iris-btb-app .lesson-strip { margin-top:14px; padding:25px 30px; display:grid; grid-template-columns:.8fr 1.2fr; gap:30px; align-items:center; border:1px solid #c9d5c2; border-radius:20px; background:linear-gradient(115deg,#edf3e9,#fffaf3); }
.iris-btb-app .lesson-strip h3 { margin:0; font-family:var(--font-display),serif; font-size:30px; font-weight:600; line-height:1; }
.iris-btb-app .lesson-strip>p { margin:0; font-size:13px; color:var(--muted); }

.iris-btb-app .library-paths { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin:28px 0 16px; }
.iris-btb-app .library-paths button { min-height:140px; padding:22px; text-align:left; border:1px solid var(--line); border-radius:18px; background:#fffdfa; }
.iris-btb-app .library-paths button[aria-selected="true"] { background:linear-gradient(140deg,#f6e8ee,#f2edf9); border-color:#b998a8; box-shadow:0 10px 28px rgba(84,58,72,.08); }
.iris-btb-app .library-paths span,.iris-btb-app .library-paths small { display:block; }
.iris-btb-app .library-paths span { font-family:var(--font-display),serif; font-size:25px; font-weight:600; line-height:1; }
.iris-btb-app .library-paths small { margin-top:11px; color:var(--muted); font-size:11px; }
.iris-btb-app .learning-guide { display:grid; grid-template-columns:1fr 1.25fr auto; gap:24px; align-items:center; padding:24px 28px; border-radius:18px; background:linear-gradient(100deg,#edf3e9,#fffaf3); border:1px solid #cdd9c6; }
.iris-btb-app .learning-guide h3 { margin:0; font-family:var(--font-display),serif; font-size:28px; font-weight:600; line-height:1; }
.iris-btb-app .learning-guide p:not(.kicker) { margin:8px 0 0; color:var(--muted); font-size:11px; }
.iris-btb-app .learning-steps { display:flex; gap:6px; flex-wrap:wrap; }
.iris-btb-app .learning-steps span { padding:7px 10px; border-radius:999px; background:rgba(255,255,255,.65); font-size:9px; }
.iris-btb-app .learning-steps span.active { background:var(--plum); color:white; }
.iris-btb-app .resource-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:16px; }
.iris-btb-app .resource-card { padding:24px; border:1px solid var(--line); border-radius:18px; background:#fffdfa; }
.iris-btb-app .resource-top { display:flex; justify-content:space-between; gap:10px; color:var(--rose); font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.05em; }
.iris-btb-app .resource-card h3 { margin:20px 0 3px; font-family:var(--font-display),serif; font-size:28px; font-weight:600; line-height:1; }
.iris-btb-app .resource-creator { margin:0 0 18px; color:var(--muted); font-size:10px; }
.iris-btb-app .resource-card dl { margin:0; display:grid; gap:11px; }
.iris-btb-app .resource-card dl div { padding-top:10px; border-top:1px solid #eee5de; }
.iris-btb-app .resource-card dt { color:var(--rose); font-size:8px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.iris-btb-app .resource-card dd { margin:3px 0 0; font-size:11px; color:var(--muted); }
.iris-btb-app .resource-card label { display:grid; gap:6px; margin-top:18px; font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.05em; }
.iris-btb-app .library-note { margin:13px 0 0; color:var(--muted); font-size:10px; }

.iris-btb-app .reflection-card { display:grid; grid-template-columns:.8fr 1.2fr; gap:20px; padding:clamp(28px,5vw,60px); background:linear-gradient(125deg,#f7e8ed,#ece5fd); border-radius:28px; position:relative; overflow:hidden; }
.iris-btb-app .reflection-card:after { content:"B"; position:absolute; right:-20px; top:-70px; color:rgba(255,255,255,.35); font-family:var(--font-display),serif; font-size:240px; font-weight:600; }
.iris-btb-app .reflection-copy,.iris-btb-app .journal-card { position:relative; z-index:1; }
.iris-btb-app .reflection-copy p { max-width:450px; color:var(--muted); }
.iris-btb-app .journal-disclaimer { font-size:11px; }
.iris-btb-app .journal-card { padding:24px; background:rgba(255,253,249,.9); border:1px solid rgba(255,255,255,.8); border-radius:20px; }
.iris-btb-app .journal-card label span,.iris-btb-app .journal-card label strong { display:block; }
.iris-btb-app .journal-card label span { font-size:10px; text-transform:uppercase; letter-spacing:.1em; color:var(--rose); font-weight:800; }
.iris-btb-app .journal-card label strong { margin:6px 0 14px; font-family:var(--font-display),serif; font-size:23px; font-weight:600; line-height:1.1; }
.iris-btb-app .journal-card>p { margin:8px 0 0; font-size:9px; color:var(--muted); }
.iris-btb-app .reflection-actions { margin-top:12px; display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.iris-btb-app .reflection-actions .button { min-height:42px; padding:9px 15px; }
.iris-btb-app .reflection-history { margin-top:14px; padding-top:12px; border-top:1px solid var(--line); }
.iris-btb-app .reflection-history summary { font-size:10px; font-weight:850; color:var(--rose); }
.iris-btb-app .reflection-history article { padding:12px 0; border-bottom:1px solid var(--line); }
.iris-btb-app .reflection-history time,.iris-btb-app .reflection-history strong { display:block; }
.iris-btb-app .reflection-history time { color:var(--muted); font-size:9px; }
.iris-btb-app .reflection-history strong { margin:3px 0; font-family:var(--font-display),serif; font-size:17px; }
.iris-btb-app .reflection-history p { margin:0; font-size:10px; color:var(--muted); }

.iris-btb-app .data-section { display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center; }
.iris-btb-app .data-section h2 { margin:0; font-family:var(--font-display),serif; font-size:42px; font-weight:600; line-height:1; }
.iris-btb-app .data-section p { color:var(--muted); font-size:13px; }
.iris-btb-app .data-actions { display:flex; flex-wrap:wrap; align-items:center; gap:9px; }
.iris-btb-app .import-data-label { cursor:pointer; }
.iris-btb-app .text-button { min-height:44px; padding:9px 12px; border:0; background:transparent; text-decoration:underline; font-size:11px; }
.iris-btb-app .text-button.danger { color:#8c3442; }

.iris-btb-app footer { background:#342b35; color:#f8f0ec; padding:36px max(24px,5vw); display:grid; grid-template-columns:1fr 2fr 1fr; gap:30px; align-items:center; }
.iris-btb-app footer strong,.iris-btb-app footer span { display:block; }
.iris-btb-app footer strong { font-family:var(--font-display),serif; font-size:28px; font-weight:600; }
.iris-btb-app footer span,.iris-btb-app footer p,.iris-btb-app footer a { font-size:10px; color:#cfc3cc; }
.iris-btb-app footer p { margin:0; }
.iris-btb-app footer>div:last-child { display:flex; justify-content:flex-end; gap:14px; flex-wrap:wrap; }

@media (max-width:1100px) {
  .iris-btb-app .site-header nav { display:none; }
  .iris-btb-app .site-header .button { margin-left:auto; }
  .iris-btb-app .hero { grid-template-columns:1fr 1fr; }
  .iris-btb-app .hero-copy { padding:70px 36px; }
  .iris-btb-app .metric-grid { grid-template-columns:1fr 1fr; }
  .iris-btb-app .today-grid { grid-template-columns:1fr 1fr; }
  .iris-btb-app .calm-card { grid-column:span 2; }
  .iris-btb-app .payment-layout { grid-template-columns:1fr; }
  .iris-btb-app .tool-grid { grid-template-columns:1fr 1fr; }
  .iris-btb-app .tool-card:last-child { grid-column:span 2; }
  .iris-btb-app .resource-grid { grid-template-columns:1fr 1fr; }
}

@media (max-width:900px) {
  .iris-btb-app .mobile-section-nav { position:sticky; top:calc(var(--btb-admin-bar-height) + var(--btb-site-header-height)); z-index:49; min-height:49px; padding:5px 14px; display:flex; align-items:center; gap:7px; overflow-x:auto; border-bottom:1px solid var(--line); background:rgba(255,253,249,.96); backdrop-filter:blur(14px); scrollbar-width:none; }
  .iris-btb-app .mobile-section-nav a { min-height:44px; padding:11px 12px; flex:0 0 auto; border-radius:999px; font-size:10px; font-weight:800; }
  .iris-btb-app .mobile-section-nav a.active { background:var(--plum); color:white; }
  .iris-btb-app { scroll-padding-top:0; }
  .iris-btb-app .site-header { height:64px; padding:0 16px; }
  .iris-btb-app .brand { font-size:20px; }
  .iris-btb-app .brand-orbit { width:36px; height:36px; }
  .iris-btb-app .brand-orbit:after { width:46px; height:18px; }
  .iris-btb-app .site-header .button { display:none; }
  .iris-btb-app .hero { grid-template-columns:1fr; }
  .iris-btb-app .hero-copy { padding:60px 22px 40px; }
  .iris-btb-app .hero-scene { min-height:420px; }
  .iris-btb-app .hero-note { top:26px; right:18px; }
  .iris-btb-app .mode-wrap { margin:-24px 16px 26px; border-radius:20px; flex-direction:column; align-items:stretch; gap:8px; }
  .iris-btb-app .segmented { width:100%; }
  .iris-btb-app .segmented button { flex:1; padding:8px 12px; }
  .iris-btb-app .mode-wrap p { text-align:center; margin:0 8px 4px; }
  .iris-btb-app .content-shell { display:block; padding:0 16px 50px; }
  .iris-btb-app .side-nav { display:none; }
  .iris-btb-app .section { padding:28px 0 58px; }
  .iris-btb-app .section-heading { align-items:flex-start; flex-direction:column; gap:12px; }
  .iris-btb-app .section-heading.compact { align-items:flex-start; }
  .iris-btb-app .application-row { grid-template-columns:44px 1fr; }
  .iris-btb-app .application-outcome { grid-column:2; }
  .iris-btb-app .journey-stats { grid-template-columns:1fr 1fr; }
  .iris-btb-app .tracker-form { grid-template-columns:1fr 1fr; }
  .iris-btb-app .tracker-form label:first-child { grid-column:span 2; }
  .iris-btb-app .tracker-form .button { width:100%; }
  .iris-btb-app .chart-title,.iris-btb-app .lesson-strip,.iris-btb-app .reflection-card,.iris-btb-app .data-section { grid-template-columns:1fr; }
  .iris-btb-app .tool-grid { grid-template-columns:1fr; }
  .iris-btb-app .tool-card:last-child { grid-column:auto; }
  .iris-btb-app .planner-promo { grid-template-columns:1fr; background:linear-gradient(180deg,#fffdfa 0 48%,#f3e7ee 48% 100%); }
  .iris-btb-app .library-paths { grid-template-columns:1fr; }
  .iris-btb-app .library-paths button { min-height:auto; }
  .iris-btb-app .learning-guide { grid-template-columns:1fr; }
  .iris-btb-app .resource-grid { grid-template-columns:1fr; }
  .iris-btb-app .loan-anatomy { grid-template-columns:1fr; gap:7px; }
  .iris-btb-app .loan-anatomy>b { transform:rotate(90deg); justify-self:start; }
  .iris-btb-app .suggestion-inputs { grid-template-columns:1fr; }
  .iris-btb-app footer { grid-template-columns:1fr; text-align:center; }
  .iris-btb-app footer>div:last-child { justify-content:center; }
}

@media (max-width:520px) {
  .iris-btb-app { overflow-x:clip; }
  .iris-btb-app h1 { font-size:49px; }
  .iris-btb-app .hero-dek { font-size:15px; }
  .iris-btb-app .script-line { font-size:21px; }
  .iris-btb-app .hero-actions .button { width:100%; }
  .iris-btb-app .hero-scene { min-height:360px; }
  .iris-btb-app .hero-note { font-size:17px; }
  .iris-btb-app .hero-stat { left:18px; bottom:24px; }
  .iris-btb-app .metric-grid,.iris-btb-app .today-grid { grid-template-columns:1fr; }
  .iris-btb-app .calm-card { grid-column:auto; }
  .iris-btb-app .metric { min-height:128px; }
  .iris-btb-app .today-grid .card { min-height:auto; }
  .iris-btb-app .journey-stats { gap:7px; }
  .iris-btb-app .journey-stats div { padding:14px; display:block; }
  .iris-btb-app .journey-stats span,.iris-btb-app .journey-stats strong { display:block; }
  .iris-btb-app .filter-row { flex-wrap:nowrap; overflow-x:auto; padding:3px 3px 10px; margin-inline:-3px; scrollbar-width:thin; }
  .iris-btb-app .filter-row button { flex:0 0 auto; }
  .iris-btb-app .application-list { border-radius:15px; }
  .iris-btb-app .application-row { padding:17px 14px; gap:10px; }
  .iris-btb-app .application-main h3 { font-size:20px; overflow-wrap:anywhere; }
  .iris-btb-app .application-outcome strong { overflow-wrap:anywhere; }
  .iris-btb-app .tracker-form { grid-template-columns:1fr; padding:16px; }
  .iris-btb-app .tracker-form label:first-child { grid-column:auto; }
  .iris-btb-app .custom-items article { grid-template-columns:1fr 42px; }
  .iris-btb-app .custom-items select { grid-row:2; grid-column:1/-1; }
  .iris-btb-app .payment-layout { display:block; }
  .iris-btb-app .payment-controls { padding:18px; }
  .iris-btb-app .field-grid { grid-template-columns:1fr; }
  .iris-btb-app .slider-label strong { font-size:33px; }
  .iris-btb-app .interpretation-card { grid-template-columns:94px 1fr; padding:17px; gap:13px; }
  .iris-btb-app .ring { width:90px; }
  .iris-btb-app .interpretation-card h3 { font-size:24px; }
  .iris-btb-app .result-grid { grid-template-columns:1fr 1fr; }
  .iris-btb-app .result-grid article { min-height:105px; }
  .iris-btb-app .chart-card { padding:16px; }
  .iris-btb-app .loan-chart { margin-inline:-8px; }
  .iris-btb-app .table-wrap { margin-right:0; }
  .iris-btb-app .reflection-card { padding:24px 16px; }
  .iris-built-to-bloom-page .explain-popover { max-height:calc(100dvh - 32px); overflow:auto; }
  .iris-btb-app .reflection-actions .button,.iris-btb-app .reflection-actions .text-link { width:100%; }
  .iris-btb-app .planner-promo { padding:34px 18px; gap:28px; }
  .iris-btb-app .mini-planner { min-height:260px; padding:28px 12px 14px; gap:5px; }
  .iris-btb-app .data-actions .button { width:100%; }
}

.iris-btb-app /* Built to Bloom Academic Planner */
.planner-shell { min-height:100vh; background:radial-gradient(circle at 82% 8%,rgba(233,226,255,.72),transparent 28%),linear-gradient(145deg,#fffaf3 0%,#fffdf9 46%,#f8eef1 100%); }
.iris-btb-app .planner-shell .nav-current { color:var(--rose); border-color:var(--rose); }
.iris-btb-app .onboarding-shell { padding-bottom:70px; }
.iris-btb-app .planner-onboarding { width:min(960px,calc(100% - 36px)); margin:clamp(34px,7vw,90px) auto 0; padding:clamp(28px,6vw,70px); border:1px solid var(--line); border-radius:30px; background:rgba(255,253,249,.9); box-shadow:var(--shadow); position:relative; overflow:hidden; }
.iris-btb-app .planner-onboarding:after { content:""; position:absolute; right:-70px; top:-90px; width:260px; height:260px; border:42px double rgba(170,98,125,.12); border-radius:45% 55% 60% 40%; transform:rotate(24deg); pointer-events:none; }
.iris-btb-app .planner-onboarding h1,.iris-btb-app .planner-top h1 { font-size:clamp(48px,6vw,78px); }
.iris-btb-app .onboarding-dek { max-width:640px; margin:20px 0 34px; color:var(--muted); font-size:17px; }
.iris-btb-app .back-link { min-height:44px; display:inline-flex; align-items:center; color:var(--rose); font-size:13px; font-weight:800; }
.iris-btb-app .setup-steps { display:grid; grid-template-columns:1fr 1fr; gap:14px; position:relative; z-index:1; }
.iris-btb-app .setup-steps fieldset { min-width:0; margin:0; padding:20px; border:1px solid var(--line); border-radius:17px; background:#fff; }
.iris-btb-app .setup-steps legend { padding:0 6px; font-family:var(--font-display),serif; font-size:21px; font-weight:600; }
.iris-btb-app .setup-steps legend span { width:26px; height:26px; display:inline-grid; place-items:center; margin-right:8px; border-radius:50%; background:var(--blush); font-family:var(--font-body),sans-serif; font-size:11px; }
.iris-btb-app .setup-steps label { min-height:44px; display:flex; align-items:center; gap:10px; font-size:13px; }
.iris-btb-app .setup-steps input[type="radio"] { width:18px; min-height:18px; accent-color:var(--rose); }
.iris-btb-app .custom-days { display:flex; flex-wrap:wrap; gap:6px; margin-top:10px; padding:12px; border:1px solid var(--line); border-radius:12px; }
.iris-btb-app .custom-days legend { padding:0 6px; font-size:10px; font-family:var(--font-body),sans-serif; font-weight:800; }
.iris-btb-app .custom-days label { min-height:44px; padding:5px 8px; display:flex; align-items:center; gap:8px; font-size:10px; }
.iris-btb-app .custom-days input { width:20px!important; min-height:20px!important; accent-color:var(--rose); }
.iris-btb-app .choice-row { display:flex; flex-wrap:wrap; gap:8px; }
.iris-btb-app .choice-row button { min-height:44px; padding:8px 14px; border:1px solid var(--line); border-radius:999px; background:#fff; }
.iris-btb-app .choice-row button.selected { background:var(--plum); color:white; border-color:var(--plum); }
.iris-btb-app .onboarding-actions { margin-top:24px; display:flex; gap:14px; align-items:center; flex-wrap:wrap; }

.iris-btb-app .planner-top { max-width:1780px; margin:0 auto; padding:32px clamp(18px,3vw,48px) 22px; display:flex; align-items:end; justify-content:space-between; gap:24px; }
.iris-btb-app .planner-top .kicker { margin-top:14px; }
.iris-btb-app .save-state { min-width:190px; padding:13px 16px; border:1px solid var(--line); border-radius:14px; background:rgba(255,253,249,.82); text-align:right; }
.iris-btb-app .save-state span,.iris-btb-app .save-state small { display:block; }
.iris-btb-app .save-state span { font-family:var(--font-display),serif; font-size:22px; font-weight:600; }
.iris-btb-app .save-state small { color:var(--muted); font-size:10px; }
.iris-btb-app .planner-toolbar { position:sticky; top:76px; z-index:40; min-height:62px; padding:8px clamp(18px,3vw,48px); display:flex; align-items:center; gap:7px; overflow-x:auto; background:rgba(255,250,243,.94); border-block:1px solid var(--line); backdrop-filter:blur(16px); scrollbar-width:thin; }
.iris-btb-app .planner-toolbar>button,.iris-btb-app .view-switch button,.iris-btb-app .mobile-day-switch button { min-height:44px; flex:0 0 auto; padding:9px 14px; border:1px solid var(--line); border-radius:999px; background:#fff; font-size:11px; font-weight:800; }
.iris-btb-app .view-switch { padding:3px; display:flex; gap:3px; border-radius:999px; background:#eee7e2; }
.iris-btb-app .view-switch button { min-height:40px; border:0; background:transparent; }
.iris-btb-app .view-switch button[aria-pressed="true"] { background:var(--plum); color:white; }
.iris-btb-app .mobile-day-switch { display:none; }
.iris-btb-app .planner-workspace { max-width:1780px; margin:0 auto; padding:20px clamp(16px,2.5vw,42px) 70px; display:grid; grid-template-columns:175px minmax(640px,1fr) 260px; gap:18px; align-items:start; }
.iris-btb-app .planner-rail { position:sticky; top:158px; display:grid; gap:6px; }
.iris-btb-app .planner-rail button { min-height:44px; padding:10px 12px; border:1px solid transparent; border-radius:10px; background:transparent; text-align:left; font-size:11px; font-weight:750; }
.iris-btb-app .planner-rail button:hover { background:#fff; border-color:var(--line); }
.iris-btb-app .planner-rail .rail-primary { background:var(--plum); color:white; text-align:center; }
.iris-btb-app .planner-rail p { margin:15px 4px 0; color:var(--muted); font-size:9px; line-height:1.45; }
.iris-btb-app .rail-divider { height:1px; margin:9px 0; background:var(--line); }
.iris-btb-app .planner-main { min-width:0; }
.iris-btb-app .planner-panel { margin-bottom:16px; padding:24px; border:1px solid var(--line); border-radius:20px; background:rgba(255,253,249,.97); box-shadow:0 16px 40px rgba(75,52,63,.1); }
.iris-btb-app .layout-presets { display:flex; flex-wrap:wrap; gap:8px; }
.iris-btb-app .layout-presets button { min-height:44px; padding:9px 14px; border:1px solid var(--line); border-radius:999px; background:#fff; font-size:11px; font-weight:800; }
.iris-btb-app .layout-panel>p,.iris-btb-app .suggestion-note { color:var(--muted); font-size:10px; }
.iris-btb-app .suggestion-inputs { display:grid; grid-template-columns:1fr 160px auto; gap:10px; align-items:end; }
.iris-btb-app .suggestion-inputs label { display:grid; gap:5px; font-size:10px; font-weight:800; }
.iris-btb-app .possible-time { margin-top:18px; padding:22px; border:1px solid #cbd8c4; border-radius:17px; background:linear-gradient(145deg,#edf3e9,#fffdfa); }
.iris-btb-app .possible-time>p { margin:0; color:var(--rose); font-size:9px; font-weight:850; text-transform:uppercase; letter-spacing:.1em; }
.iris-btb-app .possible-time h3 { margin:6px 0 18px; font-family:var(--font-display),serif; font-size:31px; font-weight:600; line-height:1.05; }
.iris-btb-app .possible-time>strong,.iris-btb-app .possible-time>span { display:block; }
.iris-btb-app .possible-time>strong { font-size:10px; }
.iris-btb-app .possible-time>span { margin-top:3px; color:var(--muted); font-size:11px; }
.iris-btb-app .possible-time>div { margin-top:18px; display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.iris-btb-app .panel-heading { display:flex; justify-content:space-between; align-items:start; gap:18px; margin-bottom:20px; }
.iris-btb-app .panel-heading h2,.iris-btb-app .semester-view h2 { margin:0; font-family:var(--font-display),serif; font-size:34px; font-weight:600; line-height:1; }
.iris-btb-app .panel-heading>button { width:44px; height:44px; border:1px solid var(--line); border-radius:50%; background:#fff; font-size:24px; }
.iris-btb-app .template-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; }
.iris-btb-app .template-grid button { min-height:120px; padding:18px; border:1px solid var(--line); border-radius:14px; background:linear-gradient(145deg,#fff,#faf0f4); text-align:left; }
.iris-btb-app .template-grid button:first-child { background:linear-gradient(145deg,#fff,#eef3eb); }
.iris-btb-app .template-grid button:hover { border-color:#b996a8; transform:translateY(-1px); }
.iris-btb-app .template-grid strong,.iris-btb-app .template-grid span { display:block; }
.iris-btb-app .template-grid strong { font-family:var(--font-display),serif; font-size:21px; line-height:1; }
.iris-btb-app .template-grid span { margin-top:9px; color:var(--muted); font-size:10px; }
.iris-btb-app .quick-panel form,.iris-btb-app .add-category { display:grid; gap:12px; }
.iris-btb-app .quick-panel label,.iris-btb-app .add-category label,.iris-btb-app .semester-panel label { display:grid; gap:5px; font-size:10px; font-weight:800; }
.iris-btb-app .quick-panel textarea { min-height:76px; resize:vertical; }
.iris-btb-app .recurrence-field { margin:4px 0 0; padding:14px; display:flex; flex-wrap:wrap; gap:8px 18px; border:1px solid var(--line); border-radius:14px; }
.iris-btb-app .recurrence-field legend { padding:0 6px; font-size:11px; font-weight:850; }
.iris-btb-app .recurrence-field>label { min-height:44px; padding:5px 8px; display:flex; grid-auto-flow:column; justify-content:start; align-items:center; gap:9px; }
.iris-btb-app .recurrence-field input { width:20px; min-height:20px; accent-color:var(--rose); }
.iris-btb-app .recurrence-days { width:100%; padding-top:10px; display:grid; grid-template-columns:repeat(auto-fit,minmax(110px,1fr)); gap:6px; border-top:1px solid var(--line); }
.iris-btb-app .recurrence-days p,.iris-btb-app .recurrence-days small,.iris-btb-app .recurrence-confirm { grid-column:1/-1; }
.iris-btb-app .recurrence-days p,.iris-btb-app .recurrence-days small { margin:0; color:var(--muted); font-size:10px; line-height:1.5; }
.iris-btb-app .recurrence-days label { min-height:44px; padding:5px 8px; display:flex; grid-auto-flow:column; justify-content:start; align-items:center; gap:9px; }
.iris-btb-app .recurrence-confirm { margin-top:6px; padding:9px 11px; border-radius:10px; background:var(--sage); }
.iris-btb-app .editor-actions { display:flex; flex-wrap:wrap; gap:8px; }
.iris-btb-app .editor-actions .button { min-height:44px; }
.iris-btb-app .form-row { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.iris-btb-app .category-list { display:grid; gap:7px; margin-bottom:18px; }
.iris-btb-app .category-list article { display:grid; grid-template-columns:42px minmax(120px,1fr) 54px 92px 72px 42px; gap:8px; align-items:center; }
.iris-btb-app .category-list input,.iris-btb-app .category-list select,.iris-btb-app .category-list button { min-height:42px; }
.iris-btb-app .category-list button { border:1px solid var(--line); border-radius:9px; background:#fff; font-size:10px; }
.iris-btb-app .category-swatch { width:42px; height:42px; display:grid; place-items:center; border-radius:12px; font-size:18px; }
.iris-btb-app .add-category { grid-template-columns:minmax(150px,1fr) 88px 110px 140px auto; align-items:end; padding-top:18px; border-top:1px solid var(--line); }
.iris-btb-app .category-preview { min-height:44px; padding:11px; border-radius:10px; font-size:11px; }
.iris-btb-app .week-heading { margin-bottom:11px; display:flex; align-items:end; justify-content:space-between; gap:18px; }
.iris-btb-app .week-heading input { padding:0; border:0; background:transparent; min-height:40px; font-family:var(--font-display),serif; font-size:35px; font-weight:600; }
.iris-btb-app .week-heading p { margin:0; color:var(--muted); font-size:10px; }
.iris-btb-app .workload-pill { max-width:290px; padding:10px 14px; border:1px solid #c9d7c1; border-radius:14px; background:#edf3e9; text-align:right; }
.iris-btb-app .workload-pill span,.iris-btb-app .workload-pill small { display:block; }
.iris-btb-app .workload-pill span { font-weight:850; }
.iris-btb-app .workload-pill small { color:var(--muted); font-size:9px; }
.iris-btb-app .week-grid { display:grid; grid-template-columns:repeat(var(--days,5),minmax(118px,1fr)); gap:7px; }
.iris-btb-app .week-grid.days-1 { --days:1; }
.iris-btb-app .week-grid.days-5 { --days:5; }
.iris-btb-app .week-grid.days-7 { --days:7; }
.iris-btb-app .day-column { min-width:0; min-height:650px; border:1px solid var(--line); border-radius:16px; background:rgba(255,253,249,.82); overflow:hidden; }
.iris-btb-app .day-column>header { min-height:67px; padding:11px; display:grid; grid-template-columns:1fr auto; align-items:center; border-bottom:1px solid var(--line); background:linear-gradient(#fff,#faf5f1); }
.iris-btb-app .day-column>header span { display:none; }
.iris-btb-app .day-column>header strong { font-family:var(--font-display),serif; font-size:17px; font-weight:650; }
.iris-btb-app .day-column>header button { width:35px; height:35px; border:1px solid var(--line); border-radius:50%; background:#fff; }
.iris-btb-app .day-blocks { min-height:580px; padding:7px; display:grid; align-content:start; gap:7px; }
.iris-btb-app .schedule-block { min-width:0; padding:11px; border-radius:11px; box-shadow:inset 0 0 0 1px rgba(55,45,54,.08); cursor:grab; }
.iris-btb-app .schedule-block:active { cursor:grabbing; }
.iris-btb-app .schedule-block h3 { margin:5px 0 1px; font-family:var(--font-body),sans-serif; font-size:12px; font-weight:850; line-height:1.2; overflow-wrap:anywhere; }
.iris-btb-app .schedule-block h3 span { margin-right:5px; }
.iris-btb-app .schedule-block small,.iris-btb-app .block-time { display:block; font-size:8px; opacity:.76; }
.iris-btb-app .block-actions { margin-top:9px; display:flex; flex-wrap:wrap; gap:8px; }
.iris-btb-app .block-actions button { min-height:44px; min-width:44px; padding:7px 10px; border:1px solid rgba(55,45,54,.18); border-radius:7px; background:rgba(255,255,255,.52); font-size:9px; }
.iris-btb-app .block-actions .danger { border-color:rgba(132,49,63,.35); }
.iris-btb-app .empty-day { width:100%; min-height:96px; padding:12px; border:1px dashed #d3c5c0; border-radius:11px; background:transparent; color:var(--muted); font-size:11px; }
.iris-btb-app .empty-day span { font-size:8px; }
.iris-btb-app .planner-modules { position:sticky; top:158px; display:grid; gap:12px; }
.iris-btb-app .planner-modules>section { padding:17px; border:1px solid var(--line); border-radius:16px; background:rgba(255,253,249,.9); }
.iris-btb-app .planner-modules label { display:grid; grid-template-columns:24px 1fr; align-items:center; gap:7px; margin-bottom:7px; }
.iris-btb-app .planner-modules label span { width:24px; height:24px; display:grid; place-items:center; border-radius:50%; background:var(--blush); font-size:9px; }
.iris-btb-app .planner-modules input { min-height:40px; padding:7px 8px; font-size:10px; }
.iris-btb-app .inbox-module form { display:grid; grid-template-columns:1fr 38px; gap:6px; }
.iris-btb-app .inbox-module form button { border:0; border-radius:9px; background:var(--plum); color:white; }
.iris-btb-app .inbox-module>div { display:grid; grid-template-columns:1fr auto auto; gap:4px; align-items:center; padding:7px 0; border-bottom:1px solid var(--line); font-size:9px; }
.iris-btb-app .inbox-module>div button,.iris-btb-app .gentle-tools button { min-height:32px; border:1px solid var(--line); border-radius:8px; background:#fff; font-size:8px; }
.iris-btb-app .gentle-tools { background:linear-gradient(145deg,#f7eef2,#f1ecfb)!important; }
.iris-btb-app .gentle-tools button { width:100%; margin-bottom:6px; }
.iris-btb-app .gentle-tools p:last-child,.iris-btb-app .semester-panel>p { color:var(--muted); font-size:9px; }
.iris-btb-app .planner-next-step { background:#f7faf4!important; }
.iris-btb-app .planner-next-step h2 { margin:2px 0 8px; font-family:var(--font-display),serif; font-size:22px; line-height:1; }
.iris-btb-app .planner-next-step p { margin:0 0 10px; color:var(--muted); font-size:10px; }
.iris-btb-app .planner-next-step a { display:inline-flex; min-height:44px; align-items:center; font-size:10px; }
.iris-btb-app .site-header nav a { min-height:44px; display:inline-flex; align-items:center; }
.iris-btb-app .semester-view { padding:30px; border:1px solid var(--line); border-radius:22px; background:rgba(255,253,249,.88); }
.iris-btb-app .semester-view>div:first-child { margin-bottom:24px; }
.iris-btb-app .semester-view>div:first-child p:last-child { color:var(--muted); }
.iris-btb-app .semester-months { display:grid; grid-template-columns:repeat(5,1fr); gap:9px; }
.iris-btb-app .semester-months section { min-height:220px; padding:14px; border:1px solid var(--line); border-radius:14px; background:#fff; }
.iris-btb-app .semester-months h3 { margin:0 0 14px; font-family:var(--font-display),serif; font-size:18px; }
.iris-btb-app .semester-months span { display:block; margin:6px 0; padding:7px; border-radius:8px; background:var(--lavender); font-size:9px; }
.iris-btb-app .focus-mode .planner-rail,.iris-btb-app .focus-mode .planner-modules { opacity:.18; pointer-events:none; }
.iris-btb-app .essentials-mode .planner-modules,.iris-btb-app .essentials-mode .planner-rail button:not(.rail-primary) { display:none; }

@media (max-width:1240px) {
  .iris-btb-app .bloom-editorial-shell { grid-template-columns:142px minmax(0,1fr); }
  .iris-btb-app .vine-navigation { padding-inline:16px; }
  .iris-btb-app .vine-line { left:42px; }
  .iris-btb-app .vine-stop { gap:10px; font-size:17px; }
  .iris-btb-app .bloom-editorial-shell .hub-showcase { grid-template-columns:minmax(190px,.55fr) minmax(390px,1.45fr) minmax(210px,.7fr); }
  .iris-btb-app .bloom-editorial-shell .reflection-paper { grid-column:1/4; }
  .iris-btb-app .bloom-editorial-shell { grid-template-columns:142px minmax(0,1fr); }
  .iris-btb-app .vine-navigation { padding-inline:16px; }
  .iris-btb-app .vine-line { left:42px; }
  .iris-btb-app .vine-stop { gap:10px; font-size:17px; }
  .iris-btb-app .bloom-editorial-shell .hub-showcase { grid-template-columns:minmax(190px,.55fr) minmax(390px,1.45fr) minmax(210px,.7fr); }
  .iris-btb-app .bloom-editorial-shell .reflection-paper { grid-column:1/4; }
  .iris-btb-app .planner-workspace { grid-template-columns:150px minmax(0,1fr); }
  .iris-btb-app .planner-modules { position:static; grid-column:1/-1; grid-template-columns:repeat(3,1fr); }
  .iris-btb-app .day-column { min-height:560px; }
  .iris-btb-app .day-blocks { min-height:490px; }
  .iris-btb-app .day-column>header strong { display:none; }
  .iris-btb-app .day-column>header span { display:block; font-family:var(--font-display),serif; font-size:17px; font-weight:650; }
}

@media (max-width:900px) {
  .iris-btb-app { --btb-route-nav-height:49px; --btb-rail-nav-height:76px; }
  .iris-btb-app .bloom-editorial-shell { display:block; border-inline:0; }
  .iris-btb-app .vine-navigation { position:relative; top:auto; height:auto; min-height:0; padding:10px 18px; display:flex; flex-direction:row; align-items:center; gap:4px; overflow-x:auto; border-right:0; border-bottom:1px solid var(--line); }
  .iris-btb-app .bloom-lockup { min-width:130px; min-height:56px; display:flex; align-items:center; justify-items:start; gap:6px; text-align:left; }
  .iris-btb-app .bloom-lockup img { width:52px; height:52px; }
  .iris-btb-app .bloom-lockup strong { margin:0; font-size:13px; }
  .iris-btb-app .bloom-lockup span,.iris-btb-app .vine-line { display:none; }
  .iris-btb-app .vine-stop { min-width:82px; min-height:52px; gap:5px; justify-content:center; font-size:15px; }
  .iris-btb-app .vine-stop>span { width:26px; height:26px; flex-basis:26px; }
  .iris-btb-app .vine-stop>span:before { inset:6px 8px; }
  .iris-btb-app .vine-stop>span:after { left:12px; top:18px; height:12px; }
  .iris-btb-app .bloom-editorial-shell .hub-showcase { grid-template-columns:1fr; }
  .iris-btb-app .bloom-editorial-shell .planner-intro,.iris-btb-app .bloom-editorial-shell .planner-live-preview,.iris-btb-app .bloom-editorial-shell .showcase-calendar,.iris-btb-app .bloom-editorial-shell .reflection-paper { grid-column:1; }
  .iris-btb-app .bloom-editorial-shell { display:block; border-inline:0; }
  .iris-btb-app .vine-navigation { position:relative; top:auto; height:auto; min-height:0; padding:10px 18px; display:flex; flex-direction:row; align-items:center; gap:4px; overflow-x:auto; border-right:0; border-bottom:1px solid var(--line); }
  .iris-btb-app .bloom-lockup { min-width:130px; min-height:56px; display:flex; align-items:center; justify-items:start; gap:6px; text-align:left; }
  .iris-btb-app .bloom-lockup img { width:52px; height:52px; }
  .iris-btb-app .bloom-lockup strong { margin:0; font-size:13px; }
  .iris-btb-app .bloom-lockup span,.iris-btb-app .vine-line { display:none; }
  .iris-btb-app .vine-stop { min-width:82px; min-height:52px; gap:5px; justify-content:center; font-size:15px; }
  .iris-btb-app .vine-stop>span { width:26px; height:26px; flex-basis:26px; }
  .iris-btb-app .vine-stop>span:before { inset:6px 8px; }
  .iris-btb-app .vine-stop>span:after { left:12px; top:18px; height:12px; }
  .iris-btb-app .bloom-editorial-shell .hub-showcase { grid-template-columns:1fr; }
  .iris-btb-app .bloom-editorial-shell .planner-intro,.iris-btb-app .bloom-editorial-shell .planner-live-preview,.iris-btb-app .bloom-editorial-shell .showcase-calendar,.iris-btb-app .bloom-editorial-shell .reflection-paper { grid-column:1; }
  .iris-btb-app .planner-top { align-items:start; }
  .iris-btb-app .save-state { display:none; }
  .iris-btb-app .planner-toolbar { top:113px; }
  .iris-btb-app .planner-workspace { display:block; padding-inline:14px; }
  .iris-btb-app .planner-rail { position:static; display:flex; gap:6px; overflow-x:auto; margin-bottom:14px; padding-bottom:5px; }
  .iris-btb-app .planner-rail button { flex:0 0 auto; border-color:var(--line); background:#fff; }
  .iris-btb-app .planner-rail p,.iris-btb-app .rail-divider { display:none; }
  .iris-btb-app .planner-modules { grid-template-columns:1fr; }
  .iris-btb-app .template-grid { grid-template-columns:1fr 1fr; }
  .iris-btb-app .category-list article { grid-template-columns:42px minmax(120px,1fr) 54px; }
  .iris-btb-app .category-list select,.iris-btb-app .category-list button { grid-row:2; }
  .iris-btb-app .add-category { grid-template-columns:1fr 88px; }
  .iris-btb-app .add-category .category-preview,.iris-btb-app .add-category .button { grid-column:1/-1; }
  .iris-btb-app .week-grid { grid-template-columns:1fr; }
  .iris-btb-app .day-column { min-height:0; }
  .iris-btb-app .day-column>header strong { display:block; }
  .iris-btb-app .day-column>header span { display:none; }
  .iris-btb-app .day-blocks { min-height:170px; }
  .iris-btb-app .mobile-day-switch { padding:10px 14px 0; display:flex; gap:5px; overflow-x:auto; }
  .iris-btb-app .mobile-day-switch button[aria-pressed="true"] { background:var(--plum); color:white; }
  .iris-btb-app .planner-toolbar>button,.iris-btb-app .view-switch button,.iris-btb-app .mobile-day-switch button { min-height:44px; }
  .iris-btb-app .mobile-day-switch button { min-width:44px; }
  .iris-btb-app .day-column>header button { width:44px; height:44px; }
  .iris-btb-app .block-actions button { min-width:44px; min-height:44px; }
  .iris-btb-app .planner-modules input,.iris-btb-app .inbox-module form button,.iris-btb-app .inbox-module>div button,.iris-btb-app .gentle-tools button { min-height:44px; }
  .iris-btb-app .inbox-module form button { min-width:44px; }
  .iris-btb-app .semester-months { grid-template-columns:1fr 1fr; }
}

@media (max-width:560px) {
  .iris-btb-app .planner-onboarding { width:calc(100% - 24px); margin-top:20px; padding:27px 18px; border-radius:22px; }
  .iris-btb-app .setup-steps { grid-template-columns:1fr; }
  .iris-btb-app .planner-top { padding-top:24px; }
  .iris-btb-app .planner-top h1,.iris-btb-app .planner-onboarding h1 { font-size:48px; }
  .iris-btb-app .mobile-section-nav { position:static; min-height:0; padding:7px 12px; flex-wrap:wrap; justify-content:center; overflow:visible; }
  .iris-btb-app .mobile-section-nav a { flex:1 1 42%; text-align:center; white-space:normal; }
  .iris-btb-app .planner-toolbar { position:static; padding:10px 12px; flex-wrap:wrap; overflow:visible; }
  .iris-btb-app .planner-toolbar>button { flex:1 1 calc(50% - 7px); white-space:normal; }
  .iris-btb-app .view-switch { width:100%; }
  .iris-btb-app .view-switch button { min-width:0; flex:1 1 0; }
  .iris-btb-app .planner-rail { display:grid; grid-template-columns:1fr 1fr; overflow:visible; }
  .iris-btb-app .planner-rail button { width:auto; min-width:0; flex:auto; white-space:normal; text-align:center; }
  .iris-btb-app .mobile-day-switch { flex-wrap:wrap; overflow:visible; }
  .iris-btb-app .week-heading { align-items:start; flex-direction:column; }
  .iris-btb-app .week-heading input { font-size:30px; }
  .iris-btb-app .workload-pill { width:100%; max-width:none; text-align:left; }
  .iris-btb-app .planner-panel { padding:18px 14px; }
  .iris-btb-app .template-grid,.iris-btb-app .form-row,.iris-btb-app .semester-months { grid-template-columns:1fr; }
  .iris-btb-app .template-grid button { min-height:96px; }
  .iris-btb-app .category-list article { grid-template-columns:42px minmax(100px,1fr) 48px; }
  .iris-btb-app .add-category { grid-template-columns:1fr; }
  .iris-btb-app .add-category .category-preview,.iris-btb-app .add-category .button { grid-column:auto; }
  .iris-btb-app .planner-modules { margin-top:14px; }
}

.iris-btb-app /* The Bloom Calendar */
.bloom-calendar-shell { min-height:100vh; background:radial-gradient(circle at 92% 5%,rgba(233,226,255,.8),transparent 24%),linear-gradient(145deg,#fffaf3 0%,#fffdf9 52%,#f7edef 100%); }
.iris-btb-app .bloom-calendar-shell .nav-current { color:var(--rose); border-color:var(--rose); }
.iris-btb-app .bloom-calendar-hero { max-width:1380px; margin:0 auto; padding:clamp(38px,5vw,66px) clamp(20px,4vw,60px) 34px; display:grid; grid-template-columns:minmax(0,1.25fr) minmax(320px,.65fr); gap:clamp(28px,4vw,58px); align-items:center; position:relative; overflow:hidden; }
.iris-btb-app .bloom-calendar-hero:after { content:""; position:absolute; right:3%; bottom:-110px; width:360px; height:360px; border:1px solid rgba(170,98,125,.16); border-radius:47% 53% 58% 42%; box-shadow:0 0 0 38px rgba(223,233,217,.22),0 0 0 80px rgba(233,226,255,.16); transform:rotate(22deg); pointer-events:none; }
.iris-btb-app .bloom-calendar-hero>div { position:relative; z-index:1; }
.iris-btb-app .bloom-calendar-hero h1 { font-size:clamp(58px,6.8vw,92px); }
.iris-btb-app .bloom-calendar-hero .hero-dek { max-width:720px; }
.iris-btb-app .bloom-calendar-hero .hero-dek strong,.iris-btb-app .bloom-calendar-hero .hero-dek span { display:block; }
.iris-btb-app .bloom-calendar-hero .hero-dek strong { color:var(--ink); font-size:1.08em; }
.iris-btb-app .bloom-calendar-hero .hero-dek span { margin-top:8px; color:var(--muted); font-size:.88em; }
.iris-btb-app .calendar-trust { width:max-content; max-width:100%; margin:25px 0 0; padding:9px 14px; border:1px solid #c8d5c1; border-radius:999px; background:#edf3e9; color:#486242; font-size:11px; font-weight:800; }
.iris-btb-app .bloom-season-card { padding:clamp(22px,3vw,32px); border:1px solid #ded3ca; background:rgba(255,253,249,.9); box-shadow:var(--shadow); transform:rotate(.5deg); }
.iris-btb-app .bloom-season-card h2 { margin:0 0 10px; font-family:var(--font-display),serif; font-size:clamp(32px,3vw,42px); font-weight:600; line-height:.95; }
.iris-btb-app .bloom-season-card>p:not(.kicker) { color:var(--muted); }
.iris-btb-app .bloom-season-card dl { margin:20px 0 0; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); }
.iris-btb-app .bloom-season-card dl div { padding:18px 10px 0; border-right:1px solid var(--line); }
.iris-btb-app .bloom-season-card dl div:last-child { border:0; }
.iris-btb-app .bloom-season-card dt { color:var(--muted); font-size:9px; text-transform:uppercase; letter-spacing:.08em; }
.iris-btb-app .bloom-season-card dd { margin:6px 0 0; font-family:var(--font-display),serif; font-size:30px; font-weight:700; color:var(--plum); }
.iris-btb-app .bloom-calendar-content { max-width:1380px; margin:0 auto; padding:0 clamp(16px,4vw,60px) 90px; }
.iris-btb-app .bloom-radar { margin-bottom:24px; padding:28px 32px; display:grid; grid-template-columns:minmax(250px,.65fr) minmax(0,1fr); gap:34px; align-items:center; border-block:1px solid #dbd0c8; background:rgba(255,253,249,.62); }
.iris-btb-app .bloom-radar h2,.iris-btb-app .saved-deadlines h2,.iris-btb-app .calendar-bridge h2 { margin:0; font-family:var(--font-display),serif; font-size:clamp(36px,4vw,54px); font-weight:600; line-height:.95; }
.iris-btb-app .bloom-radar>div>p:last-child,.iris-btb-app .calendar-bridge p { color:var(--muted); }
.iris-btb-app .radar-list { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.iris-btb-app .radar-list button { min-height:126px; padding:18px; display:flex; flex-direction:column; align-items:start; border:1px solid var(--line); background:linear-gradient(145deg,#fff,#f8eff2); text-align:left; }
.iris-btb-app .radar-list button:hover { border-color:#b793a6; transform:translateY(-1px); }
.iris-btb-app .radar-list strong { font-family:var(--font-display),serif; font-size:28px; color:var(--rose); }
.iris-btb-app .radar-list span { margin-top:8px; font-size:12px; font-weight:800; }
.iris-btb-app .radar-list small { margin-top:auto; padding-top:9px; color:var(--muted); font-size:9px; text-transform:uppercase; letter-spacing:.1em; }
.iris-btb-app .bloom-calendar-controls { min-height:70px; padding:10px 0; display:flex; align-items:center; gap:14px; border-bottom:1px solid var(--line); }
.iris-btb-app .calendar-filter-set,.iris-btb-app .calendar-view-switch { display:flex; gap:4px; padding:4px; background:#efe9e4; }
.iris-btb-app .calendar-filter-set button,.iris-btb-app .calendar-view-switch button { min-height:44px; padding:8px 16px; border:0; background:transparent; font-size:11px; font-weight:800; }
.iris-btb-app .calendar-filter-set button[aria-pressed="true"],.iris-btb-app .calendar-view-switch button[aria-pressed="true"] { background:var(--plum); color:white; }
.iris-btb-app .bloom-calendar-controls label { margin-left:auto; display:flex; align-items:center; gap:8px; font-size:10px; font-weight:800; }
.iris-btb-app .bloom-calendar-controls select { min-height:44px; padding:7px 30px 7px 10px; border:1px solid var(--line); background:#fff; }
.iris-btb-app .bloom-month-heading { padding:30px 0 18px; display:grid; grid-template-columns:44px 1fr 44px; align-items:center; gap:12px; }
.iris-btb-app .bloom-month-heading h2 { margin:0; text-align:center; font-family:var(--font-display),serif; font-size:clamp(38px,4vw,58px); font-weight:600; line-height:1; }
.iris-btb-app .bloom-month-heading button { width:44px; height:44px; border:1px solid var(--line); border-radius:50%; background:#fff; }
.iris-btb-app .bloom-month-view { position:relative; }
.iris-btb-app .bloom-weekdays,.iris-btb-app .bloom-month-grid { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); }
.iris-btb-app .bloom-weekdays { border:1px solid var(--line); border-bottom:0; background:#f3ede8; }
.iris-btb-app .bloom-weekdays span { min-height:38px; padding:10px; border-right:1px solid var(--line); color:var(--muted); font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.1em; text-align:center; }
.iris-btb-app .bloom-month-grid { border-top:1px solid var(--line); border-left:1px solid var(--line); background:#fffdfa; }
.iris-btb-app .bloom-day { min-width:0; min-height:142px; padding:9px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:rgba(255,253,249,.86); }
.iris-btb-app .bloom-day.blank { background:rgba(241,235,230,.5); }
.iris-btb-app .bloom-day>span { width:29px; height:29px; display:grid; place-items:center; font-family:var(--font-display),serif; font-size:17px; }
.iris-btb-app .event-dot { width:100%; min-height:40px; margin-top:5px; padding:7px 8px; display:block; border:1px solid #d8cbd2; background:#f7e8ed; text-align:left; font-size:9px; font-weight:750; line-height:1.25; overflow-wrap:anywhere; }
.iris-btb-app .event-dot.npte { background:#e9e2ff; border-color:#cec1e1; }
.iris-btb-app .event-dot small { display:block; margin-bottom:2px; color:#6b5367; font-size:7px; letter-spacing:.09em; text-transform:uppercase; }
.iris-btb-app .calendar-empty { padding:48px 20px; border:1px solid var(--line); border-top:0; background:#fffdfa; text-align:center; }
.iris-btb-app .calendar-empty h3 { margin:0 0 8px; font-family:var(--font-display),serif; font-size:28px; }
.iris-btb-app .calendar-empty p { color:var(--muted); }
.iris-btb-app .bloom-agenda { display:grid; gap:34px; }
.iris-btb-app .agenda-month>h2 { margin:0 0 10px; padding-bottom:10px; border-bottom:1px solid var(--line); font-family:var(--font-display),serif; font-size:38px; font-weight:600; }
.iris-btb-app .agenda-month article { min-height:154px; padding:20px 6px; display:grid; grid-template-columns:76px minmax(0,1fr) auto; gap:24px; align-items:start; border-bottom:1px solid var(--line); }
.iris-btb-app .agenda-month time { width:68px; height:82px; display:grid; place-items:center; align-content:center; border:1px solid #d6c8cf; background:#fff; }
.iris-btb-app .agenda-month time strong { font-family:var(--font-display),serif; font-size:34px; line-height:1; }
.iris-btb-app .agenda-month time span { color:var(--rose); font-size:10px; font-weight:850; text-transform:uppercase; }
.iris-btb-app .bloom-event-labels { display:flex; gap:6px; flex-wrap:wrap; }
.iris-btb-app .bloom-event-labels span,.iris-btb-app .bloom-event-labels strong { padding:5px 8px; border:1px solid #d5c7ce; background:#fff; color:#695466; font-size:8px; line-height:1; letter-spacing:.1em; text-transform:uppercase; }
.iris-btb-app .bloom-event-labels strong { background:var(--lavender); border-color:#d4cae5; }
.iris-btb-app .agenda-event-main h3 { margin:9px 0 4px; font-family:var(--font-display),serif; font-size:28px; font-weight:600; line-height:1; }
.iris-btb-app .agenda-event-main p { margin:0 0 10px; max-width:780px; color:var(--muted); font-size:12px; }
.iris-btb-app .source-stamp { color:#51704d; font-size:9px; font-weight:800; }
.iris-btb-app .agenda-actions { min-width:130px; display:grid; justify-items:end; gap:7px; }
.iris-btb-app .save-event { min-height:42px; padding:8px 13px; border:1px solid var(--line); background:#fff; font-size:10px; font-weight:800; }
.iris-btb-app .save-event[aria-pressed="true"] { background:var(--blush); border-color:#d7b8c4; }
.iris-btb-app .saved-deadlines { margin-top:56px; padding:28px; border:1px solid var(--line); background:linear-gradient(120deg,#fffdfa,#f4edf9); }
.iris-btb-app .saved-deadlines>div { margin-top:20px; display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.iris-btb-app .saved-deadlines button { min-height:92px; padding:15px; display:grid; gap:5px; border:1px solid var(--line); background:#fff; text-align:left; }
.iris-btb-app .saved-deadlines button span { color:var(--rose); font-size:9px; font-weight:800; text-transform:uppercase; }
.iris-btb-app .calendar-bridge { margin-top:42px; padding:42px; display:flex; justify-content:space-between; align-items:center; gap:30px; border-block:1px solid var(--line); }
.iris-btb-app .calendar-bridge>div { max-width:760px; }
.iris-btb-app .calendar-notice { min-height:30px; margin:18px 0 0; color:var(--muted); font-size:10px; text-align:center; }
.iris-btb-app .bloom-event-dialog { width:min(760px,calc(100% - 28px)); max-height:calc(100vh - 32px); padding:0; border:1px solid #cdbec6; background:#fffdfa; color:var(--ink); box-shadow:0 28px 90px rgba(54,37,48,.25); }
.iris-btb-app .bloom-event-dialog::backdrop { background:rgba(45,32,42,.52); backdrop-filter:blur(4px); }
.iris-btb-app .bloom-event-dialog>div { padding:clamp(24px,5vw,48px); position:relative; }
.iris-btb-app .dialog-close { position:absolute; top:15px; right:15px; width:44px; height:44px; border:1px solid var(--line); border-radius:50%; background:#fff; font-size:25px; }
.iris-btb-app .bloom-event-dialog h2 { margin:16px 50px 9px 0; font-family:var(--font-display),serif; font-size:clamp(38px,5vw,56px); font-weight:600; line-height:.94; }
.iris-btb-app .bloom-event-dialog>div>p { color:var(--muted); }
.iris-btb-app .official-personal { margin:26px 0; display:grid; grid-template-columns:1fr 1fr; border:1px solid var(--line); }
.iris-btb-app .official-personal div { padding:20px; }
.iris-btb-app .official-personal div+div { border-left:1px solid var(--line); background:#f4eef9; }
.iris-btb-app .official-personal dt { color:var(--rose); font-size:9px; font-weight:850; text-transform:uppercase; letter-spacing:.1em; }
.iris-btb-app .official-personal dd { margin:7px 0 0; }
.iris-btb-app .official-personal strong,.iris-btb-app .official-personal span { display:block; }
.iris-btb-app .official-personal strong { font-family:var(--font-display),serif; font-size:25px; }
.iris-btb-app .official-personal span { color:var(--muted); font-size:10px; }
.iris-btb-app .buffer-control,.iris-btb-app .event-note { display:grid; gap:6px; margin:15px 0; font-size:10px; font-weight:850; }
.iris-btb-app .buffer-control select,.iris-btb-app .event-note textarea { min-height:44px; padding:10px 12px; border:1px solid var(--line); background:#fff; }
.iris-btb-app .event-note textarea { min-height:78px; resize:vertical; }
.iris-btb-app .requirement-list { margin:16px 0; padding:15px 18px; background:#edf3e9; }
.iris-btb-app .requirement-list strong { font-size:10px; }
.iris-btb-app .requirement-list ul { margin:8px 0 0; padding-left:20px; font-size:11px; }
.iris-btb-app .dialog-actions { display:flex; flex-wrap:wrap; gap:8px; margin:24px 0; }
.iris-btb-app .dialog-actions .button { min-height:44px; padding:10px 15px; }
.iris-btb-app .event-source { padding-top:19px; display:grid; gap:5px; border-top:1px solid var(--line); font-size:10px; }
.iris-btb-app .event-source span { color:var(--muted); }
.iris-btb-app .event-source a { width:max-content; max-width:100%; color:var(--rose); font-weight:800; }
.iris-btb-app .bloom-preview { margin:34px 0; padding:clamp(28px,5vw,58px); display:grid; grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr); gap:44px; border-block:1px solid var(--line); background:linear-gradient(120deg,#f6edf1,#fffdfa 55%,#eff4eb); }
.iris-btb-app .bloom-preview-copy h2 { margin:0; font-family:var(--font-display),serif; font-size:clamp(42px,5vw,66px); font-weight:600; line-height:.95; }
.iris-btb-app .bloom-preview-copy>p:not(.kicker) { color:var(--muted); }
.iris-btb-app .bloom-preview-copy .button { margin-top:10px; }
.iris-btb-app .bloom-preview-list { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--line); }
.iris-btb-app .bloom-preview-list article { min-height:126px; padding:18px; display:grid; grid-template-columns:54px 1fr; gap:13px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.iris-btb-app .bloom-preview-list time { text-align:center; }
.iris-btb-app .bloom-preview-list time strong,.iris-btb-app .bloom-preview-list time span { display:block; }
.iris-btb-app .bloom-preview-list time strong { color:var(--rose); font-size:9px; text-transform:uppercase; }
.iris-btb-app .bloom-preview-list time span { font-family:var(--font-display),serif; font-size:32px; line-height:1; }
.iris-btb-app .bloom-preview-list h3 { margin:8px 0 0; font-family:var(--font-display),serif; font-size:20px; font-weight:600; line-height:1.05; }

@media (max-width:900px) {
  .iris-btb-app .bloom-calendar-hero { grid-template-columns:1fr; }
  .iris-btb-app .bloom-calendar-hero:after { right:-180px; }
  .iris-btb-app .bloom-radar { grid-template-columns:1fr; }
  .iris-btb-app .radar-list { grid-template-columns:1fr 1fr 1fr; }
  .iris-btb-app .bloom-calendar-controls { flex-wrap:wrap; }
  .iris-btb-app .bloom-calendar-controls label { margin-left:0; }
  .iris-btb-app .calendar-view-switch { margin-left:auto; }
  .iris-btb-app .bloom-month-grid,.iris-btb-app .bloom-weekdays { min-width:760px; }
  .iris-btb-app .bloom-month-view { overflow-x:auto; }
  .iris-btb-app .bloom-preview { grid-template-columns:1fr; }
}

@media (max-width:560px) {
  .iris-btb-app .bloom-calendar-hero { padding:30px 16px 24px; gap:20px; }
  .iris-btb-app .bloom-calendar-hero h1 { font-size:54px; }
  .iris-btb-app .calendar-trust { width:100%; border-radius:0; }
  .iris-btb-app .bloom-season-card { padding:22px 18px; transform:none; }
  .iris-btb-app .bloom-season-card dl { grid-template-columns:1fr; }
  .iris-btb-app .bloom-season-card dl div { padding:12px 0; border-right:0; border-bottom:1px solid var(--line); display:flex; justify-content:space-between; align-items:center; }
  .iris-btb-app .bloom-season-card dd { font-size:24px; }
  .iris-btb-app .bloom-calendar-content { padding-inline:12px; }
  .iris-btb-app .bloom-radar { margin-inline:-12px; padding:24px 16px; }
  .iris-btb-app .radar-list { grid-template-columns:1fr; }
  .iris-btb-app .radar-list button { min-height:98px; }
  .iris-btb-app .calendar-filter-set,.iris-btb-app .calendar-view-switch { width:100%; }
  .iris-btb-app .calendar-filter-set button,.iris-btb-app .calendar-view-switch button { flex:1; padding-inline:8px; }
  .iris-btb-app .bloom-calendar-controls label { width:100%; justify-content:space-between; }
  .iris-btb-app .bloom-calendar-controls select { flex:1; }
  .iris-btb-app .bloom-month-heading { padding-top:22px; }
  .iris-btb-app .bloom-month-heading h2 { font-size:38px; }
  .iris-btb-app .bloom-month-view { display:none; }
  .iris-btb-app .agenda-month article { grid-template-columns:58px 1fr; gap:13px; }
  .iris-btb-app .agenda-month time { width:56px; height:68px; }
  .iris-btb-app .agenda-month time strong { font-size:28px; }
  .iris-btb-app .agenda-event-main h3 { font-size:24px; }
  .iris-btb-app .agenda-actions { grid-column:2; min-width:0; display:flex; justify-content:start; align-items:center; }
  .iris-btb-app .save-event,.iris-btb-app .agenda-actions .text-link { min-height:44px; }
  .iris-btb-app .saved-deadlines { margin-inline:-12px; padding:24px 16px; }
  .iris-btb-app .saved-deadlines>div { grid-template-columns:1fr; }
  .iris-btb-app .calendar-bridge { padding:32px 4px; display:block; }
  .iris-btb-app .calendar-bridge .button { width:100%; margin-top:14px; }
  .iris-btb-app .official-personal { grid-template-columns:1fr; }
  .iris-btb-app .official-personal div+div { border-left:0; border-top:1px solid var(--line); }
  .iris-btb-app .dialog-actions .button,.iris-btb-app .dialog-actions .text-link { width:100%; }
  .iris-btb-app .bloom-preview { margin-inline:-12px; padding:30px 16px; }
  .iris-btb-app .bloom-preview-list { grid-template-columns:1fr; }
  .iris-btb-app .bloom-preview-list article { border-right:0; }
}

.iris-btb-app /* Built to Bloom landing — student life operating system,.iris-btb-app 1.3.4 */
.brand-mark { width:44px; height:44px; flex:0 0 44px; display:block; object-fit:contain; mix-blend-mode:multiply; }
.iris-btb-app .landing-site-header { height:64px; padding-inline:clamp(22px,3.5vw,54px); }
.iris-btb-app .landing-site-header nav { gap:clamp(18px,2.3vw,34px); font-size:13px; }
.iris-btb-app .landing-site-header nav a { min-width:44px; min-height:44px; display:inline-flex; align-items:center; }
.iris-btb-app .landing-site-header nav .nav-current { color:var(--plum); border-bottom-color:var(--plum); font-weight:800; }
.iris-btb-app .landing-site-header>.button { display:none; }

.iris-btb-app .bloom-editorial-shell { --landing-gutter:clamp(24px,3vw,48px); max-width:1720px; margin:0 auto; display:grid; grid-template-columns:132px minmax(0,1fr); background:#fffaf3; border-inline:1px solid var(--line); }
.iris-btb-app .bloom-editorial-page { min-width:0; }
.iris-btb-app .vine-navigation { position:sticky; top:calc(var(--btb-admin-bar-height) + var(--btb-site-header-height) + 10px); align-self:start; height:min(720px,calc(100vh - var(--btb-admin-bar-height) - var(--btb-site-header-height) - 20px)); min-height:560px; padding:14px 10px; display:flex; flex-direction:column; isolation:isolate; background:#fffdf9; border:1px solid var(--line); border-left:0; border-radius:0 18px 18px 0; overflow:hidden; box-shadow:0 18px 45px rgba(75,57,75,.06); }
.iris-btb-app .bloom-lockup { min-height:108px; display:grid; justify-items:center; align-content:start; text-align:center; position:relative; z-index:2; }
.iris-btb-app .bloom-lockup img { width:64px; height:64px; object-fit:contain; mix-blend-mode:multiply; }
.iris-btb-app .bloom-lockup strong { margin-top:-5px; font-family:var(--font-display),serif; font-size:16px; font-weight:600; letter-spacing:.045em; text-transform:uppercase; }
.iris-btb-app .bloom-lockup span { max-width:104px; margin-top:3px; color:#675d66; font-family:var(--font-display),serif; font-size:11px; font-style:italic; line-height:1.18; }
.iris-btb-app .vine-progress { position:absolute; z-index:0; top:121px; bottom:30px; left:29px; width:1px; background:#dfd4d0; }
.iris-btb-app .vine-stop { min-height:64px; padding:0 7px; display:grid; grid-template-columns:34px minmax(0,1fr); gap:7px; align-items:center; position:relative; z-index:2; border-radius:12px; font-family:var(--font-display),serif; font-size:17px; color:#544953; transition:color .18s ease,background .18s ease; }
.iris-btb-app .vine-marker { width:30px; height:30px; display:block; overflow:hidden; border:4px solid #fffdf9; border-radius:50%; background:#f8f1ed; box-shadow:0 0 0 1px #d9cdc8; }
.iris-btb-app .vine-marker img { width:100%; height:180%; display:block; object-fit:cover; mix-blend-mode:multiply; opacity:.78; }
.iris-btb-app .vine-stop:hover { color:var(--plum); background:#f8eef2; }
.iris-btb-app .vine-stop.active { color:#7b3f59; background:#f7e8ed; }
.iris-btb-app .vine-stop.active .vine-marker { box-shadow:0 0 0 2px var(--rose); }
.iris-btb-app .vine-stop.active:after { content:""; position:absolute; right:-10px; width:3px; height:30px; border-radius:3px; background:var(--rose); }
.iris-btb-app .vine-stop strong { font-weight:600; }

.iris-btb-app .bloom-editorial-page .hero { height:532px; min-height:532px; grid-template-columns:minmax(420px,42%) minmax(0,58%); background:#fffaf3; border-bottom:1px solid var(--line); }
.iris-btb-app .bloom-editorial-page .hero-copy { padding:48px clamp(34px,4vw,68px); align-self:stretch; display:flex; flex-direction:column; justify-content:center; }
.iris-btb-app .bloom-editorial-page .hero-copy h1 { max-width:520px; font-size:clamp(60px,4.9vw,76px); line-height:.91; }
.iris-btb-app .bloom-editorial-page .hero-copy .hero-dek { max-width:520px; margin:22px 0 9px; font-size:16px; line-height:1.55; }
.iris-btb-app .bloom-editorial-page .hero-copy .script-line { margin-bottom:24px; font-size:19px; }
.iris-btb-app .bloom-editorial-page .hero-copy .button { min-height:44px; padding:10px 19px; font-size:11px; }
.iris-btb-app .bloom-editorial-page .hero-copy .microcopy { max-width:500px; margin-top:17px; font-size:11px; line-height:1.5; }
.iris-btb-app .desk-scene { min-height:532px; background:#efe6dc; }
.iris-btb-app .desk-scene>img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; object-position:center; }
.iris-btb-app .desk-scene:before,.iris-btb-app .desk-scene:after { display:none; }

.iris-btb-app .continue-strip { min-height:78px; padding:14px var(--landing-gutter); display:flex; align-items:center; justify-content:space-between; gap:20px; border-bottom:1px solid var(--line); background:#f3f6ed; }
.iris-btb-app .continue-strip>div { min-width:0; display:grid; grid-template-columns:auto 1fr; column-gap:15px; align-items:center; }
.iris-btb-app .continue-strip .kicker { grid-row:1/3; margin:0; }
.iris-btb-app .continue-strip strong { font-family:var(--font-display),serif; font-size:22px; line-height:1.1; }
.iris-btb-app .continue-strip span { color:#655c63; font-size:12px; }
.iris-btb-app .context-link { min-height:44px; display:inline-flex; align-items:center; gap:7px; color:var(--rose); font-size:12px; font-weight:800; }

.iris-btb-app .hub-showcase { max-width:none; margin:0; padding:40px var(--landing-gutter); display:grid; grid-template-columns:minmax(210px,.58fr) minmax(520px,1.65fr) minmax(300px,.82fr); gap:28px; align-items:stretch; border-bottom:1px solid var(--line); background:#fffdf9; overflow:hidden; }
.iris-btb-app .hub-showcase>* { min-width:0; min-height:0; }
.iris-btb-app .planner-intro { padding:18px 8px 16px 0; align-self:center; }
.iris-btb-app .planner-intro h2 { margin:6px 0 16px; font-family:var(--font-display),serif; font-size:clamp(42px,3.4vw,52px); font-weight:600; line-height:.92; letter-spacing:-.025em; }
.iris-btb-app .planner-intro>p:not(.kicker) { margin:0; color:#5f555e; font-size:14px; line-height:1.58; }
.iris-btb-app .planner-caption { margin:18px 0 13px; display:block; color:#735978; font-family:var(--font-display),serif; font-size:18px; font-style:italic; }
.iris-btb-app .planner-intro .button { min-height:44px; padding:10px 17px; font-size:10px; }
.iris-btb-app .planner-live-preview { min-width:0; height:430px; align-self:center; display:block; overflow:hidden; border:1px solid #d8cdc5; border-radius:16px; background:#fff; box-shadow:0 18px 46px rgba(73,52,61,.1); }
.iris-btb-app .planner-live-preview img { width:100%; height:100%; display:block; object-fit:cover; object-position:top center; }
.iris-btb-app .showcase-calendar { min-width:0; padding:18px 0 18px 24px; border-left:1px solid var(--line); }
.iris-btb-app .showcase-calendar .bloom-preview { min-height:100%; margin:0; padding:0; display:block; border:0; background:transparent; }
.iris-btb-app .showcase-calendar .bloom-preview-copy { margin-bottom:14px; }
.iris-btb-app .showcase-calendar .bloom-preview-copy h2 { margin:3px 0 7px; font-size:34px; }
.iris-btb-app .showcase-calendar .bloom-preview-copy p:not(.kicker) { margin:0 0 9px; color:#5f555e; font-size:12px; line-height:1.5; }
.iris-btb-app .showcase-calendar .bloom-preview-copy .button { min-height:44px; padding:8px 0; border:0; background:transparent; color:var(--rose); font-size:11px; justify-content:flex-start; box-shadow:none; }
.iris-btb-app .showcase-calendar .bloom-preview-list { display:grid; grid-template-columns:1fr; border:1px solid var(--line); border-radius:11px; background:#fffdf9; overflow:hidden; }
.iris-btb-app .showcase-calendar .bloom-preview-list article { min-height:92px; padding:10px; grid-template-columns:48px 1fr; gap:10px; border-right:0; border-bottom:1px solid var(--line); }
.iris-btb-app .showcase-calendar .bloom-preview-list article:last-child { border-bottom:0; }
.iris-btb-app .showcase-calendar .bloom-preview-list time { width:46px; height:56px; }
.iris-btb-app .showcase-calendar .bloom-preview-list time strong { font-size:9px; }
.iris-btb-app .showcase-calendar .bloom-preview-list time span { font-size:19px; }
.iris-btb-app .showcase-calendar .bloom-event-labels { display:flex; }
.iris-btb-app .showcase-calendar .bloom-preview-list h3 { margin-top:5px; font-size:15px; line-height:1.25; }
.iris-btb-app .showcase-calendar .bloom-preview-list small { display:block; margin-top:5px; color:#7b4660; font-size:10px; font-weight:800; }
.iris-btb-app .reflection-paper { grid-column:1/-1; margin:4px 0 0; padding:24px 30px 26px; border:1px solid #eadbd9; border-radius:14px; background-color:#fdf5f1; background-position:center; background-size:cover; box-shadow:none; transform:none; }
.iris-btb-app .reflection-paper h2 { max-width:900px; margin:10px 0 8px; font-family:var(--font-display),serif; font-size:clamp(28px,2.6vw,40px); font-weight:600; font-style:italic; line-height:1.06; }
.iris-btb-app .reflection-paper time { display:block; color:#735978; font-family:var(--font-display),serif; font-size:16px; font-style:italic; }
.iris-btb-app .reflection-paper .text-link { margin-top:8px; font-size:12px; }

.iris-btb-app .hub-chapter-strip { max-width:none; min-height:180px; margin:0 0 30px; padding:18px var(--landing-gutter); display:grid; grid-template-columns:repeat(4,1fr); border-bottom:1px solid var(--line); background:#fffdf9; overflow:hidden; }
.iris-btb-app .hub-chapter { min-width:0; min-height:144px; padding:0 20px; display:grid; grid-template-columns:43% minmax(0,1fr); grid-template-rows:auto auto 1fr auto; column-gap:18px; align-items:start; border-right:1px solid var(--line); color:var(--ink); }
.iris-btb-app .hub-chapter:first-child { padding-left:0; }
.iris-btb-app .hub-chapter:last-child { padding-right:0; border-right:0; }
.iris-btb-app .hub-chapter img { width:100%; height:144px; grid-row:1/5; object-fit:cover; border-radius:10px; }
.iris-btb-app .hub-chapter .kicker { margin-top:5px; }
.iris-btb-app .hub-chapter h2 { margin:5px 0 7px; font-family:var(--font-display),serif; font-size:27px; font-weight:600; line-height:1; }
.iris-btb-app .hub-chapter p { margin:0; color:#625862; font-size:12px; line-height:1.45; }
.iris-btb-app .hub-chapter strong { min-height:40px; margin-top:7px; display:flex; align-items:center; color:var(--rose); font-size:11px; }
.iris-btb-app .hub-chapter:hover img { filter:saturate(.92) contrast(1.03); }
.iris-btb-app .hub-chapter:focus-visible,.iris-btb-app .planner-live-preview:focus-visible { outline:3px solid #7a54ad; outline-offset:3px; }

.iris-btb-app /* Keep every interactive touch target comfortably usable. */
main button { min-width:44px!important; min-height:44px!important; }
.iris-btb-app main input,.iris-btb-app main select,.iris-btb-app main textarea { min-height:44px!important; }
.iris-btb-app .focus-check,.iris-btb-app .explain-trigger,.iris-built-to-bloom-page .explain-close,.iris-btb-app .dialog-close { width:44px; height:44px; }

.iris-btb-app .mode-wrap { width:calc(100% - (var(--landing-gutter) * 2)); max-width:1380px; margin:30px auto 26px; padding:12px 14px; border-radius:16px; box-shadow:none; background:#fffdf9; }
.iris-btb-app .mode-wrap p { font-size:12px; }
.iris-btb-app .content-shell { max-width:none; padding:0 var(--landing-gutter) 108px; display:block; }
.iris-btb-app .section { padding:84px 0 104px; }
.iris-btb-app .section-heading { margin-bottom:22px; }
.iris-btb-app .section-heading h2,.iris-btb-app .reflection-copy h2 { font-size:clamp(48px,4.9vw,68px); }
.iris-btb-app .section-intro { max-width:920px; font-size:16px; line-height:1.65; }
.iris-btb-app .date-badge { min-width:168px; padding:9px 14px; display:grid; gap:1px; align-items:start; white-space:normal; }
.iris-btb-app .date-badge strong { font-size:9px; letter-spacing:.09em; text-transform:uppercase; }
.iris-btb-app .date-badge time { font-family:var(--font-display),serif; font-size:16px; font-weight:600; }

.iris-btb-app .today-grid { grid-template-columns:minmax(260px,4fr) minmax(360px,5fr) minmax(240px,3fr); gap:18px; margin-top:22px; }
.iris-btb-app .today-grid .card { min-height:304px; padding:30px; border-radius:18px; box-shadow:0 14px 36px rgba(74,53,60,.055); }
.iris-btb-app .today-grid h3 { margin:0 0 18px; font-size:31px; line-height:1.08; }
.iris-btb-app .focus-card { display:flex; flex-direction:column; }
.iris-btb-app .focus-current-row { display:grid; grid-template-columns:44px minmax(0,1fr); gap:14px; align-items:start; }
.iris-btb-app .focus-card>div,.iris-btb-app .focus-card .focus-content { padding-left:0; }
.iris-btb-app .focus-check { position:static; border-radius:12px; }
.iris-btb-app .focus-timeframe,.iris-btb-app .done-message { margin-top:8px; font-size:12px; }
.iris-btb-app .focus-actions { margin-top:21px; gap:5px; }
.iris-btb-app .focus-actions button { min-height:44px; padding:7px 10px; border-radius:999px; font-size:11px; }
.iris-btb-app .focus-actions button:first-child { border:1px solid #d7c5ce; background:#fff; }
.iris-btb-app .focus-history { margin-top:auto; }
.iris-btb-app .focus-history summary,.iris-btb-app .focus-history button { font-size:11px; }
.iris-btb-app .progress-card { background:linear-gradient(145deg,#fffdf9,#fbf5ef); }
.iris-btb-app .graduation-path { margin:42px 0 30px; padding:0; display:grid; grid-template-columns:repeat(4,1fr); list-style:none; position:relative; }
.iris-btb-app .graduation-path:before { content:""; position:absolute; z-index:0; left:10%; right:10%; top:10px; height:2px; background:linear-gradient(90deg,var(--rose) 0 36%,#b79bd1 36% 61%,#d8cedb 61%); }
.iris-btb-app .graduation-path li { min-width:0; padding-top:32px; position:relative; text-align:center; }
.iris-btb-app .graduation-path li:before { content:""; position:absolute; z-index:1; top:3px; left:calc(50% - 7px); width:14px; height:14px; border:3px solid #fffdf9; border-radius:50%; background:#d8cedb; box-shadow:0 0 0 1px #b9aebb; }
.iris-btb-app .graduation-path li.complete:before { background:var(--rose); box-shadow:0 0 0 1px var(--rose); }
.iris-btb-app .graduation-path li.next:before { background:#9b7bbb; box-shadow:0 0 0 4px rgba(155,123,187,.14); }
.iris-btb-app .graduation-path span,.iris-btb-app .graduation-path small { display:block; }
.iris-btb-app .graduation-path span { font-family:var(--font-display),serif; font-size:17px; font-weight:650; }
.iris-btb-app .graduation-path small { margin-top:4px; color:#6e646d; font-size:10px; }
.iris-btb-app .progress-card>p:last-child { margin:0; font-size:13px; line-height:1.55; }
.iris-btb-app .future-note { display:flex; flex-direction:column; background:linear-gradient(150deg,#f6eef4,#eef3e8); }
.iris-btb-app .future-note time { display:block; margin:-4px 0 18px; color:#7b4660; font-family:var(--font-display),serif; font-size:16px; font-style:italic; }
.iris-btb-app .future-note blockquote { margin:0; font-family:var(--font-display),serif; font-size:clamp(25px,2.1vw,32px); font-style:italic; font-weight:500; line-height:1.12; }
.iris-btb-app .future-note a { margin-top:auto; font-size:12px; }

.iris-btb-app .metric-grid { grid-template-columns:1.2fr repeat(3,1fr); gap:14px; }
.iris-btb-app .today-money { margin-top:18px; }
.iris-btb-app .metric { min-height:176px; padding:25px; border-radius:16px; }
.iris-btb-app .metric:after { width:78px; height:78px; right:-29px; bottom:-29px; border-width:12px; opacity:.42; }
.iris-btb-app .metric span,.iris-btb-app .metric small { font-size:12px; line-height:1.45; }
.iris-btb-app .metric strong { margin:18px 0 8px; font-size:clamp(36px,3.6vw,49px); }

.iris-btb-app .journey-section { margin-inline:calc(var(--landing-gutter) * -1); padding:84px var(--landing-gutter) 104px; background:linear-gradient(180deg,transparent 0,#fffdf9 8%,#fffdf9 92%,transparent 100%); }
.iris-btb-app .journey-stats { gap:12px; margin:28px 0 22px; }
.iris-btb-app .journey-stats div { min-height:68px; padding:18px 20px; border:1px solid #ebe1d9; border-radius:12px; background:#f7f2ec; }
.iris-btb-app .journey-stats span { font-size:12px; }
.iris-btb-app .journey-stats strong { font-size:32px; }
.iris-btb-app .filter-row { gap:9px; margin-bottom:20px; }
.iris-btb-app .filter-row button { font-size:12px; }
.iris-btb-app .application-list { border-radius:16px; background:#fffdf9; }
.iris-btb-app .application-row { grid-template-columns:56px minmax(0,1fr) minmax(250px,.55fr); gap:20px; padding:22px 24px; }
.iris-btb-app .application-main>p { font-size:11px; }
.iris-btb-app .application-main h3 { font-size:25px; }
.iris-btb-app .application-meta span,.iris-btb-app .application-outcome small,.iris-btb-app .status-badge { font-size:10px; }
.iris-btb-app .application-outcome strong { font-size:13px; line-height:1.4; }
.iris-btb-app .funding-next-action { margin:22px 0; padding:20px 22px; display:grid; grid-template-columns:minmax(250px,.8fr) minmax(320px,1.2fr); gap:30px; align-items:center; border-block:1px solid #dfd8cd; background:#f3f6ed; }
.iris-btb-app .funding-next-action span { display:block; color:var(--rose); font-size:10px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.iris-btb-app .funding-next-action strong { display:block; margin-top:4px; font-family:var(--font-display),serif; font-size:25px; font-weight:600; line-height:1.05; }
.iris-btb-app .funding-next-action p { margin:0; color:#645b62; font-size:13px; line-height:1.55; }
.iris-btb-app .application-disclosure { width:100%; margin-top:10px; border:1px solid #d9cec6; border-radius:10px; background:#fffdf9; color:var(--rose); font-size:12px; font-weight:800; }

.iris-btb-app .payment-section { padding:84px var(--landing-gutter) 104px; margin-inline:calc(var(--landing-gutter) * -1); background:linear-gradient(105deg,#fffdf9,#faf7f1 55%,#f5eff5); border-block:1px solid var(--line); }
.iris-btb-app .payment-section .interpretation-card { background:#eef3e9; }
.iris-btb-app .payment-section .chart-card { background:#fffdf9; }
.iris-btb-app .payment-section .preset-row button { border-radius:999px; background:#fffdf9; }
.iris-btb-app .payment-section .preset-row button[aria-pressed="true"] { background:var(--plum); color:#fff; }
.iris-btb-app .payment-section .section-heading h2 { max-width:980px; font-size:clamp(46px,4.6vw,66px); overflow-wrap:break-word; }
.iris-btb-app .decision-first { margin-top:30px; display:grid; grid-template-columns:minmax(400px,.92fr) minmax(420px,1.08fr); gap:24px; align-items:stretch; }
.iris-btb-app .payment-choice,.iris-btb-app .interpretation-card { min-width:0; padding:30px; border:1px solid #ded4cc; border-radius:18px; }
.iris-btb-app .payment-choice { background:#fffdf9; }
.iris-btb-app .slider-label { margin-top:15px; }
.iris-btb-app .slider-label strong { font-size:42px; }
.iris-btb-app .interest-threshold { margin:8px 0 15px; display:flex; justify-content:space-between; gap:20px; color:#665c63; font-size:12px; }
.iris-btb-app .interest-threshold strong { color:#7b4660; }
.iris-btb-app .interpretation-card { display:grid; grid-template-columns:150px minmax(0,1fr); gap:26px; align-items:center; }
.iris-btb-app .interpretation-card h3 { margin:5px 0 12px; font-size:clamp(30px,3vw,42px); }
.iris-btb-app .interpretation-card p { margin:0 0 10px; color:#4f474e; font-size:15px; line-height:1.55; }
.iris-btb-app .interpretation-card>div>small { display:block; color:#665e64; font-size:11px; line-height:1.5; }
.iris-btb-app .ring { width:132px; height:132px; }
.iris-btb-app .primary-outcomes { margin-top:24px; display:grid; grid-template-columns:repeat(3,1fr); border-block:1px solid #dcd3cb; }
.iris-btb-app .primary-outcomes article { min-height:176px; padding:25px 28px; border-right:1px solid #dcd3cb; background:#fffaf3; }
.iris-btb-app .primary-outcomes article:last-child { border-right:0; }
.iris-btb-app .primary-outcomes article>span:not(.explain-term),.iris-btb-app .primary-outcomes article>small { display:block; color:#665c63; font-size:13px; }
.iris-btb-app .primary-outcomes strong { display:block; margin:18px 0 9px; font-family:var(--font-display),serif; font-size:clamp(32px,3vw,44px); font-weight:600; line-height:.95; }
.iris-btb-app .supporting-outcomes { margin:0; padding:17px 0; display:grid; grid-template-columns:repeat(3,1fr); border-bottom:1px solid #dcd3cb; }
.iris-btb-app .supporting-outcomes div { padding:0 24px; display:flex; justify-content:space-between; gap:15px; border-right:1px solid #e2d9d2; font-size:12px; }
.iris-btb-app .supporting-outcomes div:last-child { border-right:0; }
.iris-btb-app .supporting-outcomes dt { color:#6a6067; }
.iris-btb-app .supporting-outcomes dd { margin:0; font-weight:800; }
.iris-btb-app .assumptions-panel { margin-top:28px; border:1px solid #ded4cc; border-radius:16px; background:#fffdf9; overflow:visible; }
.iris-btb-app .assumptions-panel>summary { min-height:72px; padding:14px 22px; display:flex; align-items:center; cursor:pointer; }
.iris-btb-app .assumptions-panel>summary span { display:grid; gap:2px; }
.iris-btb-app .assumptions-panel>summary b { font-family:var(--font-display),serif; font-size:23px; font-weight:600; }
.iris-btb-app .assumptions-panel>summary small { color:#6c6269; font-size:11px; }
.iris-btb-app .assumptions-panel>.loan-anatomy,.iris-btb-app .assumptions-panel>.field-grid,.iris-btb-app .advanced-assumptions { margin-inline:22px; }
.iris-btb-app .essential-fields { margin-top:18px; padding-top:22px; border-top:1px solid var(--line); }
.iris-btb-app .essential-fields input,.iris-btb-app .details-grid input,.iris-btb-app .details-grid select { background:#fff; font-variant-numeric:tabular-nums; }
.iris-btb-app .advanced-assumptions { margin-block:18px 24px; border-top:1px solid var(--line); }
.iris-btb-app .advanced-assumptions>summary { min-height:50px; padding-top:10px; color:var(--rose); font-size:12px; font-weight:800; cursor:pointer; }
.iris-btb-app .custom-payment-field { margin:14px 0 5px; padding:13px; display:grid; grid-template-columns:minmax(150px,1fr) minmax(110px,.55fr) auto; gap:10px; align-items:center; border:1px solid var(--line); border-radius:12px; background:rgba(255,253,249,.92); font-size:12px; font-weight:800; }
.iris-btb-app .custom-payment-field input { min-width:0; padding:8px 10px; border:1px solid var(--line); background:#fff; }
.iris-btb-app .custom-payment-field button { min-height:44px; padding:8px 14px; border:1px solid var(--plum); border-radius:9px; background:var(--plum); color:#fff; font-weight:800; }
.iris-btb-app .saved-scenarios { margin-top:28px; padding:28px; display:grid; grid-template-columns:minmax(250px,1fr) auto; gap:20px; border:1px solid #d8d4ca; border-radius:16px; background:#f2f5ed; }
.iris-btb-app .saved-scenarios h3 { margin:4px 0 5px; font-family:var(--font-display),serif; font-size:30px; font-weight:600; }
.iris-btb-app .saved-scenarios p { margin:0; color:#625a60; font-size:12px; }
.iris-btb-app .scenario-list { grid-column:1/-1; display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.iris-btb-app .scenario-list article { min-width:0; padding:18px; border:1px solid #d9d4ca; border-radius:12px; background:#fffdf9; }
.iris-btb-app .scenario-list article>div:first-child { display:flex; justify-content:space-between; gap:10px; }
.iris-btb-app .scenario-list article strong { font-family:var(--font-display),serif; font-size:20px; }
.iris-btb-app .scenario-list article small { color:#746970; font-size:9px; }
.iris-btb-app .scenario-list dl { margin:14px 0; display:grid; gap:7px; }
.iris-btb-app .scenario-list dl div { display:flex; justify-content:space-between; gap:12px; font-size:11px; }
.iris-btb-app .scenario-list dd { margin:0; font-weight:800; }
.iris-btb-app .scenario-list article>div:last-child { display:flex; gap:8px; }
.iris-btb-app .scenario-list button { padding:8px 12px; border:1px solid #d4c6cd; border-radius:9px; background:#fff; color:var(--plum); font-size:10px; font-weight:800; }
.iris-btb-app .chart-card { margin-top:28px; padding:30px; border:1px solid #ded4cc; border-radius:16px; }
.iris-btb-app .chart-takeaway { padding:18px 20px; border-left:4px solid #75836f; background:#f2f5ed; }
.iris-btb-app .chart-takeaway strong { display:block; margin-top:4px; font-family:var(--font-display),serif; font-size:25px; font-weight:600; line-height:1.2; }
.iris-btb-app .chart-title { margin-top:25px; }
.iris-btb-app .chart-title p { margin:5px 0 0; color:#6a6067; font-size:12px; }
.iris-btb-app .chart-point { stroke:#fff; stroke-width:2; cursor:pointer; }
.iris-btb-app .chart-point.baseline { fill:#8c8490; }
.iris-btb-app .chart-point.selected { fill:var(--rose); }
.iris-btb-app .chart-point:focus { outline:none; stroke:#2e1f34; stroke-width:4; }

.iris-btb-app .tool-card { padding:28px; border-radius:16px; }
.iris-btb-app .tool-card h3 { font-size:28px; }
.iris-btb-app .tool-card p,.iris-btb-app .tool-card li { font-size:13px; line-height:1.55; }
.iris-btb-app .lesson-strip { padding:26px 28px; border-radius:14px; }
.iris-btb-app .lesson-strip p { font-size:13px; line-height:1.55; }
.iris-btb-app .library-paths { gap:12px; }
.iris-btb-app .library-paths button { min-height:132px; padding:22px; border-radius:14px; }
.iris-btb-app .library-paths button span { font-size:23px; }
.iris-btb-app .library-paths button small { margin-top:9px; font-size:12px; line-height:1.5; }
.iris-btb-app .learning-guide { padding:26px 28px; border-radius:14px; }
.iris-btb-app .learning-guide p,.iris-btb-app .resource-card dd,.iris-btb-app .library-note { font-size:12px; line-height:1.55; }
.iris-btb-app .resource-card { padding:26px; border-radius:14px; }
.iris-btb-app .resource-card h3 { font-size:28px; }
.iris-btb-app .ring small { font-size:10px; }
.iris-btb-app .result-grid small { font-size:10px; }
.iris-btb-app .resource-top,.iris-btb-app .resource-card label { font-size:10px; }
.iris-btb-app .resource-top a { min-height:44px; display:inline-flex; align-items:center; }
.iris-btb-app .study-bridge { margin-top:28px; padding:26px 28px; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:30px; align-items:center; border-block:1px solid #d8d1c7; background:#f6efe9; }
.iris-btb-app .study-bridge h3 { max-width:820px; margin:4px 0 7px; font-family:var(--font-display),serif; font-size:28px; font-weight:600; line-height:1.1; }
.iris-btb-app .study-bridge p { max-width:760px; margin:0; color:#665c63; font-size:13px; line-height:1.55; }

.iris-btb-app .reflection-card { padding:clamp(34px,4vw,54px); border-radius:20px; }
.iris-btb-app .reflection-copy>p:not(.kicker),.iris-btb-app .journal-card>p { font-size:13px; line-height:1.6; }
.iris-btb-app .journal-card { border-radius:16px; }
.iris-btb-app .data-section { min-height:260px; gap:52px; }
.iris-btb-app .data-section h2 { font-size:48px; }
.iris-btb-app .data-section p { font-size:13px; line-height:1.6; }
.iris-btb-app .follow-section { display:grid; grid-template-columns:minmax(300px,.75fr) minmax(520px,1.25fr); gap:60px; align-items:center; border-top:1px solid var(--line); }
.iris-btb-app .follow-section h2 { margin:6px 0 16px; font-family:var(--font-display),serif; font-size:clamp(44px,4.3vw,62px); font-weight:600; line-height:.98; }
.iris-btb-app .follow-section>div>p:not(.kicker) { color:#655c63; font-size:14px; line-height:1.65; }
.iris-btb-app .follow-section ol { margin:0; padding:0; display:grid; grid-template-columns:repeat(4,1fr); list-style:none; border-block:1px solid #d9d0c8; }
.iris-btb-app .follow-section li { min-height:176px; padding:24px 18px; position:relative; border-right:1px solid #d9d0c8; }
.iris-btb-app .follow-section li:last-child { border-right:0; }
.iris-btb-app .follow-section li:before { content:""; width:10px; height:10px; margin-bottom:18px; display:block; border:2px solid #fffdf9; border-radius:50%; background:#c9bdc9; box-shadow:0 0 0 1px #9d8f9e; }
.iris-btb-app .follow-section li.current:before { background:var(--rose); box-shadow:0 0 0 4px rgba(170,98,125,.14); }
.iris-btb-app .follow-section li span,.iris-btb-app .follow-section li small { display:block; color:#6c6269; font-size:10px; }
.iris-btb-app .follow-section li strong { display:block; margin:9px 0 7px; font-family:var(--font-display),serif; font-size:21px; font-weight:600; line-height:1.05; }
.iris-btb-app .emotional-close { padding:clamp(92px,10vw,150px) clamp(24px,8vw,140px); text-align:center; background:#f7e8ed; border-top:1px solid var(--line); }
.iris-btb-app .emotional-close h2 { max-width:980px; margin:0 auto 27px; font-family:var(--font-display),serif; font-size:clamp(52px,5.5vw,78px); font-weight:600; line-height:.92; letter-spacing:-.035em; }
.iris-btb-app .emotional-close>p:not(.kicker) { max-width:680px; margin:0 auto 34px; color:#615660; font-size:17px; }
.iris-btb-app .emotional-close>div { display:flex; justify-content:center; align-items:center; gap:22px; flex-wrap:wrap; }
.iris-btb-app .bloom-editorial-page>footer { min-height:190px; padding:42px var(--landing-gutter); border-top:0; }
.iris-btb-app .bloom-editorial-page>footer span,.iris-btb-app .bloom-editorial-page>footer p,.iris-btb-app .bloom-editorial-page>footer a { font-size:11px; line-height:1.55; }
.iris-btb-app .bloom-editorial-page>footer a { min-width:44px; justify-content:center; }
.iris-btb-app .calm-card>a,.iris-btb-app .library-card>a:first-child,.iris-btb-app footer a { min-height:44px; display:inline-flex; align-items:center; }

.iris-btb-app .iris-btb-progressive-shell { max-width:980px; margin:0 auto; padding:clamp(44px,7vw,90px) clamp(20px,5vw,60px); color:#2f2931; background:#fffaf3; font-family:Georgia,serif; }
.iris-btb-app .iris-btb-progressive-shell h1 { margin:10px 0 18px; font-size:clamp(46px,7vw,76px); line-height:.98; }
.iris-btb-app .iris-btb-progressive-shell>p { max-width:760px; font-family:Arial,sans-serif; font-size:17px; line-height:1.65; }
.iris-btb-app .iris-btb-progressive-eyebrow { color:#8b5269; font-size:12px!important; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.iris-btb-app .iris-btb-progressive-shell nav { margin:30px 0; padding-block:18px; display:flex; flex-wrap:wrap; gap:10px 22px; border-block:1px solid #e8ded5; }
.iris-btb-app .iris-btb-progressive-shell a { min-height:44px; display:inline-flex; align-items:center; color:#75455b; font-family:Arial,sans-serif; font-weight:700; }
.iris-btb-app .iris-btb-progressive-shell section { padding:20px 0; border-bottom:1px solid #e8ded5; }
.iris-btb-app .iris-btb-progressive-shell section h2 { margin:0 0 8px; font-size:28px; }
.iris-btb-app .iris-btb-progressive-shell section p,.iris-btb-app .iris-btb-noscript { font-family:Arial,sans-serif; font-size:14px; line-height:1.6; }
.iris-btb-app .iris-btb-noscript { max-width:980px; margin:0 auto; padding:16px clamp(20px,5vw,60px); background:#f7e8ed; color:#4f3b52; }

@media (max-width:1240px) {
  .iris-btb-app .bloom-editorial-shell { grid-template-columns:120px minmax(0,1fr); }
  .iris-btb-app .vine-stop { grid-template-columns:30px minmax(0,1fr); gap:4px; font-size:16px; }
  .iris-btb-app .hub-showcase { grid-template-columns:minmax(220px,.72fr) minmax(420px,1.28fr); }
  .iris-btb-app .showcase-calendar { grid-column:1; padding:24px 18px 0 0; border-left:0; border-top:1px solid var(--line); }
  .iris-btb-app .reflection-paper { grid-column:2; margin-top:0; }
  .iris-btb-app .hub-chapter-strip { grid-template-columns:1fr 1fr; row-gap:20px; overflow:visible; }
  .iris-btb-app .hub-chapter:nth-child(2) { border-right:0; }
  .iris-btb-app .hub-chapter:nth-child(n+3) { padding-top:20px; border-top:1px solid var(--line); }
  .iris-btb-app .today-grid { grid-template-columns:1fr 1.25fr; }
  .iris-btb-app .future-note { grid-column:1/-1; min-height:230px; }
  .iris-btb-app .future-note blockquote { max-width:760px; }
}

@media (max-width:1100px) {
  .iris-btb-app .bloom-editorial-shell { --btb-route-nav-height:49px; }
  .iris-btb-app .landing-product-nav { position:sticky; top:calc(var(--btb-admin-bar-height) + var(--btb-site-header-height)); z-index:49; min-height:49px; padding:5px 14px; display:flex; align-items:center; gap:7px; overflow-x:auto; border-bottom:1px solid var(--line); background:rgba(255,253,249,.97); backdrop-filter:blur(14px); scrollbar-width:none; }
  .iris-btb-app .landing-product-nav a { min-height:44px; padding:11px 13px; flex:0 0 auto; border-radius:999px; font-size:11px; font-weight:800; }
  .iris-btb-app .landing-product-nav a.active { background:var(--plum); color:#fff; }
  .iris-btb-app .vine-navigation { top:calc(var(--btb-admin-bar-height) + var(--btb-site-header-height) + var(--btb-route-nav-height)); height:calc(100vh - var(--btb-admin-bar-height) - var(--btb-site-header-height) - var(--btb-route-nav-height)); }
  .iris-btb-app .bloom-editorial-page .hero { grid-template-columns:minmax(390px,44%) minmax(0,56%); }
  .iris-btb-app .metric-grid { grid-template-columns:1fr 1fr; }
  .iris-btb-app .payment-layout { grid-template-columns:1fr; }
  .iris-btb-app .decision-first { grid-template-columns:1fr; }
  .iris-btb-app .follow-section { grid-template-columns:1fr; gap:30px; }
}

@media (max-width:900px) {
  .iris-btb-app .bloom-editorial-shell { display:block; border-inline:0; --btb-rail-nav-height:66px; }
  .iris-btb-app .vine-navigation { position:sticky; top:calc(var(--btb-admin-bar-height) + var(--btb-site-header-height) + var(--btb-route-nav-height)); z-index:12; width:100%; height:66px; min-height:66px; padding:6px 14px; flex-direction:row; align-items:center; justify-content:flex-start; gap:4px; border-right:0; border-bottom:1px solid var(--line); overflow-x:auto; }
  .iris-btb-app .bloom-lockup { min-width:72px; min-height:54px; display:flex; justify-content:center; align-items:center; }
  .iris-btb-app .bloom-lockup img { width:52px; height:52px; }
  .iris-btb-app .bloom-lockup strong,.iris-btb-app .bloom-lockup span { display:none; }
  .iris-btb-app .vine-progress { display:none; }
  .iris-btb-app .vine-stop { min-width:82px; min-height:52px; padding:0 9px; grid-template-columns:24px auto; gap:5px; justify-content:center; border-radius:999px; font-size:15px; }
  .iris-btb-app .vine-marker { width:22px; height:22px; border-width:2px; }
  .iris-btb-app .vine-stop.active:after { display:none; }
  .iris-btb-app .vine-stop.active { background:var(--blush); }
  .iris-btb-app .bloom-editorial-page .hero { height:auto; min-height:0; grid-template-columns:1fr; }
  .iris-btb-app .bloom-editorial-page .hero-copy { padding:58px clamp(24px,6vw,54px) 48px; }
  .iris-btb-app .bloom-editorial-page .hero-copy h1 { max-width:650px; }
  .iris-btb-app .desk-scene { min-height:450px; }
  .iris-btb-app .hub-showcase { grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr); padding-block:28px; }
  .iris-btb-app .planner-live-preview { height:320px; }
  .iris-btb-app .showcase-calendar { grid-column:1; }
  .iris-btb-app .reflection-paper { grid-column:2; }
  .iris-btb-app .mode-wrap { width:calc(100% - 32px); }
  .iris-btb-app .section { padding:68px 0 82px; }
  .iris-btb-app .journey-section,.iris-btb-app .payment-section { margin-inline:calc(var(--landing-gutter) * -1); padding:68px var(--landing-gutter) 82px; }
  .iris-btb-app .today-grid { grid-template-columns:1fr 1fr; }
  .iris-btb-app .progress-card { grid-column:1/-1; order:-1; }
  .iris-btb-app .future-note { grid-column:auto; }
  .iris-btb-app .graduation-path { max-width:680px; }
  .iris-btb-app .application-row { grid-template-columns:48px minmax(0,1fr); }
  .iris-btb-app .application-outcome { grid-column:2; }
  .iris-btb-app .data-section { grid-template-columns:1fr; gap:26px; }
  .iris-btb-app .primary-outcomes { grid-template-columns:1fr 1fr 1fr; }
  .iris-btb-app .supporting-outcomes div { padding-inline:14px; }
  .iris-btb-app .scenario-list { grid-template-columns:1fr 1fr; }
}

@media (max-width:620px) {
  .iris-btb-app .landing-product-nav { flex-wrap:nowrap; justify-content:flex-start; overflow-x:auto; }
  .iris-btb-app .landing-product-nav a { flex:0 0 auto; white-space:nowrap; text-align:left; }
  .iris-btb-app .bloom-editorial-shell { --btb-rail-nav-height:60px; }
  .iris-btb-app .vine-navigation { height:60px; min-height:60px; padding-inline:8px; }
  .iris-btb-app .bloom-lockup { min-width:50px; }
  .iris-btb-app .bloom-lockup img { width:46px; height:46px; }
  .iris-btb-app .vine-stop { min-width:60px; min-height:48px; padding:0 7px; grid-template-columns:1fr; font-size:12px; text-align:center; }
  .iris-btb-app .vine-marker { display:none; }
  .iris-btb-app .bloom-editorial-page .hero-copy { padding:42px 20px 38px; }
  .iris-btb-app .bloom-editorial-page .hero-copy h1 { font-size:52px; }
  .iris-btb-app .bloom-editorial-page .hero-copy .hero-dek { font-size:15px; }
  .iris-btb-app .bloom-editorial-page .hero-copy .hero-actions { display:grid; }
  .iris-btb-app .desk-scene { min-height:300px; }
  .iris-btb-app .desk-scene>img { object-position:52% center; }
  .iris-btb-app .continue-strip { padding:16px 20px; align-items:flex-start; flex-direction:column; }
  .iris-btb-app .continue-strip>div { display:block; }
  .iris-btb-app .continue-strip .kicker { margin-bottom:6px; }
  .iris-btb-app .continue-strip strong,.iris-btb-app .continue-strip span { display:block; }
  .iris-btb-app .continue-strip span { margin-top:4px; }
  .iris-btb-app .hub-showcase { padding:24px 16px; grid-template-columns:1fr; gap:20px; }
  .iris-btb-app .planner-intro,.iris-btb-app .showcase-calendar,.iris-btb-app .reflection-paper { grid-column:1; padding:0; border:0; }
  .iris-btb-app .planner-intro h2 { font-size:40px; }
  .iris-btb-app .planner-intro>p:not(.kicker) { font-size:14px; }
  .iris-btb-app .planner-live-preview { height:250px; }
  .iris-btb-app .showcase-calendar { padding-top:22px; border-top:1px solid var(--line); }
  .iris-btb-app .reflection-paper { padding:24px 20px; }
  .iris-btb-app .hub-chapter-strip { grid-template-columns:1fr; padding:10px 16px 20px; }
  .iris-btb-app .hub-chapter,.iris-btb-app .hub-chapter:first-child,.iris-btb-app .hub-chapter:last-child { min-height:150px; padding:18px 0; border-right:0; border-top:1px solid var(--line); }
  .iris-btb-app .hub-chapter:first-child { border-top:0; }
  .iris-btb-app .hub-chapter img { height:128px; }
  .iris-btb-app .hub-chapter h2 { font-size:26px; }
  .iris-btb-app .hub-chapter p { font-size:12px; }
  .iris-btb-app .mode-wrap { width:auto; margin:22px 14px; padding:10px; display:grid; }
  .iris-btb-app .mode-wrap .segmented { display:grid; grid-template-columns:1fr 1fr; border-radius:12px; }
  .iris-btb-app .mode-wrap p { margin:0 5px; text-align:left; }
  .iris-btb-app .content-shell { padding-inline:16px; }
  .iris-btb-app .section { padding:56px 0 70px; }
  .iris-btb-app .section-heading { align-items:flex-start; flex-direction:column; }
  .iris-btb-app .section-heading h2,.iris-btb-app .reflection-copy h2 { font-size:44px; }
  .iris-btb-app .date-badge { min-width:0; width:100%; grid-template-columns:auto 1fr; align-items:center; gap:8px; }
  .iris-btb-app .date-badge time { font-size:15px; }
  .iris-btb-app .today-grid,.iris-btb-app .metric-grid,.iris-btb-app .result-grid { grid-template-columns:1fr; }
  .iris-btb-app .today-grid .card { min-height:0; padding:24px 20px; }
  .iris-btb-app .progress-card { order:0; }
  .iris-btb-app .future-note { min-height:280px; }
  .iris-btb-app .graduation-path { margin:28px 0; grid-template-columns:1fr; gap:0; }
  .iris-btb-app .graduation-path:before { left:8px; right:auto; top:12px; bottom:16px; width:2px; height:auto; background:linear-gradient(var(--rose) 0 30%,#b79bd1 30% 55%,#d8cedb 55%); }
  .iris-btb-app .graduation-path li { min-height:70px; padding:0 0 18px 36px; text-align:left; }
  .iris-btb-app .graduation-path li:before { top:3px; left:1px; }
  .iris-btb-app .metric { min-height:154px; }
  .iris-btb-app .journey-section,.iris-btb-app .payment-section { margin-inline:-16px; padding:56px 16px 70px; }
  .iris-btb-app .journey-stats { grid-template-columns:1fr 1fr; }
  .iris-btb-app .journey-stats div { display:block; }
  .iris-btb-app .journey-stats span,.iris-btb-app .journey-stats strong { display:block; }
  .iris-btb-app .application-row { padding:19px 15px; gap:12px; }
  .iris-btb-app .application-main h3 { font-size:22px; }
  .iris-btb-app .funding-next-action { grid-template-columns:1fr; gap:12px; padding:18px 16px; }
  .iris-btb-app .custom-payment-field { grid-template-columns:1fr; }
  .iris-btb-app .decision-first { grid-template-columns:1fr; }
  .iris-btb-app .payment-choice,.iris-btb-app .interpretation-card { padding:22px 18px; }
  .iris-btb-app .interpretation-card { grid-template-columns:92px minmax(0,1fr); gap:14px; }
  .iris-btb-app .ring { width:88px; height:88px; }
  .iris-btb-app .primary-outcomes { grid-template-columns:1fr; }
  .iris-btb-app .primary-outcomes article { min-height:0; border-right:0; border-bottom:1px solid #dcd3cb; }
  .iris-btb-app .primary-outcomes article:last-child { border-bottom:0; }
  .iris-btb-app .supporting-outcomes { grid-template-columns:1fr; }
  .iris-btb-app .supporting-outcomes div { padding:12px 4px; border-right:0; border-bottom:1px solid #e2d9d2; }
  .iris-btb-app .assumptions-panel>.loan-anatomy,.iris-btb-app .assumptions-panel>.field-grid,.iris-btb-app .advanced-assumptions { margin-inline:14px; }
  .iris-btb-app .saved-scenarios { padding:22px 18px; grid-template-columns:1fr; }
  .iris-btb-app .scenario-list { grid-template-columns:1fr; }
  .iris-btb-app .chart-card { padding:22px 16px; }
  .iris-btb-app .chart-takeaway strong { font-size:21px; }
  .iris-btb-app .tool-card,.iris-btb-app .resource-card { padding:22px 20px; }
  .iris-btb-app .library-paths { grid-template-columns:1fr; }
  .iris-btb-app .library-paths button { min-height:0; }
  .iris-btb-app .learning-guide { grid-template-columns:1fr; padding:22px 20px; }
  .iris-btb-app .study-bridge { padding:22px 18px; grid-template-columns:1fr; gap:12px; }
  .iris-btb-app .reflection-card { padding:24px 16px; }
  .iris-btb-app .follow-section { grid-template-columns:1fr; gap:24px; }
  .iris-btb-app .follow-section ol { grid-template-columns:1fr; }
  .iris-btb-app .follow-section li { min-height:0; padding:18px 16px; border-right:0; border-bottom:1px solid #d9d0c8; }
  .iris-btb-app .follow-section li:last-child { border-bottom:0; }
  .iris-btb-app .emotional-close { padding:76px 20px; }
  .iris-btb-app .emotional-close>div { align-items:stretch; flex-direction:column; }
  .iris-btb-app .emotional-close h2 { font-size:50px; }
  .iris-btb-app .bloom-editorial-page>footer { padding:36px 20px; }
  .iris-btb-app .table-wrap { max-width:100%; overflow-x:auto; overscroll-behavior-inline:contain; }
  .iris-btb-app .table-wrap table { min-width:680px; }
  .iris-btb-app .content-shell,.iris-btb-app .page-flow,.iris-btb-app .section,.iris-btb-app .today-grid,.iris-btb-app .metric-grid,.iris-btb-app .payment-layout,.iris-btb-app .payment-results,.iris-btb-app .result-grid,.iris-btb-app .reflection-card,.iris-btb-app .data-section { min-width:0; max-width:100%; }
  .iris-btb-app .data-actions { min-width:0; flex-wrap:wrap; }
}

.iris-btb-app /* Built to Bloom 1.4.2 — command center and progressive workbenches */
.bloom-editorial-shell { width:100%; max-width:none; grid-template-columns:148px minmax(0,1fr); overflow:visible; }
.iris-btb-app .bloom-editorial-page { width:100%; min-width:0; max-width:100%; overflow:visible; }
.iris-btb-app .bloom-editorial-page>* { min-width:0; max-width:100%; }
.iris-btb-app .vine-navigation { width:148px; height:min(690px,calc(100vh - var(--btb-admin-bar-height) - var(--btb-site-header-height) - 20px)); min-height:540px; padding:12px 11px; border-radius:0 18px 18px 0; background:#fffdf9; }
.iris-btb-app .bloom-lockup { min-height:104px; }
.iris-btb-app .bloom-lockup img { width:56px; height:56px; }
.iris-btb-app .vine-progress { left:31px; top:116px; bottom:24px; }
.iris-btb-app .vine-stop { min-height:62px; grid-template-columns:38px minmax(0,1fr); font-size:17px; }
.iris-btb-app .vine-marker { width:34px; height:34px; border-radius:10px 50% 50% 50%; background:#f6eee7; }
.iris-btb-app .vine-marker img { width:100%; height:100%; object-fit:cover; opacity:.95; mix-blend-mode:multiply; }
.iris-btb-app .vine-bud .vine-marker img { object-position:center 0%; }
.iris-btb-app .vine-plan .vine-marker img { object-position:center 20%; }
.iris-btb-app .vine-fund .vine-marker img { object-position:center 40%; }
.iris-btb-app .vine-learn .vine-marker img { object-position:center 60%; }
.iris-btb-app .vine-grow .vine-marker img { object-position:center 80%; }
.iris-btb-app .vine-follow .vine-marker img { object-position:center 100%; }

.iris-btb-app .bloom-editorial-page .hero { height:auto; min-height:500px; grid-template-columns:minmax(390px,42%) minmax(0,58%); }
.iris-btb-app .bloom-editorial-page .hero-copy { padding:44px clamp(30px,4vw,64px); }
.iris-btb-app .bloom-editorial-page .hero-copy h1 { font-size:clamp(56px,4.8vw,74px); }
.iris-btb-app .desk-scene { min-height:500px; }
.iris-btb-app .continue-strip { min-height:74px; padding-inline:clamp(22px,4vw,60px); }

.iris-btb-app .bloom-command,.iris-btb-app .plan-command,.iris-btb-app .journey-model,.iris-btb-app .mode-wrap,.iris-btb-app .content-shell { width:auto; max-width:none; margin-inline:clamp(22px,4vw,60px); }
.iris-btb-app .bloom-command { padding:64px 0 52px; border-bottom:1px solid var(--line); }
.iris-btb-app .command-heading { display:flex; justify-content:space-between; gap:28px; align-items:end; }
.iris-btb-app .command-heading h2 { margin:5px 0 8px; font-family:var(--font-display),serif; font-size:clamp(48px,5vw,72px); font-weight:600; line-height:.94; letter-spacing:-.035em; }
.iris-btb-app .command-heading>div>p:last-child { margin:0; color:#665c63; font-size:14px; }
.iris-btb-app .privacy-toggle { padding:10px 16px; border:1px solid #d7c9cf; border-radius:999px; background:#fffdf9; color:var(--plum); font-size:11px; font-weight:800; }
.iris-btb-app .privacy-toggle[aria-pressed="true"] { background:var(--plum); color:#fff; }
.iris-btb-app .since-visit { margin:24px 0 18px; padding:13px 18px; display:flex; align-items:center; gap:14px; border:1px solid #dce1d4; border-radius:12px; background:#f1f5ed; }
.iris-btb-app .since-visit strong { font-family:var(--font-display),serif; font-size:19px; font-weight:650; }
.iris-btb-app .since-visit span { color:#5e575d; font-size:12px; }
.iris-btb-app .since-visit small { margin-left:auto; color:#71686e; font-size:10px; }
.iris-btb-app .since-visit.first-use { background:#f7edf1; border-color:#ead8df; }
.iris-btb-app .today-command-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr); gap:18px; }
.iris-btb-app .today-priority { min-width:0; min-height:332px; padding:clamp(26px,3.2vw,44px); display:flex; flex-direction:column; border:1px solid #d9cdc6; border-radius:20px; background:linear-gradient(145deg,#fffdf9,#f8eee9); box-shadow:0 18px 46px rgba(74,53,60,.075); }
.iris-btb-app .today-priority>.kicker { display:flex; justify-content:space-between; gap:12px; }
.iris-btb-app .priority-line { margin:auto 0; display:grid; grid-template-columns:48px minmax(0,1fr); gap:18px; align-items:start; }
.iris-btb-app .priority-line h3 { max-width:720px; margin:0 0 7px; font-family:var(--font-display),serif; font-size:clamp(36px,4vw,56px); font-weight:600; line-height:.98; }
.iris-btb-app .priority-line span { color:#765269; font-size:12px; font-weight:800; }
.iris-btb-app .today-priority>.text-link { margin-top:auto; align-self:flex-start; border:0; background:transparent; color:var(--rose); font-size:12px; font-weight:800; }
.iris-btb-app .today-sequence { margin:14px 0 0; padding:14px 18px 14px 34px; border-top:1px solid #e1d4cf; color:#5d555b; font-size:12px; line-height:1.55; }
.iris-btb-app .trust-label { display:inline-flex; align-items:center; min-height:22px; padding:3px 8px; border:1px solid #d9d1ca; border-radius:999px; color:#6d6369; background:#fffdf9; font-size:9px!important; font-style:normal; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.iris-btb-app .today-support { min-width:0; display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.iris-btb-app .today-support a { min-width:0; min-height:154px; padding:20px; display:flex; flex-direction:column; border:1px solid #dfd5cf; border-radius:14px; background:#fffdf9; color:var(--ink); }
.iris-btb-app .today-support a:nth-child(5) { grid-column:1/-1; min-height:116px; background:#f1f5ed; }
.iris-btb-app .today-support span { color:var(--rose); font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.iris-btb-app .today-support strong { margin:10px 0 auto; font-family:var(--font-display),serif; font-size:22px; font-weight:650; line-height:1.05; overflow-wrap:anywhere; }
.iris-btb-app .today-support small { margin-top:12px; color:#6a6167; font-size:10px; }

.iris-btb-app .plan-command { padding:52px 0; display:grid; grid-template-columns:minmax(220px,.62fr) minmax(420px,1.38fr) minmax(290px,.8fr); gap:24px; border-bottom:1px solid var(--line); }
.iris-btb-app .plan-command>* { min-width:0; }
.iris-btb-app .plan-command .planner-intro { padding:18px 0; }
.iris-btb-app .plan-command .planner-intro h2 { font-size:clamp(40px,4vw,56px); }
.iris-btb-app .plan-command .planner-live-preview { height:360px; }
.iris-btb-app .plan-command .showcase-calendar { padding:12px 0 12px 20px; }
.iris-btb-app .journey-model { padding:20px 0 34px; display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); border-bottom:1px solid var(--line); }
.iris-btb-app .journey-model a { min-width:0; min-height:86px; padding:14px 18px; border-right:1px solid var(--line); color:var(--ink); }
.iris-btb-app .journey-model a:last-child { border-right:0; }
.iris-btb-app .journey-model span { display:block; font-family:var(--font-display),serif; font-size:25px; font-weight:650; }
.iris-btb-app .journey-model small { display:block; margin-top:5px; color:#6d6369; font-size:10px; line-height:1.4; }
.iris-btb-app .mode-wrap { margin-top:26px; margin-bottom:24px; width:auto; }
.iris-btb-app .content-shell { padding:0 0 72px; }
.iris-btb-app .page-flow { min-width:0; }
.iris-btb-app .today-section[hidden] { display:none!important; }

.iris-btb-app .deep-tool { width:100%; margin:14px 0; border:1px solid #ddd3cc; border-radius:16px; background:#fffdf9; overflow:hidden; }
.iris-btb-app .deep-tool-summary { min-height:112px; padding:20px 24px; display:flex; justify-content:space-between; align-items:center; gap:24px; cursor:pointer; list-style:none; background:linear-gradient(110deg,#fffdf9,#f7f1eb); }
.iris-btb-app .deep-tool-summary::-webkit-details-marker { display:none; }
.iris-btb-app .deep-tool-summary span { min-width:0; display:grid; gap:3px; }
.iris-btb-app .deep-tool-summary small { color:var(--rose); font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.iris-btb-app .deep-tool-summary strong { font-family:var(--font-display),serif; font-size:clamp(26px,2.5vw,36px); font-weight:650; line-height:1; }
.iris-btb-app .deep-tool-summary em { color:#665d63; font-size:12px; font-style:normal; }
.iris-btb-app .deep-tool-summary>b { min-height:44px; padding:10px 15px; display:flex; align-items:center; border:1px solid #d6c4cc; border-radius:999px; color:var(--plum); background:#fff; font-size:10px; white-space:nowrap; }
.iris-btb-app .deep-tool-summary>b[data-closed-label] { font-size:0; }
.iris-btb-app .deep-tool-summary>b[data-closed-label]:after { content:attr(data-closed-label); font-size:10px; }
.iris-btb-app .deep-tool[open]>.deep-tool-summary { border-bottom:1px solid var(--line); background:#f4f6ef; }
.iris-btb-app .deep-tool[open]>.deep-tool-summary>b[data-open-label]:after { content:attr(data-open-label); }
.iris-btb-app .deep-tool>.section { padding:58px clamp(20px,4vw,54px) 70px; margin:0; background:#fffdf9; }
.iris-btb-app .journey-section,.iris-btb-app .payment-section { margin-inline:0!important; }
.iris-btb-app .journey-stats,.iris-btb-app .application-row,.iris-btb-app .decision-first,.iris-btb-app .primary-outcomes,.iris-btb-app .supporting-outcomes,.iris-btb-app .field-grid,.iris-btb-app .loan-anatomy,.iris-btb-app .scenario-list,.iris-btb-app .tool-grid,.iris-btb-app .library-paths,.iris-btb-app .resource-grid,.iris-btb-app .reflection-card,.iris-btb-app .follow-section { min-width:0; max-width:100%; }
.iris-btb-app .decision-first { grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); }
.iris-btb-app .application-row { grid-template-columns:52px minmax(0,1fr) minmax(210px,.52fr); }
.iris-btb-app .growth-mark { overflow:hidden; }
.iris-btb-app .growth-mark img { width:100%; height:100%; object-fit:cover; object-position:center 58%; mix-blend-mode:multiply; }
.iris-btb-app .assumptions-panel { overflow:hidden; }
.iris-btb-app .assumptions-panel:not([open])>*:not(summary) { display:none; }
.iris-btb-app .balance-comparison { margin-top:24px; display:grid; grid-template-columns:minmax(0,1fr) minmax(180px,.7fr) minmax(0,1fr); border-block:1px solid #ddd4cc; }
.iris-btb-app .balance-comparison>* { min-width:0; min-height:148px; padding:24px; display:flex; flex-direction:column; justify-content:center; text-align:center; border-right:1px solid #ddd4cc; }
.iris-btb-app .balance-comparison>*:last-child { border-right:0; }
.iris-btb-app .balance-comparison span,.iris-btb-app .balance-comparison small { color:#6c6269; font-size:10px; }
.iris-btb-app .balance-comparison strong { margin:10px 0 7px; font-family:var(--font-display),serif; font-size:clamp(27px,3vw,42px); font-weight:650; line-height:1; }
.iris-btb-app .balance-comparison>div { background:#f2f5ed; }
.iris-btb-app .table-wrap { max-width:100%; overflow-x:auto; }

.iris-btb-app .daily-encouragement { margin-bottom:22px; padding:26px 30px; display:flex; align-items:end; justify-content:space-between; gap:24px; border:1px solid #eadbd9; border-radius:16px; background-color:#fdf5f1; background-size:cover; }
.iris-btb-app .daily-encouragement blockquote { max-width:850px; margin:8px 0 0; font-family:var(--font-display),serif; font-size:clamp(28px,3vw,40px); font-style:italic; line-height:1.08; }
.iris-btb-app .weekly-review { margin:0 0 22px; border:1px solid #d9ddd2; border-radius:16px; background:#f2f5ed; overflow:hidden; }
.iris-btb-app .weekly-review>summary { min-height:88px; padding:18px 24px; display:flex; justify-content:space-between; align-items:center; gap:20px; cursor:pointer; list-style:none; }
.iris-btb-app .weekly-review>summary span { display:grid; }
.iris-btb-app .weekly-review>summary small { color:#7a4960; font-size:10px; font-weight:800; text-transform:uppercase; }
.iris-btb-app .weekly-review>summary strong { font-family:var(--font-display),serif; font-size:26px; font-weight:650; }
.iris-btb-app .weekly-review>summary b { font-size:10px; }
.iris-btb-app .focus-history summary,.iris-btb-app .why-change summary,.iris-btb-app .payment-controls summary,.iris-btb-app .reflection-history summary {
  min-height:44px;
  display:flex;
  align-items:center;
  cursor:pointer;
}
.iris-btb-app .weekly-review-grid { padding:22px 24px 26px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)) auto; gap:12px; border-top:1px solid #d9ddd2; }
.iris-btb-app .weekly-review-grid label { display:grid; gap:7px; color:#554d53; font-size:11px; font-weight:800; }
.iris-btb-app .weekly-review-grid input { min-width:0; padding:10px 12px; border:1px solid #d6cec8; border-radius:9px; background:#fffdf9; }
.iris-btb-app .weekly-review-grid .button { align-self:end; }

@media (max-width:1240px) {
  .iris-btb-app .bloom-editorial-shell { grid-template-columns:128px minmax(0,1fr); }
  .iris-btb-app .vine-navigation { width:128px; }
  .iris-btb-app .plan-command { grid-template-columns:minmax(220px,.65fr) minmax(0,1.35fr); }
  .iris-btb-app .plan-command .showcase-calendar { grid-column:1/-1; padding:24px 0 0; border-left:0; border-top:1px solid var(--line); }
  .iris-btb-app .showcase-calendar .bloom-preview-list { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .iris-btb-app .showcase-calendar .bloom-preview-list article { border-right:1px solid var(--line); border-bottom:0; }
}

@media (max-width:1100px) {
  .iris-btb-app .bloom-editorial-shell { display:block; }
  .iris-btb-app .vine-navigation { position:sticky; top:calc(var(--btb-admin-bar-height) + var(--btb-site-header-height) + var(--btb-route-nav-height)); z-index:12; width:100%; height:68px; min-height:68px; padding:6px 12px; flex-direction:row; border:0; border-bottom:1px solid var(--line); border-radius:0; overflow-x:auto; }
  .iris-btb-app .bloom-lockup { min-width:66px; min-height:54px; }
  .iris-btb-app .bloom-lockup img { width:48px; height:48px; }
  .iris-btb-app .bloom-lockup strong,.iris-btb-app .bloom-lockup span,.iris-btb-app .vine-progress { display:none; }
  .iris-btb-app .vine-stop { min-width:92px; min-height:54px; grid-template-columns:30px auto; }
  .iris-btb-app .vine-stop.active:after { display:none; }
  .iris-btb-app .today-command-grid { grid-template-columns:1fr; }
  .iris-btb-app .today-support { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .iris-btb-app .today-support a:nth-child(5) { grid-column:auto; min-height:154px; }
  .iris-btb-app .plan-command { grid-template-columns:minmax(220px,.65fr) minmax(0,1.35fr); }
  .iris-btb-app .journey-model { grid-template-columns:repeat(3,1fr); }
  .iris-btb-app .journey-model a:nth-child(3) { border-right:0; }
  .iris-btb-app .journey-model a:nth-child(-n+3) { border-bottom:1px solid var(--line); }
  .iris-btb-app .decision-first { grid-template-columns:1fr; }
  .iris-btb-app .weekly-review-grid { grid-template-columns:1fr 1fr; }
}

@media (max-width:720px) {
  .iris-btb-app .landing-site-header,.iris-btb-app .landing-product-nav { position:relative; top:auto; }
  .iris-btb-app .vine-navigation { top:0; }
  .iris-btb-app .landing-product-nav { flex-wrap:wrap!important; justify-content:center; overflow:visible; }
  .iris-btb-app .landing-product-nav a { flex:1 1 28%; justify-content:center; padding-inline:7px; }
  .iris-btb-app .bloom-editorial-page .hero { height:auto; min-height:0; grid-template-columns:1fr; }
  .iris-btb-app .bloom-editorial-page .hero-copy { padding:44px 22px 38px; }
  .iris-btb-app .bloom-editorial-page .hero-copy h1 { font-size:clamp(50px,13vw,62px); }
  .iris-btb-app .desk-scene { min-height:310px; }
  .iris-btb-app .continue-strip { padding-inline:20px; align-items:flex-start; flex-direction:column; }
  .iris-btb-app .bloom-command,.iris-btb-app .plan-command,.iris-btb-app .journey-model,.iris-btb-app .mode-wrap,.iris-btb-app .content-shell { margin-inline:16px; }
  .iris-btb-app .command-heading { align-items:flex-start; flex-direction:column; }
  .iris-btb-app .command-heading h2 { font-size:50px; }
  .iris-btb-app .since-visit { align-items:flex-start; flex-direction:column; }
  .iris-btb-app .since-visit small { margin-left:0; }
  .iris-btb-app .today-support { grid-template-columns:1fr 1fr; }
  .iris-btb-app .today-support a:nth-child(5) { grid-column:1/-1; min-height:112px; }
  .iris-btb-app .plan-command { grid-template-columns:1fr; }
  .iris-btb-app .plan-command .planner-live-preview { height:280px; }
  .iris-btb-app .plan-command .showcase-calendar { grid-column:1; }
  .iris-btb-app .showcase-calendar .bloom-preview-list { grid-template-columns:1fr; }
  .iris-btb-app .showcase-calendar .bloom-preview-list article { border-right:0; border-bottom:1px solid var(--line); }
  .iris-btb-app .journey-model { grid-template-columns:1fr 1fr; }
  .iris-btb-app .journey-model a,.iris-btb-app .journey-model a:nth-child(3) { border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
  .iris-btb-app .journey-model a:nth-child(even) { border-right:0; }
  .iris-btb-app .journey-model a:nth-last-child(-n+2) { border-bottom:0; }
  .iris-btb-app .mode-wrap { width:auto; }
  .iris-btb-app .deep-tool-summary { align-items:flex-start; flex-direction:column; }
  .iris-btb-app .deep-tool-summary>b { white-space:normal; }
  .iris-btb-app .application-row { grid-template-columns:44px minmax(0,1fr); }
  .iris-btb-app .application-outcome { grid-column:2; }
  .iris-btb-app .balance-comparison { grid-template-columns:1fr; }
  .iris-btb-app .balance-comparison>* { min-height:118px; border-right:0; border-bottom:1px solid #ddd4cc; }
  .iris-btb-app .balance-comparison>*:last-child { border-bottom:0; }
  .iris-btb-app .weekly-review-grid { grid-template-columns:1fr; }
  .iris-btb-app .daily-encouragement { align-items:flex-start; flex-direction:column; }
}

@media (max-width:480px) {
  .iris-btb-app .landing-product-nav { padding-inline:8px; }
  .iris-btb-app .landing-product-nav a { flex-basis:30%; font-size:10px; }
  .iris-btb-app .vine-navigation { height:62px; min-height:62px; padding:6px 4px; display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); overflow:visible; }
  .iris-btb-app .bloom-lockup { display:none; }
  .iris-btb-app .vine-stop { min-width:0; width:auto; padding:0 2px; display:flex; justify-content:center; font-size:11px; }
  .iris-btb-app .vine-marker { display:none; }
  .iris-btb-app .bloom-command { padding-top:46px; }
  .iris-btb-app .command-heading h2 { font-size:46px; }
  .iris-btb-app .today-priority { min-height:360px; padding:24px 20px; }
  .iris-btb-app .priority-line { grid-template-columns:44px minmax(0,1fr); }
  .iris-btb-app .priority-line h3 { font-size:38px; }
  .iris-btb-app .today-support { grid-template-columns:1fr; }
  .iris-btb-app .today-support a,.iris-btb-app .today-support a:nth-child(5) { grid-column:auto; min-height:126px; }
  .iris-btb-app .plan-command .planner-live-preview { height:235px; }
  .iris-btb-app .journey-model a { padding:12px; }
  .iris-btb-app .journey-model span { font-size:22px; }
  .iris-btb-app .deep-tool-summary { min-height:134px; padding:18px; }
  .iris-btb-app .deep-tool>.section { padding:48px 16px 58px; }
  .iris-btb-app .primary-outcomes,.iris-btb-app .supporting-outcomes,.iris-btb-app .scenario-list,.iris-btb-app .tool-grid,.iris-btb-app .library-paths,.iris-btb-app .resource-grid { grid-template-columns:1fr!important; }
}
@media print {
  .iris-btb-app .site-header,.iris-btb-app .mobile-section-nav,.iris-btb-app .side-nav,.iris-btb-app .mode-wrap,.iris-btb-app .hero-actions,.iris-btb-app .filter-row,.iris-btb-app .data-actions,.iris-btb-app .preset-row,.iris-btb-app .slider,.iris-btb-app .planner-toolbar,.iris-btb-app .planner-rail,.iris-btb-app .planner-modules,.iris-btb-app .mobile-day-switch,.iris-btb-app .save-state,.iris-btb-app .block-actions,.iris-btb-app .empty-day,.iris-btb-app .bloom-calendar-controls,.iris-btb-app .dialog-actions,.iris-btb-app .agenda-actions,.iris-btb-app .calendar-bridge { display:none!important; }
  .iris-btb-app .hero { min-height:auto; grid-template-columns:1fr; }
  .iris-btb-app .hero-copy { padding:30px; }
  .iris-btb-app .hero-scene { display:none; }
  .iris-btb-app .content-shell { display:block; padding:0; }
  .iris-btb-app .planner-top { padding:12px 0; }
  .iris-btb-app .planner-workspace { display:block; max-width:none; padding:0; }
  .iris-btb-app .week-grid { grid-template-columns:repeat(var(--days,5),1fr); gap:4px; }
  .iris-btb-app .day-column { min-height:0; break-inside:avoid; }
  .iris-btb-app .day-blocks { min-height:0; }
  .iris-btb-app .schedule-block { box-shadow:none; print-color-adjust:exact; }
  .iris-btb-app .section { break-inside:avoid; }
  .iris-btb-app { background:white; }
  .iris-btb-app .card,.iris-btb-app .metric,.iris-btb-app .tool-card { box-shadow:none; }
}

@media (prefers-reduced-motion:reduce) {
  .iris-btb-app *,.iris-btb-app *:before,.iris-btb-app *:after { scroll-behavior:auto!important; transition:none!important; animation:none!important; }
}

.iris-btb-app /* Built to Bloom 1.4.5 — full-vision restoration */
.planner-preview-live { width:100%; height:100%; display:grid; grid-template-rows:42px minmax(0,1fr) 28px; color:#352f36; background:#fffdf9; }
.iris-btb-app .planner-preview-bar { padding:0 14px; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:12px; border-bottom:1px solid #ded4cd; background:#f7f0ec; }
.iris-btb-app .planner-preview-bar>span { color:#bc8397; font-size:8px; letter-spacing:.5em; }
.iris-btb-app .planner-preview-bar strong { font-family:var(--font-display),serif; font-size:17px; text-align:center; }
.iris-btb-app .planner-preview-bar small { color:#766c72; font-size:8px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.iris-btb-app .planner-preview-days { min-height:0; padding:10px; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:7px; overflow:hidden; }
.iris-btb-app .planner-preview-days>section { min-width:0; padding:8px; border:1px solid #e2d8d1; border-radius:9px; background:#fbf8f4; }
.iris-btb-app .planner-preview-days header { padding-bottom:7px; display:flex; justify-content:space-between; border-bottom:1px solid #e2d8d1; }
.iris-btb-app .planner-preview-days header span { color:#8e536a; font-size:8px; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
.iris-btb-app .planner-preview-days header small { color:#766c72; font-size:7px; }
.iris-btb-app .planner-preview-days section>div { margin-top:7px; display:grid; gap:5px; }
.iris-btb-app .planner-preview-days article { min-width:0; padding:7px; display:grid; gap:2px; border-radius:6px; text-align:left; }
.iris-btb-app .planner-preview-days article time { font-size:6px; font-weight:850; }
.iris-btb-app .planner-preview-days article strong { font-size:8px; line-height:1.15; overflow-wrap:anywhere; }
.iris-btb-app .planner-preview-days article small { font-size:6px; opacity:.8; }
.iris-btb-app .planner-preview-live>p { margin:0; color:#756c71; font-size:7px; text-align:center; }

.iris-btb-app .calendar-preview-tablet { min-width:0; padding:10px; border:1px solid #3e3940; border-radius:20px; background:#2f2b31; box-shadow:0 18px 40px rgba(48,38,45,.18); }
.iris-btb-app .calendar-preview-tablet>* { background:#fffdf9; }
.iris-btb-app .calendar-preview-toolbar { min-height:46px; padding:7px 10px; display:flex; align-items:center; justify-content:space-between; gap:8px; border-radius:11px 11px 0 0; border-bottom:1px solid #dfd6cf; }
.iris-btb-app .calendar-preview-toolbar>strong { font-family:var(--font-display),serif; font-size:16px; }
.iris-btb-app .calendar-preview-toolbar>div { display:flex; gap:3px; }
.iris-btb-app .calendar-preview-toolbar button { min-height:32px; padding:5px 8px; border:1px solid #ded3cc; border-radius:999px; background:#fff; color:#625761; font-size:8px; font-weight:850; }
.iris-btb-app .calendar-preview-toolbar button[aria-pressed="true"] { border-color:var(--plum); background:var(--plum); color:#fff; }
.iris-btb-app .calendar-preview-week { min-height:266px; padding:8px; display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:4px; border-radius:0 0 11px 11px; }
.iris-btb-app .calendar-preview-week>section { min-width:0; padding:5px; border:1px solid #e4dbd4; background:#fbf8f4; }
.iris-btb-app .calendar-preview-week header { display:flex; justify-content:space-between; align-items:center; }
.iris-btb-app .calendar-preview-week header span { color:#8f566c; font-size:7px; font-weight:900; text-transform:uppercase; }
.iris-btb-app .calendar-preview-week header strong { font-family:var(--font-display),serif; font-size:15px; }
.iris-btb-app .preview-event { margin:6px 0 0; padding:5px; border-radius:5px; background:#e9e2ff; font-size:6px; font-weight:800; line-height:1.2; overflow-wrap:anywhere; }
.iris-btb-app .preview-event.personal,.iris-btb-app .preview-event.school { background:#f7e8ed; }
.iris-btb-app .preview-event.scholarship,.iris-btb-app .preview-event.funding { background:#dfe9d9; }
.iris-btb-app .calendar-preview-month { min-height:266px; padding:8px; border-radius:0 0 11px 11px; }
.iris-btb-app .calendar-preview-month>div { display:grid; grid-template-columns:repeat(7,1fr); text-align:center; }
.iris-btb-app .calendar-preview-month>div:first-child span { padding:3px; color:#8f566c; font-size:7px; font-weight:900; }
.iris-btb-app .calendar-preview-month>div:last-child>* { min-height:31px; display:grid; place-items:center; border-top:1px solid #eee6df; border-left:1px solid #eee6df; font-size:8px; font-style:normal; }
.iris-btb-app .calendar-preview-month .has-event { position:relative; background:#f3edf8; font-weight:900; }
.iris-btb-app .calendar-preview-month .has-event:after { content:""; width:5px; height:5px; position:absolute; bottom:4px; border-radius:50%; background:var(--rose); }

.iris-btb-app .scholarship-impact-bridge { margin:20px 0; padding:20px 22px; display:flex; justify-content:space-between; align-items:center; gap:22px; border:1px solid #d9d9ca; background:#f2f5ed; }
.iris-btb-app .scholarship-impact-bridge span { color:#7d5165; font-size:9px; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
.iris-btb-app .scholarship-impact-bridge strong { margin:5px 0; display:block; font-family:var(--font-display),serif; font-size:24px; line-height:1; }
.iris-btb-app .scholarship-impact-bridge p { margin:0; max-width:780px; color:#675f64; font-size:11px; }

.iris-btb-app .restored-finance-visuals { margin-top:24px; display:grid; grid-template-columns:minmax(0,1.5fr) minmax(260px,.6fr); gap:14px; }
.iris-btb-app .restored-loan-chart { margin:0; padding:26px; border:1px solid #ddd4cc; background:#fffdf9; }
.iris-btb-app .chart-heading { display:flex; align-items:end; justify-content:space-between; gap:24px; }
.iris-btb-app .chart-heading h3 { margin:4px 0 0; font-family:var(--font-display),serif; font-size:32px; font-weight:650; line-height:1; }
.iris-btb-app .chart-heading>p { max-width:260px; margin:0; color:#6f656c; font-size:11px; text-align:right; }
.iris-btb-app .chart-checkpoint { fill:#fffdf9; stroke:var(--rose); stroke-width:4; }
.iris-btb-app .daily-interest-visual { padding:26px; display:flex; flex-direction:column; border:1px solid #d4d9ca; background:#f2f5ed; }
.iris-btb-app .daily-interest-visual h3 { margin:5px 0 8px; font-family:var(--font-display),serif; font-size:30px; font-weight:650; line-height:1; }
.iris-btb-app .daily-interest-visual>div>p:last-child { color:#665e63; font-size:11px; line-height:1.5; }
.iris-btb-app .daily-interest-visual dl { margin:auto 0 0; display:grid; gap:8px; }
.iris-btb-app .daily-interest-visual dl>div { padding-top:10px; display:flex; justify-content:space-between; align-items:end; gap:14px; border-top:1px solid #d4d9ca; }
.iris-btb-app .daily-interest-visual dt { color:#6a6166; font-size:9px; font-weight:800; text-transform:uppercase; }
.iris-btb-app .daily-interest-visual dd { margin:0; font-family:var(--font-display),serif; font-size:27px; font-weight:650; }
.iris-btb-app .daily-interest-visual dd small { margin-left:3px; font-family:var(--font-body),sans-serif; font-size:8px; }
.iris-btb-app .preset-comparison { margin-top:16px; padding:28px; border:1px solid #ded4cc; background:#f7f0f3; }
.iris-btb-app .preset-comparison>div:first-child { margin-bottom:18px; display:flex; align-items:end; justify-content:space-between; gap:20px; }
.iris-btb-app .preset-comparison h3 { max-width:720px; margin:4px 0 0; font-family:var(--font-display),serif; font-size:34px; font-weight:650; line-height:1; }
.iris-btb-app .preset-comparison-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.iris-btb-app .preset-comparison-grid article { min-width:0; padding:20px; border:1px solid #ded4cc; background:#fffdf9; }
.iris-btb-app .preset-comparison-grid article.selected { border-color:#ab7086; box-shadow:inset 0 4px 0 #ab7086; }
.iris-btb-app .preset-comparison-grid article>span { color:#89536a; font-size:9px; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
.iris-btb-app .preset-comparison-grid article>strong { margin:7px 0 14px; display:block; font-family:var(--font-display),serif; font-size:28px; }
.iris-btb-app .preset-comparison-grid dl { margin:0; display:grid; gap:7px; }
.iris-btb-app .preset-comparison-grid dl>div { display:flex; justify-content:space-between; gap:10px; font-size:9px; }
.iris-btb-app .preset-comparison-grid dt { color:#70676d; }
.iris-btb-app .preset-comparison-grid dd { margin:0; font-weight:850; text-align:right; }

.iris-btb-app .personal-date-studio { margin:24px 0 6px; padding:28px 32px; display:grid; grid-template-columns:minmax(240px,.55fr) minmax(0,1.45fr); gap:32px; align-items:center; border:1px solid #dccfd5; background:linear-gradient(120deg,#f8edf1,#fffdf9 60%,#f2f5ed); }
.iris-btb-app .personal-date-studio h2 { margin:4px 0 9px; font-family:var(--font-display),serif; font-size:clamp(34px,3.4vw,48px); font-weight:650; line-height:.95; }
.iris-btb-app .personal-date-studio>div>p:last-child { color:#685f65; font-size:11px; line-height:1.55; }
.iris-btb-app .personal-date-studio form { display:grid; grid-template-columns:minmax(150px,1.5fr) repeat(3,minmax(120px,1fr)); gap:10px; align-items:end; }
.iris-btb-app .personal-date-studio label { display:grid; gap:5px; color:#645b61; font-size:9px; font-weight:850; }
.iris-btb-app .personal-date-studio .personal-date-notes { grid-column:1/4; }
.iris-btb-app .personal-date-studio form>div { display:flex; gap:6px; }
.iris-btb-app .personal-date-studio .button { min-height:44px; padding:10px 14px; white-space:nowrap; }
.iris-btb-app .calendar-filter-set { flex-wrap:wrap; }
.iris-btb-app .bloom-calendar-controls { align-items:flex-start; flex-wrap:wrap; }
.iris-btb-app .bloom-calendar-controls>label { margin-left:auto; }
.iris-btb-app .event-dot.boards { background:#f0e6f7; border-color:#d2c1df; }
.iris-btb-app .event-dot.clinical { background:#e5f0eb; border-color:#c3d7cc; }
.iris-btb-app .event-dot.funding,.iris-btb-app .event-dot.scholarship { background:#f7eee0; border-color:#ddc9a9; }
.iris-btb-app .event-dot.school,.iris-btb-app .event-dot.personal { background:#f7e8ed; border-color:#d9bbc6; }
.iris-btb-app .source-stamp.personal { color:#7e5c70; }
.iris-btb-app .bloom-week-view { overflow-x:auto; }
.iris-btb-app .bloom-week-grid { min-width:820px; display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); border-top:1px solid var(--line); border-left:1px solid var(--line); background:#fffdf9; }
.iris-btb-app .bloom-week-grid>section { min-width:0; min-height:430px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.iris-btb-app .bloom-week-grid>section>header { min-height:70px; padding:12px; display:grid; place-items:center; background:#f3ede8; }
.iris-btb-app .bloom-week-grid>section>header span { color:#8e536a; font-size:9px; font-weight:900; text-transform:uppercase; }
.iris-btb-app .bloom-week-grid>section>header strong { font-family:var(--font-display),serif; font-size:26px; }
.iris-btb-app .bloom-week-grid>section>div { padding:7px; }
.iris-btb-app .bloom-week-grid>section>div>p { color:#8a8186; font-size:9px; text-align:center; }
.iris-btb-app .official-personal.personal-only>div:first-child { background:#f3edf8; }
.iris-btb-app .dialog-actions .danger { color:#873e55; border-color:#cda8b5; }

@media (max-width:1300px) {
  .iris-btb-app .restored-finance-visuals { grid-template-columns:1fr; }
  .iris-btb-app .daily-interest-visual dl { margin-top:24px; grid-template-columns:repeat(3,1fr); }
  .iris-btb-app .daily-interest-visual dl>div { display:grid; }
  .iris-btb-app .personal-date-studio { grid-template-columns:1fr; }
  .iris-btb-app .personal-date-studio form { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .iris-btb-app .personal-date-studio .personal-date-notes { grid-column:1/-1; }
}

@media (max-width:1280px) {
  .iris-btb-app .bloom-calendar-hero { grid-template-columns:1fr; }
  .iris-btb-app .bloom-calendar-hero:after { right:-180px; }
  .iris-btb-app .bloom-season-card { transform:none; }
}

@media (max-width:720px) {
  .iris-btb-app .planner-preview-bar { grid-template-columns:1fr auto; }
  .iris-btb-app .planner-preview-bar>span { display:none; }
  .iris-btb-app .planner-preview-days { padding:6px; gap:4px; }
  .iris-btb-app .planner-preview-days>section { padding:5px; }
  .iris-btb-app .planner-preview-days header small,.iris-btb-app .planner-preview-days article small { display:none; }
  .iris-btb-app .planner-preview-days article { padding:5px 3px; }
  .iris-btb-app .planner-preview-days article strong { font-size:7px; }
  .iris-btb-app .calendar-preview-toolbar { align-items:flex-start; flex-direction:column; }
  .iris-btb-app .calendar-preview-toolbar>div { width:100%; }
  .iris-btb-app .calendar-preview-toolbar button { flex:1; min-height:36px; }
  .iris-btb-app .calendar-preview-week { min-width:560px; }
  .iris-btb-app .calendar-preview-tablet { overflow-x:auto; }
  .iris-btb-app .scholarship-impact-bridge { align-items:flex-start; flex-direction:column; }
  .iris-btb-app .chart-heading { align-items:flex-start; flex-direction:column; }
  .iris-btb-app .chart-heading>p { max-width:none; text-align:left; }
  .iris-btb-app .daily-interest-visual dl { grid-template-columns:1fr; }
  .iris-btb-app .preset-comparison-grid { grid-template-columns:1fr; }
  .iris-btb-app .personal-date-studio { margin-inline:-12px; padding:24px 16px; }
  .iris-btb-app .personal-date-studio form { grid-template-columns:1fr; }
  .iris-btb-app .personal-date-studio .personal-date-notes { grid-column:auto; }
  .iris-btb-app .calendar-filter-set { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
  .iris-btb-app .calendar-filter-set button { padding-inline:5px; }
  .iris-btb-app .bloom-calendar-controls>label { width:100%; margin-left:0; }
  .iris-btb-app .bloom-calendar-controls .calendar-view-switch { width:100%; }
  .iris-btb-app .bloom-month-view { display:block!important; overflow-x:auto; }
}

@media (max-width:390px) {
  .iris-btb-app .calendar-filter-set { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .iris-btb-app .restored-loan-chart,.iris-btb-app .daily-interest-visual,.iris-btb-app .preset-comparison { padding:20px 16px; }
  .iris-btb-app .restored-loan-chart svg { min-width:520px; }
  .iris-btb-app .restored-loan-chart { overflow-x:auto; }
}

.iris-btb-app /* Built to Bloom 1.4.3 — restore Iris's continuous botanical journey */
.bloom-editorial-shell { grid-template-columns:190px minmax(0,1fr); }
.iris-btb-app .vine-navigation { width:190px; height:min(760px,calc(100vh - var(--btb-admin-bar-height) - var(--btb-site-header-height) - 20px)); min-height:620px; padding:12px 8px; }
.iris-btb-app .bloom-lockup { min-height:112px; }
.iris-btb-app .bloom-lockup img { width:58px; height:58px; }
.iris-btb-app .vine-art { width:92px; height:calc(100% - 120px); position:absolute; z-index:0; top:110px; left:3px; object-fit:contain; object-position:center top; mix-blend-mode:multiply; }
.iris-btb-app .vine-progress { display:none; }
.iris-btb-app .vine-stop { width:104px; min-height:42px; padding:7px 11px; position:absolute; left:78px; display:flex; align-items:center; border:1px solid transparent; border-radius:999px; background:rgba(255,253,249,.88); font-size:18px; backdrop-filter:blur(3px); }
.iris-btb-app .vine-stop .vine-marker { display:none; }
.iris-btb-app .vine-bud { top:18%; }
.iris-btb-app .vine-plan { top:31%; }
.iris-btb-app .vine-fund { top:45%; }
.iris-btb-app .vine-learn { top:59%; }
.iris-btb-app .vine-grow { top:73%; }
.iris-btb-app .vine-follow { top:87%; }
.iris-btb-app .vine-stop:hover { border-color:#ead8df; background:#fff8f7; }
.iris-btb-app .vine-stop.active { border-color:#d8a8b9; background:#f8e8ee; box-shadow:0 7px 22px rgba(122,63,89,.11); }
.iris-btb-app .vine-stop.active:after { right:auto; left:-7px; width:4px; height:26px; background:#a85f7a; }

.iris-btb-app .journey-utility { display:grid; justify-items:end; gap:7px; }
.iris-btb-app .journey-utility small { color:#766b72; font-size:10px; }
.iris-btb-app .journey-glance .today-grid { grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) minmax(230px,.72fr); }
.iris-btb-app .journey-glance .today-priority,.iris-btb-app .journey-glance .progress-card,.iris-btb-app .journey-glance .future-note { min-height:330px; padding:clamp(24px,2.5vw,38px); border:1px solid #ddd2cb; border-radius:20px; background:#fffdf9; box-shadow:0 16px 40px rgba(74,53,60,.055); }
.iris-btb-app .journey-glance .today-priority { background:#fbf2ef; }
.iris-btb-app .journey-glance .progress-card { background:#f3f6ee; }
.iris-btb-app .journey-glance .progress-card h3 { margin:8px 0 24px; font-family:var(--font-display),serif; font-size:clamp(30px,2.5vw,42px); font-weight:650; line-height:1; }
.iris-btb-app .journey-glance .progress-card>p:last-child { color:#665e63; font-size:12px; line-height:1.55; }
.iris-btb-app .journey-glance .future-note { display:flex; flex-direction:column; background:#f3edf8; }
.iris-btb-app .journey-glance .future-note time { color:#736772; font-size:10px; }
.iris-btb-app .journey-glance .future-note blockquote { margin:auto 0; font-family:var(--font-display),serif; font-size:clamp(25px,2.2vw,34px); font-style:italic; line-height:1.05; }
.iris-btb-app .journey-glance .future-note a { color:#8c4f68; font-size:11px; font-weight:800; }
.iris-btb-app .journey-glance .today-money { grid-template-columns:1.35fr repeat(4,1fr); }
.iris-btb-app .journey-glance .today-money .metric { min-height:156px; padding:22px; }
.iris-btb-app .journey-glance .today-money .metric strong { margin:10px 0 5px; font-size:clamp(27px,2.3vw,39px); }
.iris-btb-app .journey-glance .today-support { margin-top:18px; grid-template-columns:repeat(4,minmax(0,1fr)); }
.iris-btb-app .journey-glance .today-support a { min-height:130px; }
.iris-btb-app .trust-label { min-height:0; padding:0; border:0; border-radius:0; background:transparent; color:#7c7077; letter-spacing:.03em; }

.iris-btb-app .planner-intro .personal-line { margin-top:14px!important; color:#755a70!important; font-family:var(--font-display),serif; font-size:18px!important; font-style:italic; }
.iris-btb-app .planner-live-preview { height:390px!important; padding:13px; overflow:visible; border:1px solid #3e3940; border-radius:30px!important; background:#2f2b31; box-shadow:0 28px 60px rgba(48,38,45,.22),inset 0 0 0 1px rgba(255,255,255,.18); }
.iris-btb-app .planner-live-preview .tablet-screen { width:100%; height:100%; display:block; overflow:hidden; border-radius:18px; background:#fffdf9; }
.iris-btb-app .planner-live-preview img { width:100%; height:100%; object-fit:cover; object-position:40% top; border-radius:18px; }
.iris-btb-app .calendar-story { margin:0 0 16px; padding:0 0 14px; border-bottom:1px solid var(--line); }
.iris-btb-app .calendar-story p:last-child { margin:7px 0 0; color:#665d63; font-size:12px; line-height:1.55; }

.iris-btb-app .fund-overview,.iris-btb-app .learn-overview { margin:64px 0 28px!important; padding:62px clamp(20px,4vw,56px)!important; border:1px solid #dfd4cd; border-radius:22px; background:#fffdf9; }
.iris-btb-app .fund-overview h2,.iris-btb-app .learn-overview h2,.iris-btb-app .grow-intro h2 { margin:7px 0 14px; font-family:var(--font-display),serif; font-size:clamp(42px,4.6vw,64px); font-weight:650; line-height:.95; letter-spacing:-.025em; }
.iris-btb-app .finance-arc { margin-top:30px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-block:1px solid #d9d0c8; }
.iris-btb-app .finance-arc article { min-height:220px; padding:26px; display:flex; flex-direction:column; border-right:1px solid #d9d0c8; }
.iris-btb-app .finance-arc article:last-child { border-right:0; background:#f3f6ee; }
.iris-btb-app .finance-arc strong { margin:22px 0 5px; font-family:var(--font-display),serif; font-size:clamp(32px,3.4vw,48px); font-weight:650; line-height:1; }
.iris-btb-app .finance-arc span { color:#564d53; font-weight:800; }
.iris-btb-app .finance-arc small { margin-top:auto; color:#736970; font-size:11px; line-height:1.5; }
.iris-btb-app .scholarship-story { margin-top:28px; padding:30px; display:grid; grid-template-columns:minmax(0,1fr) minmax(460px,1.15fr); gap:36px; align-items:center; border-radius:18px; background:#f8edf1; }
.iris-btb-app .scholarship-story h3 { margin:6px 0 10px; font-family:var(--font-display),serif; font-size:clamp(34px,3.2vw,46px); font-weight:650; line-height:1; }
.iris-btb-app .scholarship-story p:not(.kicker) { color:#665a61; font-size:13px; line-height:1.6; }
.iris-btb-app .scholarship-story dl { margin:0; display:grid; grid-template-columns:repeat(4,1fr); border:1px solid #e4ced7; border-radius:14px; background:#fffdf9; overflow:hidden; }
.iris-btb-app .scholarship-story dl>div { min-height:118px; padding:18px 14px; display:flex; flex-direction:column; justify-content:center; border-right:1px solid #e4ced7; }
.iris-btb-app .scholarship-story dl>div:last-child { border-right:0; }
.iris-btb-app .scholarship-story dt { color:#766a72; font-size:9px; font-weight:800; text-transform:uppercase; }
.iris-btb-app .scholarship-story dd { margin:8px 0 0; font-family:var(--font-display),serif; font-size:34px; font-weight:650; }

.iris-btb-app .learn-overview { display:grid; grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr); gap:54px; align-items:center; background:#f5f7f0; }
.iris-btb-app .learn-overview>div>p:not(.kicker) { color:#625b60; font-size:14px; line-height:1.65; }
.iris-btb-app .learning-chapters { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-block:1px solid #d7dcd1; }
.iris-btb-app .learning-chapters article { min-height:210px; padding:24px 20px; border-right:1px solid #d7dcd1; }
.iris-btb-app .learning-chapters article:last-child { border-right:0; }
.iris-btb-app .learning-chapters span { color:#8a5369; font-size:9px; font-weight:800; text-transform:uppercase; }
.iris-btb-app .learning-chapters strong { margin:20px 0 9px; display:block; font-family:var(--font-display),serif; font-size:28px; font-weight:650; line-height:1; }
.iris-btb-app .learning-chapters p { color:#6b6368; font-size:11px; line-height:1.55; }
.iris-btb-app .grow-intro { max-width:930px; margin-bottom:28px; }
.iris-btb-app .grow-intro>p:last-child { color:#655d62; font-size:14px; line-height:1.6; }

.iris-btb-app .presentation-mode .finance-arc strong,.iris-btb-app .presentation-mode .today-money strong { letter-spacing:.02em; }
.iris-btb-app .presentation-placeholder { margin:0; padding:22px 24px; border-top:1px solid var(--line); color:#625961; background:#f5f1f4; font-size:12px; }

@media (max-width:1240px) {
  .iris-btb-app .bloom-editorial-shell { grid-template-columns:164px minmax(0,1fr); }
  .iris-btb-app .vine-navigation { width:164px; }
  .iris-btb-app .vine-art { width:82px; left:0; }
  .iris-btb-app .vine-stop { width:86px; left:70px; font-size:16px; }
  .iris-btb-app .journey-glance .today-grid { grid-template-columns:1fr 1fr; }
  .iris-btb-app .journey-glance .future-note { grid-column:1/-1; min-height:230px; }
  .iris-btb-app .journey-glance .today-money { grid-template-columns:repeat(3,1fr); }
  .iris-btb-app .scholarship-story { grid-template-columns:1fr; }
}

@media (max-width:1100px) {
  .iris-btb-app .bloom-editorial-shell { grid-template-columns:1fr; }
  .iris-btb-app .vine-navigation { width:100%; height:74px; min-height:74px; padding:7px 12px; position:sticky; top:calc(var(--btb-admin-bar-height) + var(--btb-site-header-height) + var(--btb-route-nav-height)); display:flex; flex-direction:row; gap:4px; overflow-x:auto; border-radius:0; }
  .iris-btb-app .vine-art { display:none; }
  .iris-btb-app .vine-stop { min-width:96px; width:auto; min-height:56px; padding:6px 10px; position:relative; top:auto!important; left:auto; display:grid; grid-template-columns:30px auto; gap:6px; font-size:15px; }
  .iris-btb-app .vine-stop .vine-marker { width:28px; height:28px; display:block; overflow:hidden; border:2px solid #fffdf9; border-radius:50%; background:#f7efeb; }
  .iris-btb-app .vine-marker img { width:100%; height:100%; object-fit:cover; object-position:15% center; }
  .iris-btb-app .vine-bud .vine-marker img { object-position:15% 0%; }
  .iris-btb-app .vine-plan .vine-marker img { object-position:15% 20%; }
  .iris-btb-app .vine-fund .vine-marker img { object-position:15% 40%; }
  .iris-btb-app .vine-learn .vine-marker img { object-position:15% 60%; }
  .iris-btb-app .vine-grow .vine-marker img { object-position:15% 80%; }
  .iris-btb-app .vine-follow .vine-marker img { object-position:15% 100%; }
  .iris-btb-app .vine-navigation:after { content:""; height:1px; position:absolute; left:34px; right:34px; top:37px; z-index:0; background:#d8cbc7; }
  .iris-btb-app .vine-stop { z-index:1; }
  .iris-btb-app .vine-stop.active:after { display:none; }
  .iris-btb-app .learn-overview { grid-template-columns:1fr; }
}

@media (max-width:720px) {
  .iris-btb-app .vine-navigation { top:0; }
  .iris-btb-app .journey-utility { justify-items:start; }
  .iris-btb-app .journey-glance .today-grid,.iris-btb-app .journey-glance .today-money,.iris-btb-app .journey-glance .today-support,.iris-btb-app .finance-arc,.iris-btb-app .learning-chapters { grid-template-columns:1fr; }
  .iris-btb-app .journey-glance .future-note { grid-column:auto; }
  .iris-btb-app .journey-glance .today-priority,.iris-btb-app .journey-glance .progress-card,.iris-btb-app .journey-glance .future-note { min-height:0; }
  .iris-btb-app .finance-arc article,.iris-btb-app .learning-chapters article { min-height:0; border-right:0; border-bottom:1px solid #d9d0c8; }
  .iris-btb-app .finance-arc article:last-child,.iris-btb-app .learning-chapters article:last-child { border-bottom:0; }
  .iris-btb-app .scholarship-story dl { grid-template-columns:1fr 1fr; }
  .iris-btb-app .scholarship-story dl>div:nth-child(2) { border-right:0; }
  .iris-btb-app .scholarship-story dl>div:nth-child(-n+2) { border-bottom:1px solid #e4ced7; }
  .iris-btb-app .planner-live-preview { height:310px!important; padding:9px; border-radius:24px!important; }
}

@media (max-width:480px) {
  .iris-btb-app .vine-navigation { height:72px; min-height:72px; padding:5px 2px; display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); overflow:hidden; }
  .iris-btb-app .vine-navigation:after { left:22px; right:22px; top:27px; }
  .iris-btb-app .vine-stop { min-width:0; width:auto; min-height:62px; padding:1px; display:flex; flex-direction:column; gap:1px; justify-content:center; font-size:10px; text-align:center; background:transparent; backdrop-filter:none; }
  .iris-btb-app .vine-stop .vine-marker { width:23px; height:23px; display:block; }
  .iris-btb-app .vine-stop.active { border-color:transparent; background:#f5e4ea; box-shadow:none; }
  .iris-btb-app .fund-overview,.iris-btb-app .learn-overview { padding:44px 18px!important; border-radius:16px; }
  .iris-btb-app .scholarship-story { padding:22px 16px; }
  .iris-btb-app .scholarship-story dl { grid-template-columns:1fr; }
  .iris-btb-app .scholarship-story dl>div { border-right:0!important; border-bottom:1px solid #e4ced7!important; }
  .iris-btb-app .scholarship-story dl>div:last-child { border-bottom:0!important; }
  .iris-btb-app .planner-live-preview { height:245px!important; }
}

.iris-btb-app /* Built to Bloom 1.4.4 — story-first recomposition */
.bloom-editorial-shell { grid-template-columns:156px minmax(0,1fr); }
.iris-btb-app .vine-navigation {
  width:156px;
  height:auto;
  min-height:0;
  max-height:calc(100dvh - var(--btb-admin-bar-height) - var(--btb-site-header-height) - 16px);
  padding:12px 6px;
  gap:6px;
  overflow-y:auto;
  border-radius:0 14px 14px 0;
  background:#fffdf9;
  box-shadow:0 14px 34px rgba(75,57,75,.045);
}
.iris-btb-app .bloom-lockup { min-height:108px; padding-inline:12px; }
.iris-btb-app .bloom-lockup img { width:54px; height:54px; }
.iris-btb-app .bloom-lockup strong { font-size:14px; }
.iris-btb-app .bloom-lockup span { max-width:128px; }
.iris-btb-app .vine-art { display:none; }
.iris-btb-app .vine-stop {
  position:relative;
  top:auto!important;
  transform:none;
  width:100%;
  min-height:50px;
  left:auto;
  padding:3px 8px;
  display:grid;
  grid-template-columns:40px minmax(0,1fr);
  align-items:center;
  gap:4px;
  flex:0 0 auto;
  border:0;
  border-radius:0;
  background:rgba(255,253,249,.74);
  color:#5b4c55;
  font-size:17px;
  box-shadow:none;
  backdrop-filter:none;
}
.iris-btb-app .vine-stop .vine-marker { display:block; width:40px; height:40px; border:0; border-radius:50%; background:#fffdf9; box-shadow:none; }
.iris-btb-app .vine-stop .vine-marker img { width:100%; height:100%; object-fit:contain; object-position:center; opacity:1; }
.iris-btb-app .vine-stop.active .vine-marker { box-shadow:0 0 0 1px #c798aa; }
.iris-btb-app .vine-stop:hover { border:0; background:#fff8f7; color:#7b3f59; }
.iris-btb-app .vine-stop.active { border:0; background:transparent; color:#7b3f59; box-shadow:none; }
.iris-btb-app .vine-stop.active strong { font-weight:700; }
.iris-btb-app .vine-stop.active:after { display:none; }
.iris-btb-app .vine-bud { top:17%; }
.iris-btb-app .vine-plan { top:31%; }
.iris-btb-app .vine-fund { top:46%; }
.iris-btb-app .vine-learn { top:61%; }
.iris-btb-app .vine-grow { top:76%; }
.iris-btb-app .vine-follow { top:90%; }

.iris-btb-app .hero-iris-bridge {
  max-width:500px;
  margin:4px 0 0;
  color:#755c6b;
  font-family:var(--font-display),serif;
  font-size:17px;
  font-style:italic;
  line-height:1.35;
}
.iris-btb-app .bloom-editorial-page .hero-copy .script-line { margin-top:12px; }
.iris-btb-app .continue-strip {
  width:calc(100% - (var(--landing-gutter) * 2));
  min-height:64px;
  margin:0 auto;
  padding:13px 0;
  border-bottom:1px solid var(--line);
  background:transparent;
}
.iris-btb-app .continue-strip strong { font-size:19px; }
.iris-btb-app .continue-strip span { font-size:11px; }

.iris-btb-app .bloom-command { padding:58px 0 46px; }
.iris-btb-app .command-heading { display:block; max-width:880px; }
.iris-btb-app .command-heading h2 { max-width:780px; font-size:clamp(48px,5vw,68px); }
.iris-btb-app .journey-meta-row { margin:22px 0 18px; display:flex; align-items:center; justify-content:space-between; gap:24px; border-block:1px solid #dfd8d1; }
.iris-btb-app .journey-meta-row .since-visit { flex:1; min-height:62px; margin:0; padding:10px 0; border:0; border-radius:0; background:transparent; }
.iris-btb-app .journey-meta-row .journey-utility { flex:0 0 auto; padding-left:20px; border-left:1px solid #dfd8d1; }
.iris-btb-app .journey-utility small { color:#766b72; }
.iris-btb-app .journey-glance .today-grid { grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:0; margin-top:0; border-block:1px solid #d9d0c8; }
.iris-btb-app .journey-glance .today-priority,.iris-btb-app .journey-glance .progress-card,.iris-btb-app .journey-glance .future-note {
  min-height:250px;
  padding:28px clamp(22px,2.5vw,36px);
  border:0;
  border-radius:0;
  background:#fffdf9;
  box-shadow:none;
}
.iris-btb-app .journey-glance .today-priority { border-right:1px solid #d9d0c8; background:#fbf2ef; }
.iris-btb-app .journey-glance .progress-card { background:#f3f6ee; }
.iris-btb-app .journey-glance .future-note {
  grid-column:1/-1;
  min-height:178px;
  display:grid;
  grid-template-columns:minmax(150px,.28fr) minmax(0,1fr) auto;
  grid-template-rows:auto 1fr;
  gap:8px 30px;
  align-items:center;
  border-top:1px solid #d9d0c8;
  background:#f3edf8;
}
.iris-btb-app .journey-glance .future-note .kicker,.iris-btb-app .journey-glance .future-note time { grid-column:1; }
.iris-btb-app .journey-glance .future-note blockquote { grid-column:2; grid-row:1/3; margin:0; font-size:clamp(27px,2.35vw,37px); line-height:1.04; }
.iris-btb-app .journey-glance .future-note a { grid-column:3; grid-row:1/3; max-width:130px; }
.iris-btb-app .priority-line { margin:32px 0 28px; }
.iris-btb-app .priority-line h3 { font-size:clamp(31px,3vw,44px); line-height:1; }
.iris-btb-app .journey-glance .progress-card h3 { margin:8px 0 22px; font-size:clamp(30px,3vw,42px); }
.iris-btb-app .graduation-path { margin:30px 0 24px; }

.iris-btb-app .journey-glance .today-money {
  margin-top:22px;
  grid-template-columns:1.35fr repeat(4,1fr);
  gap:0;
  border-block:1px solid #d9d0c8;
}
.iris-btb-app .journey-glance .today-money .metric {
  min-height:142px;
  padding:20px;
  border:0;
  border-right:1px solid #d9d0c8;
  border-radius:0;
  background:#fffdf9;
  box-shadow:none;
}
.iris-btb-app .journey-glance .today-money .metric:last-child { border-right:0; }
.iris-btb-app .journey-glance .today-money .metric:after { display:none; }
.iris-btb-app .journey-glance .today-money .metric strong { margin:9px 0 5px; font-size:clamp(27px,2.2vw,37px); }
.iris-btb-app .journey-glance .today-support { margin-top:18px; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; border-block:1px solid #ded5ce; }
.iris-btb-app .journey-glance .today-support a {
  min-height:106px;
  padding:18px;
  border:0;
  border-right:1px solid #ded5ce;
  border-radius:0;
  background:#fffdf9;
}
.iris-btb-app .journey-glance .today-support a:last-child { border-right:0; }
.iris-btb-app .journey-glance .today-support strong { margin:8px 0 auto; font-size:19px; }

.iris-btb-app .plan-command {
  padding:58px 0;
  grid-template-columns:minmax(220px,.55fr) minmax(500px,1.55fr) minmax(280px,.72fr);
  gap:28px;
  align-items:center;
}
.iris-btb-app .plan-command .planner-live-preview { height:410px!important; }
.iris-btb-app .plan-command .showcase-calendar { padding-left:24px; }

@media (max-width:1240px) {
  .iris-btb-app .bloom-editorial-shell { grid-template-columns:156px minmax(0,1fr); }
  .iris-btb-app .vine-navigation { width:156px; }
  .iris-btb-app .vine-art { width:100px; left:8px; }
  .iris-btb-app .vine-stop { width:100%; left:auto; font-size:15px; }
  .iris-btb-app .plan-command { grid-template-columns:minmax(220px,.6fr) minmax(0,1.4fr); }
  .iris-btb-app .plan-command .showcase-calendar { grid-column:1/-1; padding:24px 0 0; border-left:0; border-top:1px solid var(--line); }
}

@media (max-width:1100px) {
  .iris-btb-app .landing-product-nav,.iris-btb-app .bloom-lockup { display:none; }
  .iris-btb-app .bloom-editorial-shell { --btb-route-nav-height:0px; --btb-rail-nav-height:72px; display:block; grid-template-columns:1fr; }
  .iris-btb-app .vine-navigation {
    width:100%;
    height:var(--btb-rail-nav-height);
    min-height:var(--btb-rail-nav-height);
    max-height:var(--btb-rail-nav-height);
    align-self:auto;
    padding:5px 10px;
    top:calc(var(--btb-admin-bar-height) + var(--btb-site-header-height) + var(--btb-route-nav-height));
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:0;
    overflow:hidden;
    border-radius:0;
    box-shadow:0 8px 24px rgba(75,57,75,.08);
  }
  .iris-btb-app .vine-navigation:after { left:6%; right:6%; top:28px; background:#cdbfba; }
  .iris-btb-app .vine-stop {
    min-width:0;
    width:auto;
    min-height:62px;
    padding:1px 4px;
    top:auto!important;
    left:auto;
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:0;
    border:0;
    background:transparent;
    font-size:12px;
    text-align:center;
  }
  .iris-btb-app .vine-stop:hover { background:transparent; }
  .iris-btb-app .vine-stop.active { background:transparent; color:#7b3f59; }
  .iris-btb-app .vine-stop .vine-marker {
    width:38px;
    height:38px;
    display:block;
    border:0;
    border-radius:50%;
    background:#fffdf9;
    box-shadow:none;
  }
  .iris-btb-app .vine-marker img { width:100%; height:100%; object-fit:cover; object-position:center; opacity:1; mix-blend-mode:multiply; }
  .iris-btb-app .vine-stop.active .vine-marker { width:43px; height:43px; box-shadow:0 0 0 2px #d8a8b9; }
  .iris-btb-app .vine-stop strong { margin-top:-2px; padding:0 4px; background:#fffdf9; line-height:1.1; }
  .iris-btb-app #today,.iris-btb-app #plan,.iris-btb-app #journey,.iris-btb-app #money,.iris-btb-app #learn,.iris-btb-app #library,.iris-btb-app #reflect,.iris-btb-app #privacy,.iris-btb-app #from-iris { scroll-margin-top:calc(var(--btb-rail-nav-height) + 12px); }
  .iris-btb-app .journey-glance .today-grid { grid-template-columns:1fr 1fr; }
  .iris-btb-app .journey-glance .progress-card { grid-column:auto; order:0; }
  .iris-btb-app .journey-glance .today-money { grid-template-columns:repeat(3,1fr); }
  .iris-btb-app .journey-glance .today-money .metric:nth-child(3) { border-right:0; }
  .iris-btb-app .journey-glance .today-money .metric:nth-child(-n+3) { border-bottom:1px solid #d9d0c8; }
  .iris-btb-app .plan-command { grid-template-columns:minmax(220px,.6fr) minmax(0,1.4fr); }
}

@media (max-width:720px) {
  .iris-btb-app .bloom-editorial-shell { --btb-route-nav-height:0px; --btb-rail-nav-height:66px; }
  .iris-btb-app .vine-navigation { top:0; height:66px; min-height:66px; max-height:66px; padding:3px 4px; }
  .iris-btb-app .vine-navigation:after { top:25px; }
  .iris-btb-app .vine-stop { min-height:58px; font-size:10px; }
  .iris-btb-app .vine-stop .vine-marker { width:34px; height:34px; }
  .iris-btb-app .vine-stop.active .vine-marker { width:38px; height:38px; }
  .iris-btb-app .continue-strip { width:calc(100% - 32px); padding:12px 0; flex-direction:row; align-items:center; }
  .iris-btb-app .continue-strip>div { display:grid; }
  .iris-btb-app .continue-strip .kicker { margin:0; }
  .iris-btb-app .continue-strip strong { font-size:17px; }
  .iris-btb-app .continue-strip span { margin-top:0; }
  .iris-btb-app .bloom-command { padding-top:34px; }
  .iris-btb-app .command-heading h2 { font-size:clamp(40px,12vw,52px); }
  .iris-btb-app .journey-meta-row { align-items:stretch; flex-direction:column; gap:0; }
  .iris-btb-app .journey-meta-row .since-visit { align-items:flex-start; flex-direction:column; gap:3px; }
  .iris-btb-app .journey-meta-row .since-visit small { margin-left:0; }
  .iris-btb-app .journey-meta-row .journey-utility { padding:10px 0 12px; justify-items:start; border-top:1px solid #dfd8d1; border-left:0; }
  .iris-btb-app .journey-glance .today-grid { grid-template-columns:1fr; }
  .iris-btb-app .journey-glance .today-priority { border-right:0; border-bottom:1px solid #d9d0c8; }
  .iris-btb-app .journey-glance .today-priority,.iris-btb-app .journey-glance .progress-card,.iris-btb-app .journey-glance .future-note { min-height:0; padding:22px 18px; }
  .iris-btb-app .priority-line { margin:20px 0 15px; grid-template-columns:44px minmax(0,1fr); gap:12px; }
  .iris-btb-app .priority-line h3 { font-size:clamp(27px,8.5vw,34px); }
  .iris-btb-app .focus-actions { margin-top:12px; }
  .iris-btb-app .today-priority>.text-link { margin-top:10px; }
  .iris-btb-app .journey-glance .future-note { grid-column:auto; display:block; }
  .iris-btb-app .journey-glance .future-note time { margin:2px 0 18px; }
  .iris-btb-app .journey-glance .future-note blockquote { margin-bottom:22px; font-size:clamp(27px,8.6vw,34px); }
  .iris-btb-app .journey-glance .future-note a { display:inline-flex; }
  .iris-btb-app .journey-glance .today-money { grid-template-columns:1fr 1fr; }
  .iris-btb-app .journey-glance .today-money .metric,.iris-btb-app .journey-glance .today-money .metric:nth-child(3) { border-right:1px solid #d9d0c8; border-bottom:1px solid #d9d0c8; }
  .iris-btb-app .journey-glance .today-money .metric:nth-child(even) { border-right:0; }
  .iris-btb-app .journey-glance .today-money .metric:last-child { grid-column:1/-1; border-right:0; border-bottom:0; }
  .iris-btb-app .journey-glance .today-support { grid-template-columns:1fr 1fr; }
  .iris-btb-app .journey-glance .today-support a { min-height:100px; border-bottom:1px solid #ded5ce; }
  .iris-btb-app .journey-glance .today-support a:nth-child(even) { border-right:0; }
  .iris-btb-app .journey-glance .today-support a:nth-last-child(-n+2) { border-bottom:0; }
  .iris-btb-app .plan-command { grid-template-columns:1fr; }
  .iris-btb-app .plan-command .planner-intro,.iris-btb-app .plan-command .showcase-calendar { padding-inline:0; }
  .iris-btb-app .plan-command .planner-live-preview { height:300px!important; }
}

@media (max-width:480px) {
  .iris-btb-app .bloom-editorial-shell { --btb-rail-nav-height:62px; }
  .iris-btb-app .vine-navigation { height:62px; min-height:62px; padding-inline:1px; }
  .iris-btb-app .vine-navigation:after { top:23px; left:7%; right:7%; }
  .iris-btb-app .vine-stop { min-height:56px; padding:0; font-size:9px; }
  .iris-btb-app .vine-stop .vine-marker { width:31px; height:31px; }
  .iris-btb-app .vine-stop.active .vine-marker { width:35px; height:35px; }
  .iris-btb-app .vine-stop strong { padding-inline:2px; }
  .iris-btb-app .continue-strip { width:calc(100% - 28px); align-items:flex-start; flex-direction:column; gap:2px; }
  .iris-btb-app .continue-strip>div { display:block; }
  .iris-btb-app .bloom-command { padding-top:28px; }
  .iris-btb-app .today-priority { min-height:0; }
  .iris-btb-app .priority-line h3 { font-size:29px; }
  .iris-btb-app .journey-glance .today-money .metric { min-height:126px; padding:17px 14px; }
  .iris-btb-app .journey-glance .today-money .metric strong { font-size:27px; }
  .iris-btb-app .journey-glance .today-support strong { font-size:17px; }
  .iris-btb-app .plan-command .planner-live-preview { height:248px!important; }
}

.iris-btb-app /* Built to Bloom 1.4.5 — connected journey system */
.vine-progress { overflow:hidden; }
.iris-btb-app .vine-progress:after { content:""; width:100%; height:var(--vine-progress,0%); position:absolute; inset:0 auto auto 0; background:#aa627d; transition:height .35s ease; }
.iris-btb-app .chapter-bloom { display:none; }
.iris-btb-app .now-next-later { margin:18px 0 28px; padding:24px 0; display:grid; grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr); gap:34px; align-items:center; border-block:1px solid #d9d0c8; }
.iris-btb-app .journey-thread-heading h3 { margin:3px 0 6px; font-family:var(--font-display),serif; font-size:30px; font-weight:650; }
.iris-btb-app .journey-thread-heading p:last-child { margin:0; color:#6c6368; font-size:11px; line-height:1.5; }
.iris-btb-app .now-next-later ol { margin:0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); list-style:none; }
.iris-btb-app .now-next-later li { min-height:132px; padding:18px 20px; display:flex; flex-direction:column; border-left:1px solid #d9d0c8; }
.iris-btb-app .now-next-later li.next { background:#f7edf1; }
.iris-btb-app .now-next-later li span,.iris-btb-app .now-next-later li small { color:#7a5364; font-size:9px; font-weight:850; letter-spacing:.06em; text-transform:uppercase; }
.iris-btb-app .now-next-later li strong { margin:13px 0 auto; font-family:var(--font-display),serif; font-size:24px; font-weight:650; line-height:1.02; }
.iris-btb-app .now-next-later li time { margin:9px 0 4px; color:#655d62; font-size:10px; }
.iris-btb-app .iris-yours-inline { margin:20px 0; display:grid; gap:10px; }
.iris-btb-app .iris-yours-inline span { padding:12px 14px; display:grid; gap:3px; border-left:3px solid #b48394; background:#fbf2ef; }
.iris-btb-app .iris-yours-inline span+span { border-left-color:#86927d; background:#f2f5ed; }
.iris-btb-app .iris-yours-inline small { color:#7e5365; font-size:8px; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
.iris-btb-app .iris-yours-inline strong { font-size:11px; line-height:1.4; }

.iris-btb-app .finance-story-mode { margin:28px 0; padding:0; display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); list-style:none; border-block:1px solid #d9d0c8; }
.iris-btb-app .finance-story-mode li { min-height:128px; padding:18px 14px; display:flex; flex-direction:column; border-right:1px solid #d9d0c8; }
.iris-btb-app .finance-story-mode li:last-child { border-right:0; }
.iris-btb-app .finance-story-mode span { color:#86566a; font-size:9px; font-weight:900; text-transform:uppercase; }
.iris-btb-app .finance-story-mode strong { margin:14px 0 auto; font-family:var(--font-display),serif; font-size:22px; font-weight:650; line-height:1; overflow-wrap:anywhere; }
.iris-btb-app .finance-story-mode small { margin-top:9px; color:#6e656b; font-size:9px; line-height:1.35; }
.iris-btb-app .scholarship-timeline { margin:18px 0 0; padding:0; display:grid; grid-template-columns:repeat(3,1fr); list-style:none; border-block:1px solid #e1cfd6; }
.iris-btb-app .scholarship-timeline li { min-height:120px; padding:20px; display:grid; align-content:center; gap:6px; border-right:1px solid #e1cfd6; }
.iris-btb-app .scholarship-timeline li:last-child { border-right:0; }
.iris-btb-app .scholarship-timeline span { color:#8c5369; font-size:9px; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
.iris-btb-app .scholarship-timeline strong { font-family:var(--font-display),serif; font-size:23px; line-height:1.05; }
.iris-btb-app .scholarship-timeline small { color:#6f656b; font-size:10px; line-height:1.45; }
.iris-btb-app .scholarship-model-action { min-height:38px; margin-top:9px; padding:7px 11px; border:1px solid #8a5a6d; border-radius:999px; background:#fffdf9; color:#7b455b; font-size:9px; font-weight:850; }
.iris-btb-app .scholarship-model-action:disabled { border-color:#d5cbc7; color:#82777d; background:#f2efec; }
.iris-btb-app .funding-impact-status { margin:12px 0 0; padding:14px 16px; border-left:3px solid #87937d; color:#5f575c; background:#f2f5ed; font-size:11px; line-height:1.5; }
.iris-btb-app .scenario-save-actions { display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; }

.iris-btb-app .planner-preview-live { grid-template-rows:42px minmax(0,1fr) auto 22px; }
.iris-btb-app .planner-preview-semester { margin:0 10px 7px; padding:8px; border:1px solid #dfd4cd; border-radius:8px; background:#f7f0ec; }
.iris-btb-app .planner-preview-semester>span { color:#88566b; font-size:7px; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
.iris-btb-app .planner-preview-semester>div { margin-top:5px; display:grid; grid-template-columns:repeat(3,1fr); gap:5px; }
.iris-btb-app .planner-preview-semester article { min-width:0; padding:5px; display:grid; gap:1px; border-radius:5px; background:#fffdf9; }
.iris-btb-app .planner-preview-semester time,.iris-btb-app .planner-preview-semester small { color:#786d74; font-size:6px; }
.iris-btb-app .planner-preview-semester strong { font-size:7px; line-height:1.15; overflow-wrap:anywhere; }
.iris-btb-app .planner-preview-semester>p { margin:5px 0 0; color:#756a70; font-size:7px; line-height:1.3; }
.iris-btb-app .semester-event-form { margin-top:20px; padding:18px; display:grid; grid-template-columns:minmax(180px,1fr) repeat(2,minmax(130px,.65fr)) auto; gap:12px; align-items:end; border-block:1px solid var(--line); background:#f8f1ed; }
.iris-btb-app .semester-event-form>div strong { display:block; font-family:var(--font-display),serif; font-size:20px; line-height:1.05; }
.iris-btb-app .semester-event-list { margin-top:14px; display:grid; gap:7px; }
.iris-btb-app .semester-event-list article { padding:10px 12px; display:grid; grid-template-columns:94px 1fr auto; gap:12px; align-items:center; border:1px solid var(--line); border-radius:10px; background:#fffdf9; }
.iris-btb-app .semester-event-list time { color:#7a5365; font-size:10px; font-weight:850; }
.iris-btb-app .semester-event-list strong,.iris-btb-app .semester-event-list span { display:block; }
.iris-btb-app .semester-event-list span { color:var(--muted); font-size:9px; }
.iris-btb-app .semester-event-list button { min-height:38px; border:0; background:transparent; color:#8a5067; font-size:9px; font-weight:850; }
.iris-btb-app .semester-months { display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); gap:12px; }
.iris-btb-app .semester-months section { min-height:180px; padding:16px; border:1px solid var(--line); border-radius:12px; background:#fbf7f2; }
.iris-btb-app .semester-months h3 { margin:0 0 12px; font-family:var(--font-display),serif; font-size:22px; }
.iris-btb-app .semester-months article { margin-top:7px; padding:9px; display:grid; grid-template-columns:32px 1fr; gap:8px; border-radius:8px; background:#f2e7eb; }
.iris-btb-app .semester-months article time { font-family:var(--font-display),serif; font-size:24px; }
.iris-btb-app .semester-months article strong,.iris-btb-app .semester-months article small { display:block; }
.iris-btb-app .semester-months article small { margin-top:2px; color:#6f656c; font-size:8px; }
.iris-btb-app .semester-months section>small { color:#7a7076; font-size:9px; }
.iris-btb-app .semester-empty { padding:28px; border:1px dashed #cfc3c0; border-radius:12px; background:#fbf7f2; }
.iris-btb-app .semester-empty h3 { margin:0 0 6px; font-family:var(--font-display),serif; font-size:26px; }

.iris-btb-app .learning-chapters label { display:grid; gap:7px; color:#6b6368; font-size:10px; }
.iris-btb-app .learning-chapters input { min-width:0; min-height:44px; padding:9px; border:1px solid #cfc7c2; background:#fffdf9; }
.iris-btb-app .learning-chapters a,.iris-btb-app .inline-update { min-height:44px; display:inline-flex; align-items:center; color:#7c4860; font-size:10px; font-weight:850; }
.iris-btb-app .inline-update { min-height:auto; padding:0; border:0; background:transparent; }
.iris-btb-app .learning-current-path { grid-column:1/-1; display:grid; grid-template-columns:repeat(3,1fr); border-block:1px solid #d7dcd1; }
.iris-btb-app .learning-current-path a { min-height:106px; padding:18px; display:flex; flex-direction:column; border-right:1px solid #d7dcd1; color:#403840; text-decoration:none; }
.iris-btb-app .learning-current-path a:last-child { border-right:0; }
.iris-btb-app .learning-current-path span { color:#87576a; font-size:9px; font-weight:900; text-transform:uppercase; }
.iris-btb-app .learning-current-path strong { margin-top:12px; font-family:var(--font-display),serif; font-size:21px; line-height:1.05; }
.iris-btb-app .small-wins-history { margin-top:26px; padding:28px; display:grid; grid-template-columns:minmax(220px,.6fr) minmax(0,1.4fr); gap:30px; border-block:1px solid #d9d0c8; background:#f5f2f6; }
.iris-btb-app .small-wins-history h3 { margin:4px 0 8px; font-family:var(--font-display),serif; font-size:30px; line-height:1; }
.iris-btb-app .small-wins-history p { color:#6a6167; font-size:11px; line-height:1.55; }
.iris-btb-app .small-wins-history ol { margin:0; padding:0; display:grid; grid-template-columns:repeat(2,1fr); list-style:none; }
.iris-btb-app .small-wins-history li { min-height:110px; padding:16px; display:flex; flex-direction:column; border-left:1px solid #d9d0c8; border-bottom:1px solid #d9d0c8; }
.iris-btb-app .small-wins-history li time,.iris-btb-app .small-wins-history li small { color:#7d5667; font-size:8px; font-weight:850; text-transform:uppercase; }
.iris-btb-app .small-wins-history li strong { margin:12px 0 auto; font-family:var(--font-display),serif; font-size:20px; line-height:1.05; }
.iris-btb-app .small-wins-history li.empty { grid-column:1/-1; justify-content:center; }

.iris-btb-app .follow-section { align-items:start; }
.iris-btb-app .follow-section ol { grid-template-columns:repeat(3,1fr); }
.iris-btb-app .follow-section li { min-height:188px; border-bottom:1px solid #d9d0c8; }
.iris-btb-app .follow-section li:nth-child(3n) { border-right:0; }
.iris-btb-app .follow-section li a { min-height:44px; margin-top:8px; display:inline-flex; align-items:center; color:#7a485e; font-size:9px; font-weight:850; }
.iris-btb-app .follow-section li.source-gated { background:#f5f2f6; }
.iris-btb-app .journey-history { grid-column:1/-1; padding:14px 0; border-bottom:1px solid #d9d0c8; }
.iris-btb-app .journey-history summary { min-height:44px; display:flex; align-items:center; color:#7a4d61; font-family:var(--font-display),serif; font-size:22px; cursor:pointer; }
.iris-btb-app .journey-history p { max-width:760px; color:#6a6167; font-size:11px; line-height:1.55; }
.iris-btb-app .emotional-close .closing-milestone { max-width:680px; margin:0 auto 24px; padding:20px; display:grid; gap:4px; border-block:1px solid #d9bfc9; }
.iris-btb-app .closing-milestone span,.iris-btb-app .closing-milestone small { color:#7b5866; font-size:9px; font-weight:850; text-transform:uppercase; }
.iris-btb-app .closing-milestone strong { font-family:var(--font-display),serif; font-size:30px; line-height:1; }
.iris-btb-app .future-iris-note { max-width:680px; margin:0 auto 24px; display:grid; gap:6px; text-align:left; }
.iris-btb-app .future-iris-note span { color:#7b4c60; font-size:9px; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
.iris-btb-app .future-iris-note textarea { min-height:92px; padding:15px; resize:vertical; border:1px solid #d4bac4; border-radius:12px; background:rgba(255,253,249,.75); color:#4e4148; font-family:var(--font-display),serif; font-size:22px; line-height:1.25; }
.iris-btb-app .future-iris-note small { color:#76646d; font-size:9px; }
.iris-btb-app .print-scenario-sheet { display:none; }

/* 1.4.7: the core financial decision is inline; .iris-btb-app depth remains optional. */
.fund-overview { padding:32px clamp(18px,3vw,40px)!important; }
.iris-btb-app .fund-overview>.section-heading h2 { font-size:clamp(34px,3.5vw,48px); }
.iris-btb-app .fund-overview>.section-intro { max-width:78ch; margin-bottom:24px; }
.iris-btb-app .fund-snapshot { display:grid; grid-template-columns:1.25fr repeat(4,minmax(0,1fr)); border-block:1px solid #ded3ce; margin:20px 0 28px; }
.iris-btb-app .vine-navigation .bloom-lockup { display:none; }
.iris-btb-app .today-money .explain-term { text-transform:none; letter-spacing:0; }
.iris-btb-app .fund-snapshot article { min-width:0; padding:16px 12px; border-right:1px solid #ded3ce; }
.iris-btb-app .fund-snapshot article:last-child { border-right:0; }
.iris-btb-app .fund-snapshot strong { display:block; margin:8px 0; font-family:var(--font-display),Georgia,serif; font-size:clamp(25px,2.1vw,34px); line-height:1.1; overflow-wrap:anywhere; }
.iris-btb-app .fund-snapshot small { display:block; font-size:12px; color:#685d63; }
.iris-btb-app .fund-snapshot .explain-term { font-size:13px; line-height:1.3; }
.iris-btb-app .inline-finance { scroll-margin-top:100px; }
.iris-btb-app .inline-finance .payment-section { margin:0; padding:12px 0 28px; border:0; box-shadow:none; background:transparent; }
.iris-btb-app .inline-finance .section-heading { align-items:start; gap:16px; }
.iris-btb-app .inline-finance .section-heading h2 { font-size:clamp(30px,3vw,42px); }
.iris-btb-app .inline-finance .section-intro { margin:8px 0 24px; font-size:15px; }
.iris-btb-app .inline-finance .decision-first { gap:20px; }
.iris-btb-app .inline-finance .payment-choice { min-width:0; }
.iris-btb-app .inline-finance .slider { height:44px; min-height:44px; background:transparent; }
.iris-btb-app .inline-finance .slider::-webkit-slider-runnable-track { height:8px; border-radius:999px; background:linear-gradient(90deg,#a2657e,#8d70c3); }
.iris-btb-app .inline-finance .slider::-webkit-slider-thumb { margin-top:-10px; }
.iris-btb-app .inline-finance .slider::-moz-range-track { height:8px; border-radius:999px; background:linear-gradient(90deg,#a2657e,#8d70c3); }
.iris-btb-app .inline-finance .slider::-moz-range-thumb { width:28px; height:28px; border:2px solid #513d50; border-radius:50%; background:white; }
.iris-btb-app .inline-finance .custom-payment-field { display:grid; grid-template-columns:1fr minmax(96px,130px); align-items:center; gap:12px; }
.iris-btb-app .inline-finance .custom-payment-field input { width:100%; font-size:17px; }
.iris-btb-app .inline-finance .interest-threshold { align-items:center; gap:8px; flex-wrap:wrap; }
.iris-btb-app .inline-finance .interest-threshold .explain-term { font-size:13px; }
.iris-btb-app .inline-finance .interpretation-card { padding:20px; }
.iris-btb-app .inline-finance .interpretation-card h3 { font-size:29px; }
.iris-btb-app .inline-finance .interpretation-card p { font-size:15px; }
.iris-btb-app .inline-finance .interpretation-card small { font-size:12px; }
.iris-btb-app .inline-finance .primary-outcomes { margin-top:22px; }
.iris-btb-app .inline-finance .primary-outcomes .explain-term { font-size:13px; }
.iris-btb-app .today-money .explain-term { display:inline-flex; align-items:center; }
.iris-btb-app .today-money .explain-trigger>span,.iris-btb-app .primary-outcomes .explain-trigger>span { display:grid; place-items:center; font-size:18px; color:inherit; }
.iris-btb-app .learning-chapters article { min-width:0; }
.iris-btb-app .learning-chapters strong { overflow-wrap:anywhere; }
.iris-btb-app .inline-finance .primary-outcomes strong { font-size:clamp(27px,3vw,40px); }
.iris-btb-app .scenario-live-summary { padding:14px 0; margin:0; color:#4b3f48; font-size:15px; line-height:1.6; }
.iris-btb-app .chart-date-labels { display:flex; justify-content:space-between; gap:10px; font-size:12px; color:#665b62; }
.iris-btb-app .chart-date-labels span:last-child { text-align:right; }
.iris-btb-app .chart-endpoints { margin:18px 0 0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid #d9cdd1; }
.iris-btb-app .chart-endpoints>div { padding:14px 8px; }
.iris-btb-app .chart-endpoints dt { font-size:12px; color:#65555e; }
.iris-btb-app .chart-endpoints dd { margin:6px 0 0; font-family:var(--font-display),Georgia,serif; font-size:27px; line-height:1.1; }
.iris-btb-app .scenario-lab { margin-top:24px; border-block:1px solid #d8cbd0; }
.iris-btb-app .scenario-lab>summary { min-height:56px; padding:14px 8px; cursor:pointer; color:#70475e; font-size:15px; font-weight:700; }
.iris-btb-app .scenario-lab[open]>summary { margin-bottom:20px; }
.iris-btb-app .explain-trigger { flex:0 0 44px; width:44px; height:44px; min-height:44px; font-family:Georgia,serif; font-size:18px; font-style:italic; text-transform:none; }
.iris-built-to-bloom-page .explain-popover { position:fixed; z-index:10000; max-height:calc(100dvh - 32px); overflow:auto; font-family:"Bloom DM Sans",Arial,sans-serif; font-size:14px; line-height:1.55; box-sizing:border-box; color:#352c34; }
.iris-built-to-bloom-page .explain-popover>strong { font-family:"Bloom Cormorant",Georgia,serif; color:#513d50; }
.iris-built-to-bloom-page .explain-popover b { color:#87546a; }
.iris-built-to-bloom-page .explain-close { min-height:44px; min-width:60px; border-color:#d9cbd2; color:#70465a; font-size:14px; }
.iris-built-to-bloom-page .explain-popover:focus-visible,.iris-built-to-bloom-page .explain-close:focus-visible { outline:3px solid #765a80; outline-offset:3px; }
.iris-btb-app .restored-loan-chart .chart-axis-label { font-size:13px; fill:#655a62; }
.iris-btb-app .restored-loan-chart .chart-scale-note { margin:12px 0; font-size:12px; line-height:1.5; }
.iris-btb-app .inline-finance .restored-loan-chart svg { min-width:0; }
.iris-btb-app .inline-finance .supporting-outcomes { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 0; }
.iris-btb-app .inline-finance .supporting-outcomes>div { padding:10px 16px; }
.iris-built-to-bloom-page .explain-popover b { font-size:11px; }
.iris-built-to-bloom-page .explain-close { width:auto; min-width:66px; font-size:13px; }
.iris-btb-app .storage-recovery { padding:20px; border:1px solid #cba9ad; background:#fff5ee; }
@media (max-width:1280px) {
  .iris-btb-app .fund-snapshot { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .iris-btb-app .fund-snapshot article { border-bottom:1px solid #ded3ce; }
  .iris-btb-app .fund-snapshot article:nth-child(3) { border-right:0; }
}
@media (max-width:720px) {
  .iris-btb-app .fund-snapshot { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .iris-btb-app .fund-snapshot article { padding:13px 9px; }
  .iris-btb-app .fund-snapshot article:nth-child(3) { border-right:1px solid #ded3ce; }
  .iris-btb-app .fund-snapshot article:nth-child(even) { border-right:0; }
  .iris-btb-app .fund-snapshot article:last-child { grid-column:1/-1; }
  .iris-btb-app .fund-snapshot strong { font-size:26px; }
  .iris-btb-app .inline-finance .section-heading { flex-direction:column; }
  .iris-btb-app .inline-finance .interpretation-card { padding:18px 12px; }
  .iris-btb-app .inline-finance .custom-payment-field { grid-template-columns:1fr; }
  .iris-btb-app .chart-date-labels { font-size:11px; }
  .iris-btb-app .chart-endpoints { grid-template-columns:1fr; }
  .iris-btb-app .chart-endpoints>div { display:flex; justify-content:space-between; gap:12px; padding:10px 0; }
  .iris-btb-app .chart-endpoints dd { margin:0; font-size:25px; }
  .iris-btb-app .inline-finance .supporting-outcomes { grid-template-columns:1fr; }
}
@media (max-width:480px) {
  .iris-btb-app .inline-finance .interpretation-card { grid-template-columns:1fr; gap:18px; padding:22px 18px; }
  .iris-btb-app .inline-finance .interpretation-card .ring { width:128px; height:128px; justify-self:center; }
  .iris-btb-app .inline-finance .interpretation-card .ring small { max-width:86px; font-size:11px; line-height:1.3; }
}
@media (max-width:360px) {
  .iris-btb-app .fund-snapshot { grid-template-columns:1fr; }
  .iris-btb-app .fund-snapshot article,.iris-btb-app .fund-snapshot article:nth-child(3) { border-right:0; }
}

.iris-btb-app /* 1.4.8: micro-intelligence and section polish without changing the product architecture. */
.planner-why { max-width:520px; margin:12px 0 18px; border-block:1px solid #d9d0c8; }
.iris-btb-app .planner-why summary { min-height:44px; display:flex; align-items:center; color:#754b60; font-size:12px; font-weight:800; cursor:pointer; }
.iris-btb-app .planner-why p { margin:0 0 14px; color:#62585f; font-size:12px; line-height:1.55; }

.iris-btb-app .snapshot-connected { grid-template-columns:minmax(0,2.1fr) minmax(260px,1.35fr) minmax(150px,.55fr); align-items:stretch; }
.iris-btb-app .snapshot-connected article { display:grid; align-items:center; }
.iris-btb-app .snapshot-equation { grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1.15fr); gap:10px; }
.iris-btb-app .snapshot-equation>div,.iris-btb-app .snapshot-interest-flow>div { min-width:0; }
.iris-btb-app .snapshot-equation>b,.iris-btb-app .snapshot-interest-flow>b { color:#9c6d80; font-family:var(--font-display),serif; font-size:25px; font-weight:500; }
.iris-btb-app .snapshot-connected .snapshot-equation strong,.iris-btb-app .snapshot-connected .snapshot-interest-flow strong { font-size:clamp(21px,1.7vw,29px); }
.iris-btb-app .snapshot-interest-flow { grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); gap:10px; }
.iris-btb-app .snapshot-interest-flow strong small { margin-left:3px; display:inline; font-family:var(--font-body),sans-serif; font-size:10px; font-weight:700; }
.iris-btb-app .snapshot-rate { align-content:center; }
.iris-btb-app .snapshot-provenance { margin:-17px 0 29px; display:flex; justify-content:space-between; gap:18px; color:#74676e; font-size:10px; line-height:1.4; }

.iris-btb-app .inline-finance .decision-first { align-items:start; }
.iris-btb-app .inline-finance .interpretation-card { align-self:start; grid-template-columns:128px minmax(0,1fr); gap:20px; }
.iris-btb-app .inline-finance .interpretation-card .ring { width:128px; height:128px; }
.iris-btb-app .inline-finance .interpretation-card .ring small { max-width:92px; text-align:center; }
.iris-btb-app .interpretation-copy .explain-term { margin-bottom:8px; }
.iris-btb-app .inline-finance .interpretation-card .coverage-math { margin:8px 0; padding:10px 0; border-block:1px solid #d7cdc8; font-size:13px; }
.iris-btb-app .coverage-math strong { color:#6f3f57; white-space:nowrap; }
.iris-btb-app .contextual-payment-action { min-height:44px; margin:5px 0 12px; padding:9px 14px; border:1px solid #8a5b70; border-radius:999px; background:#fffdfa; color:#6f3f57; font-weight:800; cursor:pointer; }
.iris-btb-app .contextual-payment-action:hover { background:#f7edf1; }
.iris-btb-app .payment-position { margin:8px 0 12px; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); list-style:none; border:1px solid #d8ccc8; border-radius:11px; overflow:hidden; }
.iris-btb-app .payment-position li { min-width:0; padding:9px; display:grid; gap:3px; border-right:1px solid #d8ccc8; background:rgba(255,255,255,.4); }
.iris-btb-app .payment-position li:last-child { border-right:0; }
.iris-btb-app .payment-position li.active { background:#fff; box-shadow:inset 0 3px #91627a; }
.iris-btb-app .payment-position strong { color:#70475b; font-size:10px; text-transform:uppercase; letter-spacing:.06em; }
.iris-btb-app .payment-position span { color:#62585e; font-size:10px; line-height:1.35; }
.iris-btb-app .inline-finance .interpretation-card .model-context { margin:0; color:#645a60; font-size:11px; line-height:1.5; }
.iris-btb-app .model-context strong { color:#4e3d46; }
.iris-btb-app .beginner-layer { margin:16px 0 0; border-block:1px solid #d8ccd1; }
.iris-btb-app .beginner-layer summary { min-height:44px; display:flex; align-items:center; color:#75475c; font-size:13px; font-weight:800; cursor:pointer; }
.iris-btb-app .beginner-layer p { max-width:78ch; margin:0 0 14px; color:#62585e; font-size:12px; line-height:1.6; }
.iris-btb-app .finance-agency { margin:22px 0 0; padding:18px; display:grid; grid-template-columns:minmax(180px,.6fr) minmax(0,1.4fr); gap:22px; border-block:1px solid #d7ccc7; background:#f7f4ef; }
.iris-btb-app .finance-agency h3 { margin:4px 0 0; font-family:var(--font-display),serif; font-size:28px; line-height:1; }
.iris-btb-app .finance-agency dl { margin:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.iris-btb-app .finance-agency dl>div { padding:5px 14px; border-left:1px solid #d7ccc7; }
.iris-btb-app .finance-agency dt { color:#774b60; font-size:10px; font-weight:900; text-transform:uppercase; letter-spacing:.06em; }
.iris-btb-app .finance-agency dd { margin:6px 0 0; color:#5f555b; font-size:11px; line-height:1.5; }

.iris-btb-app .scholarship-bridge-link { min-height:44px; margin-top:12px; display:inline-flex; align-items:center; color:#7a485e; font-size:11px; font-weight:850; }
.iris-btb-app .why-now { margin-top:10px; padding-top:10px; border-top:1px solid #d7dcd1; }
.iris-btb-app .why-now b { color:#845369; font-size:9px; text-transform:uppercase; letter-spacing:.08em; }
.iris-btb-app .why-now p { margin:4px 0 0; color:#62595f; font-size:10px; line-height:1.45; }
.iris-btb-app .follow-section li>em { width:max-content; margin-bottom:10px; padding:4px 7px; border-radius:999px; background:#eadfe6; color:#75475c; font-size:8px; font-style:normal; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }

.iris-btb-app .bloom-event-labels span,.iris-btb-app .bloom-event-labels strong,.iris-btb-app .bloom-event-labels .event-provenance { min-height:24px; padding:5px 8px; display:inline-flex; align-items:center; border:1px solid #d5c7ce; background:#fff; color:#695466; font-size:8px; font-style:normal; line-height:1; letter-spacing:.1em; text-transform:uppercase; }
.iris-btb-app .bloom-event-labels .event-provenance { border-color:#d1d8c7; background:#eef3e9; color:#4d674b; }
.iris-btb-app .bloom-event-labels .provenance-mine { border-color:#d9c6d3; background:#f5eaf1; color:#7b4e65; }
.iris-btb-app .bloom-event-labels .provenance-planned { border-color:#cec8df; background:#eeeaf8; color:#62547f; }
.iris-btb-app .bloom-event-labels .provenance-school { border-color:#d9cdbf; background:#f7efe5; color:#77583d; }

@media (max-width:1280px) {
  .iris-btb-app .snapshot-connected { grid-template-columns:1.5fr 1fr; }
  .iris-btb-app .snapshot-connected .snapshot-rate { grid-column:1/-1; border-right:0; border-bottom:0; }
}
@media (max-width:834px) {
  .iris-btb-app .snapshot-connected { grid-template-columns:1fr; }
  .iris-btb-app .snapshot-connected article,.iris-btb-app .snapshot-connected article:nth-child(3) { border-right:0; }
  .iris-btb-app .snapshot-provenance { flex-direction:column; gap:4px; }
  .iris-btb-app .finance-agency { grid-template-columns:1fr; }
  .iris-btb-app .finance-agency dl>div:first-child { border-left:0; padding-left:0; }
}
@media (max-width:720px) {
  .iris-btb-app .snapshot-equation { grid-template-columns:1fr auto; }
  .iris-btb-app .snapshot-equation>div:last-child { grid-column:1/-1; padding-top:10px; border-top:1px solid #ded3ce; }
  .iris-btb-app .snapshot-interest-flow { grid-template-columns:1fr auto 1fr; }
  .iris-btb-app .finance-agency dl { grid-template-columns:1fr; }
  .iris-btb-app .finance-agency dl>div { padding:11px 0; border-left:0; border-top:1px solid #d7ccc7; }
}
@media (max-width:480px) {
  .iris-btb-app .inline-finance .interpretation-card { grid-template-columns:1fr; }
  .iris-btb-app .payment-position { grid-template-columns:1fr; }
  .iris-btb-app .payment-position li { border-right:0; border-bottom:1px solid #d8ccc8; }
  .iris-btb-app .payment-position li:last-child { border-bottom:0; }
  .iris-btb-app .snapshot-interest-flow { grid-template-columns:1fr; }
  .iris-btb-app .snapshot-interest-flow>b { transform:rotate(90deg); justify-self:center; }
}

@media (max-width:1280px) {
  .iris-btb-app .finance-story-mode { grid-template-columns:repeat(3,1fr); }
  .iris-btb-app .finance-story-mode li:nth-child(3n) { border-right:0; }
  .iris-btb-app .finance-story-mode li:nth-child(-n+3) { border-bottom:1px solid #d9d0c8; }
  .iris-btb-app .semester-event-form { grid-template-columns:1fr 1fr; }
}

@media (max-width:900px) {
  .iris-btb-app .plan-command { grid-template-columns:1fr; }
  .iris-btb-app .plan-command .planner-intro,.iris-btb-app .plan-command .planner-live-preview,.iris-btb-app .plan-command .showcase-calendar { grid-column:1; }
  .iris-btb-app .plan-command .planner-intro { max-width:650px; }
  .iris-btb-app .plan-command .planner-live-preview { height:430px!important; }
  .iris-btb-app .now-next-later { grid-template-columns:1fr; gap:18px; }
  .iris-btb-app .now-next-later li:first-child { border-left:0; }
  .iris-btb-app .learning-current-path { grid-template-columns:1fr; }
  .iris-btb-app .learning-current-path a { min-height:80px; border-right:0; border-bottom:1px solid #d7dcd1; }
  .iris-btb-app .learning-current-path a:last-child { border-bottom:0; }
  .iris-btb-app .small-wins-history { grid-template-columns:1fr; }
}

@media (min-width:721px) and (max-width:900px) {
  .iris-btb-app .planner-shell .mobile-day-switch { display:none; }
  .iris-btb-app .planner-shell .week-grid { grid-template-columns:repeat(var(--days,5),minmax(0,1fr)); gap:6px; }
  .iris-btb-app .planner-shell .day-column { min-height:540px; }
  .iris-btb-app .planner-shell .day-column>header { min-height:62px; padding:8px; }
  .iris-btb-app .planner-shell .day-column>header strong { display:none; }
  .iris-btb-app .planner-shell .day-column>header span { display:block; font-family:var(--font-display),serif; font-size:16px; font-weight:650; }
  .iris-btb-app .planner-shell .day-blocks { min-height:470px; padding:5px; gap:6px; }
  .iris-btb-app .planner-shell .schedule-block { padding:8px 6px; }
  .iris-btb-app .planner-shell .block-actions { gap:4px; }
  .iris-btb-app .planner-shell .block-actions button { min-width:44px; flex:1 1 calc(50% - 2px); padding:5px 3px; font-size:7px; }
}

@media (max-width:720px) {
  .iris-btb-app .chapter-bloom { width:52px; height:52px; margin:-24px 0 10px; display:block; object-fit:cover; border-radius:50%; mix-blend-mode:multiply; }
  .iris-btb-app .plan-command,.iris-btb-app .fund-overview,.iris-btb-app .learn-overview,.iris-btb-app .reflection-section,.iris-btb-app .follow-section { margin-top:24px; border-top:1px solid #d9cdd1; }
  .iris-btb-app .now-next-later ol,.iris-btb-app .scholarship-timeline,.iris-btb-app .small-wins-history ol { grid-template-columns:1fr; }
  .iris-btb-app .now-next-later li { min-height:0; border-left:0; border-top:1px solid #d9d0c8; }
  .iris-btb-app .finance-story-mode { grid-template-columns:1fr 1fr; }
  .iris-btb-app .finance-story-mode li,.iris-btb-app .finance-story-mode li:nth-child(3n) { border-right:1px solid #d9d0c8; border-bottom:1px solid #d9d0c8; }
  .iris-btb-app .finance-story-mode li:nth-child(even) { border-right:0; }
  .iris-btb-app .scholarship-timeline li { min-height:0; border-right:0; border-bottom:1px solid #e1cfd6; }
  .iris-btb-app .scholarship-timeline li:last-child { border-bottom:0; }
  .iris-btb-app .scenario-save-actions { justify-content:flex-start; }
  .iris-btb-app .planner-preview-live { grid-template-rows:34px minmax(0,1fr) auto 16px; }
  .iris-btb-app .planner-preview-semester { margin:0 5px 4px; padding:5px; }
  .iris-btb-app .planner-preview-semester>div { grid-template-columns:1fr; }
  .iris-btb-app .planner-preview-semester article:nth-child(n+2) { display:none; }
  .iris-btb-app .semester-event-form,.iris-btb-app .semester-event-list article { grid-template-columns:1fr; }
  .iris-btb-app .semester-event-list button { justify-self:start; }
  .iris-btb-app .small-wins-history li { border-left:0; }
  .iris-btb-app .follow-section ol { grid-template-columns:1fr; }
  .iris-btb-app .follow-section li,.iris-btb-app .follow-section li:nth-child(3n) { min-height:0; border-right:0; }
  .iris-btb-app .emotional-close .closing-milestone { display:grid; }
}

@media (max-width:560px) {
  .iris-btb-app .planner-shell .planner-toolbar>button:nth-of-type(3),.iris-btb-app .planner-shell .planner-toolbar>button:nth-of-type(4),.iris-btb-app .planner-shell .planner-toolbar>button:nth-of-type(6),.iris-btb-app .planner-shell .planner-toolbar>button:nth-of-type(7) { display:none; }
  .iris-btb-app .planner-shell .planner-rail { display:flex; flex-wrap:nowrap; gap:6px; overflow-x:auto; }
  .iris-btb-app .planner-shell .planner-rail button { min-width:max-content; flex:0 0 auto; padding-inline:14px; white-space:nowrap; }
}

@media print {
  .iris-btb-app .print-scenario-sheet { display:none!important; }
  .iris-btb-app body.print-bloom-scenario * { visibility:hidden!important; }
  .iris-btb-app body.print-bloom-scenario .print-scenario-sheet,.iris-btb-app body.print-bloom-scenario .print-scenario-sheet * { visibility:visible!important; }
  .iris-btb-app body.print-bloom-scenario .print-scenario-sheet { width:100%; min-height:100vh; padding:48px; display:block!important; position:absolute; inset:0; color:#2f2931; background:#fff; }
  .iris-btb-app .print-scenario-sheet h2 { margin:8px 0; font-family:Georgia,serif; font-size:42px; }
  .iris-btb-app .print-scenario-sheet dl { margin:28px 0; display:grid; grid-template-columns:1fr 1fr; border-block:1px solid #bbb; }
  .iris-btb-app .print-scenario-sheet dl div { padding:16px; border-bottom:1px solid #ddd; }
  .iris-btb-app .print-scenario-sheet dt { font-size:10px; text-transform:uppercase; }
  .iris-btb-app .print-scenario-sheet dd { margin:7px 0 0; font-family:Georgia,serif; font-size:24px; }
}

