:root{color-scheme:light;font-family:Hiragino Maru Gothic ProN,Hiragino Sans,Yu Gothic,system-ui,sans-serif;--bg: #fff7ea;--paper: #fffdf7;--paper-strong: #ffffff;--ink: #4a3528;--muted: #8c7564;--line: #ead7bf;--pink: #ef7690;--pink-strong: #e85f7e;--green: #dff1bf;--blue: #d5eff4;--yellow: #ffe6a8;--lavender: #e7def7;--mint: #cfeee3;--shadow: 0 12px 30px rgba(118, 87, 57, .13);--soft-shadow: 0 5px 14px rgba(118, 87, 57, .11)}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:radial-gradient(circle at 12% 8%,rgba(244,127,152,.12),transparent 24%),radial-gradient(circle at 88% 12%,rgba(155,211,222,.18),transparent 23%),linear-gradient(180deg,#fff9ef 0%,var(--bg) 100%);color:var(--ink)}button{color:inherit;font:inherit}.appShell{position:relative;width:min(100%,430px);min-height:100dvh;margin:0 auto;background:linear-gradient(#fff7eae0,#fff7eae0),radial-gradient(circle at 18px 18px,rgba(183,145,105,.17) 2px,transparent 3px);background-size:auto,34px 34px;border-inline:1px solid rgba(234,215,191,.75);overflow-x:hidden}.appHeader{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:64px;padding:max(10px,env(safe-area-inset-top)) 14px 9px;background:#fff7eaeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px dashed rgba(211,178,139,.65)}.brandMark,.headerActions,.currencyRow,.sectionHeading,.questItem,.metric,.miniCat,.sheetHeader{display:flex;align-items:center}.brandMark{position:absolute;left:50%;justify-content:center;gap:9px;transform:translate(-50%)}.brandPaw{display:grid;width:26px;height:26px;place-items:center;overflow:hidden;color:transparent;background:#f5d7a7;border:2px solid #d9b98c;border-radius:50%;box-shadow:var(--soft-shadow)}.brandPaw:before{color:#8e6845;content:"🐾";font-size:14px}.brandTitle,.brandSub,.softLabel,.xpLine,.metric span,.questText span,.settingsSheet p{margin:0}.brandTitle{font-size:17px;font-weight:800;line-height:1.1}.brandSub{color:var(--muted);font-size:9px;letter-spacing:0;text-align:center}.headerActions{margin-left:auto;gap:8px}.iconButton{display:grid;width:39px;height:39px;place-items:center;background:var(--paper-strong);border:1px solid var(--line);border-radius:50%;box-shadow:var(--soft-shadow)}.appMain{padding:12px 16px 104px}.screenStack{display:grid;gap:12px}.card{background:#fffdf7f0;border:1px solid var(--line);border-radius:18px;box-shadow:var(--soft-shadow)}.heroProgress{display:grid;grid-template-columns:88px 1fr;gap:14px;padding:6px 8px 4px;background:transparent;border-color:transparent;box-shadow:none}.catPortrait{width:88px;height:88px;padding:4px;background:#fff7f4;border:1px solid #e8caa6;border-radius:50%;box-shadow:inset 0 0 0 4px #fffdf7}.catPortrait img,.miniCat img,.placeholderScreen img{width:100%;height:100%;object-fit:cover}.catPortrait img{border-radius:50%}.heroCopy{min-width:0}.softLabel{color:var(--muted);font-size:13px;line-height:1.35}.heroCopy h1{margin:6px 0 5px;font-size:32px;line-height:1}.xpLine{display:flex;gap:8px;color:var(--ink);font-size:14px}.progressTrack{height:9px;margin-top:7px;overflow:hidden;background:#fff4df;border:1px solid #ddbfa0;border-radius:999px}.progressTrack span{display:block;height:100%;background:linear-gradient(90deg,#ff89a0,#f46f91);border-radius:inherit}.weeklyCard{padding:12px 12px 11px}.sectionHeading{justify-content:space-between;gap:10px;margin-bottom:9px}.sectionHeading.inline{margin:4px 2px 10px}.sectionHeading h2{margin:0;font-size:17px}.sectionHeading strong{color:var(--pink-strong);font-size:18px}.weekDots{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-bottom:10px}.dayDot{display:grid;justify-items:center;gap:3px}.dayDot span{display:grid;width:31px;height:31px;place-items:center;color:#d1b28d;background:#fff9ec;border:1px solid #e5c9a7;border-radius:50%}.dayDot span.done{color:#fff;background:var(--pink);border-color:#e66d86;box-shadow:0 4px 10px #e85f7e3d}.dayDot small{color:var(--ink);font-weight:700;font-size:12px}.currencyRow{justify-content:space-between;gap:0;padding:8px 4px;border:1px solid #eadbc9;border-radius:14px}.metric{flex:1;justify-content:center;gap:6px;min-width:0}.metric svg{color:var(--pink)}.metric:nth-child(2) svg{color:#56b7c2}.metric:nth-child(3) svg{color:#e4a82f}.metric span{display:block;color:var(--muted);font-size:11px}.metric strong{font-size:16px}.motivationButton{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;color:#7d4b57;background:#fff0f3;border:1px solid #f0b8c4;border-radius:999px;box-shadow:none;font-weight:800}.motivationCatIcon{position:relative;display:grid;width:30px;height:30px;place-items:center;background:#fffdf7;border:2px solid #f3cfda;border-radius:50%;box-shadow:0 4px 10px #e85f7e24}.motivationCatIcon:after{position:absolute;right:-5px;bottom:-1px;content:"✦";color:var(--pink-strong);font-size:12px}.motivationCatIcon img{width:25px;height:25px;object-fit:contain}.motivationCard{display:grid;gap:10px;padding:12px}.miniCat{gap:10px}.miniCat img{width:52px;height:52px;border-radius:50%}.miniCat p{margin:0;color:var(--muted);font-size:13px;line-height:1.6}.motivationChoices{display:grid;gap:8px}.softChoice{min-height:42px;padding:9px 12px;text-align:left;background:#fffaf0;border:1px solid var(--line);border-radius:13px;font-weight:800}.softChoice.isSelected{color:#8a3e52;background:#fff0f4;border-color:#f0aebe;box-shadow:0 5px 14px #e85f7e1f}.miniQuestResult{display:grid;grid-template-columns:1fr auto;gap:4px 10px;align-items:center;padding:11px 12px;background:linear-gradient(135deg,#fffdf7,#fff3f6);border:1px dashed #edb7c5;border-radius:15px}.miniQuestResult span{color:var(--pink-strong);font-size:12px;font-weight:900}.miniQuestResult strong{grid-column:1;font-size:14px;line-height:1.45}.miniQuestResult .primaryPill{grid-row:1 / span 2;grid-column:2}.miniQuestResult.isDone{background:linear-gradient(135deg,#fffdf7,#edf8f4);border-color:#b7ddd1}.categoryGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.categoryTile{display:grid;min-height:76px;place-items:center;gap:5px;padding:8px 6px;border:1px solid rgba(195,158,112,.42);border-radius:15px;box-shadow:var(--soft-shadow);font-weight:800;font-size:15px}.categoryTile svg{width:31px;height:31px;color:#6e8d76}.tone-green{background:var(--green)}.tone-blue{background:var(--blue)}.tone-yellow{background:var(--yellow)}.tone-pink{background:#ffd7d9}.tone-lavender{background:var(--lavender)}.tone-mint{background:var(--mint)}.questCard{padding:11px}.optionalQuestCard{display:grid;gap:10px}.categoryMiniGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.categoryMiniTile{display:grid;min-height:54px;place-items:center;gap:2px;padding:6px 4px;border:1px solid rgba(195,158,112,.38);border-radius:13px;box-shadow:0 4px 12px #76573912;font-size:12px;font-weight:900}.categoryMiniTile svg{width:22px;height:22px;color:#6e8d76}.categoryMiniTile.isActive{outline:3px solid rgba(239,118,144,.38);box-shadow:0 7px 16px #e85f7e29;transform:translateY(-1px)}.optionalQuestHint{color:var(--muted);font-size:12px;font-weight:900}.optionalEmptyText{margin:0;padding:12px;color:var(--muted);background:#fffaf2;border:1px dashed #dfc6aa;border-radius:13px;font-size:13px;line-height:1.55}.questList{display:grid;gap:7px}.questItem{gap:8px;min-height:45px;padding:6px 7px;background:#fffaf2;border:1px solid #eadbc9;border-radius:12px}.questIcon{display:grid;width:31px;height:31px;flex:0 0 auto;place-items:center;color:#649d9b;background:#eef8f2;border-radius:10px}.questText{min-width:0;flex:1}.questText strong{display:block;overflow-wrap:anywhere;font-size:13px;line-height:1.35}.questText span{color:var(--pink-strong);font-size:12px;font-weight:800}.primaryPill{min-width:68px;min-height:32px;padding:0 12px;color:#fff;background:linear-gradient(180deg,#ff8ca2,#ef6382);border:0;border-radius:999px;box-shadow:0 5px 12px #e85f7e3d;font-size:12px;font-weight:800}.linkButton{display:inline-flex;align-items:center;gap:2px;min-height:30px;color:var(--pink-strong);background:transparent;border:0;font-size:13px;font-weight:800}.questCard.compact .questList{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.questCard.compact .questItem{display:grid;min-height:88px;align-items:start;justify-items:stretch;gap:4px;padding:8px}.questCard.compact .questIcon{width:27px;height:27px}.questCard.compact .questText strong{display:-webkit-box;min-height:34px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:12px}.questCard.compact .primaryPill{justify-self:end;min-width:28px;width:28px;min-height:28px;padding:0;overflow:hidden;color:transparent;background:#fffaf2;border:2px solid #e7cdb0;box-shadow:none}.questCard.compact .primaryPill:before{color:var(--pink-strong);content:"○";font-size:16px}.goalCard,.rewardExchangeCard{display:grid;gap:10px;padding:12px}.goalCount{color:var(--pink-strong);font-size:13px;font-weight:900}.bigGoalFeatured,.dailyGoalCurrent,.dailyGoalForm,.goalEditor{display:grid;gap:8px}.bigGoalFeatured{padding:11px;background:linear-gradient(135deg,#fffdf7,#fff3f6);border:1px dashed #edb7c5;border-radius:15px}.goalBadge{display:inline-flex;width:fit-content;align-items:center;gap:5px;padding:5px 9px;color:#8c5260;background:#ffe8ee;border-radius:999px;font-size:12px;font-weight:900}.goalTitleInput,.bigGoalFeatured textarea,.goalEditor input,.dailyGoalCurrent input,.dailyGoalCurrent select,.dailyGoalForm input,.dailyGoalForm select{width:100%;min-height:40px;padding:8px 10px;color:var(--ink);background:#fffdf7f2;border:1px solid #eadbc9;border-radius:12px;font-weight:800}.bigGoalFeatured textarea{min-height:62px;resize:vertical;font-weight:700}.goalProgressLine{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:13px;font-weight:900}.goalProgressLine strong{color:var(--pink-strong);font-size:18px}.bigGoalTrack{margin-top:0}.goalProgressChoices{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.goalProgressChoices button{min-height:31px;color:#8a715d;background:#fffaf2;border:1px solid #e8d2b8;border-radius:999px;font-size:12px;font-weight:900}.goalProgressChoices button.isSelected{color:#fff;background:var(--pink);border-color:var(--pink-strong)}.bigGoalActions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.softTextButton{min-height:32px;padding:0 10px;color:var(--muted);background:#fffaf2;border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:900}.softNote,.dailyGoalLinked{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.secondaryGoalList{display:grid;gap:6px}.secondaryGoalItem{display:grid;gap:8px;padding:9px;background:#fffaf2;border:1px solid var(--line);border-radius:12px}.secondaryGoalItem input{width:100%;min-height:38px;padding:7px 9px;color:var(--ink);background:#fffdf7f2;border:1px solid #eadbc9;border-radius:10px;font-weight:800}.secondaryGoalActions{display:flex;justify-content:flex-end;gap:7px}.goalEditor{grid-template-columns:1fr;padding-top:2px}.goalEditor .primaryPill,.dailyGoalForm .primaryPill{justify-self:end}.dailyGoalCurrent{padding:10px;background:#fffaf2;border:1px solid #eadbc9;border-radius:15px}.dailyGoalCurrent.isDone{background:linear-gradient(135deg,#fffdf7,#edf8f4);border-color:#b7ddd1}.dailyGoalCurrent .primaryPill:disabled{color:#8a715d;background:#efe2d2;box-shadow:none}.rewardExchangeCard .sectionHeading strong{display:inline-flex;align-items:center;gap:4px;font-size:16px}.rewardTicketList{display:grid;gap:8px}.rewardTicket{display:grid;grid-template-columns:36px 1fr auto;gap:8px;align-items:center;min-height:58px;padding:8px;background:linear-gradient(135deg,#fffaf2,#fffdf7);border:1px solid #eadbc9;border-radius:14px}.rewardTicket.isRedeemed{opacity:.68}.rewardIconBubble{display:grid;width:36px;height:36px;place-items:center;color:var(--pink-strong);background:#ffe8ee;border-radius:12px}.rewardTicketMeta{display:grid;gap:1px;min-width:0}.rewardTicketMeta strong{overflow-wrap:anywhere;font-size:14px}.rewardTicketMeta span,.rewardTicketMeta small{color:var(--muted);font-size:12px;font-weight:800}.rewardTicketMeta small{color:#b8744f}.rewardExchangeButton{min-width:58px;min-height:32px;color:#fff;background:var(--pink);border:0;border-radius:999px;font-size:12px;font-weight:900}.rewardExchangeButton:disabled{color:#9b806a;background:#efe2d2}.rewardMoreButton{justify-self:end}.celebrationBackdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:center;padding:18px;background:#4a352838}.celebrationModal{display:grid;width:min(100%,390px);max-height:86dvh;gap:12px;padding:16px;overflow:auto;background:linear-gradient(135deg,#fffdf7fa,#fff2f6fa),radial-gradient(circle at 18px 18px,rgba(239,118,144,.12) 2px,transparent 3px);background-size:auto,34px 34px;border-radius:22px}.celebrationHeader{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--pink-strong)}.celebrationHeader h2,.celebrationTitle{margin:0;text-align:center}.celebrationHeader h2{color:var(--ink);font-size:20px}.celebrationTitle{color:var(--muted);font-weight:900}.celebrationCats{display:grid;gap:8px}.celebrationCat{display:grid;grid-template-columns:48px 1fr;gap:9px;align-items:center;padding:9px;background:#fffaf2e6;border:1px solid #eadbc9;border-radius:15px}.celebrationCat.selected{grid-template-columns:66px 1fr}.celebrationCat img{width:48px;height:48px;object-fit:contain}.celebrationCat.selected img{width:66px;height:66px}.celebrationCat p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.celebrationCat strong{display:block;color:var(--pink-strong)}.celebrationModal>.primaryPill{justify-self:center;min-width:110px}.bottomNav{position:fixed;right:50%;bottom:0;z-index:10;display:grid;grid-template-columns:repeat(5,1fr);width:min(100%,430px);padding:7px 8px max(7px,env(safe-area-inset-bottom));transform:translate(50%);background:#fffaf1f2;border:1px solid rgba(226,199,166,.85);border-radius:16px 16px 0 0;box-shadow:0 -10px 30px #7657391f;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.navItem{display:grid;min-height:54px;place-items:center;gap:3px;color:#8a715d;background:transparent;border:0;border-radius:15px;font-size:11px;font-weight:800}.navItem.isActive{color:var(--pink-strong);background:#ffe8ee}.modalBackdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;align-items:end;background:#4a35282e}.settingsSheet{width:min(100%,480px);max-height:88dvh;margin:0 auto;padding:16px;overflow:auto;background:var(--bg);border:1px solid var(--line);border-radius:24px 24px 0 0;box-shadow:var(--shadow)}.sheetHeader{justify-content:space-between;margin-bottom:12px}.sheetHeader h2{margin:0;font-size:22px}.settingsList{overflow:hidden;background:var(--paper);border:1px solid var(--line);border-radius:16px}.settingsRow{display:flex;width:100%;min-height:50px;align-items:center;justify-content:space-between;padding:0 14px;background:transparent;border:0;border-bottom:1px solid #efe0ce;text-align:left}.settingsRow:last-child{border-bottom:0}.settingsRow strong{color:var(--pink-strong)}.settingsBlock{margin-top:14px;padding:12px;background:#fffdf7f0;border:1px solid var(--line);border-radius:16px}.settingsBlock h3{margin:0 0 10px;font-size:16px}.settingsBlockHeader{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.settingsBlockHeader h3{margin:0}.settingsBlockHeader span{color:var(--pink-strong);font-weight:900}.settingsMiniList,.rewardList{display:grid;gap:7px}.settingsMiniRow,.rewardRow{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;background:#fffaf2;border:1px solid #eadbc9;border-radius:12px}.settingsMiniRow input{width:20px;height:20px;accent-color:var(--pink)}.rewardRow div{display:grid;gap:2px}.rewardRow strong{font-size:14px}.rewardRow span{color:var(--muted);font-size:12px}.rewardRow .softTextButton:disabled{opacity:.55}.settingsBackdrop{align-items:stretch;background:#4a352833}.settingsBackdrop .settingsSheet{width:min(100%,430px);max-height:none;min-height:100dvh;padding:max(10px,env(safe-area-inset-top)) 16px calc(92px + env(safe-area-inset-bottom));background:linear-gradient(#fff7eaf0,#fff7eaf0),radial-gradient(circle at 14px 14px,rgba(183,145,105,.12) 2px,transparent 3px);background-size:auto,32px 32px;border-radius:0}.settingsScreenHeader{position:sticky;top:0;z-index:2;padding:8px 0 12px;background:#fff7eaf0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.settingsScreenHeader>div{text-align:center}.settingsScreenHeader p,.settingsScreenHeader h2{margin:0}.settingsScreenHeader p{color:var(--muted);font-size:11px;font-weight:800}.settingsHeaderPaw{display:grid;width:42px;height:42px;place-items:center;color:var(--pink-strong)}.settingsTop,.settingsDetail{display:grid;gap:14px}.settingsHeroNote{display:grid;gap:4px;padding:14px;background:linear-gradient(135deg,#fffdf7,#fff2f5);border:1px solid var(--line);border-radius:18px;box-shadow:var(--soft-shadow)}.settingsHeroNote strong{font-size:15px}.settingsHeroNote span,.settingsRowText small,.settingsToggleRow small,.settingsHelpText,.settingsInfoLine,.themePreviewCard small{color:var(--muted);font-size:12px;line-height:1.55}.settingsBackdrop .settingsList{display:grid;gap:9px;overflow:visible;background:transparent;border:0;border-radius:0}.settingsBackdrop .settingsRow{min-height:62px;justify-content:flex-start;gap:11px;padding:10px 12px;background:#fffdf7f5;border:1px solid var(--line);border-radius:16px;box-shadow:0 6px 18px #76573912}.settingsBackdrop .settingsRow em{margin-left:auto;color:var(--pink-strong);font-style:normal;font-weight:900}.settingsRowIcon{display:grid;flex:0 0 auto;width:38px;height:38px;place-items:center;color:var(--pink-strong);background:#ffe8ee;border-radius:14px}.settingsRowText{display:grid;min-width:0;gap:2px;margin-right:auto}.settingsRowText strong{font-size:14px}.settingsBackdrop .settingsBlock{padding:14px;background:#fffdf7f5;border-radius:18px;box-shadow:0 8px 22px #76573914}.settingsAddLine{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}.settingsAddLine.rewardAddLine{grid-template-columns:1fr 76px auto}.settingsAddLine input,.settingsEditCard input,.settingsEditCard select,.settingsFullSelect,.settingsBackupText,.presetCard input{width:100%;min-height:42px;padding:9px 11px;color:var(--ink);background:#fffaf2;border:1px solid #eadbc9;border-radius:13px;font:inherit}.settingsFullSelect{margin-bottom:10px}.settingsEditorList,.presetList{display:grid;gap:11px}.settingsEditCard,.presetCard{display:grid;gap:10px;padding:12px;background:#fffdf7f5;border:1px solid var(--line);border-radius:17px;box-shadow:0 6px 18px #76573912}.settingsEditCard label,.presetCard label,.settingsField{display:grid;gap:5px;color:var(--muted);font-size:12px;font-weight:800}.settingsField{margin-bottom:10px}.settingsField select{width:100%;min-height:42px;padding:9px 11px;color:var(--ink);background:#fffaf2;border:1px solid #eadbc9;border-radius:13px;font:inherit}.settingsEditHeader,.settingsCardActions,.settingsToggleRow,.catModePreview,.themePreviewCard{display:flex;align-items:center}.settingsEditHeader{justify-content:space-between;gap:10px}.settingsValueBadge{display:inline-flex;align-items:center;min-height:26px;padding:4px 9px;color:var(--pink-strong);background:#ffe8ee;border-radius:999px;font-size:12px;font-weight:900}.settingsToggleRow{justify-content:space-between;gap:12px;min-height:48px;padding:9px 10px;background:#fffaf2;border:1px solid #eadbc9;border-radius:14px}.settingsToggleRow span{display:grid;gap:2px}.settingsToggleRow input{width:22px;height:22px;flex:0 0 auto;accent-color:var(--pink)}.settingsTwoCols{display:grid;grid-template-columns:1fr 1fr;gap:8px}.settingsCardActions{justify-content:flex-end;gap:8px;flex-wrap:wrap}.settingsCardActions button,.dangerTextButton{display:inline-flex;min-height:34px;align-items:center;justify-content:center;gap:4px;padding:6px 10px;background:#fffaf2;border:1px solid #eadbc9;border-radius:999px;font-weight:800}.dangerTextButton{color:#b85b61}.dangerPill{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:6px;padding:9px 16px;color:#fff;background:#c96b70;border:0;border-radius:999px;font-weight:900}.dangerBlock{border-color:#edc3c2}.presetCard{grid-template-columns:1fr 78px 78px;align-items:end}.presetCard label:first-child{min-width:0}.presetCard small{color:var(--muted);font-size:11px;font-weight:800}.catModePreview{gap:11px;margin-bottom:11px;padding:10px;background:#fffaf2;border:1px solid #eadbc9;border-radius:15px}.catModePreview img{width:58px;height:58px;object-fit:contain}.catModePreview div{display:grid;gap:2px}.catModePreview span{color:var(--muted);font-size:12px}.settingsSegmented{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;background:#fffaf2;border:1px solid #eadbc9;border-radius:999px}.settingsSegmented button{min-height:40px;background:transparent;border:0;border-radius:999px;font-weight:900}.settingsSegmented button.isActive{color:#fff;background:var(--pink);box-shadow:0 6px 14px #e85f7e33}.settingsInfoLine{margin-top:8px;padding:10px;background:#fff7e8;border:1px dashed #dfc6aa;border-radius:14px}.themePreviewCard{gap:7px;padding:12px;background:#fffaf2;border:1px solid #eadbc9;border-radius:15px}.themePreviewCard div{display:grid;gap:2px;margin-left:4px}.themeSwatch{width:22px;height:22px;border:2px solid #fff;border-radius:50%;box-shadow:var(--soft-shadow)}.themeSwatchPink{background:var(--pink)}.themeSwatchBlue{background:var(--blue)}.themeSwatchGreen{background:var(--green)}.settingsBackupText{min-height:120px;margin-top:10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.settingsStatusText{margin:9px 0 0;color:var(--pink-strong);font-size:13px;font-weight:900}.helpBlock dl{display:grid;gap:7px;margin:0}.helpBlock dt{color:var(--pink-strong);font-weight:900}.helpBlock dd{margin:0 0 8px;color:var(--muted);font-size:13px;line-height:1.6}@media(max-width:380px){.settingsAddLine,.settingsAddLine.rewardAddLine,.settingsTwoCols,.presetCard{grid-template-columns:1fr}}.placeholderScreen{display:grid;justify-items:center;gap:10px;padding:26px 18px;text-align:center}.placeholderScreen img{width:116px;height:116px;border:4px solid #fff;border-radius:50%;box-shadow:var(--soft-shadow)}.placeholderScreen h1,.placeholderScreen p{margin:0}.placeholderScreen p:last-child{color:var(--muted);line-height:1.7}.questsScreen{gap:10px}.questsTopCard{padding:14px 12px 12px}.questsTitleRow{position:relative;display:grid;grid-template-columns:42px 1fr 42px;align-items:center;margin-bottom:14px}.screenPaw{justify-self:center;color:#a98262;font-size:18px}.questsTitleRow h1{margin:0;text-align:center;font-size:23px;line-height:1.2}.roundAddButton{display:grid;width:42px;height:42px;place-items:center;color:#fff;background:linear-gradient(180deg,#f790a5,#e76182);border:1px solid #df6e84;border-radius:50%;box-shadow:0 8px 18px #e85f7e47}.questTabs{display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden;margin-bottom:12px;background:#fffaf2;border:1px solid #e9d7bf;border-radius:12px}.questTabs button{min-height:40px;color:#775e4d;background:transparent;border:0;border-right:1px solid #e9d7bf;font-size:14px;font-weight:800}.questTabs button:last-child{border-right:0}.questTabs button.isActive{color:#fff;background:linear-gradient(180deg,#ef8299,#e76885)}.questMetaRow{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px;color:#6c5545;font-size:13px}.questMetaRow span,.questMetaRow button,.suggestionLabel{display:inline-flex;align-items:center;gap:6px}.questMetaRow button{min-height:34px;padding:0 10px;background:#fffaf2;border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:800}.addQuestForm{display:grid;gap:9px;margin-bottom:10px;padding:10px;background:#fff7ec;border:1px dashed #dfc2a2;border-radius:14px}.addQuestForm label{display:grid;gap:5px;color:var(--muted);font-size:12px;font-weight:800}.addQuestForm .inlineCheck{display:flex;align-items:center;gap:8px;color:var(--ink)}.achievementField{display:grid;gap:6px;min-width:0;margin:0;padding:0;border:0}.achievementField legend{margin:0 0 1px;color:var(--muted);font-size:12px;font-weight:800}.achievementSwitch{display:grid;grid-template-columns:1fr 1fr;gap:6px}.achievementSwitch button{min-height:38px;padding:0 8px;color:#7c6252;background:#fffdfa;border:1px solid #ead7bf;border-radius:999px;font-size:12px;font-weight:900}.achievementSwitch button.isActive{color:#fff;background:linear-gradient(180deg,#ef8299,#e76885);border-color:transparent}.unitDraftGrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.unitDraftGrid label:first-child,.unitDraftGrid label:last-child{grid-column:span 1}.inlineCheck input{width:18px;height:18px;accent-color:var(--pink)}.addQuestForm input:not([type=checkbox]),.addQuestForm select{min-height:42px;width:100%;padding:0 11px;color:var(--ink);background:#fffdfa;border:1px solid #ead7bf;border-radius:11px;font:inherit}.addQuestForm .inlineCheck input{flex:0 0 18px;min-height:18px;padding:0}.formActions{display:flex;justify-content:flex-end;gap:8px}.softTextButton{min-height:34px;padding:0 13px;color:#6f5a49;background:#fffaf2;border:1px solid #dfcdb8;border-radius:999px;font-size:12px;font-weight:800}.questListPanel{overflow:hidden;background:#fff7f4;border:1px solid #f0c9ce;border-radius:15px}.questPanelTitle{display:flex;align-items:center;min-height:34px;padding:0 12px;color:var(--pink-strong);background:#ffeaf0;border-bottom:1px solid #f0c9ce;font-size:13px;font-weight:900}.questRows{display:grid}.questRow{display:grid;grid-template-columns:34px 1fr auto 32px;gap:7px;align-items:start;min-height:68px;padding:10px 8px;background:#fffdf8;border-bottom:1px solid #eadbc9}.questRow:last-child{border-bottom:0}.questRow.isDone{background:#f6fbef}.questCheckButton{display:grid;width:30px;height:30px;place-items:center;margin-top:2px;color:#df7f90;background:transparent;border:0}.questCheckButton span{display:grid;width:27px;height:27px;place-items:center;color:#9c6a72;border:2px solid #e5b7c0;border-radius:50%;font-size:10px;font-weight:900}.questRepeatIcon{display:grid;width:30px;height:30px;place-items:center;margin-top:2px;background:#fff0f4;border:1px solid #efc0cb;border-radius:50%;font-size:15px}.questRow.isDone .questCheckButton{color:#6aa576}.questRowMain{grid-column:2;min-width:0}.questRowMain strong{display:block;margin-bottom:3px;overflow-wrap:anywhere;font-size:14px;line-height:1.35}.questTitleButton{display:block;width:100%;margin:0 0 3px;padding:0;overflow-wrap:anywhere;background:transparent;border:0;text-align:left;font-size:14px;font-weight:800;line-height:1.35}.editQuestInline{display:grid;grid-template-columns:1fr auto;gap:6px;margin-bottom:5px}.editQuestInline input{min-width:0;min-height:34px;padding:0 9px;background:#fffdfa;border:1px solid #ead7bf;border-radius:10px;font:inherit}.editQuestInline button{min-height:34px;padding:0 10px;color:#fff;background:var(--pink);border:0;border-radius:999px;font-size:12px;font-weight:900}.questRowMeta{display:flex;flex-wrap:wrap;align-items:center;gap:5px 10px;color:var(--muted);font-size:11px}.questRowMeta span{display:inline-flex;align-items:center;gap:3px}.questRowMeta span:nth-child(2){color:var(--pink-strong);font-weight:900}.questRowMeta .repeatBadge{color:#4f84a5;font-weight:900}.repeatDays{margin:4px 0 0;color:#9b8170;font-size:11px}.partialActions{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:8px}.partialActions button{min-height:32px;color:#79525b;background:#fff0f4;border:1px solid #efc0cb;border-radius:999px;font-size:12px;font-weight:900}.deleteQuestButton{display:grid;grid-column:4;width:32px;height:32px;place-items:center;color:#b69a85;background:transparent;border:0;border-radius:50%}.questStartButton{grid-column:3;align-self:center;min-width:76px}.emptyQuestState{display:grid;justify-items:center;gap:8px;padding:28px 18px;color:var(--muted);text-align:center}.emptyQuestState p{margin:0;line-height:1.6}.suggestionCard{display:grid;grid-template-columns:1fr 50px auto;gap:9px;align-items:center;margin-top:11px;padding:10px;background:#f5fbff;border:1px solid #cfe0ed;border-radius:15px}.suggestionCard div{min-width:0}.suggestionLabel{margin:0 0 4px;color:#4f84a5;font-size:13px;font-weight:900}.suggestionCard strong{display:block;margin-bottom:4px;overflow-wrap:anywhere;font-size:13px;line-height:1.45}.suggestionCard span{color:var(--muted);font-size:11px}.suggestionCard img{width:48px;height:48px;object-fit:cover;border:2px solid #fff;border-radius:50%;box-shadow:var(--soft-shadow)}.mapScreen{gap:9px}.mapScreen>*{min-width:0}.mapPostcard{position:relative;overflow:hidden;min-height:0;padding:0 0 8px;background:#bfe6ef;border-radius:18px}.mapToolbar{position:absolute;inset:10px 10px auto 10px;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:10px;pointer-events:none}.worldToggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:0 14px;color:#5d4637;background:#fffdf7f0;border:1px solid #ead7bf;border-radius:999px;box-shadow:var(--soft-shadow);font-size:13px;font-weight:900;pointer-events:auto;white-space:nowrap}.mapCanvas{position:relative;overflow:hidden;min-height:382px;background:radial-gradient(circle at 16% 18%,rgba(255,255,255,.32),transparent 18%),radial-gradient(circle at 82% 20%,rgba(255,255,255,.2),transparent 20%),#d8f0f4;border-radius:18px}.imageMapCanvas{aspect-ratio:var(--map-aspect-ratio);min-height:0;background:#ccecf3}.imageMapCanvas.isTallMap,.imageMapCanvas.isOceaniaMap{min-height:0}.watercolorMapImage{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:fill;object-position:center}.imageMapCanvas.isTallMap .watercolorMapImage{object-fit:fill;background:#d7f0f5}.routeOverlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:2}.mapRegionPill{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:0 14px;color:#5d4637;background:#fffdf7f0;border:1px solid #ead7bf;border-radius:999px;box-shadow:var(--soft-shadow);font-size:13px;font-weight:900;pointer-events:auto;white-space:nowrap}.watercolorMap{display:block;width:100%;min-height:382px}.mapRegion polygon{stroke:#9579536b;stroke-width:.42;filter:url(#softMapShadow)}.mapLandSpain{fill:#ffe1a8}.mapLandFrance{fill:#ffd4d7}.mapLandUk{fill:#dceebd}.mapLandGermany{fill:#ffe9bd}.mapLandItaly{fill:#d9efc0}.mapLandAustria{fill:#e9def8}.mapLandJapan{fill:#cfeee3}.mapLandKorea{fill:#d5eff4}.mapLandUsa{fill:#f7dec8}.mapRegion polygon.isVisitedCountry{fill:#f7b7c0;stroke:#d8687e80}.countryLabel{fill:#5e4938b8;font-size:4.7px;font-weight:900;paint-order:stroke;stroke:#fffdf7c7;stroke-width:1.4px}.mapCanvas.isWideMap .countryLabel{font-size:3.3px;stroke-width:1px;opacity:.82}.mapDecoration{font-size:7px;opacity:.76}.mapRoute{fill:none;stroke:#ef7690;stroke-width:1.3;stroke-dasharray:2.8 2.8;stroke-linecap:round;opacity:.94}.mapVehicle{position:absolute;z-index:8;display:grid;width:25px;height:25px;place-items:center;transform:translate(-50%,-50%);background:#fffdf7db;border:1px solid rgba(239,118,144,.46);border-radius:50%;box-shadow:var(--soft-shadow);font-size:15px;line-height:1}.mapLegend{display:flex;flex-wrap:wrap;gap:5px 8px;margin:6px 10px 0;padding:6px 8px;color:#6d5747;background:#fffdf7f5;border:1px solid var(--line);border-radius:13px;box-shadow:none;font-size:10px;font-weight:800}.mapLegend span{display:inline-flex;align-items:center;gap:5px}.legendDot{width:12px;height:12px;border-radius:999px}.legendSymbol{display:inline-grid;width:15px;height:15px;place-items:center;font-style:normal;line-height:1}.legendSymbol.visited:before{color:#a87651;content:"🐾";font-size:13px}.legendSymbol.wishlist:before{color:var(--pink-strong);content:"♥";font-size:16px}.legendSymbol.next:before{content:"📍";font-size:13px}.legendDot.visited{background:#b58a62;border:2px solid #fffdf7;box-shadow:0 0 0 1px #d2b490}.legendDot.wishlist{background:#72a9c6;border:2px solid #fffdf7;box-shadow:0 0 0 1px #72a9c6}.legendDot.next{background:#ef7690;border:2px solid #fffdf7;box-shadow:0 0 0 1px #ef7690}.legendCurrent{position:relative;width:13px;height:13px;background:#fffdf7;border:2px solid var(--pink);border-radius:50%;box-shadow:0 0 0 1px #fffdf7cc}.legendCurrent:before{display:none}.legendCurrent:after{display:none}.cityMarker{position:absolute;z-index:3;display:grid;width:auto;min-width:20px;min-height:24px;place-items:center;padding:0;transform:translate(-50%,-100%);background:transparent;border:0;border-radius:999px;filter:drop-shadow(0 3px 5px rgba(86,61,40,.2))}.cityMarker svg{width:21px;height:21px;fill:#fff0f4;stroke-width:2.6}.mapPointMarker .mapMarkerLabel{transform:translate(var(--label-offset-x, 7px),var(--label-offset-y, -2px));margin-top:-2px;padding:1px 5px;color:#2f241d;background:#fffdf7e0;border:1px solid rgba(234,215,191,.82);border-radius:999px;font-size:10px;font-weight:900;line-height:1.25;white-space:nowrap}.destinationCityMarker svg{width:25px;height:25px;color:var(--pink-strong);fill:#fff0f4}.destinationCityMarker{z-index:4}.mapPinEmoji{display:block;font-size:23px;line-height:1;filter:drop-shadow(0 2px 3px rgba(86,61,40,.18))}.visitedCityMarker svg{width:19px;height:19px;color:#a87651;fill:#fff6df}.visitedCityMarker,.wishlistCityMarker{z-index:3}.wishlistCityMarker svg{width:20px;height:20px;color:var(--pink-strong);fill:#ffe8ee}.currentCityMarker{z-index:6;width:0;min-width:0;height:0;min-height:0;overflow:visible;filter:none;pointer-events:none}.currentAnchorDot{position:absolute;z-index:6;left:0;top:0;width:11px;height:11px;background:#fffdf7;border:2px solid var(--pink);border-radius:50%;box-shadow:0 2px 5px #5c442d2e;transform:translate(-50%,-50%)}.currentMarkerImage{position:absolute;z-index:7;left:calc(var(--cat-offset-x, 26px));top:calc(var(--cat-offset-y, 24px));display:block;width:44px;height:44px;object-fit:contain;filter:drop-shadow(0 7px 9px rgba(92,68,45,.24));transform:translate(-50%,-50%);-webkit-user-select:none;user-select:none}.mapStatusStrip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:8px 10px 0}.mapStatusChip{display:grid;gap:1px;min-width:0;padding:7px 9px;background:#fffdf7f5;border:1px solid var(--line);border-radius:13px;box-shadow:var(--soft-shadow)}.mapStatusChip span{color:#5f9fbe;font-size:10px;font-weight:900}.mapStatusChip strong{overflow:hidden;color:var(--ink);font-size:13px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.mapStatusChip.next span{color:var(--pink-strong)}.currentMarkerArt{position:relative;display:block;width:42px;height:42px;background:#fffdf7;border:2px solid #c8a57b;border-radius:50% 50% 54% 54%;box-shadow:0 8px 13px #5c442d38}.currentMarkerArt:after{position:absolute;left:50%;bottom:-8px;width:12px;height:12px;content:"";background:#fffdf7;border-right:2px solid #c8a57b;border-bottom:2px solid #c8a57b;transform:translate(-50%) rotate(45deg);border-bottom-right-radius:3px}.currentCatEar{position:absolute;top:-5px;width:13px;height:13px;background:#fffdf7;border-top:2px solid #c8a57b;border-left:2px solid #c8a57b;transform:rotate(45deg)}.currentCatEar.left{left:8px}.currentCatEar.right{right:8px}.currentCatFace{position:absolute;top:6px;right:5px;bottom:4px;left:5px;overflow:hidden;background:linear-gradient(180deg,#fffef9,#fff6e9);border-radius:50%}.currentCatPatch{position:absolute;top:-3px;left:4px;width:16px;height:15px;background:#3a302b;border-radius:48% 52% 58% 42%;transform:rotate(-18deg)}.currentCatEye{position:absolute;top:15px;width:3px;height:4px;background:#3f3026;border-radius:50%}.currentCatEye.left{left:12px}.currentCatEye.right{right:10px}.currentCatMouth{position:absolute;top:22px;left:50%;width:8px;height:4px;border-bottom:1.5px solid #9a725d;border-radius:0 0 8px 8px;transform:translate(-50%)}.currentSuitcase{position:absolute;right:-2px;bottom:4px;z-index:2;width:14px;height:12px;background:linear-gradient(180deg,#f9b3c6,#ee7996);border:1.5px solid #b9876c;border-radius:4px;box-shadow:0 2px 4px #5c442d2e}.currentSuitcase:before{position:absolute;top:-5px;left:4px;width:5px;height:5px;content:"";border:1.5px solid #b9876c;border-bottom:0;border-radius:5px 5px 0 0}.currentSuitcase:after{position:absolute;top:2px;left:6px;width:1.5px;height:7px;content:"";background:#fffdf7b8;border-radius:999px}.currentBubble{position:absolute;z-index:9;left:calc(var(--bubble-offset-x, -60px) + var(--label-offset-x, 0px));top:calc(var(--bubble-offset-y, -42px) + var(--label-offset-y, 0px));display:grid;min-width:74px;gap:1px;padding:5px 7px;color:#554235;background:#fffdf7f0;border:1px solid #b9d6e1;border-radius:12px;box-shadow:var(--soft-shadow);text-align:center;transform:translate(-50%,-50%)}.currentBubble small{color:#5f9fbe;font-size:10px;font-weight:900}.currentBubble strong{font-size:12px;line-height:1.25}.regionSwitch{display:flex;flex-wrap:wrap;gap:7px;padding:2px 1px 5px}.regionSwitch button,.selectorTabs button,.selectorRegionChips button{min-height:34px;padding:0 12px;color:#765f4e;background:#fffaf2;border:1px solid #ead7bf;border-radius:999px;font-size:12px;font-weight:900;white-space:nowrap}.regionSwitch button{min-height:31px;padding-inline:10px;font-size:11px}.regionSwitch button.isActive,.selectorTabs button.isActive,.selectorRegionChips button.isActive{color:#fff;background:linear-gradient(180deg,#ef8299,#e76885);border-color:transparent;box-shadow:0 6px 14px #e85f7e3d}.routeCard{display:grid;grid-template-columns:1fr 44px;align-items:center;gap:10px;padding:12px;background:#fff8e8}.routeCard div{display:grid;min-width:0;gap:3px}.routeCard strong{overflow-wrap:anywhere;font-size:15px}.routeCard span{color:#6f5a49;font-size:12px;font-weight:800}.routeCard svg{justify-self:center;color:#6ca7a8}.arrivalCard{display:grid;grid-template-columns:1fr 39px;gap:8px;align-items:center;padding:10px 12px;background:#fff4d7;border-color:#eac675}.arrivalCard span,.nextRibbon{color:#fff;background:var(--pink);border-radius:999px;font-size:11px;font-weight:900}.arrivalCard span{display:inline-block;margin-bottom:4px;padding:3px 8px}.arrivalCard strong{display:block;font-size:15px}.destinationCard{position:relative;display:grid;grid-template-columns:74px 1fr;gap:10px;align-items:center;margin-top:4px;padding:10px 10px 46px;border-radius:16px;z-index:4}.destinationPhotoWrap{display:grid;gap:5px;align-content:start}.destinationPhoto{position:relative;display:grid;height:58px;place-items:center;overflow:hidden;background:#fff7e8;border:1px solid #e3c9af;border-radius:12px}.destinationPhoto:before{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 24% 78%,rgba(255,255,255,.74) 0 10%,transparent 11%),radial-gradient(circle at 76% 28%,rgba(255,255,255,.58) 0 9%,transparent 10%);content:""}.destinationPhoto strong{position:relative;font-size:28px}.destinationCardMain{display:grid;min-width:0;gap:3px;align-items:start}.nextRibbon{justify-self:start;padding:4px 8px;box-shadow:0 4px 10px #e85f7e38}.destinationCard h2,.transportCard h2,.selectorHeading h2{margin:0;font-size:16px;line-height:1.35}.mapProgressLine{margin-top:2px}.mapProgressLine span{color:#6f5a49;font-size:14px;font-weight:900}.mapProgressLine strong{color:var(--pink-strong);font-size:27px;line-height:1}.destinationCardMain small{color:#6f5a49;font-size:12px;font-weight:800;padding-right:118px;text-align:left}.destinationSelectButton{position:absolute;right:11px;bottom:8px;min-height:32px;padding:0 13px;color:#6f5a49;background:#fffaf2;border:1px solid #dfcdb8;border-radius:999px;font-size:12px;font-weight:900}.transportCard,.destinationSelector,.recommendCard{display:grid;gap:10px;padding:12px;min-width:0;overflow:hidden}.transportHeader{display:flex;align-items:center;justify-content:space-between;gap:8px}.transportGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.transportGrid button{position:relative;display:grid;min-height:78px;place-items:center;gap:3px;padding:8px 6px;color:#725846;background:#fffaf2;border:1px solid #e5d1b9;border-radius:14px;font-weight:900}.transportGrid button.isActive{color:var(--pink-strong);background:#fff0f4;border-color:#efb4c1}.transportGrid button svg{color:#6ca7a8}.transportGrid small{color:var(--muted);font-size:10px;font-weight:800}.transportCheck{position:absolute;top:7px;right:7px;color:var(--pink-strong)}.routeCheckButton{display:inline-flex;align-items:center;justify-content:center;gap:2px;min-height:36px;padding:0 10px;color:#6f5a49;background:#fff3d8;border:1px solid #e8cf9b;border-radius:12px;font-size:12px;font-weight:900}.routeSummary{display:grid;gap:2px;padding:8px 10px;color:#6f5a49;background:#fff8e8;border:1px dashed #dfc2a2;border-radius:12px;font-size:12px}.routeSummary strong{color:var(--ink);font-size:13px}.destinationSearch{display:grid;grid-template-columns:18px 1fr;align-items:center;gap:7px;min-height:42px;padding:0 10px;color:var(--muted);background:#fffdfa;border:1px solid #ead7bf;border-radius:999px}.selectorTabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.selectorTabs button{width:100%;min-width:0;padding-inline:8px;line-height:1.2}.selectorRegionChips{display:flex;gap:7px;overflow-x:auto;padding-bottom:3px;scrollbar-width:none}.selectorRegionChips::-webkit-scrollbar{display:none}.emptySelectorText{margin:4px 0;padding:12px;color:var(--muted);background:#fffaf2;border:1px dashed #dfc2a2;border-radius:12px;font-size:13px;line-height:1.6}.destinationSearch input{min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font:inherit}.selectorHeading{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.selectorHeading span{color:var(--muted);font-size:11px;font-weight:800}.destinationRail{display:grid;grid-auto-columns:154px;grid-auto-flow:column;gap:10px;max-width:100%;min-width:0;overflow-x:auto;padding:2px 2px 6px;scrollbar-width:none}.destinationRail::-webkit-scrollbar{display:none}.destinationTile{position:relative;display:grid;grid-template-columns:1fr 34px;gap:6px;min-width:0}.destinationTileMain{position:relative;display:grid;gap:5px;min-height:142px;padding:7px;background:#fffdf7;border:1px solid #eadbc9;border-radius:13px;box-shadow:var(--soft-shadow);text-align:left}.cityBadge{justify-self:start;padding:3px 8px;color:#fff;background:#ef8299;border-radius:999px;font-size:10px;font-weight:900}.destinationTile:nth-child(2n) .cityBadge{background:#7bb5d2}.destinationTile:nth-child(3n) .cityBadge{background:#edb84d}.cityImage{display:grid;height:73px;place-items:center;overflow:hidden;background:#fff7e8;border-radius:10px}.cityWatercolorImage{position:relative;display:block;width:100%;height:100%;min-height:58px;overflow:hidden;object-fit:cover;object-position:center;background:radial-gradient(circle at 22% 20%,rgba(255,255,255,.76) 0 8%,transparent 9%),radial-gradient(circle at 78% 24%,rgba(255,255,255,.52) 0 7%,transparent 8%),linear-gradient(160deg,#d8eef4,#fff6d8 56%,#ffd7df);border-radius:inherit}.cityWatercolorFallback{display:grid;place-items:center}.cityWatercolorImage:after{position:absolute;top:0;right:0;bottom:0;left:0;content:"";background:radial-gradient(ellipse at 32% 76%,rgba(255,255,255,.35),transparent 28%),radial-gradient(ellipse at 76% 34%,rgba(239,130,153,.16),transparent 24%);mix-blend-mode:screen}.sceneSky,.sceneSun,.sceneLandmark,.sceneGround{position:absolute;display:block;pointer-events:none}.sceneSky{top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 22% 28%,rgba(255,255,255,.8) 0 8%,transparent 9%),radial-gradient(ellipse at 72% 36%,rgba(255,255,255,.58) 0 6%,transparent 7%);opacity:.75}.sceneSun{right:14%;top:15%;width:15px;height:15px;background:#efb84d61;border-radius:50%;filter:blur(.2px)}.sceneGround{left:0;right:0;bottom:0;height:23%;background:linear-gradient(180deg,#accea56b,#ebc69257);border-radius:50% 50% 0 0/22px 22px 0 0}.sceneLandmark{z-index:1;left:50%;bottom:18%;width:34px;height:42px;background:#ad674cbd;box-shadow:inset 0 -10px #ffffff29;transform:translate(-50%)}.sceneParis .sceneLandmark{width:35px;height:48px;clip-path:polygon(50% 0,62% 27%,73% 27%,65% 42%,78% 100%,58% 100%,52% 70%,48% 70%,42% 100%,22% 100%,35% 42%,27% 27%,38% 27%);background:linear-gradient(180deg,#b66c51,#d98a6b)}.sceneLondon .sceneLandmark{width:42px;height:38px;clip-path:polygon(8% 42%,22% 20%,36% 42%,46% 20%,58% 42%,72% 20%,88% 42%,88% 100%,8% 100%);background:linear-gradient(180deg,#c9956d,#a87754)}.sceneVienna .sceneLandmark{width:44px;height:35px;clip-path:polygon(0 35%,50% 0,100% 35%,91% 35%,91% 100%,9% 100%,9% 35%);background:linear-gradient(180deg,#c98c62,#e8ba72)}.sceneBarcelona .sceneLandmark{width:42px;height:46px;clip-path:polygon(8% 22%,20% 0,32% 24%,45% 2%,56% 24%,70% 0,84% 23%,88% 100%,12% 100%);background:linear-gradient(180deg,#d9976c,#b77863)}.sceneNewYork .sceneLandmark{width:38px;height:46px;clip-path:polygon(46% 0,56% 0,56% 18%,70% 22%,72% 100%,30% 100%,32% 22%,46% 18%);background:linear-gradient(180deg,#78a9b7,#9fcac6)}.sceneSeoul .sceneLandmark{width:46px;height:32px;clip-path:polygon(4% 52%,18% 28%,50% 0,82% 28%,96% 52%,84% 55%,84% 100%,16% 100%,16% 55%);background:linear-gradient(180deg,#92b99c,#d7a264)}.sceneSydney .sceneLandmark{width:50px;height:34px;clip-path:polygon(0 100%,14% 38%,30% 92%,48% 26%,64% 88%,84% 34%,100% 100%);background:linear-gradient(180deg,#f6efe3,#8fb8c8)}.sceneIsland .sceneLandmark,.sceneCoast .sceneLandmark,.sceneDefault .sceneLandmark{width:44px;height:30px;clip-path:ellipse(45% 32% at 50% 62%);background:linear-gradient(180deg,#95c9b0,#e6c47a)}.fallbackCityIcon{position:absolute;right:8px;bottom:5px;z-index:2;color:#604a3880;font-size:14px;line-height:1}.destinationTile strong{overflow-wrap:anywhere;font-size:13px;line-height:1.25}.destinationTile small{color:#6f5a49;font-size:11px;font-weight:800}.destinationTile .wishlistButton{width:34px;min-height:34px;align-self:end}.destinationCandidates{display:grid;gap:8px}.destinationCandidate{display:grid;grid-template-columns:1fr 38px;gap:7px;align-items:stretch}.destinationCandidate button{min-width:0}.destinationCandidate button:first-child{display:grid;gap:4px;min-height:54px;padding:8px 10px;text-align:left;background:#fffaf2;border:1px solid #eadbc9;border-radius:12px}.destinationCandidate strong{overflow-wrap:anywhere;font-size:14px}.destinationCandidate span{color:var(--muted);font-size:12px;font-weight:800}.wishlistButton{display:grid;width:38px;place-items:center;color:#c6ad99;background:#fffdf7;border:1px solid #eadbc9;border-radius:12px;font-size:18px;font-weight:900}.wishlistButton.isActive{color:var(--pink-strong);background:#fff0f4;border-color:#efb4c1}.albumScreen,.albumDetailScreen{gap:13px}.albumHero{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:15px 16px;background:linear-gradient(135deg,#fffdf7f5,#fff3e2f0),radial-gradient(circle at 12% 18%,rgba(239,118,144,.13),transparent 26%)}.albumHero h1,.albumDetailTop h1,.passportPage h2,.wishlistAlbumSection h2{margin:0}.albumHero h1{font-size:28px;line-height:1.12}.albumHero span{display:inline-block;margin-top:5px;color:var(--muted);font-size:12px;font-weight:900}.albumHeroStamp{display:grid;width:74px;min-height:58px;place-items:center;color:#b9795d;border:2px dashed rgba(185,121,93,.42);border-radius:14px;transform:rotate(3deg)}.albumHeroStamp strong{font-size:11px}.albumSortBar{display:grid;grid-template-columns:20px repeat(3,minmax(0,1fr));gap:6px;align-items:center;padding:4px 1px;color:var(--muted)}.albumSortBar button{min-width:0;min-height:32px;padding:0 8px;color:#765f4e;background:#fffaf2;border:1px solid #ead7bf;border-radius:999px;font-size:11px;font-weight:900}.albumSortBar button.isActive{color:#fff;background:linear-gradient(180deg,#ef8299,#e76885);border-color:transparent;box-shadow:0 6px 14px #e85f7e38}.albumList{display:grid;gap:10px}.albumTicketCard{position:relative;display:grid;grid-template-columns:82px 1fr 22px;gap:11px;align-items:center;min-width:0;padding:10px 11px;overflow:hidden;text-align:left;background:linear-gradient(90deg,#fffaf2f0,#fffdf7fa),radial-gradient(circle at 14px 14px,rgba(190,151,109,.12) 1px,transparent 2px);background-size:auto,18px 18px;border:1px solid #ead7bf;border-radius:16px;box-shadow:var(--soft-shadow)}.ticketPerforation{position:absolute;top:8px;bottom:8px;left:102px;border-left:1px dashed rgba(187,145,104,.6)}.albumTicketImage{display:block;width:82px;height:74px;overflow:hidden;background:#fff7e8;border:1px solid #ead7bf;border-radius:12px}.albumTicketImage .cityWatercolorImage,.wishlistAlbumImage .cityWatercolorImage,.polaroidPhoto .cityWatercolorImage{object-fit:contain;background:radial-gradient(circle at 18% 18%,rgba(255,255,255,.72) 0 12%,transparent 13%),linear-gradient(145deg,#fdf7e8,#eef7f8 52%,#ffe8ec)}.albumTicketBody{display:grid;gap:4px;min-width:0}.albumArrivalMark{justify-self:start;padding:3px 8px;color:#b9795d;border:1px solid rgba(185,121,93,.45);border-radius:999px;font-size:10px;font-weight:900;transform:rotate(-2deg)}.albumTicketBody strong{overflow-wrap:anywhere;font-size:17px;line-height:1.24}.albumTicketBody small{color:var(--muted);font-size:12px;font-weight:900}.wishlistAlbumSection{padding:14px}.wishlistAlbumSection .sectionHeading span{color:var(--pink-strong);font-size:12px;font-weight:900}.wishlistAlbumGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:12px}.wishlistAlbumCard{display:grid;gap:6px;min-width:0;padding:7px;background:#fffdf7b8;border:1px dashed #e4cdb2;border-radius:14px}.wishlistAlbumImage{position:relative;height:72px;overflow:hidden;background:linear-gradient(145deg,#daeef1a6,#ffedc4a6),radial-gradient(circle at 72% 24%,rgba(255,255,255,.8) 0 10px,transparent 11px);border-radius:10px;filter:saturate(.82)}.unknownCityArt{display:grid;width:100%;height:100%;place-items:center;color:#89694e70;font-size:30px;font-weight:900}.lockBadge{position:absolute;right:5px;bottom:5px;display:inline-flex;gap:3px;align-items:center;padding:3px 6px;color:#8b6b55;background:#fffaf2db;border:1px solid rgba(224,196,165,.82);border-radius:999px;font-size:9px;font-weight:900}.wishlistAlbumCard strong,.wishlistAlbumCard small{overflow-wrap:anywhere}.wishlistAlbumCard strong{font-size:12px;line-height:1.25}.wishlistAlbumCard small{color:var(--muted);font-size:10px;font-weight:800}.albumDetailTop{display:grid;grid-template-columns:42px 1fr 42px;gap:8px;align-items:center}.albumDetailTop h1{overflow-wrap:anywhere;font-size:18px;line-height:1.25;text-align:center}.albumBook{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;padding:8px;background:linear-gradient(90deg,rgba(142,91,56,.3),transparent 4%,transparent 48%,rgba(119,74,43,.3) 50%,transparent 52%,transparent 96%,rgba(142,91,56,.26)),#fff7e8;border:1px solid #d3ad82;border-radius:18px;box-shadow:inset 0 0 0 2px #fffaf2c2,0 12px 24px #76573929}.albumPage{position:relative;overflow:hidden;min-height:470px;padding:12px 10px;background:linear-gradient(135deg,#fffdf7fa,#fff7e8fa),radial-gradient(circle at 16px 16px,rgba(198,158,115,.12) 1px,transparent 2px);background-size:auto,19px 19px;border:1px solid rgba(232,211,185,.9);border-radius:14px 8px 8px 14px;box-shadow:inset 0 0 0 1px #ffffff8c}.memoryPage{border-left:0;border-radius:8px 14px 14px 8px}.albumPage:before{position:absolute;top:9px;right:9px;bottom:9px;left:9px;pointer-events:none;border:1px solid rgba(207,174,138,.28);border-radius:12px;content:""}.passportPage:after{position:absolute;left:10px;right:10px;bottom:12px;color:#8e68451f;content:"♜  ✈  ♜";font-size:38px;line-height:1;text-align:center}.passportFlag{margin-top:20px;font-size:28px;text-align:center}.passportCityEn{margin:18px 0 0;color:#b9795d;font-size:16px;font-weight:900;letter-spacing:2px;text-align:center}.passportPage h2{position:relative;z-index:1;font-size:19px;line-height:1.12;text-align:center}.passportCountry{position:relative;z-index:1;margin:5px 0 10px;color:var(--muted);font-size:10px;font-weight:900;line-height:1.35;text-align:center}.arrivalStamp{position:relative;z-index:1;display:grid;justify-items:center;align-content:center;width:min(100%,128px);aspect-ratio:1;gap:1px;margin:14px auto 12px;padding:15px 10px;color:#c05346d1;border:3px double rgba(192,83,70,.72);border-radius:50%;box-shadow:inset 0 0 0 1px #c0534640;transform:rotate(-6deg)}.arrivalStamp:before,.arrivalStamp:after{width:78%;height:1px;background:#c0534657;content:""}.arrivalStamp span{order:-2;font-size:15px;font-weight:900;letter-spacing:1.5px}.arrivalStamp i{order:-1;margin-bottom:1px;font-style:normal;font-size:15px;line-height:1}.arrivalStamp strong{font-size:11px;line-height:1.25;text-align:center}.arrivalStamp small{max-width:96%;overflow-wrap:anywhere;font-size:9px;font-weight:900;letter-spacing:.5px}.arrivalMeta{position:relative;z-index:1;display:grid;grid-template-columns:1fr;gap:6px;margin:10px 0 0}.arrivalMeta div{padding:7px 8px;background:#fffaf2c2;border:1px solid #ead7bf;border-radius:10px}.arrivalMeta dt,.arrivalMeta dd{margin:0}.arrivalMeta dt{color:var(--muted);font-size:9px;font-weight:900}.arrivalMeta dd{margin-top:2px;font-size:11px;font-weight:900}.arrivalCatValue{display:inline-flex;gap:6px;align-items:center}.arrivalCatValue img{width:26px;height:26px;object-fit:contain;filter:drop-shadow(0 3px 4px rgba(118,87,57,.14))}.memoryPage{display:grid;gap:8px;align-content:start}.polaroidPhoto{display:grid;gap:6px;padding:7px 7px 9px;background:#fffefb;border:1px solid #ead7bf;border-radius:12px;box-shadow:0 8px 18px #7657391f;transform:rotate(1deg)}.polaroidPhoto .cityWatercolorImage{height:122px;border-radius:9px}.polaroidPhoto span{color:var(--muted);font-size:11px;font-weight:900;text-align:center}.catComment{display:grid;gap:6px;align-items:center}.catComment img{display:none;width:36px;height:36px;object-fit:cover;border:2px solid #fff;border-radius:50%;box-shadow:var(--soft-shadow)}.catComment p{position:relative;margin:0;padding:9px 10px;color:#6f5a49;background:#fff5da;border:1px solid #ead7bf;border-radius:14px;font-size:12px;font-weight:800;line-height:1.45}.achievementCard{position:relative;padding:10px 9px;background:#fffaf2e0;border:1px solid #ead7bf;border-radius:12px}.achievementCard:before,.achievementCard:after{position:absolute;width:22px;height:9px;background:#d29f6859;content:"";transform:rotate(-26deg)}.achievementCard:before{top:-2px;left:-4px}.achievementCard:after{right:-4px;bottom:-2px}.achievementGrid{display:grid;grid-template-columns:1fr;gap:3px;margin-top:7px}.achievementGrid div{display:flex;justify-content:space-between;gap:6px;padding:4px 0;background:transparent;border-bottom:1px solid rgba(223,194,162,.65);border-radius:0}.achievementGrid span{display:block;color:var(--muted);font-size:10px;font-weight:900}.achievementGrid strong{display:block;margin-top:0;color:var(--pink-strong);font-size:12px}.abilityGrowth{margin:7px 0 0;padding:7px 8px;color:#6f5a49;background:#edf7df;border-radius:11px;font-size:11px;font-weight:900}.catsScreen{gap:13px}.catsTitleRow{display:flex;align-items:center;justify-content:space-between;padding:2px 3px}.catsTitleRow h1{margin:0;font-size:30px;line-height:1.1}.catsTitlePaw{display:grid;width:42px;height:42px;place-items:center;color:#a7774d;background:#f8ddb5;border:1px solid #dec39d;border-radius:50%;box-shadow:var(--soft-shadow)}.mainCatCard{position:relative;display:grid;grid-template-columns:46% 1fr;gap:12px;align-items:center;padding:13px;overflow:hidden;background:linear-gradient(135deg,#fffdf7f7,#fff3e2f2),radial-gradient(circle at 12% 16%,rgba(239,118,144,.13),transparent 22%),radial-gradient(circle at 88% 20%,rgba(154,207,214,.16),transparent 24%)}.mainCatCard:before{position:absolute;top:10px;right:10px;bottom:10px;left:10px;pointer-events:none;border:1px dashed rgba(211,178,139,.62);border-radius:16px;content:""}.mainCatArt,.mainCatProfile{position:relative;z-index:1}.mainCatArt{display:grid;min-height:178px;place-items:center;background:linear-gradient(180deg,#fffaf2b3,#fff0f480),radial-gradient(circle at 50% 84%,rgba(220,184,139,.22) 0 30%,transparent 31%);border:1px solid #ead7bf;border-radius:16px}.mainCatArt img{width:100%;height:168px;object-fit:contain;object-position:center;filter:drop-shadow(0 8px 10px rgba(118,87,57,.14))}.catDecorPaw{position:absolute;right:9px;top:8px;color:#e85f7eb8;font-size:18px;transform:rotate(12deg)}.mainCatProfile{display:grid;gap:7px;min-width:0}.mainCatProfile h2{margin:0;font-size:25px;line-height:1.15}.mainCatProfile h2 span{color:#b98557;font-size:17px}.mainCatProfile p{margin:0;color:#6f5a49;font-size:13px;font-weight:800;line-height:1.55}.mainCatProfile blockquote{margin:2px 0 0;padding:9px 11px;white-space:pre-line;color:#6b4c3a;background:#fff7db;border:1px solid #ead7bf;border-radius:14px 14px 14px 4px;font-size:13px;font-weight:900;line-height:1.55}.catPicker{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.catPickerCard{display:grid;gap:5px;min-width:0;min-height:92px;padding:6px 4px;color:#6f5a49;background:#fffdf7;border:1px solid #ead7bf;border-radius:13px;box-shadow:0 4px 10px #76573912}.catPickerCard.isActive{color:var(--pink-strong);background:#fff0f4;border-color:#ef9caf;box-shadow:0 7px 16px #e85f7e33}.catPickerCard img{width:100%;height:55px;object-fit:contain;object-position:center}.catPickerCard span{overflow-wrap:anywhere;font-size:10px;font-weight:900;line-height:1.15}.todayCatLine{padding:13px 14px;background:radial-gradient(circle at 92% 18%,rgba(239,118,144,.16),transparent 20%),#fffdf7}.todayCatLine p{margin:9px 0 0;padding:12px 13px;white-space:pre-line;color:#5f4636;background:#fff6dd;border:1px solid #ead7bf;border-radius:18px 18px 18px 5px;font-size:15px;font-weight:900;line-height:1.65}.catWordsSection,.catTravelSection{padding:14px}.catWordList{display:grid;gap:8px;margin-top:11px}.catWordItem{display:grid;grid-template-columns:42px 1fr;gap:8px;align-items:center}.catWordItem img{width:42px;height:42px;object-fit:contain;background:transparent;border:0;border-radius:0;filter:drop-shadow(0 4px 5px rgba(118,87,57,.14))}.catWordItem div{position:relative;padding:8px 10px;background:#fffaf2;border:1px solid #ead7bf;border-radius:13px}.catWordItem div:before{position:absolute;left:-6px;top:16px;width:10px;height:10px;background:#fffaf2;border-bottom:1px solid #ead7bf;border-left:1px solid #ead7bf;content:"";transform:rotate(45deg)}.catWordItem strong{display:block;color:#8e6845;font-size:11px}.catWordItem p{margin:2px 0 0;color:#5f4636;font-size:12px;font-weight:800;line-height:1.45}.catMemoryRail{display:flex;gap:10px;margin-top:12px;overflow-x:auto;padding:1px 2px 4px;scrollbar-width:none}.catMemoryRail::-webkit-scrollbar{display:none}.catMemoryCard{display:grid;flex:0 0 138px;gap:7px;min-width:0;padding:8px;text-align:left;background:#fffdf7;border:1px solid #ead7bf;border-radius:14px;box-shadow:var(--soft-shadow)}.catMemoryImage{display:block;height:86px;overflow:hidden;background:#fff7e8;border-radius:10px}.catMemoryImage .cityWatercolorImage{object-fit:contain}.catMemoryMeta{display:grid;gap:3px}.catMemoryMeta strong{display:inline-flex;gap:4px;align-items:center;font-size:13px;line-height:1.25}.catMemoryMeta small{color:var(--pink-strong);font-size:11px;font-weight:900}.catMemoryMeta em{color:#6f5a49;font-size:11px;font-style:normal;font-weight:800;line-height:1.4}.catNotebookHint{display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:center;padding:11px 13px;color:#6f5a49;background:#fff5da}.catNotebookHint p{margin:0;font-size:12px;font-weight:900;line-height:1.5}@media(max-width:360px){.appMain{padding-inline:12px}.heroProgress{grid-template-columns:78px 1fr}.catPortrait{width:78px;height:78px}.categoryTile{min-height:74px;font-size:13px}.metric strong{font-size:15px}.questRow{grid-template-columns:30px 1fr auto 28px;gap:5px}.suggestionCard{grid-template-columns:1fr auto}.suggestionCard img{display:none}.mapToolbar{inset-inline:8px;gap:6px}.worldToggle{min-height:36px;padding-inline:10px;font-size:12px}.mapLegend{padding:7px 8px;font-size:10px}.destinationCard{grid-template-columns:74px 1fr}.destinationPhoto{height:68px}.mapProgressLine strong{font-size:26px}.transportGrid{gap:6px}.transportGrid small{display:none}.albumTicketCard{grid-template-columns:72px 1fr 18px;gap:9px}.ticketPerforation{left:90px}.albumTicketImage{width:72px;height:68px}.wishlistAlbumGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.mainCatCard{grid-template-columns:1fr}.mainCatArt{min-height:150px}.mainCatArt img{height:144px}.catPicker{gap:5px}.catPickerCard{min-height:84px}.catPickerCard img{height:48px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
