:root{--bg: #f4f6ff;--surface: #ffffff;--sunk: #eef1fb;--text: #23264a;--text-soft: #676b8f;--border: #e2e6f5;--primary: #5b6cff;--danger: #ff5a7a;--radius-sm: 10px;--radius-md: 18px;--radius-lg: 28px;--shadow: 0 6px 24px rgba(35, 38, 74, .08);--font: "Baloo 2", "Nunito", "Segoe UI", system-ui, -apple-system, sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:17px;line-height:1.35;-webkit-text-size-adjust:100%}h1,h2,h3,p{margin:0}button,input,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}.muted{color:var(--text-soft);font-weight:500}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:48px;padding:0 18px;border:2px solid transparent;border-radius:999px;font-weight:700;font-size:17px;cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;transition:transform .08s ease,opacity .15s ease}.btn:active{transform:scale(.96)}.btn:disabled{opacity:.45;cursor:default;transform:none}.btn--primary{background:var(--primary);color:#fff;box-shadow:0 4px #0000001f}.btn--ghost{background:var(--surface);border-color:var(--border);color:var(--text)}.btn--big{width:100%;min-height:60px;font-size:20px}.btn--small{min-height:40px;padding:0 14px;font-size:15px}.hub{max-width:720px;margin:0 auto;padding:calc(16px + env(safe-area-inset-top)) 16px calc(32px + env(safe-area-inset-bottom))}.hub__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.hub__title{font-size:32px;font-weight:800;line-height:1.1}.hub__subtitle{color:var(--text-soft);font-weight:500;margin-top:4px}.who{flex:none;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px 0 10px;border:2px solid var(--border);border-radius:999px;background:var(--surface);font-weight:700;cursor:pointer;touch-action:manipulation}.collection{margin-top:28px}.collection__title{font-size:24px;font-weight:800}.collection__subtitle{color:var(--text-soft);margin-bottom:12px}.cards{display:grid;grid-template-columns:1fr;gap:12px}@media (min-width: 640px){.cards{grid-template-columns:1fr 1fr}}.card{--accent: var(--primary);display:grid;grid-template-columns:64px 1fr;grid-template-areas:"emoji body" "actions actions";gap:10px 12px;padding:14px;background:var(--surface);border:2px solid var(--border);border-left:8px solid var(--accent);border-radius:var(--radius-md);box-shadow:var(--shadow)}.card__emoji{grid-area:emoji;display:grid;place-items:center;width:64px;height:64px;border-radius:var(--radius-sm);background:var(--sunk);font-size:36px}.card__body{grid-area:body;min-width:0}.card__title{font-size:20px;font-weight:800;line-height:1.15}.card__blurb{color:var(--text-soft);font-weight:500;margin-top:2px}.card__meta{margin-top:4px;font-size:14px;color:var(--text-soft);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.card__actions{grid-area:actions;display:grid;grid-template-columns:1fr 1fr;gap:10px}.card__actions .btn--primary{background:var(--accent)}.card--builder{grid-template-areas:"emoji body" "builder builder" "actions actions"}.card__builder{grid-area:builder;padding:2px 0 2px 10px;border-left:3px solid var(--accent);color:var(--text-soft);font-size:14px;font-weight:600}.hub__footer{margin-top:40px;text-align:center;font-size:14px}.whatsnew{margin:-4px 0 12px}.whatsnew__line{display:inline-flex;align-items:center;gap:6px;min-height:44px;margin-left:-8px;padding:0 8px;border:0;border-radius:999px;background:none;color:var(--text-soft);font-size:14px;font-weight:600;cursor:pointer;touch-action:manipulation}.whatsnew__line:active{background:var(--sunk)}.whatsnew__dot{width:8px;height:8px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 3px #5b6cff2e}.whatsnew__chev{font-size:12px}.whatsnew__panel{margin-top:4px;padding:6px 14px 14px;background:var(--surface);border:2px solid var(--border);border-radius:var(--radius-md);animation:pop-in .25s ease-out}.whatsnew__update+.whatsnew__update{margin-top:12px;padding-top:12px;border-top:2px solid var(--border)}.whatsnew__date{margin:8px 0 6px;font-size:13px;font-weight:800;color:var(--text-soft);text-transform:uppercase;letter-spacing:.05em}.whatsnew__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.whatsnew__change{display:flex;gap:10px;align-items:flex-start}.whatsnew__emoji{flex:none;width:28px;text-align:center;font-size:20px;line-height:1.3}.whatsnew__text{font-size:15px;font-weight:500;line-height:1.35;min-width:0}.whatsnew__text strong{display:block;font-weight:800}.whatsnew__p{margin:0}.whatsnew__p+.whatsnew__p{margin-top:4px}.whatsnew__thanks{display:inline-block;margin-left:6px;padding:1px 9px;border-radius:999px;background:#e9ecff;color:var(--primary);font-size:13px;font-weight:800;vertical-align:1px}.whatsnew__panel .btn--small{margin-top:12px}.nudge{display:flex;flex-direction:column;gap:12px;padding:14px;margin-bottom:8px;background:var(--surface);border:3px solid var(--primary);border-radius:var(--radius-lg);box-shadow:var(--shadow);animation:pop-in .35s cubic-bezier(.2,1.4,.4,1)}.nudge__text{display:flex;align-items:center;gap:12px}.nudge__emoji{font-size:36px}.nudge__title{font-size:20px;font-weight:800;line-height:1.15}.nudge__faces{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.nudge__face{min-height:64px;border:2px solid var(--border);border-radius:var(--radius-md);background:var(--sunk);font-size:34px;cursor:pointer;touch-action:manipulation}.nudge__face:active{transform:scale(.92)}@keyframes pop-in{0%{transform:scale(.9);opacity:0}to{transform:none;opacity:1}}.picker{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:16px;background:#23264a59;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);overflow-y:auto}.picker__card{position:relative;width:100%;max-width:440px;padding:24px 20px;background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.picker__close,.sheet__close{position:absolute;top:10px;right:10px;width:44px;height:44px;border:0;border-radius:50%;background:var(--sunk);font-size:18px;cursor:pointer}.picker__title{font-size:28px;font-weight:800;text-align:center;margin-bottom:16px}.picker__kids{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}.kid-button{display:flex;flex-direction:column;align-items:center;gap:4px;min-height:96px;padding:10px;border:2px solid var(--border);border-radius:var(--radius-md);background:var(--sunk);cursor:pointer;touch-action:manipulation}.kid-button:active{transform:scale(.96)}.kid-button__avatar{font-size:40px}.kid-button__name{font-weight:800;font-size:18px}.picker__form{display:flex;flex-direction:column;gap:10px}.picker__label{font-weight:700;color:var(--text-soft)}.picker__input{width:100%;min-height:52px;padding:0 14px;border:2px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);font-size:19px;font-weight:700}.picker__input:focus{outline:none;border-color:var(--primary)}.avatar-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.avatar{aspect-ratio:1;min-height:48px;border:2px solid var(--border);border-radius:var(--radius-sm);background:var(--sunk);font-size:26px;cursor:pointer;touch-action:manipulation}.avatar--on{border-color:var(--primary);background:#e9ecff;transform:scale(1.08)}.secret{display:block;margin:16px auto 0;text-align:center}.secret__link{min-height:44px;padding:0 12px;border:0;border-radius:999px;background:none;color:var(--text-soft);font-size:15px;font-weight:600;cursor:pointer;touch-action:manipulation}.secret__link:active{background:var(--sunk)}.secret__on{font-weight:800}.secret__row{display:flex;gap:8px}.secret__row .btn{flex:none;min-height:52px}.secret__wrong{margin-top:8px;color:var(--text-soft);font-weight:700}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#23264a66;display:flex;align-items:flex-end;justify-content:center}.sheet{position:relative;width:100%;max-width:560px;max-height:92vh;overflow-y:auto;padding:20px 16px calc(20px + env(safe-area-inset-bottom));background:var(--surface);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:0 -8px 40px #23264a33;animation:slide-up .25s ease-out}@media (min-width: 640px){.sheet-backdrop{align-items:center}.sheet{border-radius:var(--radius-lg)}}@keyframes slide-up{0%{transform:translateY(40px);opacity:0}to{transform:none;opacity:1}}.sheet__head{display:flex;align-items:center;gap:12px;padding-right:48px;margin-bottom:14px}.sheet__emoji{font-size:40px}.sheet__title{font-size:22px;font-weight:800;line-height:1.15}.sheet__who{color:var(--text-soft);font-weight:700}.sheet__section{display:block;margin:16px 0 8px;font-weight:800}.faces{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.face{display:flex;flex-direction:column;align-items:center;gap:2px;min-height:88px;padding:8px 4px;border:3px solid var(--border);border-radius:var(--radius-md);background:var(--sunk);cursor:pointer;touch-action:manipulation;transition:transform .1s ease}.face:active{transform:scale(.94)}.face--on{border-color:var(--primary);background:#e9ecff;transform:scale(1.06)}.face__emoji{font-size:38px;line-height:1}.face__label{font-size:13px;font-weight:700;color:var(--text-soft);text-align:center}.face--on .face__label{color:var(--text)}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{min-height:44px;padding:0 16px;border:2px solid var(--border);border-radius:999px;background:var(--sunk);font-weight:700;cursor:pointer;touch-action:manipulation}.chip--on{border-color:var(--primary);background:var(--primary);color:#fff}.chip--static{min-height:30px;padding:2px 10px;font-size:14px;cursor:default}.note{width:100%;padding:12px;border:2px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);resize:vertical;margin-bottom:14px}.note:focus{outline:none;border-color:var(--primary)}.sheet__error{margin:0 0 12px;padding:10px 12px;border-radius:var(--radius-sm);background:#fff0f3;color:#b3133a;font-weight:700}.sheet__sent{text-align:center;padding:24px 0}.sheet__sent-emoji{font-size:72px;animation:pop-in .4s cubic-bezier(.2,1.6,.4,1)}.sheet__sent h2{font-size:26px;font-weight:800;margin-top:8px}.sheet__sent p{color:var(--text-soft);font-weight:600}.review{max-width:720px;margin:0 auto;padding:calc(16px + env(safe-area-inset-top)) 16px 48px}.review h1{font-size:28px;font-weight:800;margin:8px 0 12px}.review__bar{display:flex;align-items:center;gap:8px}.review__bar .muted{margin-right:auto}.review__login{display:flex;gap:8px}.review__login .btn{flex:none}.summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}.summary__tile{text-align:left;padding:10px 12px;min-height:60px;border:2px solid var(--border);border-radius:var(--radius-md);background:var(--surface);cursor:pointer}.summary__tile--on{border-color:var(--primary)}.summary__title{font-weight:800;line-height:1.15}.summary__stat{color:var(--text-soft);font-weight:600;font-size:14px}.entries{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.entry{display:flex;gap:12px;padding:12px;background:var(--surface);border:2px solid var(--border);border-radius:var(--radius-md)}.entry__face{flex:none;font-size:32px;line-height:1}.entry__body{min-width:0}.entry__tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.entry__note{margin-top:6px;font-weight:500}.entry__built{margin-top:6px;font-size:15px;font-weight:600}.entry__waiting{margin-top:6px;font-size:14px}.alerts{margin-bottom:20px}.alerts__title{font-size:20px;font-weight:800;margin-bottom:8px}.alerts__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.alert{padding:10px 12px;background:var(--surface);border:2px solid var(--border);border-radius:var(--radius-md)}.alert--unseen{border-color:var(--danger);background:#fff0f3}.alert__head{display:flex;align-items:center;gap:4px}.alert__kind{font-weight:800;text-transform:uppercase;letter-spacing:.04em;font-size:13px}.alert__seen{margin-left:auto}.alert__text{margin-top:4px;font-weight:500;white-space:pre-wrap}.review__hint{margin-top:20px;font-size:14px}
