/* Irtaqi v0.11: companion characters. Mobile first; colours come from the theme's own variables. */

/* ---------- the drawings: small idle motions (all switched off for people who ask for less motion) ---------- */
.irc{display:block;max-width:100%;height:auto;overflow:visible}
.irc .irc-fig{transform-box:fill-box;transform-origin:50% 100%;animation:ircBreath 4.2s ease-in-out infinite;animation-delay:var(--irc-d,0s)}
.irc .irc-eyes{transform-box:fill-box;transform-origin:50% 50%;animation:ircBlink 5.4s infinite;animation-delay:var(--irc-d,0s)}
.irc.irc-m-sleepy .irc-fig{animation-duration:6.4s}
.irc.irc-m-proud .irc-fig{animation-duration:3.4s}
.irc .irc-egg{transform-box:fill-box;transform-origin:50% 100%;animation:ircRock 5s ease-in-out infinite;animation-delay:var(--irc-d,0s)}
.irc .irc-wing-l{animation:ircWingL .16s ease-in-out infinite alternate}
.irc .irc-wing-r{animation:ircWingR .16s ease-in-out infinite alternate}
.irc .irc-ear-l{animation:ircEarL 6s ease-in-out infinite}
.irc .irc-ear-r{animation:ircEarR 6s ease-in-out infinite 1.1s}
.irc .irc-aura{transform-box:fill-box;transform-origin:50% 50%;animation:ircSpin 48s linear infinite}
.irc .irc-glow{animation:ircGlow 2.6s ease-in-out infinite}
.irc .irc-z .z1{animation:ircZ 3.2s ease-in-out infinite}
.irc .irc-z .z2{animation:ircZ 3.2s ease-in-out infinite .9s}
.irc .irc-sp .s1,.irc .irc-sp .s2,.irc .irc-sp .s3{transform-box:fill-box;transform-origin:50% 50%;animation:ircTwinkle 2.4s ease-in-out infinite}
.irc .irc-sp .s2{animation-delay:.8s}.irc .irc-sp .s3{animation-delay:1.5s}
.irc.irc-still *{animation:none!important}
@keyframes ircBreath{0%,100%{transform:scale(1,1)}50%{transform:scale(1.012,1.028)}}
@keyframes ircBlink{0%,93%,100%{transform:scaleY(1)}96%{transform:scaleY(.08)}}
@keyframes ircRock{0%,86%,100%{transform:rotate(0)}89%{transform:rotate(-4deg)}93%{transform:rotate(4deg)}96%{transform:rotate(-2deg)}}
@keyframes ircWingL{from{transform:rotate(-7deg)}to{transform:rotate(9deg)}}
@keyframes ircWingR{from{transform:rotate(7deg)}to{transform:rotate(-9deg)}}
@keyframes ircEarL{0%,88%,100%{transform:rotate(0)}92%{transform:rotate(-7deg)}96%{transform:rotate(2deg)}}
@keyframes ircEarR{0%,88%,100%{transform:rotate(0)}92%{transform:rotate(7deg)}96%{transform:rotate(-2deg)}}
@keyframes ircSpin{to{transform:rotate(360deg)}}
@keyframes ircGlow{0%,100%{opacity:.18}50%{opacity:.42}}
@keyframes ircZ{0%{opacity:0;transform:translate(0,6px)}30%{opacity:.8}100%{opacity:0;transform:translate(6px,-10px)}}
@keyframes ircTwinkle{0%,100%{transform:scale(.7);opacity:.6}50%{transform:scale(1.15);opacity:1}}

/* ---------- homes: Islamic geometric patterns (eight-pointed stars), nothing to worship ---------- */
.irc-home-dunes{background-color:#F7E6BE;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 64 64'%3E%3Cpolygon points='32.0,8.0 38.5,16.3 49.0,15.0 47.7,25.5 56.0,32.0 47.7,38.5 49.0,49.0 38.5,47.7 32.0,56.0 25.5,47.7 15.0,49.0 16.3,38.5 8.0,32.0 16.3,25.5 15.0,15.0 25.5,16.3' fill='none' stroke='rgba(201,138,27,.35)' stroke-width='2'/%3E%3Cpolygon points='32.0,21.0 34.9,25.1 39.8,24.2 38.9,29.1 43.0,32.0 38.9,34.9 39.8,39.8 34.9,38.9 32.0,43.0 29.1,38.9 24.2,39.8 25.1,34.9 21.0,32.0 25.1,29.1 24.2,24.2 29.1,25.1' fill='rgba(201,138,27,.22)'/%3E%3Ccircle cx='0' cy='0' r='5' fill='rgba(201,138,27,.22)'/%3E%3Ccircle cx='64' cy='0' r='5' fill='rgba(201,138,27,.22)'/%3E%3Ccircle cx='0' cy='64' r='5' fill='rgba(201,138,27,.22)'/%3E%3Ccircle cx='64' cy='64' r='5' fill='rgba(201,138,27,.22)'/%3E%3C/svg%3E");background-size:64px 64px}
.irc-home-emerald{background-color:#D3EBD6;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 64 64'%3E%3Cpolygon points='32.0,8.0 38.5,16.3 49.0,15.0 47.7,25.5 56.0,32.0 47.7,38.5 49.0,49.0 38.5,47.7 32.0,56.0 25.5,47.7 15.0,49.0 16.3,38.5 8.0,32.0 16.3,25.5 15.0,15.0 25.5,16.3' fill='none' stroke='rgba(31,122,110,.35)' stroke-width='2'/%3E%3Cpolygon points='32.0,21.0 34.9,25.1 39.8,24.2 38.9,29.1 43.0,32.0 38.9,34.9 39.8,39.8 34.9,38.9 32.0,43.0 29.1,38.9 24.2,39.8 25.1,34.9 21.0,32.0 25.1,29.1 24.2,24.2 29.1,25.1' fill='rgba(31,122,110,.22)'/%3E%3Ccircle cx='0' cy='0' r='5' fill='rgba(31,122,110,.22)'/%3E%3Ccircle cx='64' cy='0' r='5' fill='rgba(31,122,110,.22)'/%3E%3Ccircle cx='0' cy='64' r='5' fill='rgba(31,122,110,.22)'/%3E%3Ccircle cx='64' cy='64' r='5' fill='rgba(31,122,110,.22)'/%3E%3C/svg%3E");background-size:64px 64px}
.irc-home-lapis{background-color:#D2E2F7;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 64 64'%3E%3Cpolygon points='32.0,8.0 38.5,16.3 49.0,15.0 47.7,25.5 56.0,32.0 47.7,38.5 49.0,49.0 38.5,47.7 32.0,56.0 25.5,47.7 15.0,49.0 16.3,38.5 8.0,32.0 16.3,25.5 15.0,15.0 25.5,16.3' fill='none' stroke='rgba(30,80,160,.32)' stroke-width='2'/%3E%3Cpolygon points='32.0,21.0 34.9,25.1 39.8,24.2 38.9,29.1 43.0,32.0 38.9,34.9 39.8,39.8 34.9,38.9 32.0,43.0 29.1,38.9 24.2,39.8 25.1,34.9 21.0,32.0 25.1,29.1 24.2,24.2 29.1,25.1' fill='rgba(30,80,160,.2)'/%3E%3Ccircle cx='0' cy='0' r='5' fill='rgba(30,80,160,.2)'/%3E%3Ccircle cx='64' cy='0' r='5' fill='rgba(30,80,160,.2)'/%3E%3Ccircle cx='0' cy='64' r='5' fill='rgba(30,80,160,.2)'/%3E%3Ccircle cx='64' cy='64' r='5' fill='rgba(30,80,160,.2)'/%3E%3C/svg%3E");background-size:64px 64px}
.irc-home-night{background-color:#1D2C4D;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 64 64'%3E%3Cpolygon points='32.0,8.0 38.5,16.3 49.0,15.0 47.7,25.5 56.0,32.0 47.7,38.5 49.0,49.0 38.5,47.7 32.0,56.0 25.5,47.7 15.0,49.0 16.3,38.5 8.0,32.0 16.3,25.5 15.0,15.0 25.5,16.3' fill='none' stroke='rgba(246,196,83,.45)' stroke-width='2'/%3E%3Cpolygon points='32.0,21.0 34.9,25.1 39.8,24.2 38.9,29.1 43.0,32.0 38.9,34.9 39.8,39.8 34.9,38.9 32.0,43.0 29.1,38.9 24.2,39.8 25.1,34.9 21.0,32.0 25.1,29.1 24.2,24.2 29.1,25.1' fill='rgba(246,196,83,.3)'/%3E%3Ccircle cx='0' cy='0' r='5' fill='rgba(246,196,83,.3)'/%3E%3Ccircle cx='64' cy='0' r='5' fill='rgba(246,196,83,.3)'/%3E%3Ccircle cx='0' cy='64' r='5' fill='rgba(246,196,83,.3)'/%3E%3Ccircle cx='64' cy='64' r='5' fill='rgba(246,196,83,.3)'/%3E%3C/svg%3E");background-size:64px 64px}
.irc-home-dunes{--irc-ink:#4a3328}.irc-home-emerald{--irc-ink:#12343B}.irc-home-lapis{--irc-ink:#12343B}.irc-home-night{--irc-ink:#F6F0E2}

/* ---------- the corner ---------- */
.irc-page{padding-bottom:88px}
.irc-page [hidden]{display:none!important}
.irc-page h2,.irc-page h3,.irc-toast b{word-spacing:.12em}
.irc-app{margin:0 0 56px;display:grid;gap:22px}
.irc-card{display:grid;grid-template-columns:minmax(0,1fr);gap:0;background:var(--card);border-radius:32px;box-shadow:0 8px 28px rgba(0,0,0,.08);overflow:hidden}
.irc-stagebox{position:relative;min-height:330px;padding:18px 16px 14px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px;overflow:hidden}
.irc-bubble{position:relative;width:100%;max-width:420px;background:var(--card);color:var(--ink);border:3px solid #4a3328;border-radius:22px;padding:12px 16px;box-shadow:0 5px 0 rgba(74,51,40,.25);font-size:1.02rem;line-height:1.45;z-index:2}
.irc-bubble::after{content:"";position:absolute;inset-inline-start:50%;bottom:-14px;width:22px;height:22px;background:var(--card);border-inline-end:3px solid #4a3328;border-bottom:3px solid #4a3328;transform:translateX(-50%) rotate(45deg);border-radius:0 0 6px 0}
html[dir=rtl] .irc-bubble::after{transform:translateX(50%) rotate(45deg)}
.irc-bubble p{margin:0}
.irc-say{font-weight:700}
.irc-fact{margin-top:8px!important;padding-top:8px;border-top:2px dashed var(--line);font-size:.93rem;color:var(--mute)}
.irc-fact b{color:var(--ink)}
.irc-fact:empty{display:none}
.irc-petwrap{position:relative;width:min(70vw,260px);margin-top:14px}
.irc-pet{all:unset;box-sizing:border-box;display:block;width:100%;cursor:pointer;border-radius:50%;-webkit-tap-highlight-color:transparent}
.irc-pet:focus-visible{outline:4px solid var(--acc);outline-offset:4px}
.irc-pet svg{width:100%;height:auto;display:block;transform-origin:50% 90%}
.irc-pet.irc-petted svg{animation:ircSquish .55s ease-out}
.irc-stagebox.irc-up .irc-pet svg{animation:ircJump 1.1s cubic-bezier(.3,1.6,.5,1)}
@keyframes ircSquish{0%{transform:scale(1)}30%{transform:scale(1.07,.9)}60%{transform:scale(.97,1.05)}100%{transform:scale(1)}}
@keyframes ircJump{0%{transform:translateY(0) scale(1)}25%{transform:translateY(-22px) scale(1.06,.96)}45%{transform:translateY(0) scale(1.06,.9)}65%{transform:translateY(-9px) scale(1)}85%{transform:translateY(0) scale(1.02,.97)}100%{transform:none}}
.irc-fx{position:absolute;inset:0;pointer-events:none;overflow:visible}
.irc-heart{position:absolute;width:18px;height:18px;background:#ff6f91;clip-path:path("M9 17 C-4 8 2 -2 9 4 C16 -2 22 8 9 17Z");animation:ircFloat 1.3s ease-out forwards}
.irc-spark{position:absolute;inset-inline-start:50%;top:50%;width:16px;height:16px;background:#F4C95D;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);animation:ircBurst 1.3s ease-out forwards}
@keyframes ircFloat{0%{opacity:1;transform:translateY(0) scale(.6)}100%{opacity:0;transform:translateY(-70px) scale(1.1)}}
@keyframes ircBurst{0%{opacity:1;transform:translate(-50%,-50%) scale(.3)}100%{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(1.3) rotate(120deg)}}

.irc-info{padding:20px 20px 8px;display:grid;gap:12px;align-content:start}
.irc-nameline{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.irc-name{margin:0;font-size:clamp(1.8rem,5vw,2.6rem);line-height:1.1;word-break:break-word}
.irc-edit{all:unset;box-sizing:border-box;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;cursor:pointer;border:2px solid var(--line);color:var(--ink)}
.irc-edit:hover{border-color:var(--ink)}
.irc-edit:focus-visible,.irc-btn:focus-visible,.irc-tab:focus-visible,.irc-item:focus-visible,.irc-choose:focus-visible,.irc-fch a:focus-visible,.irc-slot a:focus-visible{outline:3px solid var(--acc);outline-offset:3px}
.irc-rename{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.irc-rename input{min-height:48px;padding:0 14px;border-radius:14px;border:2px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;font-size:1.1rem;min-width:0;width:min(100%,220px)}
.irc-meta{margin:0;color:var(--mute);font-weight:600}
.irc-meter{height:14px;border-radius:99px;background:var(--soft);overflow:hidden;border:2px solid var(--line)}
.irc-meter i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--acc3),var(--acc));transition:width .6s ease}
.irc-metertx{margin:-4px 0 0;color:var(--mute);font-size:.95rem}
.irc-chips{list-style:none;margin:0;padding:0;display:flex;gap:8px;flex-wrap:wrap}
.irc-chips li{background:var(--soft);border-radius:999px;padding:6px 14px;font-weight:700;font-size:.95rem}
.irc-chips li.rest{background:color-mix(in srgb,var(--acc3) 22%,var(--soft))}
.irc-goal{margin:14px 20px 22px;padding:18px;border-radius:22px;background:var(--soft);display:grid;gap:10px}
.irc-goal h3{margin:0;font-size:1.15rem}
.irc-goal p{margin:0}
.irc-goal .irc-small{font-size:.88rem;color:var(--mute)}
.irc-goalbtns{display:flex;gap:10px;flex-wrap:wrap}
.irc-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 22px;border-radius:999px;border:2px solid var(--ink);background:transparent;color:var(--ink);font:inherit;font-weight:800;cursor:pointer;text-decoration:none}
.irc-btn.main{background:var(--acc);border-color:var(--acc);color:var(--onAcc)}
.irc-btn:hover{transform:translateY(-1px)}
.irc-btn[disabled]{opacity:.55;cursor:default;transform:none}
.irc-fedmsg{font-weight:800;color:var(--ink)}
.irc-msg{min-height:1.3em;color:var(--acc2);font-weight:700;margin:0}

/* the first-run screen */
.irc-welcome{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;background:var(--card);border-radius:32px;padding:26px 22px;box-shadow:0 8px 28px rgba(0,0,0,.08);justify-items:center;text-align:center}
.irc-welcome .irc-egg-big svg{width:120px;height:auto}
.irc-welcome h2{margin:0;font-size:clamp(1.6rem,4.5vw,2.2rem)}
.irc-welcome p{margin:0;color:var(--mute);max-width:520px}
.irc-naming{display:grid;gap:14px;justify-items:center;text-align:center;background:var(--card);border-radius:32px;padding:22px;box-shadow:0 8px 28px rgba(0,0,0,.08);border:3px solid var(--acc)}
.irc-naming .irc-prev{width:150px}
.irc-naming .irc-prev svg{width:100%;height:auto}
.irc-naming h2{margin:0;font-size:1.6rem}
.irc-naming p{margin:0;color:var(--mute);max-width:480px}
.irc-naming label{font-weight:800;display:block;margin-bottom:6px}
.irc-naming input{min-height:50px;padding:0 16px;border-radius:14px;border:2px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;font-size:1.15rem;text-align:center;width:min(100%,260px)}

/* the wardrobe */
.irc-wardrobe{background:var(--card);border-radius:32px;padding:20px;box-shadow:0 8px 28px rgba(0,0,0,.08)}
.irc-wardrobe h2{margin:0 0 4px;font-size:1.5rem}
.irc-wardrobe .irc-sub2{margin:0 0 14px}
.irc-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
.irc-tab{position:relative;min-height:44px;padding:8px 18px;border-radius:999px;border:2px solid var(--line);background:transparent;color:var(--ink);font:inherit;font-weight:800;cursor:pointer}
.irc-tab[aria-selected=true]{background:var(--acc);border-color:var(--acc);color:var(--onAcc)}
.irc-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:10px}
.irc-item{position:relative;display:grid;gap:4px;justify-items:center;text-align:center;padding:12px 8px 10px;border-radius:20px;border:2px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;cursor:pointer;min-height:132px;align-content:start}
.irc-item[aria-pressed=true]{border-color:var(--ink);box-shadow:0 4px 0 var(--acc)}
.irc-item[aria-disabled=true]{cursor:default;opacity:.72;background:transparent;border-style:dashed}
.irc-item .irc-ic{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;overflow:hidden;border:2px solid rgba(74,51,40,.35)}
.irc-item .irc-sw{width:100%;height:100%}
.irc-item b{font-size:.95rem;line-height:1.2}
.irc-item small{color:var(--mute);font-size:.8rem;line-height:1.25}
.irc-item .irc-lock{position:absolute;inset-block-start:8px;inset-inline-end:8px;width:18px;height:18px;opacity:.6}
.irc-new{position:absolute;inset-block-start:-8px;inset-inline-start:8px;background:var(--acc2);color:#fff;font-weight:800;font-size:.72rem;padding:2px 9px;border-radius:99px}
.irc-none{border-style:dashed}
.irc-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* the friends */
.irc-friends h2,.irc-how h2,.irc-earn h2{font-size:clamp(1.7rem,4vw,2.3rem);margin:36px 0 6px}
.irc-sub2{color:var(--mute);margin:0 0 18px}
.irc-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
.irc-fcard{background:var(--card);border-radius:26px;padding:18px;display:grid;gap:8px;align-content:start;box-shadow:0 6px 20px rgba(0,0,0,.06);border:3px solid transparent}
.irc-fcard.is-mine{border-color:var(--acc)}
.irc-fpic{width:140px;margin:0 auto}
.irc-fpic svg{width:100%;height:auto}
.irc-fcard h3{margin:0;font-size:1.3rem;text-align:center}
.irc-fcard p{margin:0;font-size:.97rem;color:var(--mute);line-height:1.5}
.irc-fcard p b{color:var(--ink)}
.irc-fline{color:var(--ink)!important;font-weight:600}
.irc-fch{display:flex;gap:6px;flex-wrap:wrap}
.irc-fch a{display:inline-block;padding:4px 12px;border-radius:99px;background:var(--soft);color:var(--ink);font-weight:700;font-size:.85rem;text-decoration:none}
.irc-fch a:hover{background:var(--acc);color:var(--onAcc)}
.irc-choose{font:inherit;cursor:pointer;border:0;justify-self:center;margin-top:6px;padding:12px 28px!important;font-size:1rem!important;box-shadow:0 4px 0 var(--ink)!important}
.irc-choose[aria-pressed=true]{background:var(--soft);box-shadow:none!important;cursor:default}
.irc-cols{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
.irc-box{background:var(--card);border-radius:26px;padding:20px;box-shadow:0 6px 20px rgba(0,0,0,.06)}
.irc-box h3{margin:0 0 8px;font-size:1.25rem}
.irc-box p{margin:0 0 10px;color:var(--mute)}
.irc-stages{margin:6px 0 0;padding-inline-start:22px;display:grid;gap:4px}
.irc-stages li span{color:var(--mute);margin-inline-start:6px}
.irc-kh{margin:20px 0 8px;font-size:1.15rem}
.irc-earnlist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
.irc-earnlist li{background:var(--card);border-radius:16px;padding:10px 16px;display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;box-shadow:0 3px 10px rgba(0,0,0,.04)}
.irc-earnlist li span{color:var(--mute);font-size:.95rem}
.irc-earnlist li.got{outline:2px solid var(--acc3)}
.irc-earnlist li.got b::after{content:" ✓";color:var(--acc3)}
.irc-note{color:var(--mute)}

/* the header badge */
.site-head .nav-links>a.irc-badge{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:44px;height:44px;padding:0;border-radius:50%;background:var(--soft);overflow:hidden;line-height:0;flex:none}
.site-head .nav-links>a.irc-badge::after{display:none}
.site-head .nav-links>a.irc-badge:hover,.site-head .nav-links>a.irc-badge:focus-visible{outline:3px solid var(--acc);outline-offset:2px}
.irc-badge svg{width:100%;height:100%;display:block}
.irc-badge .irc-bl{display:none;font-size:1rem;line-height:1.2;font-weight:700}
.irc-badge.egg svg{opacity:.9}
@media(max-width:860px){
  .site-head .nav-links>a.irc-badge{width:auto;min-height:48px;border-radius:14px;padding:2px 14px 2px 4px;justify-content:flex-start;background:transparent}
  .irc-badge svg{width:40px;height:40px;flex:none}
  .irc-badge .irc-bl{display:inline}
}
.irc-toast{position:fixed;inset-inline:16px;bottom:84px;z-index:9991;max-width:420px;margin-inline:auto;background:var(--card);color:var(--ink);border:3px solid #4a3328;border-radius:20px;padding:12px 16px;display:flex;gap:12px;align-items:center;box-shadow:0 8px 26px rgba(0,0,0,.25)}
.irc-toast svg{width:44px;height:44px;flex:none}
.irc-toast a{color:var(--ink);font-weight:800}
.irc-toast button{all:unset;cursor:pointer;margin-inline-start:auto;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;font-size:1.3rem}

/* league rows */
.irc-mini{display:inline-block;width:30px;height:30px;vertical-align:middle;margin-inline-end:8px}
.irc-mini svg{width:100%;height:100%;display:block}

/* the card on a student home (do_action irtaqi_companion_slot) */
.irc-slot{background:var(--card);border-radius:28px;padding:16px;box-shadow:0 6px 22px rgba(0,0,0,.07);display:grid;gap:12px}
.irc-slot-main{display:flex;gap:14px;align-items:center;border-radius:20px;padding:10px}
.irc-slot-pic{flex:none;width:96px}
.irc-slot-pic svg{width:100%;height:auto}
.irc-slot-txt{min-width:0;display:grid;gap:6px;flex:1}
.irc-slot h3{word-spacing:.12em;margin:0;font-size:1.3rem;color:var(--irc-ink,var(--ink))}
.irc-slot-sub,.irc-slot-say{margin:0;font-size:.95rem;color:var(--irc-ink,var(--ink))}
.irc-slot-say{font-weight:700}
.irc-slot-goal{background:var(--soft);border-radius:18px;padding:12px 14px;display:grid;gap:6px}
.irc-slot-goal p{margin:0}
.irc-slot-goal .btn{justify-self:start;padding:10px 22px;font-size:1rem}
.irc-fed{font-weight:800}
.irc-slot-link{font-weight:800;color:var(--ink)}
.irc-slot-empty{display:flex;gap:14px;align-items:center}
.irc-slot-empty h3{margin:0 0 4px}.irc-slot-empty p{margin:0 0 10px;color:var(--mute)}
.irc-slot-egg{flex:none;width:84px}

@media(min-width:620px){.irc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.irc-earnlist{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:900px){
  .irc-card{grid-template-columns:minmax(0,420px) minmax(0,1fr)}
  .irc-stagebox{min-height:440px;grid-row:1/3}
  .irc-info{padding:30px 30px 8px}
  .irc-goal{grid-column:2;margin:8px 30px 30px}
  .irc-cols{grid-template-columns:repeat(3,minmax(0,1fr))}
  .irc-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .irc-welcome{grid-template-columns:140px minmax(0,1fr);text-align:start;justify-items:start;align-items:center;padding:30px}
}
@media(prefers-reduced-motion:reduce){
  .irc *,.irc-pet svg,.irc-stagebox .irc-pet svg{animation:none!important;transition:none!important}
  .irc-heart,.irc-spark{display:none}
}
@media print{.irc-app,.irc-toast,.irc-badge{display:none!important}}
