:root{--ion-color-primary: #0054e9;--ion-color-primary-rgb: 0, 84, 233;--ion-color-primary-contrast: #fff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #004acd;--ion-color-primary-tint: #1a65eb;--ion-color-secondary: #0163aa;--ion-color-secondary-rgb: 1, 99, 170;--ion-color-secondary-contrast: #fff;--ion-color-secondary-contrast-rgb: 255, 255, 255;--ion-color-secondary-shade: #015796;--ion-color-secondary-tint: #1a73b3;--ion-color-tertiary: #6030ff;--ion-color-tertiary-rgb: 96, 48, 255;--ion-color-tertiary-contrast: #fff;--ion-color-tertiary-contrast-rgb: 255, 255, 255;--ion-color-tertiary-shade: #542ae0;--ion-color-tertiary-tint: #7045ff;--ion-color-success: #2dd55b;--ion-color-success-rgb: 45, 213, 91;--ion-color-success-contrast: #000;--ion-color-success-contrast-rgb: 0, 0, 0;--ion-color-success-shade: #28bb50;--ion-color-success-tint: #42d96b;--ion-color-warning: #ffc409;--ion-color-warning-rgb: 255, 196, 9;--ion-color-warning-contrast: #000;--ion-color-warning-contrast-rgb: 0, 0, 0;--ion-color-warning-shade: #e0ac08;--ion-color-warning-tint: #ffca22;--ion-color-danger: #c5000f;--ion-color-danger-rgb: 197, 0, 15;--ion-color-danger-contrast: #fff;--ion-color-danger-contrast-rgb: 255, 255, 255;--ion-color-danger-shade: #ad000d;--ion-color-danger-tint: #cb1a27;--ion-color-light: #f4f5f8;--ion-color-light-rgb: 244, 245, 248;--ion-color-light-contrast: #000;--ion-color-light-contrast-rgb: 0, 0, 0;--ion-color-light-shade: #d7d8da;--ion-color-light-tint: #f5f6f9;--ion-color-medium: #636469;--ion-color-medium-rgb: 99, 100, 105;--ion-color-medium-contrast: #fff;--ion-color-medium-contrast-rgb: 255, 255, 255;--ion-color-medium-shade: #57585c;--ion-color-medium-tint: #737478;--ion-color-dark: #222428;--ion-color-dark-rgb: 34, 36, 40;--ion-color-dark-contrast: #fff;--ion-color-dark-contrast-rgb: 255, 255, 255;--ion-color-dark-shade: #1e2023;--ion-color-dark-tint: #383a3e}html.ios{--ion-default-font: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Roboto", sans-serif}html.md{--ion-default-font: "Roboto", "Helvetica Neue", sans-serif}html{--ion-dynamic-font: -apple-system-body;--ion-font-family: var(--ion-default-font)}body{background:var(--ion-background-color);color:var(--ion-text-color)}body.backdrop-no-scroll{overflow:hidden}html.ios ion-modal.modal-card ion-header ion-toolbar:first-of-type,html.ios ion-modal.modal-sheet ion-header ion-toolbar:first-of-type,html.ios ion-modal ion-footer ion-toolbar:first-of-type,html.ios ion-footer.modal-footer-moving ion-toolbar:first-of-type{padding-top:6px}html.ios ion-modal.modal-card ion-header ion-toolbar:last-of-type,html.ios ion-modal.modal-sheet ion-header ion-toolbar:last-of-type{padding-bottom:6px}html.ios ion-modal ion-toolbar,html.ios .modal-footer-moving ion-toolbar{padding-right:calc(var(--ion-safe-area-right) + 8px);padding-left:calc(var(--ion-safe-area-left) + 8px)}@media screen and (min-width:768px){html.ios ion-modal.modal-card:first-of-type{--backdrop-opacity: .18}}ion-modal.modal-default.show-modal~ion-modal.modal-default{--backdrop-opacity: 0;--box-shadow: none}html.ios ion-modal.modal-card .ion-page{border-top-left-radius:var(--border-radius)}.ion-color-primary{--ion-color-base: var(--ion-color-primary, #0054e9) !important;--ion-color-base-rgb: var(--ion-color-primary-rgb, 0, 84, 233) !important;--ion-color-contrast: var(--ion-color-primary-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-primary-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-primary-shade, #004acd) !important;--ion-color-tint: var(--ion-color-primary-tint, #1a65eb) !important}.ion-color-secondary{--ion-color-base: var(--ion-color-secondary, #0163aa) !important;--ion-color-base-rgb: var(--ion-color-secondary-rgb, 1, 99, 170) !important;--ion-color-contrast: var(--ion-color-secondary-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-secondary-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-secondary-shade, #015796) !important;--ion-color-tint: var(--ion-color-secondary-tint, #1a73b3) !important}.ion-color-tertiary{--ion-color-base: var(--ion-color-tertiary, #6030ff) !important;--ion-color-base-rgb: var(--ion-color-tertiary-rgb, 96, 48, 255) !important;--ion-color-contrast: var(--ion-color-tertiary-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-tertiary-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-tertiary-shade, #542ae0) !important;--ion-color-tint: var(--ion-color-tertiary-tint, #7045ff) !important}.ion-color-success{--ion-color-base: var(--ion-color-success, #2dd55b) !important;--ion-color-base-rgb: var(--ion-color-success-rgb, 45, 213, 91) !important;--ion-color-contrast: var(--ion-color-success-contrast, #000) !important;--ion-color-contrast-rgb: var(--ion-color-success-contrast-rgb, 0, 0, 0) !important;--ion-color-shade: var(--ion-color-success-shade, #28bb50) !important;--ion-color-tint: var(--ion-color-success-tint, #42d96b) !important}.ion-color-warning{--ion-color-base: var(--ion-color-warning, #ffc409) !important;--ion-color-base-rgb: var(--ion-color-warning-rgb, 255, 196, 9) !important;--ion-color-contrast: var(--ion-color-warning-contrast, #000) !important;--ion-color-contrast-rgb: var(--ion-color-warning-contrast-rgb, 0, 0, 0) !important;--ion-color-shade: var(--ion-color-warning-shade, #e0ac08) !important;--ion-color-tint: var(--ion-color-warning-tint, #ffca22) !important}.ion-color-danger{--ion-color-base: var(--ion-color-danger, #c5000f) !important;--ion-color-base-rgb: var(--ion-color-danger-rgb, 197, 0, 15) !important;--ion-color-contrast: var(--ion-color-danger-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-danger-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-danger-shade, #ad000d) !important;--ion-color-tint: var(--ion-color-danger-tint, #cb1a27) !important}.ion-color-light{--ion-color-base: var(--ion-color-light, #f4f5f8) !important;--ion-color-base-rgb: var(--ion-color-light-rgb, 244, 245, 248) !important;--ion-color-contrast: var(--ion-color-light-contrast, #000) !important;--ion-color-contrast-rgb: var(--ion-color-light-contrast-rgb, 0, 0, 0) !important;--ion-color-shade: var(--ion-color-light-shade, #d7d8da) !important;--ion-color-tint: var(--ion-color-light-tint, #f5f6f9) !important}.ion-color-medium{--ion-color-base: var(--ion-color-medium, #636469) !important;--ion-color-base-rgb: var(--ion-color-medium-rgb, 99, 100, 105) !important;--ion-color-contrast: var(--ion-color-medium-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-medium-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-medium-shade, #57585c) !important;--ion-color-tint: var(--ion-color-medium-tint, #737478) !important}.ion-color-dark{--ion-color-base: var(--ion-color-dark, #222428) !important;--ion-color-base-rgb: var(--ion-color-dark-rgb, 34, 36, 40) !important;--ion-color-contrast: var(--ion-color-dark-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-dark-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-dark-shade, #1e2023) !important;--ion-color-tint: var(--ion-color-dark-tint, #383a3e) !important}.ion-page{left:0;right:0;top:0;bottom:0;display:flex;position:absolute;flex-direction:column;justify-content:space-between;contain:layout size style;z-index:0}.ion-page.ion-page-overlay-passthrough{pointer-events:none}ion-modal>.ion-page{position:relative;contain:layout style;height:100%}.split-pane-visible>.ion-page.split-pane-main{position:relative}ion-route,ion-route-redirect,ion-router,ion-select-option,ion-nav-controller,ion-menu-controller,ion-action-sheet-controller,ion-alert-controller,ion-loading-controller,ion-modal-controller,ion-picker-controller,ion-popover-controller,ion-toast-controller,.ion-page-hidden{display:none!important}.ion-page-invisible{opacity:0}.can-go-back>ion-header ion-back-button{display:block}html.plt-ios.plt-hybrid,html.plt-ios.plt-pwa{--ion-statusbar-padding: 20px}@supports (padding-top: 20px){html{--ion-safe-area-top: var(--ion-statusbar-padding)}}@supports (padding-top: env(safe-area-inset-top)){html{--ion-safe-area-top: var(--safe-area-inset-top, env(safe-area-inset-top));--ion-safe-area-bottom: var(--safe-area-inset-bottom, env(safe-area-inset-bottom));--ion-safe-area-left: var(--safe-area-inset-left, env(safe-area-inset-left));--ion-safe-area-right: var(--safe-area-inset-right, env(safe-area-inset-right))}}ion-card.ion-color .ion-inherit-color,ion-card-header.ion-color .ion-inherit-color{color:inherit}.menu-content{transform:translateZ(0)}.menu-content-open{cursor:pointer;touch-action:manipulation;pointer-events:none;overflow-y:hidden}.menu-content-open ion-content{--overflow: hidden}.menu-content-open .ion-content-scroll-host{overflow:hidden}.ios .menu-content-reveal{box-shadow:-8px 0 42px #00000014}[dir=rtl].ios .menu-content-reveal{box-shadow:8px 0 42px #00000014}.md .menu-content-reveal,.md .menu-content-push{box-shadow:4px 0 16px #0000002e}ion-accordion-group.accordion-group-expand-inset>ion-accordion:first-of-type{border-top-left-radius:8px;border-top-right-radius:8px}ion-accordion-group.accordion-group-expand-inset>ion-accordion:last-of-type{border-bottom-left-radius:8px;border-bottom-right-radius:8px}ion-accordion-group>ion-accordion:last-of-type ion-item[slot=header]{--border-width: 0px}ion-accordion.accordion-animated>[slot=header] .ion-accordion-toggle-icon{transition:.3s transform cubic-bezier(.25,.8,.5,1)}@media(prefers-reduced-motion:reduce){ion-accordion .ion-accordion-toggle-icon{transition:none!important}}ion-accordion.accordion-expanding>[slot=header] .ion-accordion-toggle-icon,ion-accordion.accordion-expanded>[slot=header] .ion-accordion-toggle-icon{transform:rotate(180deg)}ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-previous ion-item[slot=header]{--border-width: 0px;--inner-border-width: 0px}ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-expanding:first-of-type,ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-expanded:first-of-type{margin-top:0}ion-input input::-webkit-date-and-time-value{text-align:start}.ion-datetime-button-overlay{--width: fit-content;--height: fit-content}.ion-datetime-button-overlay ion-datetime.datetime-grid{width:320px;min-height:320px}[ion-last-focus],header[tabindex="-1"]:focus,[role=banner][tabindex="-1"]:focus,main[tabindex="-1"]:focus,[role=main][tabindex="-1"]:focus,h1[tabindex="-1"]:focus,[role=heading][aria-level="1"][tabindex="-1"]:focus{outline:none}.popover-viewport:has(>ion-content){overflow:hidden}@supports not selector(:has(> ion-content)){.popover-viewport{overflow:hidden}}audio,canvas,progress,video{vertical-align:baseline}audio:not([controls]){display:none;height:0}b,strong{font-weight:700}img{max-width:100%}hr{height:1px;border-width:0;box-sizing:content-box}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}label,input,select,textarea{font-family:inherit;line-height:normal}textarea{overflow:auto;height:auto;font:inherit;color:inherit}textarea::placeholder{padding-left:2px}form,input,optgroup,select{margin:0;font:inherit;color:inherit}html input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button}a,a div,a span,a ion-icon,a ion-label,button,button div,button span,button ion-icon,button ion-label,.ion-tappable,[tappable],[tappable] div,[tappable] span,[tappable] ion-icon,[tappable] ion-label,input,textarea{touch-action:manipulation}a ion-label,button ion-label{pointer-events:none}button{padding:0;border:0;border-radius:0;font-family:inherit;font-style:inherit;font-variant:inherit;line-height:1;text-transform:none;cursor:pointer;-webkit-appearance:button}[tappable]{cursor:pointer}a[disabled],button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*{box-sizing:border-box;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}html{width:100%;height:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%}html.ion-ce body{display:block}html.plt-pwa{height:100vh}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;margin:0;padding:0;position:fixed;width:100%;max-width:100%;height:100%;max-height:100%;transform:translateZ(0);text-rendering:optimizeLegibility;overflow:hidden;touch-action:manipulation;-webkit-user-drag:none;-ms-content-zooming:none;word-wrap:break-word;overscroll-behavior-y:none;-webkit-text-size-adjust:none;text-size-adjust:none}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}ion-app{display:flex;flex-direction:column}ion-router-outlet{flex:1 1 0;min-height:0;position:relative}.parch-bg{background-color:var(--color-bg);background-image:radial-gradient(120% 80% at 50% 0%,rgba(57,224,196,.04),transparent 55%),radial-gradient(80% 60% at 0% 100%,rgba(57,224,196,.03),transparent 50%)}.page-inner{position:relative;z-index:1;padding:0 20px 110px;min-height:100%}.topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding:18px 0 14px}.topbar-lead{display:flex;align-items:center;gap:8px;min-width:0}.topbar-left{display:flex;flex-direction:column;gap:2px;min-width:0}.topbar-back{display:inline-flex;align-items:center;justify-content:center;flex:none;width:34px;height:34px;margin-left:-6px;border:none;background:none;color:var(--ink-soft);border-radius:999px;cursor:pointer}.topbar-back:active{background:var(--line-soft)}.topbar-eyebrow{font-family:var(--font-display);font-weight:600;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-deep)}.topbar-title{font-family:var(--font-display);font-weight:700;font-size:25px;line-height:1.05;color:var(--ink);letter-spacing:.01em}.topbar-badge{width:38px;height:38px;border-radius:12px;flex:none;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:13px;color:var(--color-on-accent);background:linear-gradient(160deg,var(--color-accent),var(--gold-deep));border:1px solid rgba(57,224,196,.25);box-shadow:0 0 0 1px #ffffff0f inset,0 2px 8px #39e0c433}.topbar-badge-unclaimed{background:transparent;color:var(--gold-deep);border:1px dashed var(--gold-deep);box-shadow:none;cursor:pointer}.you-tag{display:inline-flex;align-items:center;gap:3px;margin-left:6px;padding:1px 7px 1px 5px;border-radius:999px;background:var(--well);border:1px solid var(--gold);color:var(--gold-deep);font-family:var(--font-body);font-weight:700;font-size:11px;letter-spacing:.04em;text-transform:uppercase;vertical-align:middle;white-space:nowrap}.you-tag svg{width:11px;height:11px;flex:none}.join-qr{display:flex;flex-direction:column;align-items:center;margin-top:14px}.join-qr-frame{background:#fff;padding:12px;border-radius:12px;line-height:0;box-shadow:0 2px 10px -4px #00000080}.join-qr-cap{margin-top:10px;font-size:12px;color:var(--ink-faint);text-align:center}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-card);position:relative;overflow:hidden}.card.framed:after{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;border-radius:13px;border:1px solid rgba(57,224,196,.14);pointer-events:none;z-index:1}.card.inset{background:var(--well);box-shadow:none;border-color:var(--line-soft)}.eyebrow{font-family:var(--font-display);font-weight:600;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-deep)}.sec-head{display:flex;align-items:center;gap:10px;margin:20px 0 12px}.sec-head .rule{flex:1;height:1px;background:linear-gradient(90deg,var(--line),transparent)}.sec-head a,.sec-head button.see-more{font-size:12px;color:var(--gold);font-weight:600;cursor:pointer;white-space:nowrap;text-decoration:none;background:none;border:none;font-family:var(--font-body)}.ava{border-radius:999px;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:600;flex:none;color:#ffffffe6;box-shadow:0 0 0 1px #ffffff14 inset,0 2px 6px #00000059;border:1px solid rgba(255,255,255,.1)}.pips{display:inline-flex;gap:3px;align-items:center}.pip{border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:800;box-shadow:0 1px 2px #00000059}.pip-w{background:var(--mtg-w);color:#7c6a3c;border:1px solid var(--mtg-w-ring)}.pip-u{background:var(--mtg-u);color:#dff0fb}.pip-b{background:var(--mtg-b);color:#d9c9d6}.pip-r{background:var(--mtg-r);color:#fbe6e1}.pip-g{background:var(--mtg-g);color:#e2f3e5}.pip-c{background:var(--color-border);color:var(--color-text-secondary);border:1px solid var(--ink-faint)}.btn{font-family:var(--font-body);font-weight:700;font-size:15px;border:none;border-radius:12px;padding:13px 18px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;transition:transform .06s ease;white-space:nowrap;letter-spacing:.01em}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.38;cursor:not-allowed;transform:none}.btn-gold{color:var(--color-on-accent);background:linear-gradient(180deg,var(--gold-bright),var(--color-accent));box-shadow:0 0 0 1px #ffffff1f inset,0 8px 18px -8px #39e0c466;border:1px solid var(--gold-deep)}.btn-gold:hover{filter:brightness(1.06)}.btn-dark{color:var(--color-text-primary);background:var(--paper-hi);box-shadow:0 0 0 1px #ffffff0f inset,0 4px 12px -6px #0006;border:1px solid var(--line)}.btn-ghost{background:var(--paper);color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow-card)}.btn-outline-gold{background:transparent;color:var(--color-accent);border:1px solid var(--line)}.btn-danger{background:transparent;color:var(--crimson);border:1px solid var(--crimson-soft)}.btn-sm{padding:9px 13px;font-size:13.5px;width:auto;border-radius:10px}.chip{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;padding:6px 11px;border-radius:999px;border:1px solid var(--line);background:var(--paper);color:var(--ink-soft);cursor:pointer;white-space:nowrap;font-family:var(--font-body)}.chip.active{background:#39e0c41f;color:var(--color-accent);border-color:#39e0c459}.chip-today{border-color:#39e0c459;color:var(--ink)}.chip-div{flex:none;align-self:center;width:1px;height:18px;margin:0 2px;background:var(--line)}.chips-scroll{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.chips-scroll::-webkit-scrollbar{display:none}.seg{display:flex;background:var(--well);border:1px solid var(--line);border-radius:12px;padding:3px;gap:3px}.seg button{flex:1;border:none;background:transparent;cursor:pointer;font-family:var(--font-body);font-weight:600;font-size:13.5px;color:var(--ink-soft);padding:8px 6px;border-radius:9px}.seg button.on{background:var(--paper-hi);color:var(--ink);box-shadow:0 1px 3px #0000004d}.win-bar{height:7px;border-radius:999px;background:var(--well);overflow:hidden;margin-top:4px}.win-bar>span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--gold-bright),var(--gold-deep))}.badge-win{background:var(--color-win-bg);color:var(--color-win-text);font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:999px}.badge-loss{background:var(--color-loss-bg);color:var(--color-loss-text);font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:999px}.badge-warn{background:var(--color-warning-bg);color:var(--color-warning-text);font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:999px}.row{display:flex;align-items:center;gap:12px;padding:13px 14px}.row+.row{border-top:1px solid var(--line-soft)}.row .meta{min-width:0;flex:1}.row .row-name{font-weight:700;font-size:15.5px;color:var(--ink)}.row .row-desc{font-size:12.5px;color:var(--ink-soft);margin-top:1px}.tile{display:flex;align-items:center;gap:11px;padding:11px 13px;cursor:pointer;background:var(--paper);border:1.5px solid var(--line);border-radius:13px;box-shadow:var(--shadow-card);position:relative;font-family:var(--font-body);transition:border-color .12s ease,background .12s ease}.tile.sel{border-color:var(--color-accent);background:#39e0c412;box-shadow:0 0 0 2px #39e0c440,var(--shadow-card)}.tile.win-tile{border-color:var(--gold-bright);background:#39e0c41f;box-shadow:0 0 0 2px var(--color-accent),var(--shadow-card)}.tile-name{font-weight:700;font-size:15px;color:var(--ink);flex:1}.tile-check{margin-left:auto;flex:none;color:var(--color-accent)}.field{display:grid;gap:6px}.field-label{font-family:var(--font-display);font-size:11px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--gold-deep)}.field-input{width:100%;font-family:var(--font-body);font-size:15.5px;color:var(--ink);background:var(--paper-hi);border:1px solid var(--line);border-radius:11px;padding:13px 14px;outline:none}.field-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #39e0c42e}.field-input::placeholder{color:var(--ink-faint)}textarea.field-input{resize:none;min-height:74px;line-height:1.45}select.field-input{cursor:pointer}select.field-input,.field-input{color-scheme:dark}.err{color:var(--crimson);font-size:13px;font-weight:600}.helper{color:var(--ink-faint);font-size:13px;text-align:center}.sheet-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;background:#000000a6;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:flex-end;animation:fade-scrim .2s ease}@keyframes fade-scrim{0%{opacity:0}to{opacity:1}}.sheet{width:100%;min-height:75dvh;max-height:92dvh;background:var(--paper);border-top:1px solid var(--line);border-top-left-radius:26px;border-top-right-radius:26px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 -18px 40px -12px #0000008c;animation:slide-up .28s cubic-bezier(.2,.8,.2,1)}@keyframes slide-up{0%{transform:translateY(22px)}to{transform:translateY(0)}}.sheet-grab{width:38px;height:4px;border-radius:999px;background:var(--line);margin:10px auto 4px;flex:none}.sheet-head{display:flex;align-items:center;justify-content:space-between;padding:6px 18px 12px;flex:none}.sheet-head h2{font-family:var(--font-display);font-weight:700;font-size:19px;color:var(--ink)}.sheet-close{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:var(--paper-hi);border:1px solid var(--line);box-shadow:var(--shadow-card);cursor:pointer;color:var(--ink);flex:none}.sheet-body{overflow-y:auto;padding:0 18px max(env(safe-area-inset-bottom,0px),16px);flex:1;min-height:0}.sheet-body::-webkit-scrollbar{display:none}.sheet-foot{padding:12px 18px 28px;border-top:1px solid var(--line-soft);background:var(--paper);flex:none;display:grid;gap:8px}.pod-switcher{min-height:auto;max-height:80dvh}.pod-list{display:grid;gap:8px;padding:4px 0 12px}.pod-item{display:grid;gap:0}.pod-item-row{display:flex;align-items:stretch;gap:8px}.pod-row{flex:1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;padding:14px 16px;border-radius:14px;background:var(--paper-hi);border:1px solid var(--line);box-shadow:var(--shadow-card);cursor:pointer;color:var(--ink);font-family:var(--font-display);font-weight:700;font-size:16px}.pod-row.active{border-color:var(--gold);background:var(--well)}.pod-remove{flex:none;width:44px;display:flex;align-items:center;justify-content:center;border-radius:14px;border:1px solid var(--line);background:var(--paper);color:var(--ink-faint);cursor:pointer}.pod-remove:active,.pod-remove[aria-expanded=true]{color:var(--crimson);border-color:var(--crimson-soft)}.pod-remove svg{width:18px;height:18px}.pod-remove-confirm{padding:10px 14px 12px;margin-top:6px;border-radius:12px;background:var(--well);border:1px solid var(--crimson-soft)}.pod-remove-confirm p{font-size:13px;color:var(--ink-soft);line-height:1.45;margin-bottom:10px}.pod-remove-actions{display:flex;gap:8px}.pod-remove-actions .btn{flex:1}.gd-delete{margin-top:16px}.gd-delete-trigger{display:block;width:100%;padding:9px 12px;border-radius:10px;background:none;border:1px solid var(--line-soft);color:var(--crimson);font-size:13px;font-weight:600;cursor:pointer}.gd-delete-confirm{padding:10px 14px 12px;border-radius:12px;background:var(--well);border:1px solid var(--crimson-soft)}.gd-delete-confirm p{font-size:13px;color:var(--ink-soft);line-height:1.45;margin-bottom:10px}.gd-delete-actions{display:flex;gap:8px}.gd-delete-actions .btn{flex:1}.pod-row-lead{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.pod-row-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pod-row-check{flex:none;display:flex;align-items:center;justify-content:center;width:22px;height:22px;color:var(--gold)}.pod-actions{display:grid;gap:8px;padding:6px 0 20px;border-top:1px solid var(--line-soft);margin-top:4px}.detail-chevron{width:16px;height:16px;color:var(--ink-faint);flex:none;transition:transform .18s ease}.detail-chevron.open{transform:rotate(90deg)}.detail-panel{padding:14px 16px 16px;background:var(--well);border-top:1px solid var(--line-soft)}.pd-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:6px}.pd-stat{text-align:center}.pd-num{font-family:var(--font-display);font-weight:700;font-size:20px;color:var(--ink);line-height:1}.pd-label{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin-top:4px}.detail-sec-label{font-size:11px;margin:14px 0 8px}.pd-empty{font-size:13px;color:var(--ink-faint);padding:2px 0 4px}.pd-decks{display:grid;gap:7px}.pd-deck{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink)}.pd-deck-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-star{color:var(--gold)}.pd-deck-rec{color:var(--ink-soft);font-size:12px;flex:none}.pd-games{display:grid;gap:9px}.pd-game{display:flex;align-items:center;gap:10px}.pd-badge{flex:none;width:22px;height:22px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:11px;color:#fff}.pd-badge.win{background:var(--gold)}.pd-badge.loss{background:var(--line);color:var(--ink-soft)}.pd-game-meta{flex:1;min-width:0}.pd-game-top{font-size:13px;color:var(--ink);font-weight:600}.pd-game-top span{color:var(--ink-faint);font-weight:400}.pd-game-sub{font-size:11px;color:var(--ink-faint);margin-top:1px}.pd-game-date{font-size:11px;color:var(--ink-faint);flex:none}.pd-seeall{margin-top:12px;background:none;border:none;cursor:pointer;color:var(--gold);font-size:12px;font-weight:600;padding:4px 0}.ov-badge-tap{background:none;border:none;padding:0;margin:0;cursor:pointer;border-radius:50%;flex:none;line-height:0}.ov-winner-tap{background:none;border:none;padding:0;font:inherit;color:inherit;cursor:pointer;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:2px}.ov-winner-tap.open{color:var(--gold);text-decoration-color:var(--gold)}.profile-sec-label{font-size:11px;margin:4px 0 8px}.profile-list{display:grid;gap:8px;padding-bottom:4px}.profile-row{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:10px 12px;border-radius:14px;background:var(--paper-hi);border:1px solid var(--line);box-shadow:var(--shadow-card);cursor:pointer;color:var(--ink)}.profile-row.active{border-color:var(--gold);background:var(--well)}.profile-row-name{flex:1;font-family:var(--font-display);font-weight:700;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-row-check{flex:none;display:flex;align-items:center;justify-content:center;width:22px;height:22px;color:var(--gold)}.profile-claimed{display:flex;align-items:center;gap:12px;padding:12px;border-radius:14px;background:var(--well);border:1px solid var(--line)}.profile-claimed-meta{flex:1;min-width:0}.profile-claimed-label{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint)}.profile-claimed-name{font-family:var(--font-display);font-weight:700;font-size:18px;color:var(--ink);line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-claimed-actions{display:flex;gap:6px;flex:none}.profile-swatches{display:flex;flex-wrap:wrap;gap:10px;padding:2px 0 4px}.profile-swatch{width:34px;height:34px;border-radius:50%;border:2px solid transparent;box-shadow:0 0 0 1px var(--line) inset;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;padding:0}.profile-swatch.on{border-color:var(--ink)}.profile-swatch svg{width:16px;height:16px;filter:drop-shadow(0 1px 1px rgba(0,0,0,.45))}.profile-footer{min-height:8px;margin-top:18px}.setup-footer{min-height:20px;margin-top:16px;text-align:center}.fan-disclaimer{margin:18px auto 4px;max-width:34ch;text-align:center;font-size:11px;line-height:1.5;color:var(--ink-faint)}.legal-links{margin:6px auto 2px;text-align:center;font-size:12px;color:var(--ink-faint)}.legal-links a{color:var(--ink-soft);text-decoration:underline;text-underline-offset:2px}.legal-page{padding-bottom:32px}.legal-back{display:inline-flex;align-items:center;gap:4px;margin:4px 0 14px;padding:6px 4px;background:none;border:none;color:var(--ink-soft);font-size:14px;font-weight:600;cursor:pointer}.legal-title{font-family:var(--font-display);font-weight:700;font-size:26px;color:var(--ink);margin-bottom:2px}.legal-updated{font-size:12px;color:var(--ink-faint);margin-bottom:16px}.legal-template-note{border:1px solid var(--line);background:var(--paper-hi);border-radius:10px;padding:12px 14px;font-size:13px;line-height:1.5;color:var(--ink-soft);margin-bottom:22px}.legal-page h2{font-family:var(--font-display);font-weight:700;font-size:16px;color:var(--ink);margin:20px 0 6px}.legal-page p{font-size:14px;line-height:1.6;color:var(--ink-soft);margin-bottom:8px}.legal-page ul{margin:4px 0 10px;padding-left:20px}.legal-page li{font-size:14px;line-height:1.55;color:var(--ink-soft);margin-bottom:3px}.legal-page a{color:var(--gold-deep);text-decoration:underline;text-underline-offset:2px}.gd-date{font-size:13px;color:var(--ink-soft);margin-bottom:2px}.gd-players{border:1px solid var(--line);border-radius:12px;overflow:hidden}.gd-player{display:flex;align-items:center;gap:12px;padding:11px 12px}.gd-player+.gd-player{border-top:1px solid var(--line-soft)}.gd-player.win{background:var(--color-win-bg)}.gd-player-meta{flex:1;min-width:0}.gd-player-name{display:flex;align-items:center;gap:6px;font-weight:700;font-size:14px;color:var(--ink)}.gd-player.win .gd-player-name{color:var(--color-win-text)}.gd-crown{width:14px;height:14px;color:var(--color-win-text);flex:none}.gd-deck{display:flex;align-items:center;gap:5px;margin-top:3px}.gd-deck-name{font-size:12.5px;color:var(--ink-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gd-player.win .gd-deck-name{color:var(--color-win-text);opacity:.85}.gd-nodeck{font-size:12.5px;color:var(--ink-faint);margin-top:3px}.gd-notes{font-size:14px;color:var(--ink-soft);line-height:1.55;margin:0}.bottom-nav{position:relative;flex:none;width:100%;z-index:100;padding:8px 8px max(env(safe-area-inset-bottom,10px),10px);display:flex;align-items:flex-end;justify-content:space-around;background:linear-gradient(rgba(14,17,22,0),var(--color-bg) 38%);border-top:1px solid var(--line)}.nav-tab{display:flex;flex-direction:column;align-items:center;gap:3px;cursor:pointer;color:var(--ink-faint);font-size:9px;font-weight:700;letter-spacing:.04em;flex:1;padding-top:4px;text-transform:uppercase;text-decoration:none;background:none;border:none;font-family:var(--font-body)}.nav-tab.active{color:var(--color-accent)}.nav-tab svg{width:22px;height:22px}.nav-orb-wrap{flex:none;margin-top:-26px;display:flex;flex-direction:column;align-items:center}.nav-orb{width:58px;height:58px;border-radius:999px;background:linear-gradient(180deg,var(--gold-bright),var(--color-accent));border:1px solid var(--gold-deep);box-shadow:0 0 0 1px #ffffff1f inset,0 10px 22px -8px #39e0c480;display:flex;align-items:center;justify-content:center;color:var(--color-on-accent);cursor:pointer;transition:transform .08s ease}.nav-orb:active{transform:scale(.95)}.nav-orb svg{width:26px;height:26px}.nav-orb-lbl{margin-top:5px;color:var(--gold-deep);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;font-family:var(--font-body)}.toast{position:fixed;bottom:94px;left:50%;transform:translate(-50%);background:var(--paper-hi);color:var(--color-text-primary);border:1px solid var(--line);font-family:var(--font-body);font-weight:600;font-size:13.5px;padding:10px 20px;border-radius:999px;box-shadow:var(--shadow-pop);z-index:600;white-space:nowrap;animation:toast-in .3s cubic-bezier(.2,.8,.2,1);pointer-events:none}.toast.toast-action{pointer-events:auto;display:inline-flex;align-items:center;gap:14px}.toast-undo{background:none;border:none;padding:2px;margin:-2px 0;color:var(--gold-deep);font-family:var(--font-body);font-weight:800;font-size:13px;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}@keyframes toast-in{0%{opacity:0;transform:translate(-50%) translateY(6px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.dot-div{display:flex;align-items:center;gap:10px;color:var(--line);margin:8px 0;font-size:9px}.dot-div:before,.dot-div:after{content:"";flex:1;height:1px;background:var(--line-soft)}.crest-card{padding:20px 16px 18px;text-align:center;margin-bottom:8px}.crest-name{font-family:var(--font-display);font-weight:700;font-size:23px;color:var(--ink);letter-spacing:.01em;line-height:1.1}.crest-name-switch{display:inline-flex;align-items:center;gap:6px;background:none;border:none;cursor:pointer;padding:2px 4px;margin:0 auto;border-radius:10px}.crest-name-switch:active{background:var(--well)}.crest-name-caret{width:16px;height:16px;color:var(--ink-faint);transform:rotate(90deg);flex:none}.crest-tagline{color:var(--ink-soft);font-size:13px;margin-top:4px}.crest-divider{width:48px;height:1px;background:var(--line);margin:14px auto}.crest-stats{display:flex;justify-content:center;gap:0}.crest-stat{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px}.crest-stat+.crest-stat{border-left:1px solid var(--line-soft)}.crest-stat-num{font-family:var(--font-display);font-weight:700;font-size:24px;color:var(--ink)}.crest-stat-label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint)}.next-card{display:flex;align-items:center;gap:14px;padding:14px 14px 14px 16px;margin-bottom:4px;cursor:default}.next-date-block{display:flex;flex-direction:column;align-items:center;gap:0;flex:none;min-width:42px}.next-month{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-deep)}.next-day{font-family:var(--font-display);font-weight:700;font-size:28px;line-height:1;color:var(--ink)}.next-weekday{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint)}.next-vline{width:1px;align-self:stretch;background:var(--line-soft);flex:none}.next-details{flex:1;min-width:0}.next-time{font-weight:700;font-size:14.5px;color:var(--ink)}.next-note{font-size:12.5px;color:var(--ink-soft);margin-top:2px;line-height:1.35}.next-edit{width:34px;height:34px;border-radius:10px;flex:none;display:flex;align-items:center;justify-content:center;background:var(--paper-hi);border:1px solid var(--line-soft);color:var(--ink-soft);cursor:pointer}.topbar-back,.sheet-close,.next-edit{position:relative}.topbar-back:before,.sheet-close:before,.next-edit:before{content:"";position:absolute;top:50%;left:50%;width:44px;height:44px;transform:translate(-50%,-50%)}.standing-row{display:flex;align-items:center;gap:10px;padding:10px 14px}.standing-row+.standing-row{border-top:1px solid var(--line-soft)}.standing-rank{font-family:var(--font-display);font-weight:600;font-size:14px;color:var(--ink-faint);width:16px;text-align:center;flex:none}.standing-meta{flex:1;min-width:0}.standing-name{font-weight:700;font-size:14.5px;color:var(--ink)}.standing-wins{font-family:var(--font-display);font-weight:600;font-size:14px;color:var(--ink-soft);white-space:nowrap}.spotlight{text-align:center;padding:22px 20px 18px;margin-bottom:4px}.spotlight-eyebrow{margin-bottom:14px}.spotlight-name{font-family:var(--font-display);font-weight:700;font-size:22px;color:var(--ink);margin:10px 0 4px}.spotlight-stats{display:flex;justify-content:center;gap:24px;margin-top:12px}.spotlight-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.spotlight-num{font-family:var(--font-display);font-weight:700;font-size:22px;color:var(--ink)}.spotlight-label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint)}.lb-row{display:flex;align-items:center;gap:10px;padding:11px 14px}.lb-row+.lb-row{border-top:1px solid var(--line-soft)}.lb-rank{font-family:var(--font-display);font-weight:600;font-size:13px;color:var(--ink-faint);width:18px;text-align:center;flex:none}.lb-meta{flex:1;min-width:0}.lb-name{font-weight:700;font-size:15px;color:var(--ink)}.lb-sub{font-size:12.5px;color:var(--ink-soft);margin-top:1px}.deck-row{display:flex;align-items:center;gap:10px;padding:11px 14px}.deck-row+.deck-row{border-top:1px solid var(--line-soft)}.deck-rank{font-family:var(--font-display);font-weight:600;font-size:13px;color:var(--ink-faint);width:18px;text-align:center;flex:none}.deck-meta{flex:1;min-width:0}.deck-name{font-weight:700;font-size:14.5px;color:var(--ink)}.deck-owner{font-size:12.5px;color:var(--ink-soft);margin-top:2px}.game-row{display:flex;align-items:center;gap:12px;padding:12px 14px;cursor:pointer}.game-row+.game-row{border-top:1px solid var(--line-soft)}.game-meta{flex:1;min-width:0}.game-winner{font-weight:700;font-size:15px;color:var(--ink)}.game-winner span{font-weight:400;color:var(--ink-soft)}.game-sub{font-size:12.5px;color:var(--ink-soft);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.game-rel{font-size:12px;color:var(--ink-faint);white-space:nowrap;flex:none}.date-group{margin-bottom:4px}.date-group-head{display:flex;align-items:center;justify-content:space-between;padding:8px 2px 4px;gap:10px}.date-group-head .eyebrow{font-size:11px}.date-group-rel{font-size:11px;color:var(--ink-faint);font-weight:600}.hub-row{display:flex;align-items:center;gap:14px;padding:16px 18px;cursor:pointer;text-decoration:none;background:none;border:none}.hub-row+.hub-row{border-top:1px solid var(--line-soft)}.hub-icon{width:36px;height:36px;border-radius:10px;background:var(--well);border:1px solid var(--line-soft);display:flex;align-items:center;justify-content:center;color:var(--gold-deep);flex:none}.hub-meta{flex:1;min-width:0}.hub-title{font-weight:700;font-size:15.5px;color:var(--ink)}.hub-sub{font-size:12.5px;color:var(--ink-soft);margin-top:1px}.hub-chevron{color:var(--ink-faint);flex:none}.mgmt-row{display:flex;align-items:center;gap:12px;padding:12px 14px}.mgmt-row+.mgmt-row{border-top:1px solid var(--line-soft)}.mgmt-meta{flex:1;min-width:0}.mgmt-name{font-weight:700;font-size:15px;color:var(--ink)}.mgmt-sub{font-size:12.5px;color:var(--ink-soft);margin-top:2px}.mgmt-actions{display:flex;gap:6px;flex:none}.mgmt-btn{font-size:12.5px;font-weight:700;padding:6px 12px;border-radius:8px;border:1px solid var(--line);background:var(--paper);color:var(--ink-soft);cursor:pointer;font-family:var(--font-body)}.mgmt-btn.danger{color:var(--crimson);border-color:var(--crimson-soft)}.tile-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.log-label{display:flex;align-items:baseline;gap:8px;margin-bottom:4px}.log-label .eyebrow{font-size:11px}.log-count{font-size:11px;color:var(--ink-faint);font-weight:600}.mt4{margin-top:4px}.mt8{margin-top:8px}.mt12{margin-top:12px}.mt16{margin-top:16px}.mt20{margin-top:20px}.mb8{margin-bottom:8px}.mb10{margin-bottom:10px}.mb12{margin-bottom:12px}.gap8{display:flex;flex-direction:column;gap:8px}.gap12{display:flex;flex-direction:column;gap:12px}.muted{color:var(--ink-soft)}.faint{color:var(--ink-faint);font-size:13px}.numeral{font-family:var(--font-display);font-weight:700;line-height:1}.tnum{font-variant-numeric:tabular-nums}.fade-in{animation:fade-in .3s cubic-bezier(.2,.8,.2,1)}@keyframes fade-in{0%{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}.empty-state{text-align:center;padding:32px 20px;color:var(--ink-soft);font-size:14px}:root{--color-bg: #0E1116;--color-surface: #1A1F28;--color-border: #2E3540;--color-text-primary: #D9DDE3;--color-text-secondary: #888780;--color-accent: #39E0C4;--color-on-accent: #06231C;--color-win-bg: #0F3D2E;--color-win-text: #7FD9B0;--color-loss-bg: #3D1313;--color-loss-text: #F09595;--color-warning-bg: #412402;--color-warning-text: #FAC775;--ink: var(--color-text-primary);--ink-soft: var(--color-text-secondary);--ink-faint: #7E8796;--page: var(--color-bg);--paper: var(--color-surface);--paper-hi: #1F2732;--well: #131720;--line: var(--color-border);--line-soft: #252B37;--gold: var(--color-accent);--gold-bright: #4FECCE;--gold-deep: #2CB8A0;--crimson: var(--color-loss-text);--crimson-soft: #8A4040;--jade: var(--color-win-text);--mtg-w: #efe3bf;--mtg-w-ring: #c7ad6f;--mtg-u: #2f6c9e;--mtg-b: #34292f;--mtg-r: #a23a2c;--mtg-g: #3c7146;--shadow-card: 0 0 0 1px rgba(255,255,255,.04) inset, 0 2px 6px rgba(0,0,0,.28), 0 12px 28px -16px rgba(0,0,0,.42);--shadow-pop: 0 8px 22px -6px rgba(0,0,0,.55), 0 2px 6px rgba(0,0,0,.3);--r-sm: 9px;--r-md: 13px;--r-lg: 18px;--font-display: "Cinzel", serif;--font-body: "Hanken Grotesk", system-ui, sans-serif;--ion-background-color: var(--color-bg);--ion-text-color: var(--color-text-primary);--ion-font-family: var(--font-body);--ion-color-primary: var(--color-accent);--ion-color-primary-contrast: var(--color-on-accent);--ion-safe-area-bottom: 0px}*{-webkit-font-smoothing:antialiased}ion-content{--background: var(--color-bg);--padding-bottom: 94px}ion-app{font-family:var(--font-body);color:var(--color-text-primary)}
