/* Koda OS: palco pixel art, HUD RPG, fumetto, floating pet, calendario a 4 viste, focus, collezione. Colori dai token di tema. */
canvas.pxsp{width:72px;height:72px}
canvas.stage-cv,canvas.fl-cv,canvas.dpose,canvas.dnow-k,canvas.pxsp,.pcard canvas{image-rendering:pixelated;image-rendering:crisp-edges}

/* ---- palco ---- */
.stage{position:relative;display:grid;gap:10px;justify-items:center;width:100%}
.stage-frame{position:relative;width:var(--sz,288px);max-width:100%;aspect-ratio:1;border-radius:20px;overflow:hidden;border:3px solid var(--line);background:var(--surface2);box-shadow:inset 0 0 0 2px #0003,0 8px 24px #0004}
.stage[data-band=sera] .stage-frame{box-shadow:inset 0 0 40px #ff8a2b33,0 8px 24px #0004}
.stage[data-band=notte] .stage-frame{box-shadow:inset 0 0 40px #0a0f3a99,0 8px 24px #0004}
.stage-cv{display:block;width:100%;height:100%;touch-action:none;cursor:grab;transform-origin:50% 90%}
.stage-cv.grabbed{cursor:grabbing}
.stage-cv.hop{animation:hop .45s ease-out}.stage-cv.land{animation:land .5s ease-out}
@keyframes hop{0%{transform:translateY(0)}35%{transform:translateY(-14px) scaleY(1.06)}70%{transform:translateY(0) scale(1.06,.94)}100%{transform:none}}
@keyframes land{0%{transform:scale(1.12,.82)}40%{transform:scale(.94,1.1)}70%{transform:scale(1.03,.97)}100%{transform:none}}
.stage-fx{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.px-heart{position:absolute;width:20px;height:20px;image-rendering:pixelated;animation:rise 1.5s ease-out forwards;animation-delay:var(--delay,0ms)}
.px-star{position:absolute;color:#ffd166;font-size:18px;animation:rise 1.5s ease-out forwards;animation-delay:var(--delay,0ms)}
@keyframes rise{from{opacity:1;transform:translate(0,0)}to{opacity:0;transform:translate(var(--dx,0),-70px)}}
.px-float{position:absolute;left:50%;top:30%;transform:translateX(-50%);color:#fff;background:#ff5a7a;border:2px solid #fff;border-radius:6px;padding:2px 8px;font:700 12px/1.4 ui-monospace,monospace;animation:rise 1.3s ease-out forwards}
.notif-banner{position:absolute;z-index:3;left:4%;right:4%;top:78px;--cat:#ff8a2b;opacity:min(1,calc(var(--pull,0)*2));transform:translateY(calc((var(--pull,0) - 1)*140px));pointer-events:none}
.notif-banner.open{pointer-events:auto}
.nb-pet{position:absolute;right:14px;bottom:calc(100% - 4px);width:78px;height:78px;image-rendering:pixelated;filter:drop-shadow(0 3px 2px #0006)}
.nb-card{position:relative;display:grid;grid-template-columns:auto 1fr auto;column-gap:10px;row-gap:8px;align-items:center;padding:10px 12px 10px 16px;color:#fff;background:linear-gradient(135deg,#141a30e6,#241a42e6);border:1px solid #ffffff2e;border-radius:22px;box-shadow:0 14px 30px #000a,0 0 0 1px color-mix(in srgb,var(--cat) 55%,transparent),0 0 22px color-mix(in srgb,var(--cat) 40%,transparent),inset 0 1px 0 #ffffff33;backdrop-filter:blur(20px) saturate(1.4);overflow:hidden;font-size:13px;line-height:1.25}
.nb-card::before{content:'';position:absolute;inset:0 auto 0 0;width:5px;background:var(--cat)}
.nb-ic{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:color-mix(in srgb,var(--cat) 35%,transparent);border:1px solid color-mix(in srgb,var(--cat) 70%,transparent);font-size:20px}
.nb-txt{display:grid;min-width:0}.nb-txt b{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nb-txt small{opacity:.75;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nb-when{font:800 12px/1 ui-monospace,Consolas,monospace;padding:4px 8px;border-radius:999px;background:var(--cat);color:#111}
.nb-chips{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:6px}
.nb-chip{border:1px solid #ffffff40;background:#ffffff14;color:#fff;border-radius:999px;padding:4px 9px;font:600 11px system-ui;cursor:pointer}
.nb-chip::before{content:'○ '}.nb-chip[aria-pressed=true]{background:#2fbf71;border-color:#2fbf71;color:#06210f}.nb-chip[aria-pressed=true]::before{content:'✓ '}

/* ---- HUD RPG pixel-glassmorphism ---- */
.rpg-hud{display:grid;grid-template-columns:1fr;gap:7px;width:min(var(--sz,288px),100%);padding:10px;border-radius:14px;background:color-mix(in srgb,var(--surface) 55%,transparent);backdrop-filter:blur(8px);border:2px solid var(--line);font:700 11px/1 ui-monospace,Consolas,monospace}
.rpg{display:grid;grid-template-columns:22px 1fr minmax(64px,auto);gap:8px;align-items:center}
.rpg .ic{font-size:16px}.rpg-track{height:12px;background:#ffffff22;border:2px solid #000a;border-radius:2px;overflow:hidden}
.rpg-track i{display:block;height:100%;width:50%;background:var(--c);transition:width .8s cubic-bezier(.2,.8,.2,1);background-image:linear-gradient(90deg,transparent 0 80%,#fff3 80%);background-size:6px 100%}
.rpg-n{color:var(--text);white-space:nowrap;text-align:right}
.rpg.energy{--c:#ffd166}.rpg.focus{--c:#5ad1ff}.rpg.aff{--c:#ff5a7a}.rpg.xp{--c:#9be22b}
.rpg-hud.focusing .rpg.focus .rpg-track{box-shadow:0 0 10px #5ad1ff}
.pbubble{position:relative;max-width:min(var(--sz,288px),100%);width:100%;background:#fffbe8;color:#2a1408;border:3px solid #2a1408;border-radius:6px;padding:10px 12px;font:700 14px/1.35 ui-monospace,Consolas,monospace;box-shadow:4px 4px 0 #0005}
.pbubble::before{content:"";position:absolute;left:50%;top:-10px;width:12px;height:12px;background:#fffbe8;border-left:3px solid #2a1408;border-top:3px solid #2a1408;transform:translateX(-50%) rotate(45deg)}
.pbtns{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.pbtns:empty{display:none}
.pbtn{border:2px solid #2a1408;background:#ffd166;color:#2a1408;border-radius:4px;padding:3px 8px;font:700 12px ui-monospace,monospace}

/* ---- home 2.0 ---- */
.home-head{gap:10px}.hh-top{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.greet{display:block;color:var(--muted);font-weight:600}.clock{font:700 28px/1.1 ui-monospace,Consolas,monospace;letter-spacing:.04em}
.hh-pills,.hh-music{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.pill{min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:var(--surface2);font-weight:700;font-size:14px}
.pill.on,.pill[aria-pressed=true]{background:color-mix(in srgb,var(--accent) 25%,var(--surface2));border-color:var(--accent)}
.hh-music select{min-height:40px;border-radius:12px;border:1px solid var(--line);background:var(--surface2);padding:0 10px}
.float-btn{width:100%}
.hero2{justify-items:center;background:linear-gradient(160deg,var(--surface),color-mix(in srgb,var(--koda) 10%,var(--surface)))}
.hero-stage{width:100%;display:grid;justify-items:center}
.pose-picker{display:flex;flex-wrap:wrap;gap:4px;justify-content:center}
.pose-btn{width:38px;height:38px;border-radius:10px;border:1px solid var(--line);background:var(--surface2);font-size:18px}
.pose-btn:hover,.pose-btn:focus-visible{border-color:var(--accent)}
.hero-tip{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap;width:100%}
.radar-main{display:grid;gap:2px;padding:10px 12px;border-left:6px solid var(--c);background:var(--surface2);border-radius:10px}
.radar-t{font-size:20px}.radar-cd{font:700 30px/1.1 ui-monospace,Consolas,monospace;color:var(--c)}
.radar-prev{font-size:13px;color:var(--muted)}
.badge[style*="--c"]{border-color:var(--c);color:var(--c)}
.qgrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.qcmd{display:grid;gap:4px;justify-items:start;min-height:72px;padding:10px 12px;border-radius:14px;border:1px solid var(--line);background:var(--surface2);font-weight:700;text-align:left}
.qcmd:hover{border-color:var(--accent)}.qi{font-size:24px}
.prio-grp{display:grid;gap:6px}.prio-h{font-size:14px;display:flex;gap:8px;align-items:center;margin:4px 0 0}.empty.small{padding:2px 0;font-size:13px}
.quick-add{display:grid;grid-template-columns:1fr auto auto;gap:6px}.quick-add input,.quick-add select{min-height:40px;border-radius:12px;border:1px solid var(--line);background:var(--surface2);padding:0 10px;min-width:0}
.chips{flex-wrap:wrap}

/* ---- floating pet (finestra PiP e overlay in pagina) ---- */
.fl{position:relative;box-sizing:border-box;color:#fff;font-family:system-ui,sans-serif;overflow:hidden;user-select:none}
.fl-sprite{position:relative}.fl-cv{display:block;width:100%;height:100%;touch-action:none}
.fl-badge{position:absolute;right:2px;bottom:2px;min-width:32px;padding:2px 6px;text-align:center;border-radius:999px;background:#ff8a2b;color:#2a1408;font:800 13px/1.4 system-ui}
.fl.fl-sprite{display:grid;place-items:center;height:100vh;background:transparent}
.fl.fl-sprite .fl-sprite{width:min(100vw,100vh);height:min(100vw,100vh)}
.fl.fl-island{display:flex;align-items:center;gap:10px;height:100vh;padding:8px 14px 8px 8px;background:#10141ce6;border:2px solid #47e5ff;border-radius:999px;box-shadow:0 0 14px #47e5ff66}
.fl.fl-island .fl-sprite{width:92px;height:92px;flex:none}
.fl-info{display:grid;gap:2px;min-width:0}.fl-big{font:800 26px/1.1 ui-monospace,Consolas,monospace}.fl-small{color:#9bb0c3;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fl-btns{display:flex;gap:6px;margin-top:4px}.fl-btn{width:34px;height:30px;border:1px solid #47e5ff66;border-radius:10px;background:#ffffff14;color:#fff;font-size:15px;cursor:pointer}
.fl.fl-corner{display:grid;grid-template-rows:auto 1fr auto;height:100vh;background:#10141c;border:2px solid #33475b;border-radius:14px}
.fl.fl-corner .fl-sprite{width:100%;aspect-ratio:1}.fl-cap{padding:2px 8px 6px;text-align:center;font-size:12px;color:#9bb0c3}
.fl-banner{display:grid;gap:1px;max-height:calc(var(--pull,0)*60px);overflow:hidden;opacity:calc(var(--pull,0)*2);margin:calc(var(--pull,0)*4px) 6px 0;background:linear-gradient(135deg,#1c2140,#2d2150);border:1px solid #ffffff33;border-left:4px solid var(--cat,#ff8a2b);border-radius:16px;backdrop-filter:blur(14px);color:#fff;font:600 12px/1.3 system-ui;padding:calc(var(--pull,0)*7px) 10px;box-shadow:0 6px 14px #0008}
.fl-banner b{font-size:13px}.fl-banner span{opacity:.75;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fl.fl-icon{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;width:100%;padding:6px 0;background:transparent}
.fl.fl-icon .fl-sprite{width:136px;height:136px;flex:none;cursor:pointer;transition:width .18s,height .18s}
.fl.fl-icon.open{justify-content:flex-start}
.fl.fl-icon.open .fl-sprite{width:54px;height:54px;margin-bottom:2px}
.fl-hint{margin-top:6px;padding:5px 10px;border-radius:999px;border:1px solid #ffffff33;background:#1c2140e6;color:#fff;font:700 11px system-ui;cursor:pointer;box-shadow:0 4px 12px #0008}
.fl-hint:hover{border-color:#ff8a2b}
.fl-page.fl-icon{min-height:0;width:148px;height:auto}.fl-page.fl-icon.open{width:290px}
.fl-menu{display:grid;gap:6px;box-sizing:border-box;width:calc(100% - 12px);margin:0 6px 6px;padding:8px 10px;border-radius:16px;background:linear-gradient(160deg,#1c2140,#2a1f45);border:1px solid #ffffff33;box-shadow:0 10px 24px #000a;color:#fff;font-family:system-ui,sans-serif}
.fl-menu[hidden]{display:none}
.fm-head{display:grid;gap:1px;text-align:center}.fm-big{font:800 18px/1.1 ui-monospace,Consolas,monospace}.fm-small{color:#b9c2e6;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fm-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}
.fm-btn{display:grid;justify-items:center;gap:2px;min-height:44px;padding:4px 2px;border:1px solid #ffffff2a;border-radius:10px;background:#ffffff12;color:#fff;font:700 10px/1.1 system-ui;cursor:pointer}
.fm-btn:hover,.fm-btn:focus-visible{border-color:#ff8a2b;background:#ff8a2b2a;outline:0}.fm-ic{font-size:16px}
.fm-set{display:grid;grid-template-columns:1fr 1fr;gap:6px}.fm-set label{display:grid;gap:2px;font:700 10px system-ui;color:#b9c2e6}.fm-set select{min-height:28px;border-radius:8px;border:1px solid #ffffff33;background:#14182b;color:#fff;font:12px system-ui;padding:0 4px}
.fm-close{min-height:32px;font-size:11px;grid-auto-flow:column;justify-content:center}
.fl-page{position:fixed;z-index:60;height:auto;border-radius:16px;box-shadow:0 10px 30px #000a;cursor:grab;touch-action:none}
.fl-page.fl-sprite,.fl-page.fl-island,.fl-page.fl-corner{height:auto}
body.pet-only nav.tabs,body.pet-only .fab,body.pet-only .home-head,body.pet-only .home-grid,body.pet-only .hero-tip,body.pet-only .rpg-hud{display:none!important}
body.pet-only main{margin:0 auto;padding:24px 16px;min-height:100dvh;display:grid;place-items:center}
body.pet-only .hero2{background:transparent;border:0;box-shadow:none;padding:0}

/* ---- calendario ---- */
.calendar .calhead{flex-wrap:wrap;gap:8px}
.calnav{display:flex;gap:6px;flex-wrap:wrap}.calnav .btn:last-child{margin-left:auto}
.mgrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.mgrid .dow{text-align:center;font-size:12px;font-weight:700;color:var(--muted)}
.mcell{display:grid;grid-template-rows:auto 1fr;gap:4px;align-content:start;min-height:96px;padding:5px;border-radius:12px;border:1px solid var(--line);background:var(--surface);text-align:left;overflow:hidden;min-width:0}
.mcell.dim{opacity:.45}.mcell.today{border-color:var(--accent)}.mcell[aria-pressed=true]{background:var(--surface2);box-shadow:0 0 0 2px var(--accent)}
.mhead{display:flex;justify-content:space-between;align-items:center;gap:2px}.mnum{font-weight:800}.mcount{font-size:10px;font-weight:700;color:var(--muted);background:var(--surface2);border-radius:999px;padding:1px 6px;white-space:nowrap}
.mchips{display:grid;gap:2px;align-content:start;min-width:0}
.ev-chip{display:flex;gap:3px;align-items:center;min-width:0;padding:1px 4px;border-radius:5px;border-left:4px solid var(--c);background:color-mix(in srgb,var(--c) 22%,var(--surface));font-size:11px;line-height:1.35;white-space:nowrap;overflow:hidden}
.ev-chip b{font-size:10px}.ev-tt{overflow:hidden;text-overflow:ellipsis}.ev-more{font-size:11px;color:var(--muted);font-weight:700}
@media (max-width:640px){.mcell{min-height:78px;padding:3px}.mcount{display:none}.ev-tt{display:none}.ev-chip{padding:1px 2px;gap:2px}.ev-chip b{font-size:9px}}
@media (min-width:1100px){.cal-month{grid-template-columns:1.7fr 1fr;align-items:start}}
.split .sd-list,.agenda{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.sd-list li{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:8px 10px;border-left:5px solid var(--c);background:var(--surface2);border-radius:10px}
.tpl{display:flex;gap:6px;flex-wrap:wrap}.tpl-btn{border-color:var(--c)}
.cat-pick{display:flex;gap:6px;flex-wrap:wrap}.cat-btn{min-height:36px;padding:0 10px;border-radius:999px;border:2px solid var(--line);background:var(--surface2);font-size:13px;font-weight:700}
.cat-btn[aria-pressed=true]{border-color:var(--c);background:color-mix(in srgb,var(--c) 30%,var(--surface2))}
.row3{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:8px}.ev-note{font-size:13px}
.wscroll{overflow:auto;max-height:70vh;border:1px solid var(--line);border-radius:12px}.wgrid{min-width:720px}
.whead{display:grid;grid-template-columns:48px repeat(7,1fr);position:sticky;top:0;z-index:4;background:var(--surface);border-bottom:1px solid var(--line)}
.wday{display:grid;justify-items:center;padding:4px;border:0;background:none;color:var(--text)}.wday.today b{background:var(--accent);color:var(--ink);border-radius:999px;padding:0 8px}
.wbody{display:grid;grid-template-columns:48px repeat(7,1fr)}.whours span{display:block;font-size:11px;color:var(--muted);text-align:right;padding-right:6px}
.wcol{position:relative;border-left:1px solid var(--line)}.wcol.today{background:color-mix(in srgb,var(--accent) 6%,transparent)}
.wline{position:absolute;left:0;right:0;border-top:1px solid color-mix(in srgb,var(--line) 60%,transparent)}
.wev{position:absolute;left:2px;right:2px;display:grid;align-content:start;text-align:left;padding:2px 4px;font-size:11px;line-height:1.25;border:0;border-left:4px solid var(--c);border-radius:6px;background:color-mix(in srgb,var(--c) 30%,var(--surface));color:var(--text);overflow:hidden}
.wnow{position:absolute;left:0;right:0;height:2px;background:#ff4d6d;z-index:3}
.dscroll{overflow:auto;max-height:72vh;border:1px solid var(--line);border-radius:12px}.dtl{position:relative;margin-left:52px}
.dhour{position:absolute;left:0;right:0;border-top:1px solid var(--line)}.dhour span{position:absolute;left:-50px;top:-8px;font-size:11px;color:var(--muted)}
.dev{position:absolute;left:6px;right:6px;display:flex;justify-content:space-between;gap:8px;align-items:flex-start;text-align:left;padding:6px 10px;border:0;border-left:6px solid var(--c);border-radius:10px;background:color-mix(in srgb,var(--c) 26%,var(--surface));color:var(--text);overflow:hidden;z-index:2}
.dev-main{display:grid;gap:1px;font-size:13px}.dev-main small{color:var(--muted)}.rem{display:flex;gap:6px}.rem i{font-style:normal;font-size:11px;font-weight:700;background:var(--surface2);border-radius:999px;padding:0 6px}
.dpose{width:44px;height:44px;flex:none;border-radius:8px;background:var(--surface2)}
.dfree{position:absolute;left:6px;right:6px;display:grid;align-content:center;gap:2px;padding:6px 10px;border:2px dashed var(--line);border-radius:12px;color:var(--text);z-index:1;overflow:hidden}
.dnow{position:absolute;left:-52px;right:0;height:0;z-index:5}.dnow i{position:absolute;left:44px;right:0;top:0;height:2px;background:#47e5ff;box-shadow:0 0 6px #47e5ff}.dnow-k{position:absolute;left:0;top:-16px;width:36px;height:36px}
.agd{display:grid;gap:14px}.agd-day h3{margin:0 0 6px;font-size:15px;text-transform:capitalize}
.agd-ev{display:grid;grid-template-columns:auto auto 1fr auto auto;gap:8px;align-items:center;padding:8px 10px;border-left:5px solid var(--c);background:var(--surface2);border-radius:10px;list-style:none}

/* ---- focus ---- */
.xp-stake{display:grid;gap:2px;padding:10px 12px;border-radius:12px;background:color-mix(in srgb,var(--warn) 16%,var(--surface2));border:1px solid var(--warn);text-align:center}.xp-stake span{font-size:12px;color:var(--muted)}
.fprog{position:relative;height:16px;border-radius:4px;background:var(--surface2);border:2px solid var(--line);overflow:hidden;width:100%}
.fprog i{display:block;height:100%;width:0;background:var(--accent);transition:width 1s linear}.fp-n{position:absolute;inset:0;display:grid;place-items:center;font:700 11px ui-monospace,monospace}
.focus-stage{display:grid;justify-items:center}.zen-only{display:none}
body.zen nav.tabs,body.zen .fab,body.zen .home-head{display:none}
body.zen{background:#05070c}body.zen main{padding-bottom:24px;max-width:640px}body.zen .zen-only{display:inline-flex}
body.zen .card{background:#0a0d14;border-color:#1b2232}
body.lights-off .stage-frame{filter:brightness(.45) saturate(.7)}

/* ---- collezione e statistiche ---- */
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px}
.pcard{display:grid;justify-items:center;gap:2px;padding:6px;border-radius:12px;border:1px solid var(--line);background:var(--surface2);font-size:11px;font-weight:700;text-align:center;color:var(--text)}
.pcard canvas{width:72px;height:72px}.pcard.locked canvas{filter:brightness(0) opacity(.5)}.pcard[aria-pressed=true]{border-color:var(--accent)}
.gear{display:flex;gap:8px;flex-wrap:wrap}
.kpis.four{grid-template-columns:repeat(4,1fr)}

/* mentre la capsula di notifica è giù, il Koda grande resta sullo sfondo e a suonare è quello appoggiato al bordo */
.stage-frame:has(.notif-banner.open) .stage-cv{filter:brightness(.5) saturate(.8);transition:filter .3s}
.stage-cv{transition:filter .3s}
@media (prefers-reduced-motion:reduce){.notif-banner,.stage-cv{transition:none}}
input[type=time]{min-height:44px;padding:10px 12px;border-radius:var(--r-s);border:1px solid var(--line);background:var(--bg);font-size:16px}
.dlg h4{margin:14px 0 6px}
.dlg progress{width:100%;height:12px}
body.ghost-pet .stage-cv,body.ghost-pet .fl-sprite{opacity:.35;transition:opacity .25s}
.dlg ul.list{list-style:none;padding:0;margin:6px 0}
/* Peek Mode: in modalità solo-pet Koda sbircia dal bordo, inclinato, e rientra al tocco o con una notifica */
body.pet-only.peek-pet .stage{position:fixed;right:0;bottom:16vh;z-index:30;margin:0;transform:translateX(62%) rotate(-14deg);transform-origin:right center;transition:transform .35s cubic-bezier(.3,1.6,.5,1)}
body.pet-only.peek-pet .stage:hover,body.pet-only.peek-pet .stage:focus-within,body.pet-only.peek-pet .stage:has(.notif-banner.open){transform:none}
/* StandBy: orologio a sinistra, pet a destra, schermo scuro */
.standby{position:fixed;inset:0;z-index:100;display:grid;grid-template-columns:1fr auto;align-items:center;gap:24px;padding:4vmin;background:#05070d;color:#f3d9b0}
.sb-clock{font:800 clamp(64px,18vw,220px)/1 ui-monospace,Consolas,monospace;letter-spacing:.02em;color:#ff8a2b}
.sb-date{font-size:clamp(16px,3vw,32px);opacity:.7;text-transform:capitalize}
.sb-pet{width:min(46vh,40vw)}
.standby .stage-frame{border:0;background:transparent;box-shadow:none}
.sb-x{position:absolute;top:12px;right:12px}
@media (orientation:portrait){.standby{grid-template-columns:1fr;justify-items:center;text-align:center}.sb-pet{width:min(70vw,40vh)}}
body.pet-only.peek-pet .stage{width:var(--sz,288px)}
/* Computer: Oggi su due colonne (pet fisso a sinistra, intestazione e schede a destra). Telefono: una colonna, come prima. */
@media (min-width:1000px){
  .view:has(> .home-grid){display:grid;grid-template-columns:minmax(340px,430px) minmax(0,1fr);grid-template-areas:"hero head" "hero grid";gap:var(--gap);align-items:start}
  .view:has(> .home-grid) > .home-head{grid-area:head}
  .view:has(> .home-grid) > .hero2{grid-area:hero;position:sticky;top:16px}
  .view:has(> .home-grid) > .home-grid{grid-area:grid}
  body.pet-only .view:has(> .home-grid){display:block}
}
@media (min-width:1500px){.view:has(> .home-grid){grid-template-columns:minmax(380px,480px) minmax(0,1fr)}}
/* le barre RPG riusano nomi di classe di altre schermate (.xp, .focus): qui si annullano gli stili ereditati */
.rpg.xp{height:auto;border:0;background:none;border-radius:0;overflow:visible}
.rpg.focus{padding:0;text-align:left;justify-items:stretch}
.rpg .rpg-track i{border-radius:0}
/* overlay in pagina: mai più alto dello schermo, scorre se il menu è lungo */
.fl-page{max-height:calc(100dvh - 16px);overflow-y:auto}
.fl-page.fl-icon:not(.open){background:transparent;box-shadow:none}
/* icone SVG al posto delle emoji (koda.css è copiato anche nella finestra flottante) */
.fm-ic,.fl-btn,.pose-btn,.nb-ic,.rpg .ic{display:inline-grid;place-items:center}
.fm-ic svg,.fl-btn svg,.pose-btn svg,.nb-ic svg,.rpg .ic svg{display:block}
.with-ic,.cat-btn,.tpl-btn,.badge.with-ic{display:inline-flex;align-items:center;gap:6px}
.t-title.with-ic,h4.with-ic,b.with-ic{display:flex;align-items:center;gap:6px}
.ev-ic{display:inline-grid;place-items:center;color:var(--c)}
