.fam-screen{isolation:isolate;overscroll-behavior:contain;width:100%;height:100dvh;padding:max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));flex-direction:column;align-items:center;display:flex;position:relative;overflow-y:auto}.fam-screen>canvas,.fam-screen>.fam-backdrop{z-index:-1;position:fixed;inset:0}.fam-top{justify-content:flex-end;width:100%;max-width:30rem;display:flex}.fam-logo{font-family:var(--font-display);text-align:center;margin:clamp(.5rem,3dvh,1.75rem) 0 clamp(.5rem,2dvh,1.25rem);font-size:clamp(2.2rem,11vw,3.6rem);line-height:1}.fam-card{background:linear-gradient(140deg,#ff5ea8,#ffb02e 30%,#6ee87f 55%,#4aa8ff 78%,#b07bff);border-radius:2rem;width:100%;max-width:30rem;margin-block:auto;padding:2px;position:relative;box-shadow:0 0 0 4px #ffffff59,0 28px 60px -20px #140c32b3}.fam-card-inner{text-align:center;color:var(--foreground);background:linear-gradient(#fff 0%,#f6f3ff 100%);border-radius:calc(2rem - 2px);padding:1.25rem 1.1rem 1.2rem;position:relative;overflow:hidden}.fam-card-inner:before{content:"";filter:blur(18px);pointer-events:none;background:radial-gradient(circle,#ffb02e73,#0000 70%);border-radius:999px;height:9rem;position:absolute;inset:-40% 10% auto}.fam-kicker{font-family:var(--font-display);letter-spacing:.28em;text-transform:uppercase;color:var(--muted-foreground);font-size:.68rem;position:relative}.fam-title{font-family:var(--font-display);margin-top:.2rem;font-size:clamp(1.55rem,6.5vw,2rem);line-height:1.1;position:relative}.fam-rule{background:linear-gradient(90deg,#ff5ea8,#ffb02e,#6ee87f,#4aa8ff);border-radius:999px;width:6rem;height:.35rem;margin:.55rem auto 0}.fam-text{color:var(--muted-foreground);margin-top:.7rem;font-size:.9rem;font-weight:700;line-height:1.45;position:relative}.fam-label{text-align:start;font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-foreground);margin:1rem 0 .45rem;font-size:.72rem;display:block}.fam-months{grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;display:grid}.fam-month{min-height:2.75rem;font-family:var(--font-display);color:var(--foreground);-webkit-tap-highlight-color:transparent;background:linear-gradient(#fff,#f1eefb);border:2px solid #241a4f1a;border-radius:1rem;font-size:.95rem;transition:transform .14s cubic-bezier(.3,1.6,.5,1),background .14s;box-shadow:inset 0 1.5px #fff,0 3px #241a4f1a}.fam-month:active{transform:translateY(2px)scale(.97)}.fam-month[aria-pressed=true]{color:#fff;text-shadow:0 1.5px #00000038;background:linear-gradient(#7fc4ff,#3b8cff 60%,#2a6fe0);border-color:#0000;box-shadow:inset 0 2px #ffffff73,0 3px #1c4fa8,0 8px 14px -8px #1c4fa8b3}.fam-select{appearance:none;width:100%;min-height:3.1rem;font-family:var(--font-display);color:var(--foreground);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 7.5l5 5 5-5' fill='none' stroke='%23241a4f' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") right .9rem center/1.1rem no-repeat,linear-gradient(#fff,#f1eefb);border:2px solid #241a4f1f;border-radius:1.1rem;padding:0 2.6rem 0 1rem;font-size:1.1rem;box-shadow:inset 0 1.5px #fff,0 3px #241a4f1a}[dir=rtl] .fam-select{background-position:.9rem,0 0;padding:0 1rem 0 2.6rem}.fam-select:invalid{color:var(--muted-foreground)}.fam-cta{width:100%;margin-top:1.2rem;padding-block:.85rem;font-size:1.25rem}.fam-cta:disabled{opacity:.55;transform:none}.fam-row{gap:.6rem;margin-top:1rem;display:flex}.fam-row>*{flex:1}.fam-gate-q{font-family:var(--font-display);direction:ltr;unicode-bidi:isolate;margin-top:.9rem;font-size:clamp(1.7rem,8vw,2.2rem);position:relative}.fam-gate-input{text-align:center;width:100%;min-height:3.2rem;font-family:var(--font-display);letter-spacing:.1em;direction:ltr;background:#fff;border:2px solid #241a4f1f;border-radius:1.1rem;margin-top:.7rem;font-size:1.6rem}.fam-gate-input:focus-visible{outline:3px solid color-mix(in oklab, var(--primary) 70%, white);outline-offset:2px}.fam-pad{direction:ltr;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;margin-top:.7rem;display:grid}.fam-pad button{min-height:2.9rem;font-size:1.25rem}.fam-msg{min-height:1.2rem;color:var(--destructive);margin-top:.6rem;font-size:.85rem;font-weight:800}.fam-lock-icon{color:#5b3d00;background:linear-gradient(#fff3b0,#ffc62e 55%,#f08c0c);border-radius:1.4rem;place-items:center;width:4.25rem;height:4.25rem;margin:0 auto .4rem;display:grid;box-shadow:inset 0 2px #fff9,0 4px #a55a08,0 12px 18px -10px #a55a08b3}.fam-lock-icon svg{width:2.4rem;height:2.4rem}.fam-layer{z-index:80}.fam-link{width:100%;font-family:var(--font-display);color:var(--primary);text-underline-offset:.2em;-webkit-tap-highlight-color:transparent;margin-top:.6rem;padding:.35rem;font-size:.95rem;text-decoration:underline;display:block;position:relative}.kacc-tabs{background:#241a4f12;border-radius:1.2rem;grid-template-columns:1fr 1fr;gap:.3rem;margin-top:.9rem;padding:.3rem;display:grid;position:relative}.kacc-tab{min-height:2.6rem;font-family:var(--font-display);color:var(--muted-foreground);-webkit-tap-highlight-color:transparent;border-radius:.95rem;padding:.3rem .5rem;font-size:.85rem;line-height:1.1;transition:background .14s,color .14s}.kacc-tab[aria-selected=true]{color:var(--foreground);background:#fff;box-shadow:inset 0 1.5px #fff,0 3px #241a4f1f,0 8px 14px -10px #241a4f73}.kacc-form{text-align:start;position:relative}.kacc-name{background:linear-gradient(#fffdf2,#fff4c9) padding-box padding-box,linear-gradient(120deg,#ffb02e,#ff5ea8 50%,#4aa8ff) border-box;border:2px solid #0000;border-radius:1.2rem;flex-wrap:wrap;justify-content:center;align-items:center;gap:.45rem;padding:.7rem .7rem .6rem;display:flex;box-shadow:0 6px 16px -10px #f08c0ccc}.kacc-name-text{min-width:0;font-family:var(--font-display);letter-spacing:.01em;color:var(--foreground);white-space:nowrap;text-align:center;direction:ltr;unicode-bidi:isolate;flex:100%;font-size:clamp(1.15rem,5.6vw,1.7rem);line-height:1.15}.kacc-dice{align-items:center;gap:.35rem;padding:.3rem .85rem;font-size:.85rem;line-height:1.05;display:inline-flex}.kacc-dice-face{font-size:1.15rem;line-height:1;transition:transform .2s}.kacc-dice:active .kacc-dice-face{transform:rotate(90deg)}.kacc-hint{color:var(--muted-foreground);margin-top:.4rem;font-size:.78rem;font-weight:700;line-height:1.35}.kacc-field{background:#fff;border:2px solid #241a4f1f;border-radius:1.1rem;align-items:center;display:flex;position:relative;box-shadow:inset 0 2px #241a4f0a}.kacc-field:focus-within{outline:3px solid color-mix(in oklab, var(--primary) 70%, white);outline-offset:2px}.kacc-input{min-width:0;min-height:3rem;font-family:var(--font-display);color:var(--foreground);text-align:start;direction:ltr;background:0 0;border:0;outline:none;flex:1;padding:0 .95rem;font-size:1.1rem}[dir=rtl] .kacc-input{text-align:right}.kacc-input::placeholder{font-family:var(--font-body,inherit);color:#241a4f59;font-size:.9rem;font-weight:700}.kacc-eye{width:2.8rem;height:2.8rem;color:var(--muted-foreground);-webkit-tap-highlight-color:transparent;border-radius:.9rem;place-items:center;margin-inline-end:.15rem;display:grid}.kacc-eye:focus-visible{outline:2px solid var(--primary)}.kacc-eye svg{width:1.35rem;height:1.35rem}.kacc-warn{text-align:start;background:linear-gradient(#fff8e0,#ffefc0);border:2px dashed #f0a020;border-radius:1.1rem;margin-top:1rem;padding:.75rem .85rem;position:relative}.kacc-warn-title{font-family:var(--font-display);color:#7a4a00;align-items:center;gap:.4rem;font-size:1rem;display:flex}.kacc-warn-body{color:#7a4a00;margin-top:.25rem;font-size:.8rem;font-weight:700;line-height:1.4}.kacc-check{color:#5b3d00;cursor:pointer;align-items:flex-start;gap:.55rem;margin-top:.6rem;font-size:.82rem;font-weight:800;line-height:1.3;display:flex}.kacc-check input{width:1.3rem;height:1.3rem;accent-color:var(--primary);flex:none;margin-top:.05rem}.kacc-err{background:color-mix(in oklab, var(--destructive) 12%, white);color:var(--destructive);text-align:start;border-radius:.9rem;margin-top:.7rem;padding:.55rem .75rem;font-size:.85rem;font-weight:800;line-height:1.35}.kacc-note{color:var(--muted-foreground);margin-top:.8rem;font-size:.78rem;font-weight:700;line-height:1.4;position:relative}.share-link{color:var(--foreground);overflow-wrap:anywhere;background:#fff;border:2px dashed #241a4f2e;border-radius:1rem;margin-top:.8rem;padding:.6rem .8rem;font-size:.8rem;font-weight:800;position:relative}.starter{z-index:1;justify-items:center;gap:12px;width:min(420px,94vw);margin-top:6px;display:grid;position:relative}.starter-title{color:#fff;background:linear-gradient(#2c3a7a,#141b3e);border-radius:999px;margin:0;padding:6px 18px;font:900 20px/1.2 Rubik Variable,system-ui,sans-serif;box-shadow:0 0 0 2.5px #10082e,0 4px 0 2.5px #10082e}.starter-picks{gap:16px;width:100%;display:flex}.starter-tile{background:linear-gradient(#f4f6ff,#e8ecff);border-radius:20px;flex:1;justify-items:center;padding:8px 6px 12px;transition:transform .15s ease-out;display:grid;position:relative;box-shadow:0 0 0 2.5px #10082e,0 4px 0 2.5px #10082e}.starter-tile.is-on{background:linear-gradient(180deg, color-mix(in srgb, var(--c) 45%, #fff), #fff);transform:translateY(-4px);box-shadow:0 0 0 3px #10082e,0 0 0 6px #ffd84a,0 5px 0 6px #10082e}.starter-check{top:-12px;color:#fff;background:#3fd45a;border-radius:50%;place-items:center;width:30px;height:30px;font:900 17px/1 system-ui,sans-serif;display:grid;position:absolute;inset-inline-end:-8px;box-shadow:0 0 0 2.5px #10082e}.starter-name{color:#fff;-webkit-text-stroke:.16em #10082e;paint-order:stroke fill;margin-top:2px;font:400 24px/1 Lilita One,system-ui,sans-serif}.starter-tag{color:#4a4570;margin-top:4px;font:800 12px/1.25 Rubik Variable,system-ui,sans-serif}
