:root{--bg: #f1f1f3;--surface: #ffffff;--surface-2: #ebebee;--text: #0d0d0f;--muted: #8a8a92;--hairline: rgba(0, 0, 0, .06);--ink: #111113;--ink-text: #ffffff;--accent: #c4f07a;--accent-text: #0d0d0f;--track: #e4e4e8;--load: #b9b9c0;--added: #0d0d0f;--ok: #2f8f4e;--warn: #c27a12;--danger: #e5484d;--alert-bg: #fff1ec;--alert-text: #c2410c;--shadow: 0 1px 2px rgba(0, 0, 0, .04), 0 8px 24px rgba(0, 0, 0, .06);--radius-lg: 28px;--radius: 20px;color-scheme:light dark;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Inter,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}@media (prefers-color-scheme: dark){:root{--bg: #0a0a0b;--surface: #17171a;--surface-2: #232327;--text: #f4f4f6;--muted: #8d8d96;--hairline: rgba(255, 255, 255, .07);--ink: #f4f4f6;--ink-text: #0d0d0f;--track: #26262b;--load: #4b4b53;--added: #f4f4f6;--ok: #6fd08f;--warn: #f5b546;--danger: #ff6b6f;--alert-bg: #2a1710;--alert-text: #ffa07a;--shadow: 0 1px 2px rgba(0, 0, 0, .4)}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);-webkit-tap-highlight-color:transparent}button,input,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default}h1,h2,p{margin:0}.app{min-height:100dvh}.content{width:100%;max-width:480px;margin:0 auto;padding:env(safe-area-inset-top) 16px calc(env(safe-area-inset-bottom) + 96px)}.screen{display:flex;flex-direction:column;gap:16px;padding-bottom:8px}.install-banner{display:flex;align-items:center;gap:12px;margin-top:12px;padding:12px 10px 12px 12px;border-radius:var(--radius);background:#0b0b0c;color:#fff;box-shadow:0 10px 30px #0000002e;animation:fade-up .35s cubic-bezier(.2,.8,.2,1) both}.install-banner__icon{flex-shrink:0;border-radius:12px}.install-banner__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.install-banner__text strong{font-size:.95rem}.install-banner__text span{font-size:.8rem;color:#ffffffb3;line-height:1.35}.install-banner__text svg{vertical-align:-3px}.install-banner__action{flex-shrink:0;padding:9px 16px;border:0;border-radius:999px;background:var(--accent);color:var(--accent-text);font-weight:700;font-size:.85rem}.install-banner__close{flex-shrink:0;display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:50%;background:#ffffff1a;color:#fff}.screen-header{display:grid;grid-template-columns:48px 1fr 48px;align-items:center;padding:12px 0 4px}.screen-header h1{text-align:center;font-size:1.05rem;font-weight:600;letter-spacing:-.01em}.screen-header__side{display:flex}.screen-header__side--end{justify-content:flex-end}.round-btn{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:var(--surface);box-shadow:var(--shadow)}.pill-btn{display:inline-flex;align-items:center;justify-content:center;padding:11px 20px;border:0;border-radius:999px;background:var(--surface);box-shadow:var(--shadow);font-weight:600;font-size:.92rem}.pill-btn--dark{background:var(--ink);color:var(--ink-text)}.pill-btn--accent{background:var(--accent);color:var(--accent-text)}.cta{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:60px;padding:6px 6px 6px 24px;border:0;border-radius:999px;background:var(--ink);color:var(--ink-text);font-weight:600;font-size:1rem}.cta__icon{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--accent);color:var(--accent-text)}.chip-btn{min-width:56px;padding:11px 14px;border:0;border-radius:14px;background:var(--surface-2);font-weight:600;font-size:.92rem;text-align:center}.chip-btn.is-active{background:var(--ink);color:var(--ink-text)}.chip-input{width:80px;font-weight:500}.chip-input::placeholder{color:var(--muted)}.chip-input.is-active::placeholder{color:var(--ink-text)}.pill{flex-shrink:0;padding:11px 20px;border:0;border-radius:999px;background:var(--surface);box-shadow:var(--shadow);font-weight:600;font-size:.92rem;text-transform:capitalize}.pill.is-active{background:var(--ink);color:var(--ink-text)}.segmented{display:flex;gap:8px}.segmented .pill{flex:1}.day-picker{padding:16px;background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow)}.day-picker__head{position:relative;display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;color:var(--muted);font-size:.9rem}.day-picker__other{position:relative;display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;background:var(--surface-2);color:var(--text);font-size:.85rem;font-weight:600;overflow:hidden;cursor:pointer}.day-picker__other.is-active{background:var(--ink);color:var(--ink-text)}.day-picker__other:focus-within{outline:2px solid var(--ink);outline-offset:2px}.day-picker__native{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;padding:0;border:0;opacity:0;font-size:16px;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.day-picker__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.day{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 0 7px;border:0;border-radius:14px;background:none}.day:hover{background:var(--surface-2)}.day.is-active{background:var(--ink);color:var(--ink-text)}.day__weekday{font-size:.68rem;font-weight:600;color:var(--muted);text-transform:capitalize}.day.is-active .day__weekday{color:inherit;opacity:.7}.day__number{font-size:1.05rem;font-weight:700}.day__dot{width:6px;height:6px;border-radius:50%;background:var(--dot-color)}.cc{position:relative;display:flex;flex-direction:column;justify-content:space-between;aspect-ratio:1.6;padding:22px;border-radius:var(--radius-lg);background:#0b0b0c;color:#fff;overflow:hidden;isolation:isolate;box-shadow:0 18px 40px #0000002e}.cc__glow{position:absolute;top:-30%;right:-30%;bottom:-30%;left:-30%;z-index:-1;background:radial-gradient(40% 35% at 62% 52%,color-mix(in srgb,var(--card-color) 85%,white) 0%,transparent 70%),radial-gradient(55% 50% at 70% 40%,color-mix(in srgb,var(--card-color) 60%,transparent) 0%,transparent 75%),radial-gradient(45% 40% at 25% 80%,color-mix(in srgb,var(--card-color) 35%,transparent) 0%,transparent 70%);filter:blur(28px);opacity:.85}.cc__top,.cc__bottom{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.cc__bottom{align-items:flex-end}.cc__label{display:block;font-size:.75rem;color:#fff9;margin-bottom:4px;white-space:nowrap}.cc__value{display:block;font-size:2rem;font-weight:700;letter-spacing:-.02em;line-height:1.1}.cc__caption{display:block;margin-top:6px;font-size:.82rem;color:#ffffffbf}.cc__identity{min-width:0}.cc__identity .cc__label{margin:2px 0 0}.cc__name{display:block;font-size:1rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cc__detail{text-align:right;white-space:nowrap}.cc__detail strong{font-weight:600;font-size:1rem}.cc__badge{flex-shrink:0;padding:5px 10px;border-radius:999px;background:var(--accent);color:var(--accent-text);font-size:.72rem;font-weight:700}.cc__brand{flex-shrink:0;font-size:.85rem;font-weight:700;color:#ffffffd9}.wallet{--peek: 76px;display:flex;flex-direction:column}.wallet>.cc{transition:transform .25s cubic-bezier(.2,.8,.2,1)}.wallet>.cc+.cc{margin-top:calc(-62.5% + var(--peek));box-shadow:0 -12px 28px #00000047,inset 0 1px #ffffff14}.wallet>.cc:not(:last-child):hover,.wallet>.cc:not(:last-child):focus-visible{transform:translateY(-10px)}.wallet__hint{text-align:center;color:var(--muted);font-size:.85rem}.cc.is-open{animation:wallet-open .38s cubic-bezier(.2,.8,.2,1)}.wallet__details{animation:fade-up .35s .06s cubic-bezier(.2,.8,.2,1) both}@keyframes wallet-open{0%{transform:translateY(48px) scale(.96);opacity:.6}}@keyframes fade-up{0%{transform:translateY(12px);opacity:0}}@media (prefers-reduced-motion: reduce){.wallet>.cc,.cc.is-open,.wallet__details,.install-banner{transition:none;animation:none}}.cc__bottom>span{display:block;min-width:0}.cc--button{width:100%;border:0;font:inherit;text-align:left;cursor:pointer}.cc__identity{display:flex;flex-direction:column;gap:2px}.timeline{list-style:none;margin:0;padding:0;position:relative}.timeline:before{content:"";position:absolute;top:12px;bottom:12px;left:6px;width:2px;border-radius:2px;background:var(--track)}.timeline__item{position:relative;display:flex;flex-direction:column;gap:8px;padding:0 0 18px 28px}.timeline__item:before{content:"";position:absolute;top:4px;left:0;width:14px;height:14px;border-radius:50%;background:var(--surface);border:3px solid var(--ink);box-sizing:border-box}.timeline__item:first-child:before{background:var(--accent);border-color:var(--accent)}.timeline__dates{font-size:.85rem;font-weight:600;color:var(--muted)}.timeline__card{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.group{display:flex;flex-direction:column;gap:12px;padding:18px;background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow)}.field{display:flex;flex-direction:column;gap:8px;font-size:.85rem;color:var(--muted)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field input,.field select{width:100%;padding:14px 16px;border:0;border-radius:14px;background:var(--surface-2);color:var(--text);font-size:1rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.swatches,.day-options{display:flex;flex-wrap:wrap;gap:8px}.swatch{width:34px;height:34px;border:3px solid var(--surface);border-radius:50%;box-shadow:0 0 0 1px var(--hairline)}.swatch.is-active{box-shadow:0 0 0 2px var(--ink)}.stat{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:.92rem}.stat span{color:var(--muted)}.stat small{color:var(--muted);font-weight:500}.stat+.stat{padding-top:12px;border-top:1px solid var(--hairline)}.actions{display:flex;flex-wrap:wrap;gap:8px}.section-title{display:flex;justify-content:space-between;align-items:baseline;margin-top:8px}.section-title h2{font-size:1.15rem;font-weight:700;letter-spacing:-.01em}.rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.rows>li+li{border-top:1px solid var(--hairline)}.row{display:flex;align-items:center;gap:14px;width:100%;padding:14px 4px;border:0;border-radius:16px;background:none;text-align:left}.row__main{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.row__main strong{font-weight:600}.row__main small,.row__end small{color:var(--muted);font-size:.8rem}.row__end{display:flex;flex-direction:column;align-items:flex-end;gap:3px;white-space:nowrap}.row__end strong{font-weight:700}.avatar{display:grid;place-items:center;flex-shrink:0;width:46px;height:46px;border-radius:50%;background:radial-gradient(circle at 65% 35%,color-mix(in srgb,var(--card-color) 80%,white),#0b0b0c 75%);color:#fff;font-weight:700;font-size:.85rem}.reason{display:flex;align-items:center;gap:10px;margin-top:-4px;font-size:.92rem;font-weight:500}.reason:before{content:"";flex-shrink:0;width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 30%,transparent)}.row__title{display:flex;align-items:center;gap:8px;min-width:0}.row__title strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tag{flex-shrink:0;padding:2px 8px;border-radius:999px;font-size:.7rem;font-weight:700}.tag--ok{background:var(--accent);color:var(--accent-text)}.tag--muted{background:var(--surface-2);color:var(--muted)}.muted{color:var(--muted);font-size:.85rem;line-height:1.45}.alert{padding:12px 16px;border-radius:16px;background:var(--alert-bg);color:var(--alert-text);font-size:.9rem}.toast{padding:12px 16px;border-radius:16px;background:color-mix(in srgb,var(--accent) 45%,var(--surface));color:var(--text);font-size:.9rem;font-weight:500}.tone-ok{color:var(--ok)}.tone-warn{color:var(--warn)}.tone-danger{color:var(--danger)}.tone-muted{color:var(--muted)}.empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:64px 12px;text-align:center}.empty h2{font-size:1.3rem}.empty p{color:var(--muted);margin-bottom:12px}.tabbar{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom) + 14px);z-index:10;display:flex;gap:4px;padding:6px;transform:translate(-50%);border:1px solid var(--hairline);border-radius:999px;background:color-mix(in srgb,var(--surface) 85%,transparent);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 10px 30px #0000001f}.tabbar button{display:flex;align-items:center;gap:8px;padding:11px 18px;border:0;border-radius:999px;background:none;color:var(--muted);font-size:.85rem;font-weight:600;transition:background .2s,color .2s}.tabbar button.is-active{background:var(--ink);color:var(--ink-text)}.access{min-height:100%;justify-content:center;padding-top:32px}.access__hero{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.access__hero img{border-radius:18px;box-shadow:0 12px 30px #00000026}.access__hero h1{font-size:1.5rem;letter-spacing:-.02em}.access__footer{text-align:center}.access__footer a{color:var(--text);font-weight:600}.sync-status{display:inline-flex;align-items:center;gap:8px;font-size:.9rem;font-weight:600}.sync-status:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--muted)}.sync-status.is-synced:before{background:#3fb950}.sync-status.is-pending:before{background:#e3a008}.advanced{display:flex;flex-direction:column;gap:12px}.advanced summary{cursor:pointer;font-size:.85rem;font-weight:600;color:var(--muted);list-style:none}.advanced summary::-webkit-details-marker{display:none}.advanced summary:after{content:" +"}.advanced[open] summary:after{content:" −"}.advanced[open]{gap:14px}.advanced[open]>.field{margin-top:12px}.empty__field{width:100%;max-width:280px;text-align:left;margin-bottom:8px}.notice{width:100%;padding:12px 16px;border:0;border-radius:16px;background:var(--alert-bg);color:var(--alert-text);font:inherit;font-size:.85rem;line-height:1.4;text-align:left;cursor:pointer}.segmented--inline{flex-wrap:wrap}.segmented--inline .pill{text-transform:none;background:var(--surface-2);box-shadow:none;padding:10px 14px}.segmented--inline .pill.is-active{background:var(--ink);color:var(--ink-text)}.field input[type=date]{min-width:0;width:100%}.field-row>.field{min-width:0}.pill-btn:disabled,.cta:disabled{opacity:.45;cursor:not-allowed}
