:root{--ink:#17352f;--deep:#0d4b3c;--jade:#177c5e;--moss:#809743;--lime:#dff48b;--cream:#fbf7ed;--paper:#fffef9;--line:#d7dfd5;--orange:#e66f3f;--muted:#61746d;--shadow:0 22px 65px rgba(24,69,56,.13)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:radial-gradient(circle at 8% 5%,#edf6d8 0,transparent 26%),radial-gradient(circle at 94% 22%,#ffe4c5 0,transparent 22%),var(--cream);color:var(--ink);font-family:Inter,Aptos,"Segoe UI",sans-serif}.topbar{height:64px;display:flex;align-items:center;justify-content:space-between;max-width:1220px;margin:auto;padding:0 26px}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-weight:850;font-size:1.04rem}.brand img{width:38px;height:38px;object-fit:contain}.top-actions{display:flex;align-items:center;gap:18px}.quiet-link{color:var(--deep);font-weight:750;text-decoration:none;border-bottom:1px solid transparent}.quiet-link:hover{border-color:currentColor}.account-button,.auth-banner button{font:inherit;font-weight:850;border:0;border-radius:99px;cursor:pointer}.account-button{background:var(--deep);color:#fff;padding:9px 14px}.account-button:hover{background:var(--jade)}main{max-width:1480px;margin:auto;padding:8px 26px 12px}.workbench{display:grid;grid-template-columns:minmax(320px,.56fr) minmax(400px,1.06fr) minmax(460px,1.08fr);background:var(--paper);border:1px solid rgba(22,54,47,.11);border-radius:30px;overflow:hidden;box-shadow:var(--shadow)}
@media(min-width:901px)and(min-height:760px){.conversation{max-height:calc(100vh - 100px);overflow-y:auto}}
@media(max-width:1280px){.workbench{grid-template-columns:minmax(360px,.9fr) minmax(420px,1.1fr)}.preview-panel{grid-column:1/-1;border-top:1px solid rgba(22,54,47,.11)}}
@media(max-width:900px){.workbench{grid-template-columns:1fr}.preview-panel{grid-column:auto}}.pitch{position:relative;display:flex;flex-direction:column;background:linear-gradient(150deg,#174f40 0,#0a302a 68%);color:#fff;overflow:hidden;padding:24px 30px 0}.pitch:before{content:"";position:absolute;width:380px;height:380px;border:1px solid rgba(223,244,139,.16);border-radius:50%;right:-180px;top:-165px}.pitch-copy{position:relative;z-index:3}.eyebrow,.card-kicker{font-size:.7rem;text-transform:uppercase;letter-spacing:.15em;font-weight:900;color:var(--lime)}h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,3vw,3.1rem);line-height:1.02;letter-spacing:-.04em;margin:10px 0 10px;font-weight:500}h1 span{color:var(--lime)}.pitch-copy>p{font-size:.9rem;line-height:1.4;color:#dce9e4;margin:0;max-width:500px}.pitch-lines{margin:0 0 4px}.pitch-line{margin:0;font-size:.78rem;line-height:1.3;color:#cfe4da}.pitch-tagline{font-size:.85rem;line-height:1.35;color:#dce9e4;margin:6px 0 0;max-width:480px}.benefits{display:flex;gap:7px;flex-wrap:wrap;list-style:none;padding:0;margin:12px 0 0}.benefits li{font-size:.72rem;font-weight:850;color:#ecf3ef;border:1px solid rgba(255,255,255,.2);border-radius:99px;padding:6px 9px}.benefits li:before{content:"✓";color:var(--lime);margin-right:5px}.kea-stage{position:relative;flex:1;min-height:150px;max-height:220px;margin-top:4px;isolation:isolate}.mountain{position:absolute;bottom:0;clip-path:polygon(0 100%,28% 36%,42% 62%,60% 19%,100% 100%)}.mountain-back{height:170px;left:-40px;right:-40px;background:#225e4e;opacity:.65}.mountain-front{height:110px;left:-45px;right:-45px;background:#092b25}.kea-bird{position:absolute;width:255px;height:228px;right:42px;bottom:4px;filter:drop-shadow(0 18px 14px rgba(0,0,0,.27));transform:rotate(-3deg)}.kea-body{position:absolute;width:135px;height:175px;left:45px;top:43px;background:linear-gradient(135deg,#a8b95c 0,#72893e 48%,#405f36 100%);border-radius:58% 45% 52% 42%;transform:rotate(-12deg)}.kea-head{position:absolute;width:112px;height:94px;left:92px;top:15px;background:radial-gradient(circle at 35% 34%,#bac66f 0,#849648 55%,#536a38 100%);border-radius:56% 48% 40% 52%;transform:rotate(9deg)}.kea-eye{position:absolute;width:10px;height:10px;right:28px;top:29px;border-radius:50%;background:#12231e;border:2px solid #f7f1d7;box-shadow:0 0 0 2px rgba(25,42,33,.35)}.kea-beak-upper{position:absolute;width:83px;height:54px;left:83px;top:28px;background:linear-gradient(160deg,#a5a08a 0,#676358 70%);border-radius:12% 95% 55% 28%;clip-path:polygon(0 0,100% 20%,92% 58%,70% 100%,77% 52%,0 55%);transform:rotate(12deg);transform-origin:left center}.kea-beak-lower{position:absolute;width:63px;height:29px;left:86px;top:60px;background:#484942;border-radius:8% 80% 70% 25%;clip-path:polygon(0 0,100% 18%,68% 100%,0 46%);transform:rotate(8deg)}.kea-wing{position:absolute;width:112px;height:145px;left:33px;top:74px;background:linear-gradient(155deg,#4f713c 0 47%,#e36e3e 48% 61%,#f0a151 62% 71%,#334e33 72%);border-radius:68% 23% 72% 30%;transform:rotate(16deg);z-index:2;box-shadow:inset -9px -8px rgba(13,60,45,.2)}.kea-wing i{position:absolute;width:75px;height:2px;background:rgba(238,203,105,.45);transform:rotate(55deg);top:81px;left:26px}.kea-tail{position:absolute;width:74px;height:126px;left:30px;top:123px;background:#485f36;clip-path:polygon(16% 0,100% 6%,61% 100%,0 91%);transform:rotate(15deg)}.bird-label{position:absolute;left:0;bottom:16px;color:#b8cbbf;font-size:.64rem;letter-spacing:.08em;text-transform:uppercase}.conversation{padding:16px 28px 20px}.chat-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:14px;border-bottom:1px solid var(--line)}.status-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#44b77c;margin-right:8px;box-shadow:0 0 0 5px rgba(68,183,124,.13)}.prototype-tag{font-size:.67rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em;background:#edf4e8;padding:6px 9px;border-radius:99px;color:var(--deep)}.messages{display:flex;flex-direction:column;gap:8px;padding:13px 0 8px}.message{max-width:90%;padding:9px 12px;border-radius:14px;animation:arrive .3s ease-out}.message p{margin:1px 0 0;line-height:1.35;font-size:.86rem}.speaker{font-size:.59rem;text-transform:uppercase;letter-spacing:.1em;font-weight:900;opacity:.65}.kea-message{background:#edf4e8;border-bottom-left-radius:4px}.teacher-message{background:var(--deep);color:white;align-self:flex-end;border-bottom-right-radius:4px}.resource-picker{display:grid;grid-template-columns:1fr 1fr;gap:9px;border:0;padding:0;margin:0 0 8px}.resource-picker legend,form>label{font-weight:850;font-size:.8rem;margin:0 0 7px}.resource-picker legend{grid-column:1/-1}.resource-option{position:relative;display:grid;grid-template-columns:76px 1fr;align-items:center;gap:10px;border:1px solid var(--line);border-radius:13px;padding:8px;cursor:pointer;background:#fff}.resource-option:has(input:checked){border-color:var(--jade);box-shadow:0 0 0 3px rgba(22,128,97,.1);background:#f8fbf4}.resource-option input{position:absolute;opacity:0}.resource-option strong,.resource-option small{display:block}.resource-option strong{font-size:.82rem}.resource-option small{font-size:.65rem;color:var(--muted);line-height:1.25;margin-top:2px}.resource-preview{position:relative;display:block;width:72px;height:51px;background:#fff;border:1px solid #cbd3ca;border-radius:3px;box-shadow:0 2px 5px rgba(20,50,40,.08);overflow:hidden}.worksheet-preview i{display:block;height:2px;background:#a7b3ab;margin:5px 7px}.worksheet-preview .preview-title{height:5px;background:var(--deep);margin:6px 7px}.worksheet-preview b{position:relative;display:inline-grid;place-items:center;width:13px;height:13px;margin:1px -2px 0 7px;border:1px solid #91a098;border-radius:2px;font-size:6px;color:var(--deep)}.donow-preview{background:#173f36;color:#fff;padding:5px}.donow-preview em{font-style:normal;font-family:Georgia,serif;font-weight:700;font-size:8px;color:var(--lime)}.donow-preview i{display:inline-block;width:17px;height:17px;margin:5px 2px 0 0;border:1px solid rgba(255,255,255,.55);border-radius:2px}.donow-preview b{position:absolute;right:4px;top:4px;font-size:5px;color:#dbe7df}textarea,select{width:100%;font:inherit;color:var(--ink);background:#fff;border:1px solid #cdd8cf;border-radius:12px;outline:none}textarea{padding:9px 12px;resize:vertical;min-height:52px;line-height:1.35}textarea:focus,select:focus{border-color:var(--jade);box-shadow:0 0 0 3px rgba(22,128,97,.11)}.quick-prompts{display:flex;gap:6px;flex-wrap:wrap;margin:7px 0 12px}.quick-prompts button{border:1px solid #ccd8cf;background:#fff;border-radius:99px;padding:5px 8px;color:var(--deep);font-size:.68rem;font-weight:750;cursor:pointer}.quick-prompts button:hover{background:#edf4e8}.details-grid{display:grid;grid-template-columns:1fr .7fr;gap:9px;margin-bottom:10px}.details-grid label{font-size:.68rem;font-weight:850;color:var(--muted)}.resource-select-fallback{display:none}select{display:block;margin-top:5px;padding:8px 9px;font-weight:700;font-size:.78rem}.primary{width:100%;display:flex;align-items:center;justify-content:space-between;border:0;border-radius:13px;padding:10px 15px;background:var(--deep);color:#fff;font:inherit;font-weight:850;cursor:pointer;box-shadow:0 9px 22px rgba(13,75,60,.2);transition:transform .18s,background .18s}.primary:hover{background:var(--jade);transform:translateY(-1px)}.privacy-note{font-size:.64rem;line-height:1.3;color:var(--muted);margin:6px 2px 0}.auth-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#f3f7ec;border:1px solid #d8e3d2;border-radius:13px;padding:8px 10px;margin:0 0 10px}.auth-banner>div{min-width:0}.auth-banner strong,.auth-banner span{display:block}.auth-banner strong{font-size:.74rem}.auth-banner span{font-size:.63rem;color:var(--muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.auth-banner button{flex:none;background:#fff;color:var(--deep);border:1px solid #c8d5cb;padding:7px 10px;font-size:.68rem}.auth-banner.signed-in{background:#e6f4e9;border-color:#b8dec5}.auth-banner.signed-in button{display:none}.request-card,.resources-panel{margin:26px auto 0;background:var(--paper);border:1px solid rgba(22,54,47,.11);border-radius:25px;padding:25px 28px;box-shadow:0 12px 35px rgba(22,54,47,.08)}.request-card{background:#e8f3db;animation:arrive .5s ease-out}.request-card h2,.resources-heading h2{font-family:Georgia,serif;font-size:1.8rem;margin:6px 0 18px}.request-card dl{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 18px}.request-card dl div{background:rgba(255,255,255,.7);border-radius:12px;padding:11px}.request-card dt{font-size:.62rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:850}.request-card dd{margin:4px 0 0;font-weight:850}.request-card>p{line-height:1.5}.next-step{border-top:1px solid rgba(22,54,47,.16);padding-top:14px;color:var(--muted)}.next-step span{font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;font-weight:900;color:var(--deep);margin-right:8px}.resources-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}.refresh-button,.download-button{font:inherit;font-weight:800;border:1px solid #c8d5cb;background:#fff;color:var(--deep);border-radius:99px;padding:9px 13px;cursor:pointer}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.resources-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px}.resources-search{flex:1 1 220px;min-width:0;font:inherit;color:var(--ink);background:#fff;border:1px solid #cdd8cf;border-radius:99px;padding:9px 14px}.resources-search:focus{outline:none;border-color:var(--jade);box-shadow:0 0 0 3px rgba(22,128,97,.11)}.resources-type-filter{flex:0 0 auto;font:inherit;font-weight:750;color:var(--deep);background:#fff;border:1px solid #cdd8cf;border-radius:99px;padding:9px 13px}.resources-show-failed{display:inline-flex;align-items:center;gap:7px;font-size:.78rem;font-weight:750;color:var(--muted);cursor:pointer;white-space:nowrap}.resources-show-failed input{width:16px;height:16px;accent-color:var(--jade)}
.resources-empty{color:var(--muted);margin:20px 0 4px}.resources-list{display:grid;gap:12px;margin-top:20px}
.resource-group{border:1px solid var(--line);border-radius:16px;padding:0;background:#fff}.resource-group+.resource-group{margin-top:0}.resource-group>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;padding:13px 16px;font-weight:850;font-family:Georgia,serif;font-size:1.02rem;color:var(--deep)}.resource-group>summary::-webkit-details-marker{display:none}.resource-group>summary:before{content:"▸";display:inline-block;margin-right:9px;color:var(--jade);transition:transform .15s;font-size:.8em}.resource-group[open]>summary:before{transform:rotate(90deg)}.resource-group>summary:focus-visible{outline:2px solid var(--jade);outline-offset:2px;border-radius:8px}.resource-group-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resource-group-count{flex:none;font-family:Inter,sans-serif;font-size:.72rem;font-weight:900;color:var(--muted);background:#edf4e8;border-radius:99px;padding:3px 9px}.resource-group-items{display:grid;gap:12px;padding:0 16px 16px}
.resource-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;border:1px solid var(--line);border-radius:16px;padding:15px}.resource-row.is-failed{opacity:.68;border-style:dashed;background:#fdfaf7}.resource-row h3{margin:0 0 5px;font-size:1rem}.resource-meta{color:var(--muted);font-size:.78rem}.resource-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.status-pill{display:inline-flex;align-items:center;border-radius:99px;padding:6px 9px;background:#edf4e8;color:var(--deep);font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.status-pill.failed{background:#fde9df;color:#813b25}.status-pill.completed{background:#e0f3e7;color:#11613f}.primary[disabled],.refresh-button[disabled],.download-button[disabled]{opacity:.55;cursor:wait;transform:none}.trust-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:25px}.trust-strip article{padding:17px;border-top:2px solid var(--line)}.trust-strip strong,.trust-strip span{display:block}.trust-strip strong{font-family:Georgia,serif;font-size:1rem;margin-bottom:6px}.trust-strip span{font-size:.77rem;line-height:1.4;color:var(--muted)}footer{display:flex;justify-content:space-between;gap:20px;max-width:1220px;margin:auto;padding:14px 26px 20px;border-top:1px solid var(--line);font-size:.78rem;color:var(--muted)}footer a{color:var(--deep);font-weight:850}.coffee-link{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--jade);border-radius:99px;padding:5px 12px;background:#f8fbf4;color:var(--deep);text-decoration:none}.coffee-link:hover{background:#edf4e8}.coffee-link-top{font-size:.74rem;padding:6px 12px;font-weight:800}@keyframes arrive{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}.level-picker{display:flex;gap:8px;flex-wrap:wrap;border:0;padding:0;margin:0 0 12px}.level-picker legend{font-weight:850;font-size:.8rem;margin:0 0 7px;width:100%}.level-option{position:relative;display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:99px;padding:8px 14px;cursor:pointer;background:#fff;font-size:.8rem;font-weight:750}.level-option:has(input:checked){border-color:var(--jade);box-shadow:0 0 0 3px rgba(22,128,97,.1);background:#f8fbf4;color:var(--deep)}.level-option input{position:absolute;opacity:0}
@media(max-width:900px){.workbench{grid-template-columns:1fr}.pitch{padding:30px 30px 0;min-height:410px}.kea-stage{position:absolute;right:0;bottom:0;width:380px;height:260px;opacity:.72}.pitch-copy{max-width:62%}.conversation{position:relative;background:var(--paper)}.trust-strip{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.topbar{height:58px;padding:0 15px}.brand span{font-size:.92rem}.top-actions .quiet-link{display:none}.coffee-link-top{display:none}.account-button{font-size:.7rem;padding:8px 10px}main{padding:8px 12px 42px}.workbench{border-radius:22px}.pitch{min-height:285px;padding:24px 20px 0}.pitch-copy{max-width:100%}h1{font-size:2.5rem;max-width:350px;margin:10px 0 12px}.pitch-copy>p{font-size:.86rem;line-height:1.4;max-width:320px}.benefits{margin-top:12px}.benefits li{font-size:.61rem;padding:5px 7px}.kea-stage{width:215px;height:155px;opacity:.48;right:-26px}.kea-bird{transform:scale(.62) rotate(-3deg);transform-origin:right bottom;right:18px}.bird-label{display:none}.conversation{padding:20px 16px 22px}.messages{padding-top:10px}.resource-picker{grid-template-columns:1fr 1fr}.resource-option{grid-template-columns:58px 1fr;padding:7px;gap:7px}.resource-preview{width:55px;height:42px}.resource-option small{font-size:.59rem}.worksheet-preview b{width:10px;height:10px;margin-left:5px}.donow-preview i{width:12px;height:14px}.quick-prompts{margin-bottom:10px}.auth-banner{align-items:flex-start;flex-direction:column}.auth-banner button{width:100%}.details-grid{grid-template-columns:1fr 1fr}.trust-strip{grid-template-columns:1fr}.request-card,.resources-panel{padding:21px 17px}.request-card dl{grid-template-columns:1fr}.resource-row{grid-template-columns:1fr}.resource-actions{justify-content:flex-start}footer{flex-direction:column;padding-left:18px}.resources-toolbar{flex-direction:column;align-items:stretch}.resources-search,.resources-type-filter{width:100%}.resource-group-items{padding:0 12px 12px}}
@media(max-width:380px){.resource-picker{grid-template-columns:1fr}.pitch{min-height:305px}.benefits li:last-child{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}
body{overflow-x:hidden}.pitch,.conversation,.resource-option,.resource-option>span:last-child{min-width:0}
@media(max-width:600px){
  .workbench{width:100%;grid-template-columns:minmax(0,1fr)}
  .pitch,.conversation{width:100%;max-width:100%;overflow:hidden}
  .topbar{gap:8px}.top-actions{min-width:0}.account-button{max-width:132px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .pitch{min-height:218px;padding:18px 20px 0}
  h1{font-size:2.05rem;line-height:1;margin:7px 0 8px;max-width:310px}
  .eyebrow{font-size:.6rem}.pitch-copy>p{font-size:.73rem;line-height:1.35;max-width:285px}
  .benefits{margin-top:8px}.benefits li{font-size:.55rem;padding:4px 6px}
  .kea-stage{height:105px;width:150px}.kea-bird{transform:scale(.48) rotate(-3deg)}
  .conversation{padding:13px 14px 18px}.chat-head{padding-bottom:9px}.messages{display:none}
  .auth-banner{display:grid;grid-template-columns:1fr auto;align-items:center;padding:7px 8px;margin:8px 0;gap:7px}
  .auth-banner button{width:auto;max-width:128px;padding:6px 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.auth-banner span{display:none}
  .resource-picker{gap:6px;margin-bottom:8px}.resource-picker legend{margin-bottom:3px}
  .resource-option{grid-template-columns:45px minmax(0,1fr);padding:5px;gap:6px;overflow:hidden}
  .resource-option>span:last-child{overflow:hidden}.resource-option small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .resource-preview{width:43px;height:34px}.resource-option strong{font-size:.72rem}.resource-option small{font-size:.52rem}
  .worksheet-preview i{margin:3px 5px}.worksheet-preview .preview-title{margin:4px 5px;height:3px}.worksheet-preview b{display:none}
  .donow-preview{padding:3px}.donow-preview em{font-size:6px}.donow-preview i{width:9px;height:10px;margin-top:4px}
  form>label{margin-bottom:4px}textarea{min-height:58px;padding:8px 10px;font-size:.79rem}
  .quick-prompts{margin:5px 0 7px}.quick-prompts button{font-size:.58rem;padding:4px 6px}
  select{padding:6px 8px;margin-top:3px}.details-grid{margin-bottom:7px}.primary{padding:10px 13px}
  .privacy-note{display:none}
.field-help{display:block;margin-top:4px;font-size:.62rem;line-height:1.3;color:var(--muted)}
}

/* Release-gate accessibility and faithful format motifs. */
:where(a,button,textarea,select,input):focus-visible,.resource-option:has(input:focus-visible){outline:3px solid #f28a45;outline-offset:3px}
.resource-preview{display:flex;flex-direction:column;justify-content:flex-start;padding:5px 6px}
.worksheet-preview em{font:800 7px/1 Inter,Aptos,sans-serif;text-transform:uppercase;letter-spacing:.05em;color:var(--deep);border-bottom:2px solid var(--deep);padding-bottom:3px;margin-bottom:3px}
.worksheet-preview>i{display:flex;align-items:center;height:12px;margin:0;border-bottom:1px solid #bdc8c0;background:none}
.worksheet-preview>i b{display:grid;place-items:center;width:10px;height:10px;border:1px solid #82958a;border-radius:2px;font:700 6px/1 Inter,sans-serif;color:var(--deep)}
.donow-preview{padding:5px 6px}.donow-preview em{font-size:8px;line-height:1}.donow-preview>span{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;margin-top:6px}.donow-preview>span i{display:grid;place-items:center;width:auto;height:20px;margin:0;border:1px solid rgba(255,255,255,.72);border-radius:2px;font:700 7px/1 Inter,sans-serif;color:#fff}
.kea-head{border-radius:62% 48% 44% 58%}.kea-beak-upper{width:104px;height:72px;left:88px;top:23px;background:linear-gradient(155deg,#625f54,#302f2c 72%);clip-path:polygon(0 5%,100% 18%,94% 54%,73% 100%,80% 54%,0 58%);transform:rotate(11deg)}.kea-beak-lower{width:73px;left:91px;top:61px;background:#292a27}.kea-feet{position:absolute;left:102px;top:203px;z-index:4}.kea-feet i{position:absolute;width:22px;height:14px;border-bottom:4px solid #3e4038;border-radius:50%;transform:rotate(17deg)}.kea-feet i+ i{left:23px;transform:rotate(-3deg)}.kea-perch{position:absolute;width:145px;height:9px;left:70px;top:218px;border-radius:70%;background:#5d4631;transform:rotate(-4deg);z-index:3}

@media(pointer:coarse){.brand,.account-button,.auth-banner button,.quick-prompts button,.primary,.refresh-button,.download-button,select{min-height:44px}.resource-option{min-height:64px}.resources-search,.resources-type-filter,.resource-group>summary,.resources-show-failed{min-height:44px}}
@media(forced-colors:active){.resource-option:has(input:checked){outline:3px solid Highlight;outline-offset:-3px}.resource-option:has(input:checked):after{content:"Selected";position:absolute;right:6px;top:4px;color:Highlight;font-size:.65rem;font-weight:800}.status-dot{background:Highlight}.resource-preview,.primary{border:2px solid ButtonText}}

.resource-dialog{width:min(720px,calc(100% - 2rem));max-height:86vh;padding:0;border:0;border-radius:18px;background:transparent}.resource-dialog::backdrop{background:rgba(17,31,21,.55)}.resource-detail{padding:1rem;border:1px solid #c9d7ca;border-radius:16px;background:#f8fbf6;box-shadow:0 8px 24px rgba(36,56,38,.18)}
.resource-detail.loading{color:#526556}.detail-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.detail-heading h4{margin:.15rem 0 .75rem;font:700 1.15rem/1.2 var(--serif)}
.detail-close{border:0;background:transparent;font-size:1.5rem;line-height:1;cursor:pointer}.revision-actions,.version-downloads{display:flex;flex-wrap:wrap;gap:.45rem}
.revision-actions button,.revision-form button,.version-downloads button,.customize-button{border:1px solid #8ca48d;border-radius:999px;background:#fff;color:#27452e;padding:.48rem .75rem;font:inherit;font-weight:700;cursor:pointer}
.revision-actions .next-set-button{border-color:var(--jade);background:#eaf4e0;color:var(--deep)}.resource-sequence{margin:.15rem 0 .8rem;color:var(--deep);font-size:.88rem;font-weight:750}
.revision-form{display:flex;align-items:end;gap:.6rem;margin:.85rem 0}.revision-form label{flex:1;font-weight:700}.revision-form textarea{display:block;width:100%;margin-top:.3rem;resize:vertical}
.revision-status{min-height:1.4em;color:#526556;font-size:.9rem}.version-history{display:grid;gap:.5rem;margin:.8rem 0 0;padding:0;list-style:none}.version-history li{display:grid;grid-template-columns:minmax(6rem,.6fr) minmax(10rem,1fr) auto;align-items:center;gap:.6rem;padding:.65rem .75rem;border-radius:10px;background:#fff}.version-history li>span{font-size:.88rem;color:#526556}
.resource-conversation{display:grid;gap:.4rem;margin:.2rem 0 .8rem}.conversation-message,.conversation-empty{width:fit-content;max-width:85%;margin:0;padding:.5rem .7rem;border-radius:12px;background:#e5eee2;color:#304b36;font-size:.9rem}.conversation-message.user{margin-left:auto;background:#fff;border:1px solid #d4dfd2}.conversation-empty{background:transparent;padding-left:0;color:#607063}
.share-dialog{width:min(660px,calc(100% - 2rem))}.share-explanation{margin:.1rem 0 1rem;color:var(--muted);font-size:.9rem;line-height:1.45}.share-form{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end;gap:.65rem}.share-form label{font-size:.78rem;font-weight:800}.share-form select,.share-form input{display:block;width:100%;min-height:42px;margin-top:.3rem;padding:.55rem .65rem;border:1px solid #cdd8cf;border-radius:10px;background:#fff;color:var(--ink);font:inherit}.share-form .share-create{grid-column:1/-1;min-height:44px;border:0;border-radius:10px;background:var(--deep);color:#fff;font:inherit;font-weight:800;cursor:pointer}.share-form :disabled,.kea-link-row button:disabled{opacity:.55;cursor:wait}.share-status{min-height:1.4em;margin:.65rem 0;color:var(--muted);font-size:.86rem}.share-reveal{display:grid;grid-template-columns:1fr auto;gap:.45rem;padding:.75rem;border:2px solid #e1a66a;border-radius:12px;background:#fff8ee}.share-reveal[hidden]{display:none}.share-reveal strong,.share-reveal span{grid-column:1/-1}.share-reveal span{font-size:.78rem;color:#765338}.share-reveal input{min-width:0;padding:.55rem;border:1px solid #cab69e;border-radius:8px;font:inherit}.share-reveal button,.kea-link-row button{border:1px solid #8ca48d;border-radius:9px;background:#fff;color:#27452e;padding:.5rem .7rem;font:inherit;font-weight:750;cursor:pointer}.share-detail h5{margin:1rem 0 .45rem;font-size:.9rem}.kea-link-list{display:grid;gap:.45rem}.share-empty,.share-error{margin:.3rem 0;color:var(--muted);font-size:.85rem}.share-error{color:#8a3b28}.kea-link-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.65rem .7rem;border:1px solid var(--line);border-radius:10px;background:#fff}.kea-link-row strong,.kea-link-row span{display:block}.kea-link-row span{margin-top:.15rem;color:var(--muted);font-size:.76rem}.share-open-page{display:grid;place-items:center}.share-open-page main{width:min(560px,100%);padding:24px}.share-open-card{padding:clamp(1.5rem,6vw,3rem);border:1px solid var(--line);border-radius:22px;background:var(--paper);box-shadow:var(--shadow)}.share-open-card h1{font-size:clamp(2rem,8vw,3.4rem)}.share-open-card p{line-height:1.5;color:var(--muted)}.share-open-card a{color:var(--deep);font-weight:800}

@media(max-width:600px){
  .revision-form{align-items:stretch;flex-direction:column}.version-history li{grid-template-columns:1fr}.resource-detail{margin-inline:0}.resource-dialog{width:calc(100% - 1rem);max-height:94vh}.share-form{grid-template-columns:1fr}.share-form .share-create{grid-column:1}.share-reveal{grid-template-columns:1fr}.share-reveal button{min-height:44px}.kea-link-row{align-items:stretch;flex-direction:column}.kea-link-row button{width:100%;min-height:44px}
  .kea-stage{opacity:1;right:-5px;width:142px;overflow:hidden}.kea-bird{transform:scale(.44) rotate(-3deg);right:2px;bottom:-7px}.mountain{opacity:.6}
  .resource-preview{padding:4px}.worksheet-preview em{font-size:6px;padding-bottom:2px;margin-bottom:1px}.worksheet-preview>i{height:9px}.donow-preview{padding:4px}.donow-preview>span{gap:2px;margin-top:4px}.donow-preview>span i{height:15px;font-size:6px}
  #mm-consent{padding:7px 10px!important}#mm-consent .mm-inner{display:grid!important;grid-template-columns:1fr auto;gap:6px!important}#mm-consent p{font-size:.64rem!important;line-height:1.25!important;flex:auto!important}#mm-consent .mm-btns{gap:5px!important}#mm-consent button{min-height:44px;padding:6px 11px!important;font-size:.7rem!important}
}
.detail-close{display:grid;place-items:center;min-width:44px;min-height:44px}
.revision-actions button,.revision-form button,.version-downloads button,.customize-button,.share-form select,.share-form input,.share-reveal input,.share-reveal button,.kea-link-row button{min-height:44px}

/* Quick-settings segmented controls + live preview thumbnail (recovered
   from the former /kea/preview prototype, now wired into the real form). */
.segmented-control input{position:absolute;opacity:0;pointer-events:none}
.segmented-control input:focus-visible+span{outline:3px solid rgba(93,142,85,.25);outline-offset:2px}
.segmented-control{display:grid;gap:7px;border:0;padding:0;margin:0 0 8px}
.two-up{grid-template-columns:repeat(2,1fr)}
.tier-control{grid-template-columns:repeat(3,1fr)}
.four-up{grid-template-columns:repeat(4,1fr)}
.segmented-control label{min-width:0;cursor:pointer}
.segmented-control label>span{min-height:40px;padding:7px 10px;display:flex;align-items:center;justify-content:center;gap:7px;color:#627169;border:1px solid #d6dcd4;border-radius:12px;background:#fff;font-size:.78rem;font-weight:780;text-align:center;transition:120ms ease}
.two-up label>span{align-items:flex-start;flex-direction:column;gap:2px;text-align:left}
.two-up strong{color:inherit}
.two-up small{font-size:.68rem;font-weight:550;opacity:.78;color:var(--muted)}
.tier-control i{width:21px;height:21px;display:grid;place-items:center;border-radius:50%;background:#eef1ed;font-size:.65rem;font-style:normal}
.segmented-control input:checked+span{color:#234d2e;border-color:var(--jade);background:#eaf4e0;box-shadow:inset 0 0 0 1px var(--jade)}
.tier-control input:checked+span i{color:#fff;background:var(--deep)}
.advanced-options{margin:4px 0 13px;padding:9px 11px;border:1px solid #d6dcd4;border-radius:12px;background:#f8fbf6}.advanced-options summary{cursor:pointer;color:var(--deep);font-size:.78rem;font-weight:850}.advanced-options[open] summary{margin-bottom:9px}.advanced-options label{display:block;margin-bottom:4px;font-size:.76rem;font-weight:800}.advanced-options input{width:min(12rem,100%);min-height:40px;padding:7px 10px;border:1px solid #cdd8cf;border-radius:9px;background:#fff;color:var(--ink);font:inherit}.sequence-range{margin:6px 0 0;color:var(--muted);font-size:.72rem;line-height:1.4}

.topic-picker{border:0;padding:0;margin:0 0 10px}
.topic-picker legend{font-weight:850;font-size:.8rem;margin:0 0 7px}
.topic-selected-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 8px}
.topic-selected-chips[hidden]{display:none}
.topic-selected-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--jade);border-radius:999px;background:#eaf4e0;color:#234d2e;font:inherit;font-size:.76rem;font-weight:700;padding:5px 8px 5px 12px;cursor:pointer}
.topic-selected-chip:hover{background:#dcecd0}
.topic-selected-chip-remove{display:inline-grid;place-items:center;width:16px;height:16px;border-radius:50%;background:rgba(23,124,94,.18);font-size:.85rem;line-height:1}
.topic-search{width:100%;box-sizing:border-box;min-height:40px;padding:8px 12px;border:1px solid #d6dcd4;border-radius:12px;font-size:.85rem;margin:0 0 8px;background:#fff}
.topic-search:focus-visible{outline:3px solid rgba(93,142,85,.25);outline-offset:1px}
.topic-strand-nav{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 6px}
.topic-strand-nav[hidden]{display:none}
.topic-strand-button{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(93,142,85,.45);border-radius:10px;background:#f6faf2;color:#2c4a34;font:inherit;font-size:.78rem;font-weight:800;padding:6px 10px;cursor:pointer}
.topic-strand-button:hover{background:#eaf4e0}
.topic-strand-button.is-open{background:#eaf4e0;border-color:var(--jade);box-shadow:inset 0 0 0 1px var(--jade);color:#234d2e}
.topic-strand-count{font-size:.68rem;font-weight:700;color:#5f7166;background:rgba(93,142,85,.14);border-radius:999px;padding:1px 7px}
.topic-chip-list{display:flex;flex-wrap:wrap;gap:7px;max-height:150px;overflow-y:auto;padding:2px}
.topic-chip-list:empty{display:none}
.topic-chip{min-width:0;cursor:pointer;position:relative}
.topic-chip input{position:absolute;opacity:0;pointer-events:none}
.topic-chip input:focus-visible+span{outline:3px solid rgba(93,142,85,.25);outline-offset:2px}
.topic-chip>span{min-height:38px;padding:6px 12px;display:flex;align-items:center;justify-content:center;color:#627169;border:1px solid #d6dcd4;border-radius:999px;background:#fff;font-size:.76rem;font-weight:650;text-align:center;transition:120ms ease}
.topic-chip input:checked+span{color:#234d2e;border-color:var(--jade);background:#eaf4e0;box-shadow:inset 0 0 0 1px var(--jade)}
.topic-chip.is-hidden{display:none}
.topic-chip.is-at-cap>span{opacity:.42;cursor:not-allowed}
.topic-picker-empty{margin:6px 0 0;font-size:.72rem;color:var(--muted,#6b5d52)}
.topic-picker-count{margin:6px 0 0;font-size:.72rem;color:#5f7166;font-weight:650}

.answer-toggle{margin:0 0 10px;display:flex;align-items:center;gap:9px;color:#43564a;cursor:pointer;font-size:.78rem}
.answer-toggle input{position:absolute;opacity:0}
.answer-toggle>span{width:38px;height:22px;flex:0 0 auto;position:relative;border-radius:999px;background:#ccd4cd;transition:150ms ease}
.answer-toggle>span::after{content:"";width:16px;height:16px;position:absolute;top:3px;left:3px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.2);transition:150ms ease}
.answer-toggle input:checked+span{background:var(--deep)}
.answer-toggle input:checked+span::after{transform:translateX(16px)}

.preview-panel{min-width:0;padding:16px 24px 20px 64px;background:radial-gradient(circle at 85% 4%,rgba(225,236,212,.5),transparent 27%),#f2f1eb}
.paper-stage{min-height:0;display:flex;flex-direction:column;align-items:center;gap:16px}
.resource-paper{width:min(100%,500px);aspect-ratio:210/297;position:relative;padding:26px 26px 20px;display:flex;flex:0 0 auto;flex-direction:column;overflow:hidden;color:#142c20;border:2px solid #111a15;border-radius:16px;background:#fffefb;box-shadow:var(--shadow);font-family:'DejaVu Sans',Verdana,'Bitstream Vera Sans',sans-serif}
.resource-paper.typst-rendered{padding:0}
.typst-svg-wrap{width:100%;height:100%;display:block;overflow:hidden}
.typst-svg-wrap svg{width:100%;height:100%}
@media(min-width:901px)and(min-height:760px){.resource-paper{width:min(100%,460px)}}
/* Mirrors typst-source.js's headerBlock: `grid(columns: (auto, 1fr),
   column-gutter: 6pt, align: (top, horizon), mm-koru(...), [title/
   subtitle])` -- koru FIRST (left, top-aligned with the title's first
   line), title+subtitle second, no background band or underline (the real
   page background runs straight through the header). */
.paper-header{min-height:64px;padding:6px 6px 8px;display:flex;align-items:flex-start;gap:6px}
.paper-title-block{min-width:0}
.paper-header h3{margin:0;color:#285436;font-size:1.2rem;line-height:1.08;letter-spacing:-.025em}
.paper-subtitle{margin:4px 0 0;color:#264235;font-size:.7rem;line-height:1.3}
.paper-logo{width:22px;height:32px;object-fit:contain;flex:0 0 auto;margin-top:2px}
.student-fields{margin:11px 0 9px;display:grid;grid-template-columns:1fr .9fr;gap:22%;font-size:.68rem}
.student-fields span{display:flex;align-items:flex-end;gap:5px}
.student-fields b{font-weight:850}
.student-fields i{height:1px;flex:1;margin-bottom:2px;background:#59635d}
.worked-example{margin-bottom:10px;padding:9px 12px;display:flex;flex-direction:column;gap:3px;color:#203b2d;border-radius:4px;background:#faf9f5;font-size:.62rem;line-height:1.25}
.worked-example h4{margin:0 0 2px;color:#285636;font-size:.62rem}
.example-content p{margin:0;font-weight:750}
.worked-derivation{display:grid;gap:2px;font-family:'DejaVu Sans',Verdana,'Bitstream Vera Sans',sans-serif;font-weight:700}
.worked-derivation>span{display:block;white-space:nowrap;overflow:hidden}
.worked-final{color:#2f6b3c;font-weight:800}
.question-grid{min-height:0;flex:0 1 auto;display:flex;flex-direction:column;gap:12px;overflow-y:auto}
.question-row{min-height:0;flex:0 0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start}
.question-card{min-width:0;min-height:0;position:relative;padding:12px 12px 11px 12px;overflow:hidden;border:1.5px solid #111a15;border-radius:10px;background:#fff}
.question-head{display:flex;align-items:flex-start;gap:6px;min-width:0}
.question-number{flex:0 0 auto;min-width:1.7em;font-size:.66rem;font-weight:900;color:#111a15}
.question-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:3px}
.question-prompt{color:#111a15;font-family:'DejaVu Sans',Verdana,'Bitstream Vera Sans',sans-serif;font-weight:700;font-size:.6rem;line-height:1.3;text-align:left;white-space:nowrap;overflow:hidden}
.question-expr{color:#111a15;font-family:'DejaVu Sans',Verdana,'Bitstream Vera Sans',sans-serif;font-weight:800;font-size:.7rem;line-height:1.35;text-align:center;white-space:nowrap;overflow:hidden}
.question-prompt sup,.question-expr sup{line-height:0}
.question-row-wrap{display:flex;flex-direction:column;gap:3px}
.resource-paper.scrollable{overflow-y:auto;max-height:min(92vh,640px)}
.resource-paper.scrollable .question-grid{flex:none}
.resource-paper.worksheet .question-grid{gap:14px}
.answer-rule{height:1px;margin:12px 1px 0;background:#5f685f}
.space-standard .answer-rule{margin-top:12px}
.space-large .answer-rule{margin-top:15px}
.paper-footer{margin-top:9px;display:flex;justify-content:space-between;gap:10px;color:#53695c;font-size:.56rem}
.paper-footer span:last-child{text-align:right}
.worksheet.answer-page .question-grid{flex:0 0 auto;margin-top:10px}
.worksheet.answer-page .question-row{flex:none}
.worksheet.answer-page .question-card{padding-bottom:10px}
.worksheet.answer-page .paper-footer{margin-top:auto}
.solution-label{margin:6px 0 0 10px;display:block;color:#285636;font-size:.68rem;font-weight:850}
/* Do Now page is 29.7cm x 21cm in typst-source.js's pageSetup (`#set
   page(width: 29.7cm, height: 21cm, ...)`), i.e. a 99:70 ratio (~1.414) --
   NOT 16:9 (~1.778). The old 16:9 aspect-ratio stretched both the loading
   frame AND the swapped-in real SVG (same container, so the swap itself
   never "moved" -- but the whole panel was letterboxed off the real page
   shape the entire time). Fixing this is part of "make the left look like
   the right": the panel now has the real page's own proportions. */
.resource-paper.do-now{width:min(100%,680px);aspect-ratio:99/70;padding:16px 24px 20px;border-radius:18px}
.do-now .paper-header{min-height:48px;padding:3px 8px 8px;align-items:center}
.do-now .paper-title-block{display:flex;flex-direction:column;gap:2px;min-width:0}
.do-now .paper-header h3{font-size:1.25rem}
.do-now .paper-subtitle{margin:0;font-size:.74rem;line-height:1.25}
.do-now .paper-logo{width:30px;height:44px;margin-top:0}
.do-now .question-grid{margin-top:14px;display:flex;flex-direction:column;gap:14px}
/* Real Do Now rows share the slide's remaining height evenly (`rows:
   (auto, 1fr, 1fr, 1fr, auto)` in typst-source.js's isDoNow branch), not
   packed to their own content height -- flex:1+stretch here is what makes
   3 rows fill the card the way the real slide's 3 question rows do. */
.do-now .question-row.do-now-row{flex:1 1 0;min-height:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}
.do-now .question-card{padding:14px 16px 13px 16px;border:1.8px solid #111a15;border-radius:12px}
.do-now .question-number{min-width:2em;font-size:.88rem}
.do-now .question-prompt{font-weight:700;font-size:.82rem;line-height:1.3}
.do-now .question-expr{font-weight:800;font-size:.98rem;line-height:1.3}
.do-now.scrollable{max-height:min(92vh,640px)}
.do-now .answer-rule{display:none}
.do-now.solution-page .paper-header h3{font-size:1.1rem}
.do-now.solution-page .question-grid{margin-top:10px;gap:7px}
.do-now.solution-page .question-card{padding-top:8px}
.solution-lines{margin:6px 0 0 12px;display:grid;gap:3px;font-family:'DejaVu Sans',Verdana,'Bitstream Vera Sans',sans-serif;font-weight:700;font-size:.7rem;line-height:1.3}
.solution-lines>span{display:block}
.solution-lines .final-line{color:#2d6940;font-weight:850}
.sqrt{display:inline-flex;align-items:stretch}
.sqrt::before{content:"√";align-self:flex-end}
.sqrt .rad{border-top:1.2px solid currentColor;padding:1px 3px 0 2px}
.empty-preview{width:min(100%,560px);min-height:260px;padding:40px;display:grid;place-content:center;gap:8px;color:#66776d;border:2px dashed #b8c5b8;border-radius:16px;background:rgba(255,254,251,.72);text-align:center}
.empty-preview strong{color:#315e3c;font-size:1rem}
.empty-preview span{max-width:360px;font-size:.74rem;line-height:1.45}

/* Honest loading state (replaces the old fake-content HTML skeleton): the
   real paper frame, real header (koru + title/subtitle), real Name/Date
   line and worked-example strip (worksheet only), and a real problem grid
   at the real fillRows-derived row/column count -- every box real
   position/border/radius, only the interiors are shimmer. Nothing here is
   dressed up as a real question/answer, so a teacher never mistakes the
   loading frame for a broken/old-style worksheet before the real Typst SVG
   swaps in. Reuses the (previously dead, pre-Typst-WASM) .student-fields/
   .worked-example/.question-grid/.question-row/.question-card/.paper-footer
   rules above, which were already styled to the real render's own geometry
   -- see this file's do-now/question-card block above. */
.loading-body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}
.loading-body .question-grid{flex:1 1 auto}
.question-card{display:flex;align-items:flex-start;gap:6px}
.question-card-shimmer{flex:1 1 auto;align-self:stretch;min-height:16px;border-radius:6px}
.do-now .question-card-shimmer{min-height:22px;border-radius:8px}
.loading-cell{display:block;height:38px;border-radius:10px;background:linear-gradient(100deg,#eef1ea 30%,#f8f9f5 50%,#eef1ea 70%);background-size:220% 100%;animation:preview-shimmer 1.6s ease-in-out infinite}
.worked-example.loading-cell{background:linear-gradient(100deg,#e4efd9 30%,#eef6e4 50%,#e4efd9 70%);background-size:220% 100%;min-height:22px}
.do-now .loading-cell{height:56px;border-radius:12px}
/* Footer: keeps "Preparing your preview…" small and tucked into the same
   footer row the real render uses (buildFooterBlock), never a mid-page
   focal point. Do Now has no left-hand "Mana Maths | <title>" text (the
   real Do Now footer is just a small right-aligned mark, no title/page
   count -- see typst-source.js's buildFooterBlock isDoNow branch), so its
   left span stays empty. */
.loading-status{font-style:italic}
.do-now .paper-footer.loading-status{justify-content:flex-end}
.loading-status{margin:2px 0 0;text-align:center;color:#5f7166;font-size:.72rem;font-weight:650;letter-spacing:.01em}
@keyframes preview-shimmer{0%{background-position:200% 0}100%{background-position:-20% 0}}
@media(prefers-reduced-motion:reduce){.loading-cell{animation:none;background-position:0 0}}
@media(pointer:coarse){.segmented-control label>span,.answer-toggle{min-height:44px}}
.description-reset-link{display:inline-block;margin-top:6px;font-size:.7rem;font-weight:750;color:var(--jade);text-decoration:none;cursor:pointer}.description-reset-link:hover{text-decoration:underline}
/* BMC widget bubble must never hide under the cookie banner (z 99999). */
#bmc-wbtn{z-index:100001 !important}

/* Self-hosted support bubble: no third-party script, so ad blockers cannot hide it. */
#mm-coffee-bubble{position:fixed;right:18px;bottom:18px;z-index:100001;width:58px;height:58px;border-radius:50%;background:#177c5e;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(0,0,0,.28);transition:transform .15s ease}
#mm-coffee-bubble:hover{transform:scale(1.08)}
@media print{#mm-coffee-bubble{display:none}}

/* First-party overlay panel: same BMC widget page, framed, blocker-proof. */
#mm-coffee-panel{position:fixed;right:18px;bottom:88px;z-index:100002;width:min(340px,calc(100vw - 36px));height:min(560px,calc(100vh - 130px));background:#fff;border-radius:14px;box-shadow:0 10px 34px rgba(0,0,0,.32);overflow:hidden}
#mm-coffee-panel[hidden]{display:none}
#mm-coffee-frame{width:100%;height:100%;border:0}
#mm-coffee-close{position:absolute;top:6px;right:6px;z-index:1;width:28px;height:28px;border-radius:50%;border:0;background:rgba(0,0,0,.55);color:#fff;font-size:16px;cursor:pointer;line-height:1}
