:root{--font-display:-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",sans-serif;--font-mono:"IBM Plex Mono","SFMono-Regular",ui-monospace,Menlo,monospace;--brand-pink:#cf22ff;--brand-violet:#6f35ff;--brand-blue:#1b73ff;--brand-cyan:#53c5ff;--bg:#eff3ff;--bg-2:#f7f9ff;--ink:#10172b;--muted:#4d5f82;--accent:#5742ff;--accent-soft:#e7e3ff;--surface:rgba(255,255,255,0.78);--surface-soft:rgba(255,255,255,0.65);--surface-elev:#fdfdff;--line:rgba(93,111,150,0.28);--line-strong:rgba(82,98,138,0.45);--ok:#2a9d73;--danger:#d04545;--ink-soft:#4d5f82;--shadow:0 20px 65px rgba(16,27,53,0.14)}html[data-theme=dark]{--bg:#070916;--bg-2:#0f1230;--ink:#edf1ff;--muted:#a6b3d4;--accent:#7e66ff;--accent-soft:rgba(126,102,255,0.2);--surface:rgba(17,21,45,0.75);--surface-soft:rgba(15,20,39,0.7);--surface-elev:rgba(23,28,56,0.94);--line:rgba(158,173,222,0.26);--line-strong:rgba(170,186,235,0.42);--ink-soft:#8a9ac0;--shadow:0 24px 70px rgba(0,0,0,0.42)}*{box-sizing:border-box}body,html{margin:0;min-height:100%;overflow-x:hidden;background-color:var(--bg)}body{font-family:var(--font-display);color:var(--ink);background:radial-gradient(1400px 700px at -10% -20%,rgba(207,34,255,.26) 0,transparent 56%),radial-gradient(1200px 620px at 110% 0,rgba(27,115,255,.28) 0,transparent 58%),radial-gradient(1300px 900px at 60% 130%,rgba(83,197,255,.14) 0,transparent 62%),repeating-linear-gradient(122deg,rgba(255,255,255,.02) 0,rgba(255,255,255,.02) 2px,transparent 2px,transparent 10px),linear-gradient(170deg,var(--bg),var(--bg-2));background-attachment:fixed}a{color:inherit}h1,h2,h3,p{margin:0}.pageWrap{max-width:1380px;margin:0 auto;padding:32px 20px 60px;display:grid;grid-gap:18px;gap:18px;overflow-x:hidden}.appHeader{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.appHeader h1{font-size:clamp(1.6rem,2.3vw,2.4rem);letter-spacing:-.03em}.subtitle{margin-top:8px;color:var(--muted);line-height:1.45}.eyebrow{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.09em;font-size:.73rem;color:var(--muted)}.brandLine{display:inline-flex;align-items:center;gap:10px}.brandOrb{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-size:.8rem;color:#fff;background:linear-gradient(140deg,var(--brand-pink),var(--brand-blue));box-shadow:0 0 0 2px rgba(255,255,255,.14)}.headerRight{display:flex;align-items:center;gap:10px}.userPill{border:1px solid var(--line);padding:8px 12px;border-radius:999px;background:var(--surface-soft);font-size:.88rem}.mainNav{display:flex;flex-wrap:wrap;gap:8px}.mainNav a{padding:8px 12px;border-radius:999px;text-decoration:none;font-size:.92rem;border:1px solid var(--line);background:var(--surface-soft)}.mainNav a:hover{border-color:var(--line-strong)}.stack{display:grid;grid-gap:14px;gap:14px}.guideStack{gap:18px}.card{background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:18px;min-width:0;overflow:hidden}.guideSection{display:grid;grid-gap:12px;gap:12px}.guideSection p{line-height:1.6}.guideSteps{margin:0;padding-left:1.2rem;display:grid;grid-gap:10px;gap:10px;line-height:1.65}.guideSteps li{color:var(--ink)}.guideSteps a{color:var(--accent);font-weight:600}.guideResourceList{display:grid;grid-gap:12px;gap:12px}.guideResourceRow{display:grid;grid-template-columns:auto 1fr;align-items:center;grid-gap:12px;gap:12px}.guideResourceRow .asLink,.guideResourceRow .primaryButton{min-width:210px;justify-content:center}.heroCard{display:grid;grid-gap:18px;gap:18px}.heroIntro{display:grid;grid-gap:8px;gap:8px}.heroContent{display:grid;grid-gap:20px;gap:20px;grid-template-columns:1.2fr 1fr;align-items:stretch}.heroLeft{display:grid;grid-gap:12px;gap:12px}.heroRight{display:grid;grid-gap:8px;gap:8px;grid-template-rows:minmax(0,1fr) auto;align-self:stretch}.homeActionGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.homeActionCard{display:grid;grid-template-columns:1fr auto;align-items:start;grid-gap:12px;gap:12px;min-height:124px;padding:16px;border-radius:16px;border:1px solid var(--line);text-decoration:none;color:var(--ink);background:linear-gradient(160deg,color-mix(in srgb,var(--surface-elev) 94%,white),color-mix(in srgb,var(--surface-soft) 88%,transparent));box-shadow:0 10px 24px rgba(15,31,58,.08);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.homeActionCard:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--brand-blue) 34%,var(--line));box-shadow:0 14px 28px rgba(15,31,58,.12)}.homeActionCard.isPrimary{border-color:color-mix(in srgb,var(--brand-pink) 34%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--brand-pink) 15%,var(--bg-2)),color-mix(in srgb,var(--brand-blue) 14%,var(--bg-2)))}.homeActionCopy{display:grid;grid-gap:6px;gap:6px;align-self:start}.homeActionCopy h3{margin:0;font-size:1.05rem}.homeActionCopy p{margin:0;color:var(--ink-soft);line-height:1.5}.homeActionHint{align-self:start;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.feedFrame{width:100%;max-width:100%;min-width:0;min-height:260px;height:100%;border:1px solid var(--line);border-radius:14px;background:var(--surface-elev);display:block;box-sizing:border-box;object-fit:contain}.liveFeedPanel{display:grid;grid-gap:12px;gap:12px}.liveFeedPanelHeader{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.liveFeedPanelHeader h2{margin:0}.liveFeedPanelHeaderAccessory{flex-shrink:0}.liveFeedPanelStatus{gap:10px}.feedFrameStatus{min-height:290px;max-width:960px;justify-self:center}.feedFrameTall{min-height:65vh}.feedLauncherWrap{display:grid;grid-gap:8px;gap:8px;min-width:0;overflow:hidden}.quickGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.quickTile{display:grid;place-items:center;min-height:74px;border-radius:14px;text-decoration:none;font-weight:600;border:1px solid var(--line);background:linear-gradient(120deg,rgba(255,255,255,.95),rgba(245,248,255,.8)),#fff}.quickTile:hover{border-color:#9ba9c2}.durationStepCard,.formCard{display:grid;grid-gap:12px;gap:12px}.durationStepCard{justify-items:center;text-align:center;padding:30px 22px}.durationField{width:min(340px,100%)}.durationInput{text-align:center;font-size:clamp(1.5rem,2.8vw,2rem);font-family:var(--font-mono),monospace;letter-spacing:.12em;font-weight:600}.filamentInput{letter-spacing:.02em}.stepNextAction{justify-content:center}.durationPreview{font-size:.95rem;color:var(--ink)}.durationPreview.muted{color:var(--muted)}.durationError{color:#9b2d2d;font-size:.88rem}.field{display:grid;grid-gap:6px;gap:6px}.field span{font-size:.9rem;color:var(--muted)}input,textarea{width:100%;border-radius:12px;border:1px solid var(--line);padding:11px 12px;font-size:.95rem;font-family:inherit;color:var(--ink);background:var(--surface-elev)}textarea{resize:vertical}.docEditorTextarea{line-height:1.65}.rowActions{display:flex;flex-wrap:wrap;gap:8px}.bookingModeGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.bookingModeCard{border:1px solid var(--line);background:var(--surface-soft);border-radius:14px;padding:14px;display:grid;grid-gap:10px;gap:10px}.modeActionColumn{display:grid;grid-gap:8px;gap:8px}.asLink,.dangerButton,.ghostButton,.primaryButton,.secondaryButton{border:none;border-radius:12px;padding:10px 14px;font-size:.92rem;font-weight:600;text-decoration:none;cursor:pointer}.asLink.primaryButton,.primaryButton{background:linear-gradient(135deg,var(--brand-pink),var(--brand-blue));color:#fff}.secondaryButton{background:var(--surface-elev);color:var(--ink);border:1px solid var(--line)}.dangerButton{background:#fbe7e7;color:#8c2121;border:1px solid #efc8c8}.ghostButton{background:transparent}.ghostButton,.themeToggle{border:1px solid var(--line);color:var(--ink)}.themeToggle{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:8px 12px;background:var(--surface-soft);font-size:.82rem;font-weight:600;cursor:pointer}.themeToggleIcon{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(140deg,var(--brand-pink),var(--brand-blue));color:#fff;font-size:.76rem}.asLink[aria-disabled=true],button:disabled{opacity:.6;cursor:not-allowed}.statusBadge{padding:5px 10px;border-radius:999px;background:rgba(49,169,117,.18);color:var(--ink);font-size:.78rem;border:1px solid rgba(49,169,117,.35)}.statusBadge.statusDanger{background:rgba(208,69,69,.18);border-color:rgba(208,69,69,.35)}.sectionTitleRow{display:flex;justify-content:space-between;align-items:center;gap:10px}.mutedSmall{color:var(--muted);font-size:.86rem;line-height:1.45}.divider{border:none;height:1px;background:#e4e9f0;margin:2px 0}.hintCard{padding:11px 12px;background:var(--accent-soft);border:1px solid var(--line);border-radius:12px;display:grid;grid-gap:6px;gap:6px}.messageText{margin-top:4px;font-size:.9rem;color:var(--ink)}.bookingList{display:grid;grid-gap:8px;gap:8px;margin-top:6px}.bookingGroups{display:grid;grid-gap:16px;gap:16px}.bookingGroup{display:grid;grid-gap:8px;gap:8px}.filamentPanel{display:grid;grid-gap:14px;gap:14px}.myPageMetricsGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.miniStatCard{border:1px solid var(--line);border-radius:12px;background:var(--surface-soft);padding:12px;display:grid;grid-gap:6px;gap:6px}.miniStatCard h3{font-size:1.25rem}.rollInputField{width:min(260px,100%)}.stockAdjustPanel{display:grid;grid-gap:12px;gap:12px;align-items:start}.stockModeToggle{display:inline-flex;width:-moz-fit-content;width:fit-content;padding:4px;border:1px solid var(--line);border-radius:999px;background:var(--surface-soft);gap:4px}.togglePill{border:0;border-radius:999px;background:transparent;color:var(--ink-soft);padding:8px 14px;font:inherit;font-weight:600;cursor:pointer;transition:background .18s ease,color .18s ease,transform .18s ease}.togglePill.active{background:linear-gradient(120deg,color-mix(in srgb,var(--brand-pink) 84%,white),color-mix(in srgb,var(--brand-blue) 78%,white));color:white;box-shadow:0 8px 18px rgba(35,66,130,.18)}.togglePill:not(.active):hover{background:color-mix(in srgb,var(--surface-elev) 88%,transparent);color:var(--ink)}.stockAmountField{width:min(320px,100%)}.stockAdjustHint{margin-top:-4px}.stockAdjustActions{justify-content:flex-start}.positiveBalance{color:var(--ok)}.negativeBalance{color:var(--danger)}.bookingRow{border:1px solid var(--line);background:var(--surface-soft);border-radius:12px;padding:10px 12px;display:flex;justify-content:space-between;gap:8px;align-items:center}.bookingRow.compact{display:block}.calendarSection{overflow:hidden;max-width:100%}.calendarHeaderMeta{display:grid;justify-items:end;grid-gap:4px;gap:4px;min-width:0}.calendarNav{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.calendarNavIcon{min-width:40px;padding-inline:0;display:inline-flex;align-items:center;justify-content:center}.calendarRange{font-size:.85rem;color:var(--muted);white-space:nowrap}.calendarGridWrap{display:grid;grid-template-columns:48px minmax(0,1fr);grid-gap:6px;gap:6px;margin-top:10px;max-width:100%;overflow:hidden}.calendarHours{position:relative}.calendarHoursHeaderSpacer{height:25px;margin-bottom:6px}.hourLabel{position:absolute;right:0;transform:none;font-size:.68rem;color:var(--muted);line-height:1}.calendarDays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:6px;gap:6px;min-width:0;padding-bottom:4px}.dayColumnWrap{display:grid;grid-gap:4px;gap:4px;min-width:0}.dayHeader{display:flex;justify-content:space-between;align-items:center;min-height:25px;gap:6px;font-size:.76rem;color:var(--muted)}.dayHeader,.dayHeader span,.dayHeader strong{min-width:0}.dayHeader span,.dayHeader strong{white-space:nowrap}.dayHeader.isToday strong{color:var(--ink)}.dayHeader.isToday span{padding:3px 8px;border-radius:999px;background:color-mix(in srgb,var(--accent-soft) 80%,transparent);color:var(--ink);border:1px solid color-mix(in srgb,var(--accent) 18%,var(--line))}.dayColumn{border:1px solid var(--line);border-radius:12px;position:relative;background:linear-gradient(180deg,var(--surface-elev),var(--surface));overflow:hidden}.hourLine{position:absolute;left:0;right:0;border-top:1px dashed color-mix(in srgb,var(--line-strong) 60%,transparent);z-index:0}.calendarSelectLayer{position:absolute;inset:0;border:0;background:transparent;cursor:default;z-index:2}.calendarSelectLayer.enabled{cursor:-webkit-grab;cursor:grab;touch-action:none}.calendarSelectLayer.enabled:active{cursor:-webkit-grabbing;cursor:grabbing}.bookingChip{position:absolute;left:6px;right:6px;border-radius:9px;border:2px solid;background:color-mix(in srgb,var(--surface-elev) 86%,transparent);padding:5px 6px;overflow:hidden;z-index:3;pointer-events:auto;cursor:default}.bookingChip.mine{background:color-mix(in srgb,var(--accent-soft) 65%,var(--surface-elev))}.bookingChip.failed{background:repeating-linear-gradient(135deg,color-mix(in srgb,#ff8f58 20%,transparent) 0 8px,color-mix(in srgb,var(--surface-elev) 88%,transparent) 8px 16px);border-style:dashed}.placeholderChip{position:absolute;left:10px;right:10px;border-radius:9px;border:2px dashed;padding:5px 6px;z-index:4;pointer-events:none;cursor:default;font-size:.72rem;font-weight:600;text-align:left;border-radius:10px;box-shadow:0 4px 10px rgba(20,35,60,.08)}.placeholderChip.clickable{pointer-events:auto;cursor:-webkit-grab;cursor:grab}.placeholderChip.clickable:active{cursor:-webkit-grabbing;cursor:grabbing}.placeholderChip span{display:block;pointer-events:none}.placeholderChip.suggestion{border-color:var(--brand-blue);background:color-mix(in srgb,var(--brand-blue) 22%,transparent);color:var(--ink)}.placeholderChip.manual-preview{border-color:#d08a22;background:rgba(237,168,20,.2);color:var(--ink)}.placeholderChip.manual-fixed{border-color:var(--ok);background:rgba(35,167,113,.22);color:var(--ink)}.pastMask{inset:0 0 auto;background:linear-gradient(180deg,color-mix(in srgb,var(--ink) 5%,transparent) 0,color-mix(in srgb,var(--ink) 12%,transparent) 72%,color-mix(in srgb,var(--ink) 0%,transparent) 100%);border-bottom:1px solid color-mix(in srgb,var(--line-strong) 45%,transparent);z-index:1}.currentTimeLine,.pastMask{position:absolute;pointer-events:none}.currentTimeLine{left:0;right:0;height:2px;background:linear-gradient(90deg,var(--brand-pink),var(--brand-blue));box-shadow:0 0 0 1px color-mix(in srgb,var(--surface-elev) 70%,transparent);z-index:2}.currentTimeLine:before{content:"";position:absolute;left:0;top:50%;width:8px;height:8px;border-radius:999px;background:var(--brand-pink);transform:translate(-35%,-50%)}.bookingChipHeader{display:flex;justify-content:space-between;gap:8px;font-size:.68rem}.bookingChipHeader span,.bookingChipStack span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bookingChip.tiny{padding:0 6px;display:grid;align-items:center;overflow:visible;cursor:pointer}.bookingChipTiny{display:flex;align-items:center;min-height:100%}.bookingChipDot{width:7px;height:7px;border-radius:999px;background:currentColor;opacity:.85}.bookingChip.compact{display:grid;align-items:center}.bookingChip.expanded{padding-top:7px;padding-bottom:7px}.bookingChipStack{display:grid;grid-gap:2px;gap:2px;font-size:.68rem;line-height:1.25}.bookingChipTitle{font-weight:700}.bookingChipLine,.bookingChipMeta{color:var(--muted)}.bookingTinyPopover{position:absolute;left:0;top:calc(100% + 8px);min-width:150px;max-width:220px;display:grid;grid-gap:3px;gap:3px;padding:8px 10px;border-radius:12px;border:1px solid var(--line-strong);background:color-mix(in srgb,var(--surface-elev) 94%,transparent);box-shadow:0 12px 30px rgba(10,20,35,.22);font-size:.72rem;line-height:1.35;color:var(--ink);z-index:6}.bookingTinyPopover span{color:var(--muted)}.markdownPreview{line-height:1.6}.markdownPreview h1,.markdownPreview h2,.markdownPreview h3{margin-top:.8em;margin-bottom:.35em}.markdownPreview li,.markdownPreview p{margin-bottom:.4em}.revisionList{display:grid;grid-gap:6px;gap:6px;margin-top:8px}.revisionRow{border:1px solid var(--line);border-radius:10px;background:var(--surface-soft);padding:8px 10px}.revisionRow p{line-height:1.55}.playfulStats{display:flex;justify-content:space-between;align-items:center;gap:16px}.ringWrap{display:grid;place-items:center}.funRing{width:140px;height:140px;border-radius:50%;display:grid;place-items:center;border:8px solid rgba(255,255,255,.9);box-shadow:inset 0 0 0 8px rgba(255,255,255,.86)}.funRing span{font-size:.8rem;text-align:center;width:70px;color:#2c3c55}.championPodium{margin-top:12px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px;align-items:end}.podiumCard{display:grid;grid-gap:6px;gap:6px;align-content:start;justify-items:center;text-align:center;border-radius:16px;border:1px solid var(--line);background:var(--surface-soft);padding:12px 10px;box-shadow:0 10px 26px rgba(12,25,52,.12)}.podiumCard h3{font-size:1rem}.podiumCard.place1{min-height:184px;border-color:color-mix(in srgb,var(--brand-pink) 26%,var(--line));background:radial-gradient(circle at 50% -10%,color-mix(in srgb,var(--brand-pink) 24%,transparent) 0,transparent 55%),var(--surface-soft)}.podiumCard.place2,.podiumCard.place3{min-height:154px}.podiumCard.place2{border-color:color-mix(in srgb,var(--brand-cyan) 26%,var(--line))}.podiumCard.place3{border-color:color-mix(in srgb,var(--brand-violet) 26%,var(--line))}.podiumRank{font-family:var(--font-mono);font-size:.8rem;padding:2px 8px;border-radius:999px;border:1px solid var(--line-strong);background:color-mix(in srgb,var(--surface-elev) 88%,transparent)}.podiumLabel{font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.championQueue{margin-top:14px;display:grid;grid-gap:8px;gap:8px}.balanceBoardGrid{margin-top:10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.balanceColumn{border:1px solid var(--line);border-radius:12px;background:var(--surface-soft);padding:10px;display:grid;grid-gap:8px;gap:8px}.leaderboard{display:grid;grid-gap:10px;gap:10px}.leaderRow{border:1px solid var(--line);border-radius:12px;padding:8px 10px;background:color-mix(in srgb,var(--surface-soft) 92%,transparent)}.leaderHead{display:flex;justify-content:space-between;margin-bottom:4px;font-size:.9rem}.leaderTrack{width:100%;height:12px;border-radius:999px;background:color-mix(in srgb,var(--surface-elev) 90%,transparent);overflow:hidden}.leaderBar{height:100%}.leaderBar.positive{background:linear-gradient(120deg,var(--brand-pink),var(--brand-blue))}.leaderBar.negative{background:linear-gradient(120deg,#ff8f58,#d04545)}.signinWrap{min-height:100vh;display:grid;place-items:center;padding:20px}.signinCard{width:min(500px,100%);background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:30px;display:grid;grid-gap:13px;gap:13px}.filamentPreviewCard{display:grid;grid-gap:14px;gap:14px}.filamentPreviewHeader{display:grid;grid-gap:8px;gap:8px}.modalOverlay{position:fixed;inset:0;background:rgba(10,18,33,.46);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:grid;place-items:center;padding:16px;z-index:100}.modalCard{width:min(520px,100%);background:var(--surface-elev);border:1px solid var(--line);border-radius:18px;box-shadow:0 28px 70px rgba(8,20,43,.26);padding:18px;display:grid;grid-gap:12px;gap:12px}.successModalCard{justify-items:center;text-align:center}.errorModalCard{border-color:color-mix(in srgb,var(--danger) 45%,var(--line))}.modalActions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.collapsibleSection{display:grid;grid-gap:10px;gap:10px}.collapsibleSection summary{list-style:none;cursor:pointer;font-weight:600;color:var(--ink)}.collapsibleSection summary::-webkit-details-marker{display:none}.collapsibleSection summary:before{content:"▸";display:inline-block;margin-right:8px;transition:transform .15s ease}.collapsibleSection[open] summary:before{transform:rotate(90deg)}.historyScrollBox{max-height:320px;overflow:auto;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft);padding:8px;display:grid;grid-gap:8px;gap:8px}.historyRow{border:1px solid var(--line);border-radius:10px;background:var(--surface-elev);padding:8px 10px;display:grid;grid-gap:4px;gap:4px}.printSuccessAnimation{width:180px;height:124px;position:relative;margin-bottom:4px}.printBed{position:absolute;bottom:0;left:20px;right:20px;height:16px;border-radius:10px;background:linear-gradient(120deg,#cad8ee,#e0ebfb)}.printObject{position:absolute;bottom:16px;left:56px;width:68px;height:58px;border-radius:10px 10px 6px 6px;background:repeating-linear-gradient(180deg,rgba(255,122,63,.95),rgba(255,122,63,.95) 5px,rgba(255,152,106,.95) 0,rgba(255,152,106,.95) 10px);transform-origin:bottom center;animation:printGrow 1.25s ease-out infinite alternate}.printerNozzle{position:absolute;top:8px;left:46px;width:28px;height:24px;border-radius:8px;background:linear-gradient(120deg,#2e496f,#45628e);animation:nozzleTravel 1.8s ease-in-out infinite}.printerNozzle:after{content:"";position:absolute;left:10px;top:22px;width:8px;height:42px;border-radius:8px;background:linear-gradient(180deg,rgba(70,99,142,.3),rgba(255,123,65,.8))}@keyframes nozzleTravel{0%{transform:translateX(0)}50%{transform:translateX(78px)}to{transform:translateX(0)}}@keyframes printGrow{0%{transform:scaleY(.9);filter:saturate(.9)}to{transform:scaleY(1);filter:saturate(1.1)}}@media (max-width:980px){.heroContent{grid-template-columns:1fr}.homeActionGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.bookingModeGrid,.myPageMetricsGrid,.quickGrid{grid-template-columns:1fr}.calendarHeaderMeta{justify-items:start}.calendarNav{flex-wrap:wrap}.playfulStats{flex-direction:column;align-items:flex-start}.balanceBoardGrid,.championPodium,.guideResourceRow{grid-template-columns:1fr}.guideResourceRow{align-items:start}.guideResourceRow .asLink,.guideResourceRow .primaryButton{min-width:0;width:-moz-fit-content;width:fit-content}.podiumCard.place1{order:1}.podiumCard.place2{order:2}.podiumCard.place3{order:3}.podiumCard.place1,.podiumCard.place2,.podiumCard.place3{min-height:0}.calendarGridWrap{grid-template-columns:42px minmax(0,1fr)}.calendarDays{gap:4px}.dayHeader{font-size:.72rem}}@media (max-width:640px){.homeActionGrid{grid-template-columns:1fr}.homeActionCard{min-height:0}}@media (max-width:720px){.appHeader{flex-direction:column}.headerRight{width:100%;justify-content:flex-start}.pageWrap{padding:22px 12px 40px}.calendarGridWrap{grid-template-columns:36px minmax(0,1fr)}.calendarRange{white-space:normal}.bookingChip{left:4px;right:4px;padding:4px 5px}.placeholderChip{left:6px;right:6px;padding:4px 5px}.bookingChipHeader{font-size:.64rem}}.pd-root{--pd-surface:var(--surface-elev);--pd-surface2:var(--bg-2);--pd-border:var(--line);--pd-text:var(--ink);--pd-text-dim:var(--muted);--pd-accent:var(--accent);--pd-accent2:#00cec9;--pd-hot:#d04545;--pd-warm:#e5a834;--pd-cool:#4fa0e8;--pd-green:#2a9d73;--pd-radius:12px;--pd-shadow:var(--shadow)}.pd-topbar{justify-content:space-between;gap:12px;padding:14px 18px;background:var(--pd-surface);border:1px solid var(--pd-border);border-radius:var(--pd-radius);margin-bottom:20px}.pd-topbar,.pd-topbar-left,.pd-topbar-right{display:flex;align-items:center;flex-wrap:wrap}.pd-topbar-left,.pd-topbar-right{gap:10px}.pd-wifi-badge{display:inline-flex;align-items:center;gap:5px;font-size:.75rem;color:var(--pd-text-dim);background:var(--pd-surface2);padding:5px 10px;border-radius:20px}.pd-status-badge{font-size:.7rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;padding:5px 12px;border-radius:20px;color:#fff}.pd-badge-running{background:var(--pd-green)}.pd-badge-idle{background:var(--pd-text-dim)}.pd-badge-error{background:var(--pd-hot)}.pd-badge-paused{background:var(--pd-warm);color:#333}.pd-btn{padding:7px 16px;border:none;border-radius:8px;font-size:.78rem;font-weight:600;cursor:pointer;transition:background .2s,opacity .2s;font-family:inherit}.pd-btn:disabled{opacity:.4;cursor:not-allowed}.pd-btn-connect{background:var(--pd-accent);color:#fff}.pd-btn-connect:hover:not(:disabled){filter:brightness(1.15)}.pd-btn-disconnect{background:var(--pd-hot);color:#fff}.pd-btn-disconnect:hover:not(:disabled){filter:brightness(1.15)}.pd-mqtt-status{font-size:.72rem;font-weight:600;padding:4px 10px;border-radius:12px;background:var(--pd-surface2);color:var(--pd-text-dim);white-space:nowrap}.pd-mqtt-connected{color:var(--pd-green)}.pd-mqtt-connecting,.pd-mqtt-reconnecting{color:var(--pd-warm)}.pd-mqtt-error{color:var(--pd-hot)}.pd-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;gap:20px}.pd-spinner{width:48px;height:48px;border-radius:50%;border:4px solid var(--pd-surface2);border-top-color:var(--pd-accent);animation:pd-spin .8s linear infinite}@keyframes pd-spin{to{transform:rotate(1turn)}}.pd-loading-text{font-size:.85rem;color:var(--pd-text-dim);letter-spacing:.02em}.pd-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));grid-gap:20px;gap:20px}.pd-card{background:var(--pd-surface);border:1px solid var(--pd-border);border-radius:var(--pd-radius);padding:20px 22px;box-shadow:var(--pd-shadow);transition:border-color .2s;min-width:0;overflow:hidden}.pd-card:hover{border-color:var(--pd-accent)}.pd-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.pd-card-header h2{font-size:.95rem;font-weight:600;letter-spacing:-.01em}.pd-card-progress{grid-column:1/-1}.pd-print-type{font-size:.65rem;text-transform:uppercase;font-weight:600;padding:3px 10px;border-radius:12px;background:var(--pd-accent);color:#fff;letter-spacing:.04em}.pd-progress-section{display:flex;gap:36px;align-items:center;flex-wrap:wrap}.pd-ring-container{position:relative;width:160px;height:160px;flex-shrink:0}.pd-ring{width:100%;height:100%;transform:rotate(-90deg)}.pd-ring-bg{fill:none;stroke:var(--pd-surface2);stroke-width:10}.pd-ring-fill{fill:none;stroke:var(--pd-accent);stroke-width:10;stroke-linecap:round;transition:stroke-dashoffset .8s ease}.pd-ring-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.pd-ring-percent{font-size:2rem;font-weight:700;letter-spacing:-.03em}.pd-ring-label{font-size:.7rem;color:var(--pd-text-dim);text-transform:uppercase;letter-spacing:.06em}.pd-progress-details{flex:1 1;min-width:0}.pd-detail{display:flex;justify-content:space-between;align-items:baseline;padding:6px 0;border-bottom:1px solid var(--pd-border)}.pd-detail:last-child{border-bottom:none}.pd-detail-label{font-size:.78rem;color:var(--pd-text-dim)}.pd-detail-value{font-size:.85rem;font-weight:500;text-align:right;max-width:60%}.pd-task-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pd-layer-section{margin-top:18px}.pd-layer-label{display:flex;justify-content:space-between;font-size:.75rem;color:var(--pd-text-dim);margin-bottom:6px}.pd-layer-bar{height:6px;border-radius:3px;background:var(--pd-surface2);overflow:hidden}.pd-layer-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--pd-accent),var(--pd-accent2));transition:width .6s ease}.pd-temps{display:flex;flex-direction:column;gap:20px}.pd-temp-gauge{display:flex;align-items:center;gap:14px}.pd-temp-icon{width:38px;height:38px;padding:7px;border-radius:10px;flex-shrink:0}.pd-temp-icon svg{width:100%;height:100%}.pd-nozzle-icon{background:rgba(208,69,69,.12);color:var(--pd-hot)}.pd-bed-icon{background:rgba(229,168,52,.12);color:var(--pd-warm)}.pd-temp-info{flex:1 1;display:flex;flex-direction:column}.pd-temp-label{font-size:.72rem;color:var(--pd-text-dim);text-transform:uppercase;letter-spacing:.04em}.pd-temp-value{font-size:1.2rem;font-weight:700}.pd-temp-target{font-size:.7rem;color:var(--pd-text-dim)}.pd-temp-track{width:80px;height:6px;border-radius:3px;background:var(--pd-surface2);overflow:hidden;flex-shrink:0}.pd-temp-fill{height:100%;border-radius:3px;transition:width .5s ease}.pd-nozzle-bar{background:linear-gradient(90deg,var(--pd-warm),var(--pd-hot))}.pd-bed-bar{background:linear-gradient(90deg,var(--pd-cool),var(--pd-warm))}.pd-fans-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.pd-fan-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px;background:var(--pd-surface2);border-radius:10px}.pd-fan-icon{width:32px;height:32px;color:var(--pd-accent2)}.pd-fan-label{font-size:.7rem;color:var(--pd-text-dim)}.pd-fan-value{font-size:1rem;font-weight:600}@keyframes pd-fan-spin{to{transform:rotate(1turn)}}.pd-spinning{animation:pd-fan-spin 1.2s linear infinite}.pd-stopped{animation:none;opacity:.35}.pd-ams-meta{display:inline-flex;align-items:center;gap:4px;font-size:.75rem;color:var(--pd-cool)}.pd-ams-slots{display:flex;gap:12px;flex-wrap:wrap}.pd-ams-slot{flex:1 1;min-width:64px;max-width:100px;padding:12px 8px;background:var(--pd-surface2);border-radius:10px;display:flex;flex-direction:column;align-items:center;gap:6px;border:2px solid transparent;transition:border-color .2s}.pd-ams-slot.pd-active{border-color:var(--pd-accent)}.pd-ams-swatch{width:28px;height:28px;border-radius:50%;border:2px solid var(--pd-border)}.pd-ams-type{font-size:.7rem;font-weight:600}.pd-ams-brand{font-size:.6rem;color:var(--pd-text-dim);text-align:center}.pd-ams-remain{font-size:.65rem;color:var(--pd-text-dim)}.pd-ams-remain-bar{width:100%;height:4px;border-radius:2px;background:var(--bg);overflow:hidden}.pd-ams-remain-fill{height:100%;border-radius:2px;background:var(--pd-green)}.pd-ams-slot.pd-empty{opacity:.3}.pd-hw-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.pd-hw-item{display:flex;flex-direction:column;gap:2px;padding:10px;background:var(--pd-surface2);border-radius:8px}.pd-hw-label{font-size:.7rem;color:var(--pd-text-dim)}.pd-hw-value{font-size:.85rem;font-weight:600}.pd-lights-grid{display:flex;gap:16px;flex-wrap:wrap}.pd-light-item{display:flex;align-items:center;gap:10px;padding:10px 16px;background:var(--pd-surface2);border-radius:10px;flex:1 1;min-width:140px}.pd-light-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.pd-light-on{background:var(--pd-warm);box-shadow:0 0 8px var(--pd-warm)}.pd-light-off{background:var(--pd-text-dim)}.pd-light-flash{background:var(--pd-warm);animation:pd-blink 1s step-end infinite}@keyframes pd-blink{50%{opacity:.2}}.pd-light-name{font-size:.8rem;font-weight:500}.pd-light-mode{font-size:.68rem;color:var(--pd-text-dim);text-transform:capitalize}.pd-cam-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.pd-cam-item{padding:8px 12px;background:var(--pd-surface2);border-radius:8px}.pd-cam-label{font-size:.68rem;color:var(--pd-text-dim);display:block}.pd-cam-value{font-size:.82rem;font-weight:600}.pd-enabled{color:var(--pd-green)}.pd-disabled,.pd-footer{color:var(--pd-text-dim)}.pd-footer{display:flex;justify-content:space-between;padding:16px 0 0;margin-top:28px;border-top:1px solid var(--pd-border);font-size:.72rem}@media (max-width:720px){.pd-grid{grid-template-columns:1fr}.pd-progress-section{flex-direction:column;align-items:stretch}.pd-ring-container{margin:0 auto}.pd-fans-grid{grid-template-columns:1fr 1fr}.pd-cam-grid,.pd-hw-grid{grid-template-columns:1fr}.pd-topbar{flex-direction:column}}.hamburgerButton{display:none;position:fixed;top:16px;right:16px;z-index:1000;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft);padding:8px;cursor:pointer;color:var(--ink);box-shadow:0 2px 8px rgba(0,0,0,.12)}.hamburgerIcon{display:flex;flex-direction:column;justify-content:center;gap:4px;width:22px;height:22px}.hamburgerIcon span{display:block;height:2px;width:100%;background:var(--ink);border-radius:2px;transition:transform .25s ease,opacity .2s ease}.hamburgerIcon.open span:first-child{transform:translateY(6px) rotate(45deg)}.hamburgerIcon.open span:nth-child(2){opacity:0}.hamburgerIcon.open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.mobileNavOverlay{position:fixed;inset:0;z-index:900;background:rgba(0,0,0,.4);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease}.mobileNavDrawer{position:absolute;top:0;right:0;width:min(300px,80vw);height:100%;background:var(--bg);border-left:1px solid var(--line);padding:64px 20px 28px;display:flex;flex-direction:column;gap:6px;animation:slideIn .25s ease;overflow-y:auto}.mobileNavLink{padding:12px 14px;border-radius:12px;text-decoration:none;font-size:1rem;font-weight:500;color:var(--ink);border:1px solid transparent}.mobileNavLink.active,.mobileNavLink:hover{background:var(--surface);border-color:var(--line)}.mobileNavLink.active{font-weight:600;color:var(--accent)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}@media (max-width:720px){.hamburgerButton{display:inline-flex}.mainNav{display:none}}