:root{--ink:#101828;--ink-soft:#344054;--muted:#667085;--muted-light:#98a2b3;--surface:#ffffff;--surface-2:#fbfcfe;--surface-soft:#f2f6fb;--canvas:#eef4fb;--canvas-warm:#f8f4ec;--line:#e5eaf1;--line-strong:#d2dae6;--navy:#173d67;--blue:#286bc1;--blue-light:#e8f1ff;--cyan:#30c7de;--gold:#c9a864;--gold-soft:#f5edda;--danger:#b42336;--danger-soft:#fff0f2;--shadow:0 14px 36px rgba(24,54,91,.10);--shadow-soft:0 8px 22px rgba(24,54,91,.08);--radius:22px}*{box-sizing:border-box}html{background:var(--canvas)}body{margin:0;color:var(--ink);background:radial-gradient(circle at 8% -8%,rgba(249,239,210,.72),transparent 31rem),radial-gradient(circle at 92% 5%,rgba(191,228,246,.78),transparent 34rem),var(--canvas);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img,video{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(36px,10vw,56px);line-height:.98;letter-spacing:-.065em;margin-bottom:12px}h2{font-size:23px;line-height:1.1;letter-spacing:-.04em;margin-bottom:8px}h3{font-size:17px;letter-spacing:-.02em;margin-bottom:6px}p{color:var(--muted)}input,select,textarea{width:100%;border:1px solid var(--line-strong);background:#fff;border-radius:13px;padding:12px 13px;outline:none;min-height:46px;color:var(--ink)}textarea{min-height:132px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(40,107,193,.12)}label{display:grid;grid-gap:7px;gap:7px;color:var(--ink-soft);font-size:14px;font-weight:730}.appHeader{position:-webkit-sticky;position:sticky;top:0;z-index:40;border-bottom:1px solid rgba(229,234,241,.84);background:rgba(250,252,255,.78);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.appHeaderInner{height:66px;max-width:1120px;padding:0 18px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:9px;color:var(--ink);font-weight:850;line-height:.95;letter-spacing:-.04em;font-size:17px}.brandMark{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#5a86bf,var(--navy) 64%);color:#fff;box-shadow:0 4px 12px rgba(20,61,103,.2)}.mobileBrandBreak{display:none}.headerLogin,.textButton{border:0;background:transparent;color:var(--navy);font-weight:760;padding:8px 0}.desktopNav{display:none;gap:4px;align-items:center}.desktopNav a,.navAction{display:inline-flex;align-items:center;gap:6px;padding:9px 10px;color:var(--muted);font-size:14px;border-radius:10px;background:transparent;border:0}.desktopNav a:hover,.navAction:hover{color:var(--navy);background:var(--blue-light)}.appPage,.landingPage{max-width:900px;margin:0 auto;padding:28px 16px 104px}.dashboardPage{max-width:860px}.pageIntro,.profileHero,.visitHero,.welcomeRow{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.sectionLabel,.welcomeKicker{display:inline-flex;align-items:center;gap:6px;color:var(--blue);font-size:12px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.welcomeRow h1{margin:7px 0 5px}.welcomeText{margin:0;font-size:15px}.profileAvatar{flex:0 0 auto;overflow:hidden;display:grid;place-items:center;background:linear-gradient(145deg,#c6dbef,#f2e8da);color:var(--navy);font-weight:850}.profileAvatar img{width:100%;height:100%;object-fit:cover}.dashboardAvatar{width:58px;height:58px;border-radius:50%;border:3px solid #fff;box-shadow:var(--shadow-soft);font-size:21px}.heroAvatar{width:84px;height:84px;border-radius:27px;box-shadow:var(--shadow);font-size:29px}.large{width:82px;height:82px;border-radius:25px;font-size:28px}.dashboardFlow{display:grid;grid-gap:18px;gap:18px;margin-top:24px}.currentAreaCard,.detailLine,.mediaPanel,.ratingPanel,.recentSection,.rouletteModule,.surfacePanel,.visitNotesPanel{border:1px solid rgba(224,230,239,.96);background:rgba(255,255,255,.93);box-shadow:var(--shadow);border-radius:var(--radius)}.currentAreaCard{padding:20px}.currentAreaCard h2{margin-top:7px}.mapPreview{position:relative;height:126px;margin:16px 0 12px;overflow:hidden;border-radius:17px;border:1px solid #dce4ec;background:linear-gradient(90deg,transparent 47%,rgba(255,255,255,.75) 48% 53%,transparent 54%),linear-gradient(0deg,transparent 45%,rgba(255,255,255,.75) 46% 54%,transparent 55%),repeating-linear-gradient(118deg,rgba(255,255,255,.78) 0 5px,transparent 5px 32px),linear-gradient(135deg,#e4efdf,#dde9f3 45%,#d5e4db)}.mapStreet{position:absolute;height:11px;width:145%;background:rgba(255,255,255,.75);border:1px solid rgba(199,210,223,.45);border-radius:999px;transform-origin:left center}.streetOne{top:24px;left:-15px;transform:rotate(15deg)}.streetTwo{top:78px;left:-10px;transform:rotate(-23deg)}.streetThree{top:112px;left:-25px;transform:rotate(7deg)}.mapBlock{position:absolute;border-radius:10px;background:rgba(157,191,157,.45)}.blockOne{width:63px;height:38px;bottom:16px;left:26px}.blockTwo{width:72px;height:42px;top:12px;right:30px}.mapPin{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);color:#fff;width:39px;height:39px;display:grid;place-items:center;background:var(--navy);border:4px solid #fff;border-radius:50% 50% 50% 0;rotate:-45deg;box-shadow:0 6px 16px rgba(17,55,95,.24)}.mapPin svg{rotate:45deg}.locationMeta,.rouletteHint,.statusLine{margin:0;font-size:13px;color:var(--muted)}.actions,.dashboardQuickActions,.pickActions,.splitActions{display:flex;flex-wrap:wrap;gap:9px}.splitActions{margin-top:16px}.button,.outlineAction{min-height:43px;border-radius:12px;padding:0 13px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:14px;font-weight:760;border:1px solid transparent}.outlineAction{flex:1 1 150px;background:#fff;border-color:var(--line-strong);color:var(--ink)}.outlineAction.disabled{opacity:.45;pointer-events:none}.button.primary{background:linear-gradient(135deg,var(--blue),#209ec6);color:#fff;box-shadow:0 7px 16px rgba(40,107,193,.22)}.button.primary:hover{filter:brightness(.97)}.button.soft{background:var(--blue-light);color:var(--navy)}.button.ghost{background:#fff;border-color:var(--line-strong);color:var(--ink)}.button.fullWidth{width:100%;margin-top:12px}.button:disabled,.outlineAction:disabled{cursor:not-allowed;opacity:.65}.iconButton{min-width:43px;min-height:43px;border:1px solid var(--line-strong);color:var(--navy);background:#fff;border-radius:12px;display:grid;place-items:center}.iconButton.danger{color:var(--danger);background:var(--danger-soft);border-color:#ffd8de}.rouletteModule{padding:20px;overflow:hidden}.sectionHeading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.sectionHeading h2{margin:6px 0 0}.dateChip,.pickedState,.smallPill{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:760}.smallPill{background:var(--surface-soft);color:var(--muted)}.wheelWrap{display:grid;place-items:center;padding:22px 0 6px;position:relative}.wheelPointer{position:absolute;top:14px;left:calc(50% - 11px);z-index:4;width:0;height:0;border-left:11px solid transparent;border-right:11px solid transparent;border-top:19px solid var(--navy);filter:drop-shadow(0 3px 3px rgba(25,53,85,.2))}.rouletteWheel{position:relative;width:min(75vw,310px);aspect-ratio:1;border-radius:50%;border:10px solid #fff;background:repeating-conic-gradient(from -22.5deg,#f5ead6 0deg 38deg,#fff 38deg 45deg),conic-gradient(from -22.5deg,#d9f0f7,#f2e6cf,#cfe2f2,#eddcc5,#d9eef1,#f2e6cf,#c8dceb,#efe1cd,#d9f0f7);box-shadow:0 0 0 1px #d7e2ed,0 12px 32px rgba(27,74,118,.14),0 0 28px rgba(48,199,222,.18)}.rouletteWheel.spinning{animation:wheelSpin .9s cubic-bezier(.15,.7,.18,1) both}@keyframes wheelSpin{0%{transform:rotate(0deg)}to{transform:rotate(840deg)}}.wheelChurch{position:absolute;width:34px;height:34px;display:grid;place-items:center;color:var(--navy);background:rgba(255,255,255,.72);border-radius:50%;box-shadow:0 2px 5px rgba(36,74,111,.12)}.church1{top:10%;left:50%;transform:translateX(-50%)}.church2{top:22%;right:14%}.church3{top:50%;right:7%;transform:translateY(-50%)}.church4{bottom:18%;right:15%}.church5{bottom:9%;left:50%;transform:translateX(-50%)}.church6{bottom:18%;left:15%}.church7{top:50%;left:7%;transform:translateY(-50%)}.church8{top:22%;left:14%}.wheelCenter{position:absolute;inset:30%;border:4px solid #fff;border-radius:50%;color:#fff;background:linear-gradient(145deg,#2180df,#22c0d2);box-shadow:0 8px 18px rgba(20,93,171,.26);display:grid;place-content:center;grid-gap:4px;gap:4px;text-align:center;font-size:11px;line-height:1.08;font-weight:850;letter-spacing:.035em}.wheelCenter:disabled{opacity:.67;cursor:not-allowed}.activePick{margin-top:16px;padding:15px;border-radius:17px;border:1px solid #d8e8f5;background:linear-gradient(135deg,#f8fcff,#eef8fb)}.activePickTop{display:flex;justify-content:space-between;gap:8px;align-items:center}.dateChip{background:var(--blue-light);color:var(--navy)}.pickedState{background:var(--gold-soft);color:#8a682c}.activePick h3{font-size:20px;margin:13px 0 5px}.activePick p{margin:0 0 8px;font-size:14px}.serviceTime{display:flex;align-items:center;gap:6px;color:var(--ink-soft)!important}.pickActions{margin-top:12px}.statusLine{margin-top:13px}.recentSection{margin-top:18px;padding:20px}.textLink{display:inline-flex;align-items:center;gap:3px;color:var(--blue);font-size:14px;font-weight:760}.journalCards,.visitPreviewList{display:grid;grid-gap:10px;gap:10px;margin-top:16px}.journalCard,.visitPreview{display:flex;align-items:center;gap:12px;padding:11px;border:1px solid var(--line);border-radius:16px;background:#fff}.journalCard:hover,.visitPreview:hover{border-color:#c2d7ee;box-shadow:var(--shadow-soft)}.journalThumb,.visitThumb{flex:0 0 auto;width:52px;height:52px;overflow:hidden;display:grid;place-items:center;border-radius:15px;color:var(--navy);background:linear-gradient(135deg,#d8e7f1,#f2e4cf)}.journalThumb img,.visitThumb img{width:100%;height:100%;object-fit:cover}.journalCopy,.visitPreviewCopy{display:grid;min-width:0;grid-gap:2px;gap:2px}.journalCopy strong,.visitPreviewCopy strong{font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journalCopy small,.visitPreviewCopy small{color:var(--muted);font-size:13px}.visitArrow{margin-left:auto;color:var(--muted-light)}.starLine{color:var(--gold);letter-spacing:1px;font-size:14px}.emptyJournal{display:grid;justify-items:center;text-align:center;padding:24px;border-radius:16px;color:var(--muted)}.dashboardQuickActions{margin-top:15px}.mobileTabs{position:fixed;z-index:50;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,1fr);height:75px;padding:7px 8px max(7px,env(safe-area-inset-bottom));background:rgba(255,255,255,.96);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.mobileTab{display:grid;place-items:center;align-content:center;grid-gap:3px;gap:3px;color:var(--muted);font-size:10px;font-weight:700}.mobileTab.active{color:var(--blue)}.mobileTab.active svg{stroke-width:2.7}.pageIntro{margin-bottom:22px}.pageIntro p,.profileHero p,.visitHero p{margin:7px 0 0}.journalCard{padding:13px}.journalThumb{width:64px;height:64px;border-radius:18px}.journalCopy{flex:1 1}.addressText{color:var(--muted-light)!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profilePage{display:grid;grid-gap:17px;gap:17px}.profileHero{padding:6px 2px 1px}.profileHero h1{font-size:37px;margin:7px 0 2px}.statGrid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}.statGrid article{padding:15px 9px;display:grid;justify-items:center;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.88);box-shadow:var(--shadow-soft)}.statGrid strong{font-size:24px;letter-spacing:-.05em}.statGrid span{color:var(--muted);font-size:12px}.profileActivity{display:flex;align-items:center;gap:8px;padding:12px 14px;color:var(--ink-soft);border-radius:13px;background:var(--gold-soft);font-size:14px}.detailLine,.mediaPanel,.ratingPanel,.surfacePanel,.visitNotesPanel{padding:20px}.profileEditor{display:grid;grid-gap:20px;gap:20px}.avatarEditor{display:flex;align-items:center;gap:15px;padding-bottom:18px;border-bottom:1px solid var(--line)}.avatarCopy h2{margin:0 0 3px;font-size:17px}.avatarCopy p{margin:0 0 6px;font-size:13px}.profileForm{display:grid;grid-gap:15px;gap:15px}.profileNotice{padding:11px 12px;color:#157347;background:#eaf7ee;border-radius:11px;font-size:14px}.preferencePanel p{font-size:14px}.settingsRow{display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:12px;gap:12px;margin-top:14px;padding:12px 0 0;border-top:1px solid var(--line)}.settingsRow small,.settingsRow strong{display:block}.settingsRow small{margin-top:2px;color:var(--muted);font-size:13px}.settingsIcon{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;color:var(--blue);background:var(--blue-light)}.accountPanel{display:flex;align-items:center;justify-content:space-between;gap:15px}.navAction{color:var(--danger);border:1px solid #ffd9df;background:var(--danger-soft);padding:9px 11px;border-radius:10px;font-size:13px;font-weight:720;display:inline-flex;gap:6px;align-items:center}.visitDetailPage{display:grid;grid-gap:15px;gap:15px}.backLink{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:14px;font-weight:720;width:max-content}.visitHero{padding:2px 0 5px}.visitHero h1{font-size:36px;margin:6px 0}.visitHero .button{flex:0 0 auto}.visitNotesPanel h2{font-size:19px}.visitNotesPanel p{margin:0;color:var(--ink-soft);white-space:pre-wrap}.ratingPanel{display:grid;grid-gap:9px;gap:9px}.ratingRow{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);color:var(--ink-soft)}.ratingRow:last-child{border-bottom:0}.ratingRow span{display:flex;align-items:center;gap:7px}.ratingRow strong{color:var(--gold);letter-spacing:1px;font-size:15px}.ratingRow.total{margin:2px -2px -2px;padding:12px;border-radius:11px;background:var(--surface-soft);color:var(--ink)}.detailLine{display:flex;justify-content:space-between;gap:14px;align-items:center}.detailLine strong{color:var(--ink)}.detailLine span{color:var(--muted);text-align:right}.mediaPanel h2{margin:6px 0 0}.photoGrid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:10px;gap:10px;margin-top:16px}.photoGrid img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:15px;border:1px solid var(--line)}.videoGrid{display:grid;grid-gap:11px;gap:11px;margin-top:14px}.videoGrid video{width:100%;background:#0c1320;border-radius:15px}.uploadBox{margin-top:17px;padding-top:17px;border-top:1px solid var(--line)}.uploadHeading{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.uploadHeading h3{margin:0}.uploadQueue{display:grid;grid-gap:8px;gap:8px;margin-top:12px}.uploadRow{padding:10px;border:1px solid var(--line);border-radius:11px;background:#fff}.uploadMeta{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:13px}.uploadMeta strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uploadMeta span{color:var(--muted);font-size:12px}.progressTrack{width:100%;height:7px;border-radius:99px;background:var(--surface-soft);overflow:hidden;margin-top:9px}.progressFill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue),var(--cyan));transition:width .2s}.progressFill.failed{background:var(--danger)}.uploadError{color:var(--danger);font-size:12px;margin:6px 0 0}.uploadMessage{font-size:13px;margin:10px 0 0}.successText{color:#177245}.errorText{color:var(--danger)}.visuallyHidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.searchField{display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--line-strong);border-radius:13px;background:#fff;margin:16px 0 11px}.searchField input{border:0;box-shadow:none!important;padding-left:0}.journalList,.resultList{display:grid;grid-gap:9px;gap:9px}.churchResult,.journalItem{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px;border:1px solid var(--line);border-radius:14px;background:#fff}.churchResult:hover,.journalItem:hover{border-color:#c3d7ed}.churchResult span:first-child,.journalItem span{display:grid;grid-gap:4px;gap:4px}.churchResult small,.journalItem p{margin:0;color:var(--muted);font-size:13px}.addCircle{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--blue-light);color:var(--blue)}.card{padding:20px;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow)}.form{display:grid;grid-gap:15px;gap:15px}.ratingGrid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:10px;gap:10px}.placeHeader{display:flex;justify-content:space-between;gap:13px;align-items:flex-start}.alert{padding:11px 12px;border-radius:11px;font-size:14px}.alert.danger{color:#8c2633;border:1px solid #ffd5dc;background:var(--danger-soft)}.muted{color:var(--muted)}.compact{margin:6px 0;font-size:14px}.tiny{margin:7px 0 0;font-size:12px}.pageHeading{margin:5px 0 19px}.infoStrip{padding:13px;border-radius:12px;background:var(--surface-soft);color:var(--muted);font-size:14px}.rejectionItem{display:grid;grid-gap:10px;gap:10px;padding:15px;border:1px solid var(--line);border-radius:14px;background:#fff}.rejectionReason{min-height:22px;border-left:3px solid var(--blue-light);padding-left:10px;color:var(--muted);font-size:14px}.rejectionReason p{margin:0}.landingPage{min-height:calc(100vh - 66px)}.landingHero{padding:70px 0 40px;max-width:680px}.landingBadge{display:inline-flex;gap:6px;align-items:center;color:var(--blue);background:var(--blue-light);border-radius:99px;padding:7px 10px;font-size:13px;font-weight:750}.landingHero h1{font-size:clamp(49px,13vw,78px);margin:18px 0}.landingHero p{max-width:550px;font-size:18px}.landingFeatures{display:grid;grid-gap:12px;gap:12px}.landingFeatures article{padding:19px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.78)}.landingFeatures svg{color:var(--blue)}.landingFeatures h2{margin:11px 0 5px;font-size:20px}.landingFeatures p{margin:0;font-size:14px}.home,.page{max-width:900px;margin:0 auto;padding:28px 16px 104px}.page.narrow{max-width:760px}.stack{display:grid;grid-gap:15px;gap:15px}.grid2{display:grid;grid-gap:16px;gap:16px}.actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px}.locationLine{display:flex;align-items:center;gap:7px;color:var(--ink-soft);font-weight:720}@media (min-width:760px){.home,.page{padding:48px 28px 72px}.grid2{grid-template-columns:1.1fr .9fr}.appPage,.landingPage{padding:48px 28px 72px}.desktopNav{display:flex}.mobileTabs{display:none}.dashboardFlow{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.recentSection{grid-column:1/-1}.profilePage{max-width:820px}.profileEditor{grid-template-columns:240px 1fr;align-items:start}.avatarEditor{display:grid;justify-items:center;text-align:center;padding:0 20px 0 0;border-bottom:0;border-right:1px solid var(--line)}.visitDetailPage{max-width:760px}.photoGrid{grid-template-columns:repeat(3,1fr)}.journalCards{grid-template-columns:repeat(2,minmax(0,1fr))}.landingFeatures{grid-template-columns:repeat(3,1fr)}.rejectionItem{grid-template-columns:minmax(0,1fr) minmax(220px,.6fr);align-items:center}}