/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--spacing:.25rem;--container-3xl:48rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer utilities{.mx-auto{margin-inline:auto}.flex{display:flex}.grid{display:grid}.w-full{width:100%}.max-w-3xl{max-width:var(--container-3xl)}.min-w-0{min-width:0}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.gap-2{gap:calc(var(--spacing) * 2)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--canvas:#141518;--panel:#191a1b;--elevated:#1c1e22;--ink:#f7f8f8;--mute:#8a8f98;--heat:#ff6a3d;--cool:#4fc3f7;--wort:#c09032;--danger:#f43f5e;--set:#5c6168;--border:#ffffff14;--ghost:#ffffff0a;--ease-out:cubic-bezier(.32, .72, 0, 1);font-feature-settings:"cv01", "ss03", "tnum";font-family:Inter,system-ui,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{background:var(--canvas);width:100%;max-width:100%;min-height:100%;color:var(--ink);margin:0;overflow-x:hidden}html.kiosk,html.kiosk body,html.kiosk #root{width:1920px;max-width:none;height:1080px;overflow:hidden}a{color:inherit}button,input{font:inherit;background:var(--ghost);color:var(--ink);border:1px solid var(--border);border-radius:6px;padding:.5rem .75rem}button{cursor:pointer}button:active{transform:scale(.97)}.wrap{max-width:960px;margin:0 auto;padding:1.5rem}.card{background:var(--elevated);border:1px solid var(--border);border-radius:8px;margin:.75rem 0;padding:1rem 1.25rem}.row{flex-wrap:wrap;align-items:baseline;gap:1rem;display:flex}.mute{color:var(--mute)}.brand{letter-spacing:.18em;font-size:18px;font-weight:500}.temp{font-size:2.4rem;font-weight:600}.tv{flex-direction:column;justify-content:space-between;width:1920px;height:1080px;padding:48px 80px 40px;display:flex;overflow:hidden}.tv h1{letter-spacing:-.04em;color:var(--ink);margin:0;font-size:96px;font-weight:500}.tv .grid{grid-template-columns:repeat(3,1fr);gap:48px;display:grid}.tv .cell{text-align:center;background:0 0;border:none;border-radius:0;padding:0;position:relative}.tv .cell .wash{display:none}.tv .label{color:#9aa0a8;letter-spacing:.16em;font-size:36px;font-weight:600;position:relative}.tv .big{letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:96px;font-weight:600;line-height:1;position:relative}.tv .unit{color:var(--mute);vertical-align:.55em;letter-spacing:.04em;margin-left:.18em;font-size:.28em;font-weight:500;display:inline-block}.tv .unit .deg{letter-spacing:0;margin-right:.14em}.tv .target{color:var(--set);justify-content:center;align-items:center;gap:.65rem;margin-top:.7rem;display:flex;position:relative}.tv .tgt-num{letter-spacing:-.03em;color:var(--set);font-variant-numeric:tabular-nums;font-size:72px;font-weight:500;line-height:1}.tv .tgt-num .unit{color:var(--set);font-size:.32em}.tv .elem{min-height:52px;color:var(--mute);justify-content:center;align-items:center;gap:10px;margin-top:12px;font-size:36px;font-weight:600;display:flex;position:relative}.tv .elem.on,.tv .cell.heating .label{color:var(--heat)}.pumps{border-top:1px solid var(--border);justify-content:center;align-items:stretch;gap:0;padding-top:28px;display:flex}.pump{background:var(--ghost);border:1px solid var(--border);border-radius:12px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:6px;max-width:260px;padding:14px 16px 12px;display:flex;position:relative;overflow:hidden}.pump-glow{pointer-events:none;border-radius:inherit;position:absolute;inset:0}.pump.on.water .pump-glow{box-shadow:inset 0 0 0 2px var(--cool), 0 0 32px #4fc3f722}.pump.on.wort .pump-glow{box-shadow:inset 0 0 0 2px var(--wort), 0 0 32px #c0903222}.pump-gap{width:80px}.pump-name{letter-spacing:.2em;color:#6a6f76;font-size:32px;font-weight:600;position:relative}.pump.on.water .pump-name{color:var(--cool)}.pump.on.wort .pump-name{color:var(--wort)}.banner{background:var(--danger);color:#fff;text-align:center;transform-origin:top;padding:12px;font-size:40px;font-weight:600}.banner.stale{background:#c27803}.tv.stale .big,.tv.lost .big,.temp.stale{color:#c27803}.tv.lost .big,.temp.lost{color:var(--danger);opacity:.85}.dot{background:#10b981;border-radius:50%;width:.7em;height:.7em;margin-right:.4em;display:inline-block}.dot.stale{background:#c27803}.dot.lost{background:var(--danger)}.page{box-sizing:border-box;width:100%;max-width:48rem;min-height:100vh;margin-left:auto;margin-right:auto;padding:1rem;overflow:hidden auto}@media (width>=640px){.page{padding:1.5rem}}.page h1{margin:0;font-size:1.25rem}.page .card{box-sizing:border-box;width:100%;min-width:0}.page .row{min-width:0}.chip,.pwr,.step,.claim-go,.icon-btn,.page button:not(.board-id){min-height:44px}.icon-btn{width:44px;min-width:44px;height:44px;padding:0}.page input{box-sizing:border-box;width:100%;min-width:0}.login-form{flex-direction:column;align-items:stretch;gap:.75rem;display:flex}@media (width>=640px){.login-form{flex-flow:wrap;align-items:center}.login-form input{flex:10rem;width:auto}.login-form button{width:auto}}.empty-t{margin-bottom:.5rem;font-weight:600}.claim-name{width:100%;margin:.4rem 0}.claim-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.chip{padding:.35rem .7rem}.chip.on{background:var(--ink);color:#111;border-color:var(--ink)}.claim-go{opacity:.4;min-width:2.4rem}.claim-go.ready{opacity:1;background:var(--ink);color:#111;border-color:var(--ink)}.fridge-head{flex-wrap:wrap;align-items:center}.fridge-head strong{letter-spacing:.08em;text-transform:uppercase;word-break:break-word;flex:8rem;min-width:0}.icon-btn{min-width:44px}.pwr{padding:.35rem .9rem;font-weight:600}.pwr.on{background:var(--heat);color:#fff;border-color:var(--heat)}.tgt-row{color:var(--set);align-items:center;gap:12px;margin-top:8px;display:flex}.step{width:40px;height:40px;padding:0;font-size:1.2rem}.tgt-mid{align-items:center;gap:8px;font-size:1.6rem;font-weight:500;display:flex}.disc{color:var(--danger);letter-spacing:.08em;margin-bottom:6px;font-weight:600}.sheet-bak{z-index:20;background:#0000008c;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}@media (width>=640px){.sheet-bak{align-items:center;padding:20px}}.sheet{background:var(--panel);border:1px solid var(--border);box-sizing:border-box;border-radius:12px 12px 0 0;width:100%;max-height:90dvh;padding:16px;overflow-y:auto}@media (width>=640px){.sheet{border-radius:12px;width:min(420px,100%)}}.hy-block{grid-template-columns:1fr;gap:8px;margin:12px 0;display:grid}@media (width>=640px){.hy-block{grid-template-columns:1fr 1fr}}.step{width:44px;min-width:44px;height:44px;min-height:44px;padding:0;font-size:1.2rem}.tgt-row{color:var(--set);flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px;display:flex}.meta-grid{gap:.5rem 1rem;margin:.75rem 0;display:grid}.meta-grid dt{color:var(--mute);font-size:.75rem}.meta-grid dd{word-break:break-word;margin:0}.field{color:var(--mute);flex-direction:column;gap:4px;font-size:.85rem;display:flex}.hy-lab{grid-column:1/-1;font-weight:600}.hy-block label{color:var(--mute);flex-direction:column;gap:4px;font-size:.8rem;display:flex}.hy-block input{width:100%}.hy-block .span2{grid-column:1/-1}.board-id{color:var(--mute);cursor:pointer;word-break:break-all;text-align:left;background:0 0;border:none;padding:.25rem .4rem;font-family:ui-monospace,Menlo,monospace;font-size:.85rem}.claim-meta{margin:.25rem 0 .5rem}.ov-row{flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px;display:flex}.ov-row>span{min-width:3rem;color:var(--mute);font-size:.85rem}.ov-note{margin-top:4px;font-size:.85rem}.brew-copy{margin:.5rem 0 0}.page .temp .unit{margin-left:.18em;font-size:.4em}.page .temp .deg{margin-right:.12em}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
