/* Make Disciples — Soft Radiance Phases 1–3 + visual repair (v3.00)
   Shared theme foundation, navigation, dialogs, settings selector, and Home. */

body.soft-radiance{
  --bg:#fff8ee;
  --bg-mid:#fff1e7;
  --panel:#fffdf9;
  --panel-deep:#fff6ec;
  --gold:#ff9b82;
  --gold-bright:#f16f58;
  --gold-dark:#d95542;
  --text:#4f352f;
  --muted:#80635b;
  --subtle:#a98c83;
  --line:rgba(239,132,103,.48);
  --line-soft:rgba(239,132,103,.19);
  --danger:#d94f5d;
  --success:#3d9b68;
  --purple:#8b73c7;
  --sr-coral:#ff8f79;
  --sr-coral-deep:#ec6e58;
  --sr-peach:#ffd6c2;
  --sr-cream:#fff8ee;
  --sr-yellow:#ffe7b5;
  --sr-blue:#bde1ff;
  --sr-mint:#cdeccf;
  --sr-lilac:#e8e3ff;
  --sr-shadow:0 14px 30px rgba(177,92,69,.14),0 3px 8px rgba(177,92,69,.09);
  --sr-inset:inset 0 1px 0 rgba(255,255,255,.96),inset 0 -7px 16px rgba(255,158,126,.08);
  --font-display:"Trebuchet MS","Segoe UI",Arial,sans-serif;
  color-scheme:light;
  color:var(--text);
  background:
    radial-gradient(circle at 12% 4%,rgba(255,231,181,.62),transparent 28rem),
    radial-gradient(circle at 94% 12%,rgba(189,225,255,.40),transparent 26rem),
    radial-gradient(circle at 12% 88%,rgba(205,236,207,.34),transparent 28rem),
    linear-gradient(180deg,#fffaf3 0%,#fff3ea 48%,#fff9f2 100%);
}
body.soft-radiance::before{
  content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.72;
  background:
    radial-gradient(circle at 8% 18%,rgba(255,255,255,.9) 0 3px,transparent 4px),
    radial-gradient(circle at 88% 28%,rgba(255,255,255,.85) 0 2px,transparent 3px),
    radial-gradient(circle at 18% 74%,rgba(255,255,255,.75) 0 2px,transparent 3px),
    linear-gradient(118deg,transparent 0 48%,rgba(255,255,255,.26) 49% 50%,transparent 51% 100%);
  background-size:auto,auto,auto,260px 260px;
}
body.soft-radiance .app-shell{max-width:960px}

/* Brand */
body.soft-radiance .brand{padding:8px 0 22px}
body.soft-radiance .brand-medallion{
  width:88px;height:88px;margin-bottom:13px;border:1px solid rgba(239,113,87,.62);border-radius:27px;
  background:
    radial-gradient(circle at 30% 18%,rgba(255,255,255,.98),transparent 24%),
    linear-gradient(150deg,#fffdf8 0%,#ffd8c7 52%,#ff9d85 100%);
  box-shadow:inset 0 0 0 5px rgba(255,255,255,.50),inset 0 -8px 18px rgba(238,100,76,.12),0 12px 25px rgba(193,87,62,.16);
  transform:rotate(-1deg)
}
body.soft-radiance .brand-medallion::before{inset:6px;border:1px solid rgba(255,255,255,.82);border-radius:21px}
body.soft-radiance .brand-medallion svg{width:50px;height:50px;filter:drop-shadow(0 2px 2px rgba(152,65,46,.14))}
body.soft-radiance .brand-medallion svg circle,
body.soft-radiance .brand-medallion svg path{fill:#fff7ee}
body.soft-radiance .brand-medallion svg circle:nth-child(2),
body.soft-radiance .brand-medallion svg circle:nth-child(3),
body.soft-radiance .brand-medallion svg path:nth-last-child(-n+2){fill:#f47f66}
body.soft-radiance .brand h1{
  color:#e96550;text-transform:none;letter-spacing:.01em;font-size:clamp(2.05rem,8vw,3.55rem);font-weight:800;
  text-shadow:0 2px 0 #fff,0 5px 12px rgba(213,83,59,.15)
}
body.soft-radiance .scripture{margin-top:12px}
body.soft-radiance .scripture em{color:#6c4b43;font-style:normal;font-weight:600}
body.soft-radiance .scripture strong{color:#d95b47}
body.soft-radiance .scripture strong::before,
body.soft-radiance .scripture strong::after{background:linear-gradient(90deg,transparent,#f29a83,transparent);box-shadow:none}

/* Shared glossy surfaces */
body.soft-radiance :is(.lux-frame,.connected-menu,.page-panel,.card,.metric,.settings-row,.notice,.empty-state,.dialog){
  border:1px solid rgba(239,132,103,.42);border-radius:22px;
  background:
    radial-gradient(circle at 12% 0%,rgba(255,255,255,.96),transparent 36%),
    linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,247,240,.96));
  box-shadow:var(--sr-inset),var(--sr-shadow);color:var(--text)
}
body.soft-radiance :is(.lux-frame,.connected-menu,.page-panel,.card,.metric,.settings-row,.notice,.empty-state,.dialog)::before{
  inset:5px;border:1px solid rgba(255,255,255,.90);border-radius:17px
}
body.soft-radiance :is(.lux-frame,.connected-menu,.page-panel,.card,.metric,.settings-row,.notice,.empty-state,.dialog)::after{
  left:8%;right:8%;top:1px;height:2px;opacity:.9;background:linear-gradient(90deg,transparent,rgba(255,255,255,.98),transparent)
}

/* Navigation */
body.soft-radiance .connected-menu{border-radius:27px;overflow:hidden;background:rgba(255,250,245,.96)}
body.soft-radiance .menu-button{
  color:#9a685e;border-right-color:rgba(238,133,105,.18);font-family:var(--font-display);font-weight:700;
  transition:transform .15s ease,color .15s ease,background .15s ease,box-shadow .15s ease
}
body.soft-radiance .menu-button svg{stroke-width:1.9}
body.soft-radiance .menu-button.active{
  color:#fff;background:
    radial-gradient(circle at 28% 8%,rgba(255,255,255,.92),transparent 18%),
    linear-gradient(180deg,#ffb39e 0%,#ff8f79 48%,#ef6c57 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.98),inset 0 -7px 13px rgba(192,65,44,.16),0 7px 15px rgba(220,91,67,.22)
}
body.soft-radiance .menu-button.active::before{top:4px;left:20%;right:20%;height:2px;background:rgba(255,255,255,.82);box-shadow:none;border-radius:99px}
body.soft-radiance .menu-button.active::after{display:none}
body.soft-radiance .sub-menu .menu-button.active{background:linear-gradient(180deg,#ffa991,#f47b64)}
body.soft-radiance .nav-dock.is-docked{filter:drop-shadow(0 12px 18px rgba(145,73,57,.18))}
body.soft-radiance .nav-dock.is-docked :is(.main-menu,.sub-menu){
  background:rgba(255,250,245,.985);box-shadow:inset 0 1px 0 #fff,0 0 0 4px rgba(255,248,240,.96),0 10px 20px rgba(146,73,57,.13)
}
body.soft-radiance.ui2-nav-docked::after{
  background:linear-gradient(180deg,#fff9f1 0%,#fff9f1 calc(100% - 18px),rgba(255,249,241,.96) calc(100% - 9px),rgba(255,249,241,0) 100%);
  box-shadow:0 9px 18px rgba(176,90,69,.08)
}
body.soft-radiance .settings-sub-menu::before{border-color:rgba(255,255,255,.78)}
body.soft-radiance .settings-sub-menu::after{background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),transparent)}

/* Page headings */
body.soft-radiance .page-panel{padding:19px;margin-bottom:16px}
body.soft-radiance .heading-icon,
body.soft-radiance .metric-icon,
body.soft-radiance .settings-icon,
body.soft-radiance .settings-hero-icon,
body.soft-radiance .settings-stat-icon{
  border-color:rgba(238,126,96,.44);color:#e96752;
  background:radial-gradient(circle at 28% 14%,#fff 0 10%,transparent 11%),linear-gradient(180deg,#fff9f4,#ffd8c9);
  box-shadow:inset 0 1px 0 #fff,0 5px 10px rgba(201,89,64,.10)
}
body.soft-radiance .page-heading h2,
body.soft-radiance .section-heading h3,
body.soft-radiance .settings-detail h3{color:#d95d49;font-weight:800}
body.soft-radiance .page-sub,
body.soft-radiance .card p,
body.soft-radiance .notice,
body.soft-radiance .empty-state,
body.soft-radiance .settings-detail p{color:var(--muted)}

/* Home — compact, centered dashboard tiles */
body.soft-radiance .metrics-grid{gap:11px}
body.soft-radiance .metric{
  min-height:126px;padding:14px;gap:10px;align-items:stretch;text-align:left;border-radius:20px
}
body.soft-radiance .metric:nth-child(4n+1){background:linear-gradient(180deg,#fff,#fff0eb)}
body.soft-radiance .metric:nth-child(4n+2){background:linear-gradient(180deg,#fff,#fff7dd)}
body.soft-radiance .metric:nth-child(4n+3){background:linear-gradient(180deg,#fff,#eef8ff)}
body.soft-radiance .metric:nth-child(4n+4){background:linear-gradient(180deg,#fff,#f0faef)}
body.soft-radiance .metric-heading{gap:9px}
body.soft-radiance .metric-icon{width:39px;height:39px;flex-basis:39px;border-radius:13px}
body.soft-radiance .metric-icon svg{width:22px;height:22px}
body.soft-radiance .metric-label{color:#81574f;font-size:.84rem;line-height:1.12;font-weight:800}
body.soft-radiance .metric-value{color:#d95d49;text-align:center;font-size:2.35rem;font-weight:800;text-shadow:0 1px 0 #fff}
body.soft-radiance .metric.wide{width:min(100%,390px)}

body.soft-radiance .quick-grid{gap:10px}
body.soft-radiance .action{
  min-height:54px;border:1px solid rgba(237,126,96,.44);border-radius:18px;color:#cb5b48;
  background:radial-gradient(circle at 22% 8%,#fff 0 8%,transparent 9%),linear-gradient(180deg,#fffefd,#ffe9de);
  box-shadow:inset 0 1px 0 #fff,inset 0 -5px 12px rgba(239,117,88,.07),0 6px 12px rgba(189,82,58,.10);
  font-weight:800
}
body.soft-radiance .action.primary,
body.soft-radiance .action.active{
  color:#fff;border-color:#ea715a;
  background:radial-gradient(circle at 22% 8%,rgba(255,255,255,.92) 0 8%,transparent 9%),linear-gradient(180deg,#ffaf99,#ff8b73 48%,#ed6c56);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.98),inset 0 -6px 13px rgba(176,52,34,.14),0 8px 16px rgba(205,78,53,.18)
}
body.soft-radiance .action.danger{color:#fff;border-color:#d84d59;background:linear-gradient(180deg,#f77a86,#dc5360)}
body.soft-radiance .action:disabled{background:#f2eeee;color:#aa9894;border-color:#d9cfcc}
body.soft-radiance .card{padding:15px;border-radius:19px}
body.soft-radiance .card-title{color:#5a3d36;font-size:1.18rem;font-weight:800}
body.soft-radiance .card-kicker{color:#dd664f}
body.soft-radiance .card-actions{gap:8px}
body.soft-radiance .progress-row{color:#765a53}
body.soft-radiance .progress-row strong{color:#d95d49}
body.soft-radiance .progress-track{height:12px;border-color:rgba(236,124,94,.34);background:#ffe8dd;box-shadow:inset 0 2px 4px rgba(188,87,63,.10)}
body.soft-radiance .progress-fill{background:linear-gradient(90deg,#ffb49f,#f27961);box-shadow:0 0 8px rgba(235,107,81,.18)}

/* Dialogs, forms, notices */
body.soft-radiance .dialog-layer.open{background:rgba(104,72,62,.34);backdrop-filter:blur(9px)}
body.soft-radiance .dialog{border-radius:24px;background:linear-gradient(180deg,#fffefb,#fff5ed)}
body.soft-radiance .dialog-head{border-bottom-color:rgba(237,127,98,.22)}
body.soft-radiance .dialog-head h3{color:#d95d49;font-weight:800}
body.soft-radiance .dialog-close{border-color:rgba(236,116,87,.42);border-radius:15px;background:linear-gradient(180deg,#fff,#ffd9ca);color:#d95d49;box-shadow:inset 0 1px 0 #fff,0 5px 10px rgba(192,80,56,.10)}
body.soft-radiance .dialog-body{color:#73564f}
body.soft-radiance .dialog-actions{border-top-color:rgba(237,127,98,.22)}
body.soft-radiance .notice{background:linear-gradient(180deg,#fffefb,#fff3e8)}
body.soft-radiance .notice strong{color:#d95d49}
body.soft-radiance .empty-state svg{stroke:#e56a53}
body.soft-radiance .detail-row,
body.soft-radiance .form-control,
body.soft-radiance .choice-button{
  color:var(--text);border-color:rgba(236,126,97,.34);background:#fffdfa;border-radius:14px;box-shadow:inset 0 2px 5px rgba(193,88,64,.05)
}
body.soft-radiance .detail-row strong,
body.soft-radiance .form-field,
body.soft-radiance .form-field legend{color:#715149}
body.soft-radiance .form-control{color-scheme:light}
body.soft-radiance .form-control:focus{border-color:#ef8068;box-shadow:0 0 0 3px rgba(242,126,101,.14)}
body.soft-radiance .choice-button.active{color:#fff;border-color:#e86d56;background:linear-gradient(180deg,#ffa68f,#ed6e58)}
body.soft-radiance .toast{background:#fff9f1;color:#c95543;border-color:rgba(235,116,88,.5);border-radius:16px;box-shadow:0 12px 25px rgba(129,64,49,.18)}

/* Phase-one settings support and Soft Radiance selector */
body.soft-radiance .settings-page{background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,247,240,.97))}
body.soft-radiance .settings-hero,
body.soft-radiance .settings-block,
body.soft-radiance .settings-status-card,
body.soft-radiance .settings-toggle-row,
body.soft-radiance .settings-stat,
body.soft-radiance .appearance-choice,
body.soft-radiance .settings-note,
body.soft-radiance .settings-danger-zone,
body.soft-radiance .settings-help-list details{
  border-color:rgba(236,126,97,.30)!important;background:linear-gradient(180deg,#fffefb,#fff5ed)!important;color:var(--text)!important;
  box-shadow:inset 0 1px 0 #fff,0 6px 14px rgba(181,83,60,.08)!important
}
body.soft-radiance .settings-hero h3,
body.soft-radiance .settings-block-head h4,
body.soft-radiance .settings-status-card strong,
body.soft-radiance .settings-toggle-copy strong,
body.soft-radiance .settings-stat strong,
body.soft-radiance .appearance-copy strong,
body.soft-radiance .settings-help-list summary{color:#775149!important}
body.soft-radiance .settings-eyebrow,
body.soft-radiance .settings-block-head p,
body.soft-radiance .settings-status-card small,
body.soft-radiance .settings-status-card span,
body.soft-radiance .settings-toggle-copy span,
body.soft-radiance .settings-stat>span:last-child,
body.soft-radiance .appearance-copy span{color:#9b756b!important}
body.soft-radiance .appearance-choice.active{border-color:#ef8068!important;box-shadow:inset 0 0 0 2px rgba(239,128,104,.18),0 8px 18px rgba(184,79,56,.11)!important}
body.soft-radiance .appearance-active-label{color:#fff!important;background:#ef7d65!important;border-color:#e26c56!important}
body.soft-radiance .soft-radiance-swatch{
  background:
    radial-gradient(circle at 28% 20%,#fff 0 12%,transparent 13%),
    linear-gradient(145deg,#fff8ee 0 27%,#ffd6c2 28% 55%,#ff9b82 56% 76%,#bde1ff 77% 100%)!important
}
.soft-radiance-swatch{
  background:
    radial-gradient(circle at 28% 20%,#fff 0 12%,transparent 13%),
    linear-gradient(145deg,#fff8ee 0 27%,#ffd6c2 28% 55%,#ff9b82 56% 76%,#bde1ff 77% 100%)!important
}
/* The Appearance preview is a miniature of the approved square Black & Gold interface. */
.black-gold-swatch{
  position:relative;
  overflow:hidden;
  border:2px solid #d4ad51!important;
  border-radius:4px!important;
  background:
    radial-gradient(circle at 50% -8%,rgba(255,223,127,.24),transparent 40%),
    linear-gradient(145deg,#17110a 0%,#050403 68%,#100b06 100%)!important;
  box-shadow:
    inset 0 0 0 3px #050403,
    inset 0 0 0 4px rgba(240,210,121,.82),
    inset 0 0 0 8px rgba(8,6,4,.96),
    0 4px 10px rgba(62,39,9,.24)!important
}
.black-gold-swatch::before{
  content:"";
  position:absolute;
  inset:10px;
  border:1px solid rgba(240,210,121,.92);
  border-radius:1px;
  background:
    linear-gradient(90deg,transparent 0 16%,rgba(240,210,121,.20) 17% 18%,transparent 19% 81%,rgba(240,210,121,.20) 82% 83%,transparent 84%),
    linear-gradient(180deg,rgba(255,236,174,.08),rgba(0,0,0,.18));
  box-shadow:inset 0 0 0 2px rgba(0,0,0,.62),0 0 7px rgba(232,193,88,.11)
}
.black-gold-swatch::after{
  content:"✦";
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:#f0d489;
  font-size:19px;
  line-height:1;
  text-shadow:0 0 7px rgba(240,212,137,.30)
}

body.soft-radiance .settings-toggle-switch{border-color:rgba(232,111,83,.42)!important;background:#f5ded5!important}
body.soft-radiance .settings-toggle-row.active .settings-toggle-switch{background:#ef8068!important}
body.soft-radiance .settings-segmented{border-color:rgba(236,126,97,.30)!important;background:#fff5ed!important}
body.soft-radiance .settings-segmented button{color:#8a655c!important;background:transparent!important}
body.soft-radiance .settings-segmented button.active{color:#fff!important;background:linear-gradient(180deg,#ffa68f,#ec6f59)!important}

/* v2.96 — Soft bubble pulse feedback.
   The control itself expands and settles. No ring, dot, burst, or detached click graphic. */
body.soft-radiance .ui2-tap-shimmer,
body.soft-radiance .ui2-soft-pop{display:none!important}

body.soft-radiance :is(button,.action,.menu-button,.settings-row,.settings-toggle-row,.dialog-close,.time-inline-action,.time-scope-option,.time-month-shift,.time-year-shift,.time-goal-option){
  transform-origin:center center;
  will-change:transform,filter,box-shadow
}

/* Touch-down: the whole glossy control gently swells, then rests slightly compressed. */
body.soft-radiance .ui2-pressing{
  animation:srBubblePress .16s cubic-bezier(.20,.78,.26,1) both!important;
  filter:saturate(1.045) brightness(1.015)!important;
  border-color:rgba(239,102,78,.62)!important;
  box-shadow:inset 0 3px 8px rgba(177,70,47,.11),0 4px 9px rgba(170,73,53,.10)!important
}

/* Release: a second soft swell, then a smooth return to the original size. */
body.soft-radiance .ui2-soft-release{
  animation:srBubbleRelease .24s cubic-bezier(.18,.82,.22,1) both!important
}
body.soft-radiance .ui2-activated{animation:none!important}

@keyframes srBubblePress{
  0%{transform:translateZ(0) scale(1)}
  48%{transform:translateZ(0) scale(1.035)}
  100%{transform:translateZ(0) scale(.972)}
}
@keyframes srBubbleRelease{
  0%{transform:translateZ(0) scale(.972)}
  44%{transform:translateZ(0) scale(1.045)}
  72%{transform:translateZ(0) scale(.992)}
  100%{transform:translateZ(0) scale(1)}
}
@media(prefers-reduced-motion:reduce){
  body.soft-radiance .ui2-pressing,
  body.soft-radiance .ui2-soft-release{animation:none!important;transform:none!important}
  body.soft-radiance .ui2-activated{animation:none!important}
}

/* Keep unfinished feature pages readable until their dedicated phases. */
body.soft-radiance :is(.contact-action-panel,.contact-card,.visit-card,.visit-tab-panel,.time-goal-card,.time-chart-panel,.time-entry-card,.service-month-card,.map-toolbar,.map-list-panel,.map-contact-card,.map-location-card,.recurring-card,.history-card,.settings-toolbox-dropdown,.toolbox-manage-row){
  border-color:rgba(236,126,97,.32)!important;background:linear-gradient(180deg,#fffefb,#fff5ed)!important;color:var(--text)!important;box-shadow:0 7px 15px rgba(177,82,59,.08)!important
}
body.soft-radiance :is(.contact-name,.visit-card h3,.time-entry-copy h3,.time-goal-card strong,.service-month-card span,.history-card h4,.toolbox-manage-row strong){color:#6e4b43!important}
body.soft-radiance :is(.contact-meta,.visit-card p,.time-entry-copy p,.time-goal-footer,.service-month-card p,.history-card p,.toolbox-manage-row span){color:#927067!important}

@media(max-width:440px){
  body.soft-radiance .brand-medallion{width:78px;height:78px;border-radius:24px}
  body.soft-radiance .brand h1{font-size:2rem}
  body.soft-radiance .page-panel{padding:14px;border-radius:19px}
  body.soft-radiance .metric{min-height:118px;padding:12px 10px}
  body.soft-radiance .metric-value{font-size:2.05rem}
  body.soft-radiance .metric-label{font-size:.76rem}
  body.soft-radiance .metric-icon{width:36px;height:36px;flex-basis:36px;border-radius:12px}
  body.soft-radiance .action{border-radius:16px;padding:9px 10px}
  body.soft-radiance .dialog{padding:15px;border-radius:21px}
}

/* =========================================================
   Soft Radiance Phase 2 — Contacts, Follow-ups & Bible Studies (v2.97)
   Purpose-built warm pastel surfaces replace Phase 1 compatibility styling.
   ========================================================= */
body.soft-radiance .contacts-page,
body.soft-radiance .visits-page{overflow:visible}

/* Shared Phase 2 interaction surfaces */
body.soft-radiance :is(
  .contact-action,.contact-filter,.contact-reset,.contact-card,.choice-button,
  .form-picker,.form-picker-option,.history-action,.share-option,.share-method,
  .share-outcome-button,.duplicate-value-choice,.visit-tab,.visit-choice,
  .picker-choice,.visit-card,.visit-contact-choice,.visit-resource-choice,
  .study-lesson-list-choice
){
  position:relative;
  isolation:isolate;
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
  transition:border-color .15s ease,filter .15s ease,box-shadow .15s ease,background .15s ease
}

/* Contacts command bar */
body.soft-radiance .contact-action-panel{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin-bottom:13px;
  overflow:hidden;
  border:1px solid rgba(235,118,91,.42)!important;
  border-radius:23px;
  background:
    radial-gradient(circle at 20% 0%,rgba(255,255,255,.98),transparent 32%),
    linear-gradient(180deg,#fffdf9 0%,#ffe9dd 100%)!important;
  box-shadow:inset 0 1px 0 #fff,inset 0 -10px 20px rgba(241,121,89,.08),0 11px 22px rgba(177,82,59,.12)!important
}
body.soft-radiance .contact-action-panel::before{
  content:"";
  position:absolute;
  inset:5px;
  border:1px solid rgba(255,255,255,.96);
  border-radius:17px;
  pointer-events:none
}
body.soft-radiance .contact-action-panel::after{
  content:"";
  position:absolute;
  left:10%;right:10%;top:1px;height:2px;
  border-radius:99px;
  background:linear-gradient(90deg,transparent,#fff,transparent);
  pointer-events:none
}
body.soft-radiance .contact-action{
  min-width:0;
  min-height:68px;
  border:0;
  border-right:1px solid rgba(235,118,91,.17);
  border-radius:0;
  background:transparent;
  color:#90665d;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:8px 4px;
  font-family:var(--font-display);
  font-size:.75rem;
  font-weight:800
}
body.soft-radiance .contact-action:last-child{border-right:0}
body.soft-radiance .contact-action svg{width:22px;height:22px;stroke-width:1.8}
body.soft-radiance .contact-action.active{
  color:#fff;
  background:
    radial-gradient(circle at 30% 5%,rgba(255,255,255,.92),transparent 18%),
    linear-gradient(180deg,#ffb39e 0%,#ff8f79 50%,#ed6b55 100%);
  box-shadow:inset 0 1px 0 #fff,inset 0 -7px 13px rgba(173,51,33,.13),0 7px 15px rgba(211,81,56,.16)
}
body.soft-radiance .contact-action.active::before{
  content:"";
  position:absolute;
  left:20%;right:20%;top:4px;height:2px;
  border-radius:99px;
  background:rgba(255,255,255,.82)
}
body.soft-radiance .contact-action.active::after{display:none}
body.soft-radiance .contact-action.danger-tone{color:#b85b63}
body.soft-radiance .contact-action.danger-tone.active{
  color:#fff;
  background:linear-gradient(180deg,#f68a94,#d95865)
}

body.soft-radiance .contact-mode-note{
  display:none;
  margin:-2px 0 13px;
  padding:11px 14px;
  border:1px solid rgba(233,116,91,.27);
  border-radius:16px;
  background:linear-gradient(180deg,#fffdf9,#fff0e8);
  color:#7c5b53;
  font-size:.82rem;
  line-height:1.4;
  box-shadow:inset 0 1px 0 #fff,0 6px 12px rgba(176,81,58,.07)
}
body.soft-radiance .contact-mode-note.show{display:block}

/* Contact search and filters */
body.soft-radiance .contact-search-panel{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1fr) 64px;
  margin-bottom:12px;
  overflow:hidden;
  border:1px solid rgba(233,116,91,.38);
  border-radius:20px;
  background:
    radial-gradient(circle at 14% 0%,rgba(255,255,255,.98),transparent 29%),
    linear-gradient(180deg,#fffefb,#fff0e7);
  box-shadow:inset 0 1px 0 #fff,0 8px 17px rgba(177,82,59,.10)
}
body.soft-radiance .contact-search-panel::before{
  content:"";
  position:absolute;
  inset:5px;
  border:1px solid rgba(255,255,255,.95);
  border-radius:14px;
  pointer-events:none
}
body.soft-radiance .contact-search-wrap{
  position:relative;
  min-height:60px;
  border-right:1px solid rgba(233,116,91,.18);
  display:flex;
  align-items:center
}
body.soft-radiance .contact-search-wrap>svg{
  position:absolute;
  left:17px;
  width:24px;height:24px;
  color:#e56e58;
  stroke:#e56e58;
  fill:none;
  stroke-width:1.8;
  pointer-events:none
}
body.soft-radiance .contact-search-wrap input{
  width:100%;height:60px;
  border:0!important;
  outline:0;
  background:transparent!important;
  box-shadow:none!important;
  color:#563c36!important;
  padding:0 12px 0 51px;
  font-size:.94rem
}
body.soft-radiance .contact-search-wrap input::placeholder{color:#aa8980;opacity:1}
body.soft-radiance .contact-reset{
  border:0;
  background:linear-gradient(180deg,rgba(255,255,255,.34),rgba(255,220,207,.34));
  color:#df6752;
  display:grid;
  place-items:center
}
body.soft-radiance .contact-reset svg{width:27px;height:27px;stroke-width:1.75}

body.soft-radiance .contact-filter-row{
  position:relative;
  z-index:1;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:8px!important;
  margin-bottom:16px;
  overflow:visible!important
}
body.soft-radiance .contact-filter{
  min-width:0!important;
  min-height:47px;
  padding:7px 5px!important;
  border:1px solid rgba(233,116,91,.31);
  border-radius:15px;
  color:#845f57;
  background:linear-gradient(180deg,#fffefb,#fff1e9);
  box-shadow:inset 0 1px 0 #fff,0 5px 11px rgba(177,82,59,.07);
  font-family:var(--font-display);
  font-size:.66rem!important;
  font-weight:800;
  line-height:1.08;
  white-space:normal!important
}
body.soft-radiance .contact-filter:nth-child(2){background:linear-gradient(180deg,#fff,#f5efff);border-color:rgba(139,115,199,.30)}
body.soft-radiance .contact-filter:nth-child(3){background:linear-gradient(180deg,#fff,#eef9ef);border-color:rgba(61,155,104,.26)}
body.soft-radiance .contact-filter:nth-child(4){background:linear-gradient(180deg,#fff,#fff7dc);border-color:rgba(211,161,48,.29)}
body.soft-radiance .contact-filter.active{
  color:#fff;
  border-color:#ef765e;
  background:radial-gradient(circle at 28% 5%,rgba(255,255,255,.90),transparent 18%),linear-gradient(180deg,#ffad97,#f37a63)!important;
  box-shadow:inset 0 1px 0 #fff,inset 0 -6px 11px rgba(176,52,34,.11),0 7px 14px rgba(202,75,51,.15)
}

/* Contact cards */
body.soft-radiance .contact-list{position:relative;z-index:1;display:grid;gap:11px}
body.soft-radiance .contact-card{
  --accent:#ffad95;
  --accent-soft:#fff0e9;
  width:100%;
  min-height:126px;
  padding:13px;
  position:relative;
  display:grid;
  grid-template-columns:60px minmax(0,1fr) 25px;
  gap:12px;
  align-items:center;
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--accent) 58%,white)!important;
  border-radius:21px;
  color:#563c36!important;
  text-align:left;
  background:
    linear-gradient(90deg,var(--accent) 0 5px,transparent 5px 100%),
    radial-gradient(circle at 18% 0%,rgba(255,255,255,.99),transparent 34%),
    linear-gradient(180deg,#fffefb,var(--accent-soft))!important;
  box-shadow:inset 0 1px 0 #fff,inset 0 -10px 18px color-mix(in srgb,var(--accent) 9%,transparent),0 9px 19px rgba(173,80,58,.10)!important
}
body.soft-radiance .contact-card::before{
  content:"";
  position:absolute;
  left:10%;right:10%;top:1px;height:2px;
  border-radius:99px;
  background:linear-gradient(90deg,transparent,#fff,transparent)
}
body.soft-radiance .contact-card::after{
  content:"";
  position:absolute;
  inset:5px;
  border:1px solid rgba(255,255,255,.95);
  border-radius:15px;
  pointer-events:none
}
body.soft-radiance .contact-card.status-study{--accent:#82c99a;--accent-soft:#eef9ef}
body.soft-radiance .contact-card.status-followup{--accent:#a990dd;--accent-soft:#f4efff}
body.soft-radiance .contact-card.status-contact{--accent:#ef8b73;--accent-soft:#fff0e9}
body.soft-radiance .contact-card.status-paused{--accent:#e2bd55;--accent-soft:#fff8df}
body.soft-radiance .contact-card.status-transferred{--accent:#83b9dc;--accent-soft:#eef8ff}
body.soft-radiance .contact-card.status-dnc{--accent:#d87b83;--accent-soft:#fff0f2}
body.soft-radiance .contact-crest{display:none!important}
body.soft-radiance .contact-avatar{
  width:56px;height:56px;
  border:1px solid color-mix(in srgb,var(--accent) 68%,white);
  border-radius:18px;
  display:grid;
  place-items:center;
  position:relative;
  z-index:1;
  background:
    radial-gradient(circle at 30% 13%,#fff 0 10%,transparent 11%),
    linear-gradient(180deg,#fff,var(--accent-soft));
  box-shadow:inset 0 1px 0 #fff,inset 0 -5px 10px color-mix(in srgb,var(--accent) 11%,transparent),0 5px 11px color-mix(in srgb,var(--accent) 15%,transparent)
}
body.soft-radiance .contact-avatar svg{width:32px;height:32px;stroke:var(--accent);fill:none;stroke-width:1.75}
body.soft-radiance .contact-card-copy{min-width:0;position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start}
body.soft-radiance .contact-name{
  margin-bottom:4px;
  color:#5b4039!important;
  font-family:var(--font-display);
  font-size:1.19rem;
  font-weight:800;
  line-height:1.08
}
body.soft-radiance .contact-type{
  display:inline-flex;
  margin-bottom:6px;
  padding:4px 9px;
  border:1px solid color-mix(in srgb,var(--accent) 78%,white);
  border-radius:999px;
  color:color-mix(in srgb,var(--accent) 72%,#4e352f);
  background:color-mix(in srgb,var(--accent-soft) 86%,white);
  font-size:.68rem;
  font-weight:800;
  line-height:1
}
body.soft-radiance .contact-meta{display:block;color:#84645c!important;font-size:.77rem;line-height:1.3;margin-top:2px}
body.soft-radiance .contact-emphasis{color:color-mix(in srgb,var(--accent) 72%,#4e352f)!important;font-weight:700}
body.soft-radiance .contact-chevron{position:relative;z-index:1;color:var(--accent);display:grid;place-items:center}
body.soft-radiance .contact-chevron svg{width:25px;height:25px;stroke-width:1.9}
body.soft-radiance .contact-bottom-actions{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:16px}
body.soft-radiance .contact-bottom-actions .action{min-height:58px}
body.soft-radiance .contact-empty{margin-top:3px}

/* Contact forms and pickers */
body.soft-radiance .contact-form{display:grid;gap:15px}
body.soft-radiance .form-field,
body.soft-radiance .form-field legend{color:#704f47;font-weight:800}
body.soft-radiance .form-control{
  min-height:52px;
  border:1px solid rgba(233,116,91,.35)!important;
  border-radius:15px!important;
  background:linear-gradient(180deg,#fff,#fff9f4)!important;
  color:#503832!important;
  padding:0 13px;
  box-shadow:inset 0 1px 0 #fff,inset 0 2px 5px rgba(157,84,65,.035)!important
}
body.soft-radiance textarea.form-control{padding:12px 13px}
body.soft-radiance .form-control:focus{
  border-color:#ee765e!important;
  box-shadow:0 0 0 3px rgba(238,118,94,.12),inset 0 1px 0 #fff!important
}
body.soft-radiance .choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
body.soft-radiance .choice-button{
  min-height:47px;
  border:1px solid rgba(233,116,91,.28);
  border-radius:14px;
  background:linear-gradient(180deg,#fff,#fff1e9);
  color:#805c54;
  padding:8px;
  font-size:.84rem;
  font-weight:700;
  box-shadow:inset 0 1px 0 #fff,0 4px 9px rgba(177,82,59,.05)
}
body.soft-radiance .choice-button.active{
  color:#fff;
  border-color:#ed715a;
  background:linear-gradient(180deg,#ffab95,#ef725c);
  box-shadow:inset 0 1px 0 #fff,inset 0 -5px 10px rgba(170,49,31,.11),0 6px 12px rgba(199,75,51,.13)
}
body.soft-radiance .form-picker{
  width:100%;
  min-height:52px;
  border:1px solid rgba(233,116,91,.35);
  border-radius:15px;
  background:linear-gradient(180deg,#fff,#fff7f1);
  color:#5f433c;
  padding:10px 13px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  font-weight:700;
  box-shadow:inset 0 1px 0 #fff
}
body.soft-radiance .form-picker svg{width:20px;height:20px;color:#e66d57}
body.soft-radiance .form-picker-options{
  display:grid;
  gap:6px;
  margin-top:7px;
  padding:8px;
  border:1px solid rgba(233,116,91,.25);
  border-radius:16px;
  background:#fffaf6;
  box-shadow:0 8px 16px rgba(177,82,59,.08)
}
body.soft-radiance .form-picker-option{
  min-height:43px;
  border:1px solid rgba(233,116,91,.20);
  border-radius:12px;
  background:#fff;
  color:#79574f;
  padding:8px 10px;
  text-align:left;
  font-weight:700
}
body.soft-radiance .form-picker-option.active{color:#fff;border-color:#eb7059;background:linear-gradient(180deg,#ffa991,#ef715b)}

/* Contact detail, schedule, and history panels */
body.soft-radiance .contact-details{display:grid;gap:14px}
body.soft-radiance .contact-detail-grid{display:grid;gap:8px}
body.soft-radiance .contact-detail-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:13px;
  padding:11px 12px;
  border:1px solid rgba(233,116,91,.22);
  border-radius:14px;
  background:linear-gradient(180deg,#fff,#fff8f3);
  box-shadow:inset 0 1px 0 #fff
}
body.soft-radiance .contact-detail-row strong{color:#d85f4b;flex:0 0 auto}
body.soft-radiance .contact-detail-row span{color:#74544d;text-align:right;overflow-wrap:anywhere}
body.soft-radiance .contact-detail-row.stacked{display:grid}
body.soft-radiance .contact-detail-row.stacked span{text-align:left;white-space:pre-wrap}
body.soft-radiance .contact-detail-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
body.soft-radiance .contact-detail-actions .action:last-child:nth-child(odd){grid-column:1/-1;width:min(100%,320px);justify-self:center}
body.soft-radiance .recurring-card,
body.soft-radiance .history-card{
  padding:13px;
  border:1px solid rgba(233,116,91,.27)!important;
  border-radius:17px;
  background:
    radial-gradient(circle at 15% 0%,rgba(255,255,255,.98),transparent 32%),
    linear-gradient(180deg,#fffefb,#fff2ea)!important;
  color:#563c36!important;
  box-shadow:inset 0 1px 0 #fff,0 7px 14px rgba(177,82,59,.07)!important
}
body.soft-radiance .recurring-card{background:linear-gradient(180deg,#fff,#eef8ff)!important;border-color:rgba(91,158,199,.25)!important}
body.soft-radiance .recurring-card .section-heading{margin-bottom:7px}
body.soft-radiance .recurring-card h4{margin:0;color:#4f7890;font-size:1rem}
body.soft-radiance .history-section{display:grid;gap:10px}
body.soft-radiance .history-list{display:grid;gap:9px}
body.soft-radiance .history-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:9px}
body.soft-radiance .history-card h4{margin:0;color:#5d413a!important;font-size:1.02rem}
body.soft-radiance .history-card p{margin:5px 0 0;color:#826159!important;line-height:1.38}
body.soft-radiance .history-card-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}
body.soft-radiance .history-action{
  min-height:38px;
  border:1px solid rgba(233,116,91,.27);
  border-radius:12px;
  background:#fff;
  color:#d15e4b;
  padding:7px 10px;
  font-weight:800
}
body.soft-radiance .contact-next-notice{border-color:rgba(139,115,199,.27)!important;background:linear-gradient(180deg,#fff,#f4efff)!important}

/* Duplicate review */
body.soft-radiance .duplicate-alert{
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  gap:12px;
  align-items:start;
  padding:13px;
  border:1px solid rgba(216,79,93,.35);
  border-radius:17px;
  background:linear-gradient(180deg,#fff,#fff0f2);
  margin-bottom:13px
}
body.soft-radiance .duplicate-alert-icon{
  width:48px;height:48px;
  border:1px solid rgba(216,79,93,.42);
  border-radius:15px;
  display:grid;
  place-items:center;
  color:#c94f5c;
  background:linear-gradient(180deg,#fff,#ffdfe4);
  font-size:1.35rem;
  font-weight:800
}
body.soft-radiance .duplicate-alert strong{display:block;color:#a7404a;font-size:1.04rem;margin-bottom:4px}
body.soft-radiance .duplicate-alert p{margin:0;color:#7d5c59;line-height:1.42}
body.soft-radiance .duplicate-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:13px}
body.soft-radiance .duplicate-summary-card,
body.soft-radiance .duplicate-merge-field{
  min-width:0;
  padding:12px;
  border:1px solid rgba(233,116,91,.24);
  border-radius:15px;
  background:linear-gradient(180deg,#fff,#fff8f3);
  display:grid;
  gap:5px
}
body.soft-radiance .duplicate-summary-card small{color:#d85f4b;font-weight:800;text-transform:uppercase;font-size:.67rem;letter-spacing:.04em}
body.soft-radiance .duplicate-summary-card strong{color:#5a4039;font-size:1.02rem;overflow-wrap:anywhere}
body.soft-radiance .duplicate-summary-card span{color:#806057;font-size:.8rem;line-height:1.3;overflow-wrap:anywhere}
body.soft-radiance .duplicate-help{margin:0 0 12px;color:#7c5d55;line-height:1.45}
body.soft-radiance .duplicate-merge-list{display:grid;gap:9px}
body.soft-radiance .duplicate-merge-field>strong{display:block;color:#d85f4b;margin-bottom:7px}
body.soft-radiance .duplicate-merge-field.same span{color:#5f443d}
body.soft-radiance .duplicate-merge-field.same small{color:#9c7d74}
body.soft-radiance .duplicate-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
body.soft-radiance .duplicate-value-choice{
  min-width:0;
  min-height:62px;
  border:1px solid rgba(233,116,91,.23);
  border-radius:13px;
  background:#fff;
  color:#806057;
  padding:8px 9px;
  text-align:left;
  display:grid;
  align-content:center;
  gap:3px
}
body.soft-radiance .duplicate-value-choice small{color:#bd6b5b;font-size:.66rem;font-weight:800;text-transform:uppercase}
body.soft-radiance .duplicate-value-choice span{font-size:.78rem;line-height:1.24;overflow-wrap:anywhere}
body.soft-radiance .duplicate-value-choice.active{color:#fff;border-color:#ec715a;background:linear-gradient(180deg,#ffa990,#ed7059);box-shadow:inset 0 1px 0 #fff,0 6px 12px rgba(196,72,48,.12)}
body.soft-radiance .duplicate-value-choice.active small{color:#fff4ef}
body.soft-radiance .duplicate-value-choice.combine{grid-column:1/-1;text-align:center}

/* Sharing and import */
body.soft-radiance .share-option-list,
body.soft-radiance .share-method-list,
body.soft-radiance .share-outcome-list{display:grid;gap:8px}
body.soft-radiance .share-option{
  min-height:54px;
  display:grid;
  grid-template-columns:28px minmax(0,1fr);
  gap:10px;
  align-items:center;
  padding:10px 12px;
  border:1px solid rgba(233,116,91,.24);
  border-radius:14px;
  background:linear-gradient(180deg,#fff,#fff8f3);
  color:#644840;
  text-align:left
}
body.soft-radiance .share-check,
body.soft-radiance .share-outcome-check,
body.soft-radiance .import-confirmation-check{
  width:25px;height:25px;
  border:1px solid rgba(233,116,91,.39);
  border-radius:9px;
  display:grid;
  place-items:center;
  color:transparent;
  background:#fff
}
body.soft-radiance .share-option.active .share-check,
body.soft-radiance .share-outcome-button.active .share-outcome-check{
  color:#fff;
  border-color:#ec715a;
  background:linear-gradient(180deg,#ffa58d,#ec6f59)
}
body.soft-radiance .share-method{
  min-height:70px;
  display:grid;
  grid-template-columns:46px minmax(0,1fr) 22px;
  gap:11px;
  align-items:center;
  padding:11px 12px;
  border:1px solid rgba(233,116,91,.25);
  border-radius:16px;
  background:linear-gradient(180deg,#fff,#fff5ee);
  color:#60443d;
  text-align:left
}
body.soft-radiance .share-method-icon{
  width:46px;height:46px;
  border:1px solid rgba(233,116,91,.32);
  border-radius:14px;
  display:grid;
  place-items:center;
  color:#df6752;
  background:linear-gradient(180deg,#fff,#ffe5d9)
}
body.soft-radiance .share-method-icon svg{width:25px;height:25px}
body.soft-radiance .share-method-copy strong{display:block;color:#5b4039;margin-bottom:3px}
body.soft-radiance .share-method-copy span{display:block;color:#896a61;font-size:.8rem;line-height:1.3}
body.soft-radiance .share-preview,
body.soft-radiance .share-review-section{
  padding:12px;
  border:1px solid rgba(233,116,91,.23);
  border-radius:15px;
  background:#fffaf6;
  color:#684b44
}
body.soft-radiance .share-status.success{border-color:rgba(61,155,104,.31)!important;background:linear-gradient(180deg,#fff,#eef9ef)!important;color:#397c55!important}
body.soft-radiance .share-status.danger{border-color:rgba(216,79,93,.31)!important;background:linear-gradient(180deg,#fff,#fff0f2)!important;color:#a9414c!important}
body.soft-radiance .share-outcome-button{
  min-height:60px;
  border:1px solid rgba(233,116,91,.24);
  border-radius:15px;
  background:#fff;
  color:#684b44;
  padding:10px 12px;
  display:grid;
  grid-template-columns:28px minmax(0,1fr);
  gap:10px;
  align-items:center;
  text-align:left
}
body.soft-radiance .import-confirmation{
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  gap:12px;
  align-items:center;
  padding:13px;
  border:1px solid rgba(61,155,104,.30);
  border-radius:17px;
  background:linear-gradient(180deg,#fff,#eef9ef)
}
body.soft-radiance .import-confirmation-check{width:52px;height:52px;border-radius:16px;color:#fff;background:linear-gradient(180deg,#75c58f,#3d9b68);border-color:#3d9b68}

/* Follow-ups page tabs */
body.soft-radiance .visit-tab-row{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  margin-bottom:13px;
  overflow:hidden;
  border:1px solid rgba(233,116,91,.39);
  border-radius:23px;
  background:linear-gradient(180deg,#fffefb,#fff0e8);
  box-shadow:inset 0 1px 0 #fff,0 10px 20px rgba(177,82,59,.10)
}
body.soft-radiance .visit-tab-row::before{
  content:"";
  position:absolute;
  inset:5px;
  border:1px solid rgba(255,255,255,.96);
  border-radius:17px;
  pointer-events:none
}
body.soft-radiance .visit-tab{
  min-width:0;
  min-height:70px;
  border:0;
  border-right:1px solid rgba(233,116,91,.17);
  border-radius:0;
  background:transparent;
  color:#89635a;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:8px 4px;
  font-family:var(--font-display);
  font-weight:800
}
body.soft-radiance .visit-tab:last-child{border-right:0}
body.soft-radiance .visit-tab svg{width:24px;height:24px;stroke-width:1.8}
body.soft-radiance .visit-tab span{font-size:.73rem;line-height:1.1;text-align:center}
body.soft-radiance .visit-tab.active{
  color:#fff;
  background:radial-gradient(circle at 30% 5%,rgba(255,255,255,.90),transparent 18%),linear-gradient(180deg,#ffad97,#f17962);
  box-shadow:inset 0 1px 0 #fff,inset 0 -6px 12px rgba(176,52,34,.12)
}
body.soft-radiance .visit-tab.active::before{content:"";position:absolute;left:22%;right:22%;top:4px;height:2px;border-radius:99px;background:rgba(255,255,255,.82)}
body.soft-radiance .visit-tab.active::after{display:none}

/* Needs-attention controls */
body.soft-radiance .visit-attention-controls{
  position:relative;
  z-index:1;
  margin-bottom:13px;
  padding:14px;
  border:1px solid rgba(211,161,48,.30);
  border-radius:19px;
  background:radial-gradient(circle at 15% 0%,rgba(255,255,255,.98),transparent 32%),linear-gradient(180deg,#fff,#fff7df);
  box-shadow:inset 0 1px 0 #fff,0 8px 16px rgba(162,119,31,.08)
}
body.soft-radiance .visit-attention-controls h3{margin:0 0 11px;color:#8b6c25;font-size:1.08rem}
body.soft-radiance .visit-days-row,
body.soft-radiance .visit-reason-row{display:grid;gap:7px}
body.soft-radiance .visit-days-row{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:9px}
body.soft-radiance .visit-reason-row{grid-template-columns:repeat(4,minmax(0,1fr))}
body.soft-radiance .visit-choice{
  min-width:0;
  min-height:47px;
  padding:7px 5px;
  border:1px solid rgba(211,161,48,.28);
  border-radius:14px;
  background:linear-gradient(180deg,#fff,#fff9e8);
  color:#7d652d;
  font-family:var(--font-display);
  font-weight:800;
  font-size:.72rem;
  line-height:1.1
}
body.soft-radiance .visit-choice.active{
  color:#fff;
  border-color:#e59955;
  background:linear-gradient(180deg,#ffc786,#ed9858);
  box-shadow:inset 0 1px 0 #fff,inset 0 -5px 10px rgba(151,84,26,.10),0 6px 12px rgba(175,102,37,.11)
}
body.soft-radiance .visit-summary{
  position:relative;
  z-index:1;
  margin-bottom:11px;
  padding:11px 13px;
  border:1px solid rgba(233,116,91,.22);
  border-radius:15px;
  background:linear-gradient(180deg,#fff,#fff8f3);
  color:#785850;
  line-height:1.4
}
body.soft-radiance .visit-reset-wrap{position:relative;z-index:1;display:flex;justify-content:center;margin-bottom:13px}
body.soft-radiance .visit-reset-wrap .action{width:min(100%,310px)}
body.soft-radiance .visit-primary-action{position:relative;z-index:1;display:flex;justify-content:center;margin-bottom:13px}
body.soft-radiance .visit-primary-action .action{width:min(100%,360px)}

/* Visit / schedule cards */
body.soft-radiance .visit-list{position:relative;z-index:1;display:grid;gap:11px}
body.soft-radiance .visit-card{
  position:relative;
  overflow:hidden;
  padding:14px;
  border:1px solid rgba(233,116,91,.31)!important;
  border-radius:20px;
  background:
    radial-gradient(circle at 14% 0%,rgba(255,255,255,.98),transparent 34%),
    linear-gradient(180deg,#fffefb,#fff1e9)!important;
  color:#563c36!important;
  box-shadow:inset 0 1px 0 #fff,inset 0 -10px 18px rgba(239,117,88,.06),0 9px 18px rgba(177,82,59,.09)!important
}
body.soft-radiance .visit-card::before{
  content:"";
  position:absolute;
  inset:5px;
  border:1px solid rgba(255,255,255,.94);
  border-radius:14px;
  pointer-events:none
}
body.soft-radiance .visit-card::after{
  content:"";
  position:absolute;
  left:10%;right:10%;top:1px;height:2px;
  border-radius:99px;
  background:linear-gradient(90deg,transparent,#fff,transparent)
}
body.soft-radiance .visit-card-top{position:relative;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:11px}
body.soft-radiance .visit-card-top h3{margin:0 0 4px;color:#5d413a!important;font-size:1.26rem;font-weight:800}
body.soft-radiance .visit-card-top p{margin:4px 0;color:#806057!important;line-height:1.38}
body.soft-radiance .visit-status{color:#d75e4a!important;font-weight:800}
body.soft-radiance .visit-badge{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:33px;
  padding:6px 10px;
  border:1px solid rgba(233,116,91,.35);
  border-radius:999px;
  background:#fff;
  color:#d45e4a;
  font-size:.72rem;
  font-weight:800;
  text-align:center
}
body.soft-radiance .visit-badge.danger{color:#b74350;border-color:rgba(216,79,93,.34);background:#fff0f2}
body.soft-radiance .visit-badge.today{color:#347d54;border-color:rgba(61,155,104,.31);background:#eef9ef}
body.soft-radiance .visit-badge.soon{color:#876c27;border-color:rgba(211,161,48,.31);background:#fff8df}
body.soft-radiance .visit-reasons{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
body.soft-radiance .visit-reasons span{display:inline-flex;padding:5px 8px;border-radius:999px;border:1px solid rgba(216,79,93,.24);background:#fff1f3;color:#a84651;font-size:.7rem;line-height:1.18}
body.soft-radiance .visit-date-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}
body.soft-radiance .visit-date-grid>div{
  min-height:82px;
  padding:11px;
  border:1px solid rgba(233,116,91,.22);
  border-radius:14px;
  background:linear-gradient(180deg,#fff,#fff8f3)
}
body.soft-radiance .visit-date-grid>div:nth-child(2){border-color:rgba(139,115,199,.23);background:linear-gradient(180deg,#fff,#f5efff)}
body.soft-radiance .visit-date-grid small{display:block;color:#bd6656;font-size:.69rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;margin-bottom:5px}
body.soft-radiance .visit-date-grid strong{display:block;color:#60453e;font-size:.95rem;line-height:1.25;overflow-wrap:anywhere}
body.soft-radiance .visit-card-actions{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:11px}
body.soft-radiance .visit-card-actions .action{padding-inline:7px;font-size:.78rem;min-height:49px}
body.soft-radiance .visit-remove-schedule{grid-column:1/-1;width:min(100%,310px);justify-self:center}

/* Visit contact chooser */
body.soft-radiance .visit-contact-picker{display:grid;gap:8px;max-height:min(56vh,520px);overflow:auto;padding:2px;overscroll-behavior:contain}
body.soft-radiance .visit-contact-choice{
  width:100%;
  min-height:68px;
  display:grid;
  grid-template-columns:46px minmax(0,1fr) 22px;
  gap:10px;
  align-items:center;
  padding:10px 11px;
  border:1px solid rgba(233,116,91,.25);
  border-radius:16px;
  background:linear-gradient(180deg,#fff,#fff6ef);
  color:#5f433c;
  text-align:left
}
body.soft-radiance .visit-contact-avatar{
  width:46px;height:46px;
  border:1px solid rgba(233,116,91,.32);
  border-radius:14px;
  display:grid;
  place-items:center;
  color:#df6752;
  background:linear-gradient(180deg,#fff,#ffe5d9)
}
body.soft-radiance .visit-contact-avatar svg{width:25px;height:25px}
body.soft-radiance .visit-contact-copy strong{display:block;color:#5a4039;margin-bottom:3px}
body.soft-radiance .visit-contact-copy span{display:block;color:#896a61;font-size:.78rem;line-height:1.28}
body.soft-radiance .visit-contact-chevron{color:#e16954}
body.soft-radiance .visit-contact-chevron svg{width:21px;height:21px}

/* Visit, Follow-up, schedule, and Bible Study forms */
body.soft-radiance .visit-form{display:grid;gap:14px}
body.soft-radiance .visit-form h4{margin:0 0 -4px;color:#cf5947;font-size:1.03rem;font-weight:800}
body.soft-radiance .visit-log-section{
  display:grid;
  gap:10px;
  padding:12px;
  border:1px solid rgba(233,116,91,.24);
  border-radius:17px;
  background:linear-gradient(180deg,#fff,#fff7f1);
  box-shadow:inset 0 1px 0 #fff
}
body.soft-radiance .visit-log-section:nth-of-type(even){border-color:rgba(139,115,199,.22);background:linear-gradient(180deg,#fff,#f7f3ff)}
body.soft-radiance .visit-log-section>h4{margin:0!important}
body.soft-radiance .schedule-mode-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
body.soft-radiance .schedule-mode-row.three{grid-template-columns:repeat(3,minmax(0,1fr))}
body.soft-radiance .picker-grid{display:grid;gap:7px}
body.soft-radiance .date-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
body.soft-radiance .time-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
body.soft-radiance .weekday-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
body.soft-radiance .picker-choice{
  min-width:0;
  min-height:44px;
  border:1px solid rgba(233,116,91,.25);
  border-radius:13px;
  background:linear-gradient(180deg,#fff,#fff2eb);
  color:#7c5850;
  padding:7px 5px;
  font-size:.72rem;
  font-weight:750;
  line-height:1.15
}
body.soft-radiance .picker-choice.active{
  color:#fff;
  border-color:#ec7059;
  background:linear-gradient(180deg,#ffa68f,#ed7059);
  box-shadow:inset 0 1px 0 #fff,inset 0 -5px 10px rgba(170,49,31,.10),0 5px 10px rgba(196,72,48,.11)
}
body.soft-radiance .native-picker-field{
  min-height:54px;
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  align-items:center;
  gap:9px;
  padding:8px 10px;
  border:1px solid rgba(233,116,91,.29);
  border-radius:14px;
  background:linear-gradient(180deg,#fff,#fff8f3);
  color:#5f433c;
  position:relative;
  overflow:hidden;
  box-shadow:inset 0 1px 0 #fff
}
body.soft-radiance .native-picker-field:focus-within{border-color:#ec715a;box-shadow:0 0 0 3px rgba(238,118,94,.11),inset 0 1px 0 #fff}
body.soft-radiance .native-picker-icon{display:grid;place-items:center;color:#df6752}
body.soft-radiance .native-picker-icon svg{width:23px;height:23px;stroke:currentColor;fill:none;stroke-width:1.7}
body.soft-radiance .native-picker-label{display:none}
body.soft-radiance .native-picker-input{width:100%;min-width:0;height:38px;padding:6px 8px;border:0!important;outline:0;background:transparent!important;color:#5f433c!important;font-size:.94rem;color-scheme:light;-webkit-appearance:auto;appearance:auto}
body.soft-radiance .visit-section-note{margin:-2px 0 0!important;color:#826159;font-size:.77rem;line-height:1.35}

/* Teaching Toolbox choices inside visits */
body.soft-radiance .visit-resource-dropdown,
body.soft-radiance .study-lesson-dropdown{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(233,116,91,.28);
  border-radius:15px;
  background:linear-gradient(180deg,#fff,#fff8f3);
  box-shadow:inset 0 1px 0 #fff
}
body.soft-radiance .visit-resource-dropdown>summary,
body.soft-radiance .study-lesson-dropdown>summary{
  min-height:52px;
  padding:12px 13px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  color:#5f433c;
  font-weight:800;
  cursor:pointer;
  list-style:none;
  -webkit-tap-highlight-color:transparent
}
body.soft-radiance .visit-resource-dropdown>summary::-webkit-details-marker,
body.soft-radiance .study-lesson-dropdown>summary::-webkit-details-marker{display:none}
body.soft-radiance .visit-resource-dropdown>summary svg,
body.soft-radiance .study-lesson-dropdown>summary svg{width:20px;height:20px;flex:0 0 auto;stroke:#df6752;fill:none;stroke-width:1.7;transition:transform .18s ease}
body.soft-radiance .visit-resource-dropdown[open]>summary svg,
body.soft-radiance .study-lesson-dropdown[open]>summary svg{transform:rotate(90deg)}
body.soft-radiance .visit-resource-dropdown[open]>summary,
body.soft-radiance .study-lesson-dropdown[open]>summary{border-bottom:1px solid rgba(233,116,91,.19);background:linear-gradient(180deg,#fff,#ffece2)}
body.soft-radiance .study-lesson-dropdown[data-disabled="true"]>summary{color:#ad938b;pointer-events:none}
body.soft-radiance .visit-resource-menu{display:grid;gap:7px;max-height:285px;overflow-y:auto;padding:8px;overscroll-behavior:contain}
body.soft-radiance .visit-resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:250px;overflow:auto;padding:2px;overscroll-behavior:contain}
body.soft-radiance .visit-resource-choice{
  min-width:0;
  min-height:58px;
  padding:9px 10px;
  border:1px solid rgba(233,116,91,.22);
  border-radius:13px;
  background:linear-gradient(180deg,#fff,#fff6ef);
  color:#785850;
  text-align:left;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:3px
}
body.soft-radiance .visit-resource-choice strong{color:#5b4039;font-size:.84rem;line-height:1.16}
body.soft-radiance .visit-resource-choice span{color:#94746b;font-size:.68rem;line-height:1.2}
body.soft-radiance .visit-resource-choice.active{color:#fff;border-color:#ec715a;background:linear-gradient(180deg,#ffa68f,#ed7059);box-shadow:inset 0 1px 0 #fff,0 5px 10px rgba(196,72,48,.11)}
body.soft-radiance .visit-resource-choice.active strong,
body.soft-radiance .visit-resource-choice.active span{color:#fff}
body.soft-radiance .visit-resource-empty{grid-column:1/-1;display:flex;flex-direction:column;gap:4px;padding:11px;border:1px dashed rgba(233,116,91,.28);border-radius:13px;background:#fff8f3;color:#806057}
body.soft-radiance .visit-resource-empty strong{color:#5b4039;font-size:.85rem}
body.soft-radiance .visit-resource-empty span{font-size:.72rem}
body.soft-radiance .visit-toolbox-link{display:flex;align-items:center;justify-content:space-between;gap:9px;padding-top:3px}
body.soft-radiance .visit-toolbox-link>span{color:#826159;font-size:.73rem;line-height:1.3}
body.soft-radiance .visit-toolbox-link .action{flex:0 0 auto;min-height:40px;width:auto;padding:8px 10px}
body.soft-radiance .study-publication-list{grid-template-columns:1fr;max-height:300px}
body.soft-radiance .study-lesson-list{display:grid;max-height:300px;overflow-y:auto;padding:7px;overscroll-behavior:contain}
body.soft-radiance .study-lesson-list-choice{
  min-height:46px;
  width:100%;
  padding:10px 11px;
  border:0;
  border-bottom:1px solid rgba(233,116,91,.15);
  background:#fff;
  color:#704f47;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  text-align:left;
  font-weight:700
}
body.soft-radiance .study-lesson-list-choice:last-child{border-bottom:0}
body.soft-radiance .study-lesson-list-choice svg{width:18px;height:18px;stroke:#df6752;fill:none;stroke-width:1.7}
body.soft-radiance .study-lesson-list-choice.active{background:linear-gradient(90deg,#ffe1d5,#fff2eb);color:#c95745}
body.soft-radiance .study-lesson-empty{padding:13px;color:#806057;font-size:.77rem;line-height:1.35}

/* Phone refinements */
@media(max-width:520px){
  body.soft-radiance .contact-action-panel{grid-template-columns:repeat(4,minmax(0,1fr))}
  body.soft-radiance .contact-action{min-height:62px;flex-direction:column;gap:4px;font-size:.63rem}
  body.soft-radiance .contact-action svg{width:20px;height:20px}
  body.soft-radiance .contact-filter-row{gap:6px!important}
  body.soft-radiance .contact-filter{font-size:.58rem!important;padding-inline:3px!important}
  body.soft-radiance .contact-card{grid-template-columns:54px minmax(0,1fr) 22px;gap:10px;min-height:120px;padding:11px}
  body.soft-radiance .contact-avatar{width:52px;height:52px;border-radius:16px}
  body.soft-radiance .contact-avatar svg{width:29px;height:29px}
  body.soft-radiance .contact-name{font-size:1.08rem}
  body.soft-radiance .contact-meta{font-size:.71rem}
  body.soft-radiance .visit-tab{min-height:66px}
  body.soft-radiance .visit-tab span{font-size:.64rem}
  body.soft-radiance .visit-days-row,
  body.soft-radiance .visit-reason-row{gap:6px}
  body.soft-radiance .visit-choice{font-size:.62rem;padding-inline:3px}
  body.soft-radiance .visit-card{padding:13px}
  body.soft-radiance .visit-card-top h3{font-size:1.14rem}
  body.soft-radiance .visit-badge{font-size:.62rem;padding-inline:7px}
  body.soft-radiance .visit-date-grid strong{font-size:.84rem}
  body.soft-radiance .visit-card-actions .action{font-size:.71rem}
  body.soft-radiance .visit-contact-choice{grid-template-columns:42px minmax(0,1fr) 20px;padding-inline:9px}
  body.soft-radiance .visit-contact-avatar{width:42px;height:42px;border-radius:13px}
}
@media(max-width:430px){
  body.soft-radiance .contact-bottom-actions{grid-template-columns:1fr}
  body.soft-radiance .contact-detail-actions{grid-template-columns:1fr}
  body.soft-radiance .contact-detail-actions .action:last-child:nth-child(odd){grid-column:auto;width:100%}
  body.soft-radiance .duplicate-summary-grid{grid-template-columns:1fr}
  body.soft-radiance .visit-primary-action .action{width:100%}
  body.soft-radiance .visit-resource-grid{grid-template-columns:1fr}
  body.soft-radiance .schedule-mode-row.three{grid-template-columns:1fr}
  body.soft-radiance .schedule-mode-row.three .visit-choice{min-height:44px}
  body.soft-radiance .visit-toolbox-link{align-items:stretch;flex-direction:column}
  body.soft-radiance .visit-toolbox-link .action{width:100%}
}
@media(max-width:370px){
  body.soft-radiance .contact-action-panel{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.soft-radiance .contact-action:nth-child(2){border-right:0}
  body.soft-radiance .contact-action:nth-child(-n+2){border-bottom:1px solid rgba(233,116,91,.17)}
  body.soft-radiance .contact-filter-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.soft-radiance .visit-days-row,
  body.soft-radiance .visit-reason-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.soft-radiance .visit-card-actions{grid-template-columns:1fr}
  body.soft-radiance .visit-remove-schedule{grid-column:auto;width:100%}
  body.soft-radiance .duplicate-choice-grid{grid-template-columns:1fr}
  body.soft-radiance .duplicate-value-choice.combine{grid-column:auto}
}

/* =========================================================
   Soft Radiance Phase 3 — Ministry Time + Service at a Glance
   v2.99: complete Time styling and restore the approved bubble pulse.
   ========================================================= */
body.soft-radiance .time-page{
  overflow:visible;
  background:
    radial-gradient(circle at 5% 1%,rgba(255,231,181,.62),transparent 18rem),
    radial-gradient(circle at 102% 18%,rgba(189,225,255,.50),transparent 24rem),
    radial-gradient(circle at 4% 96%,rgba(205,236,207,.40),transparent 22rem),
    linear-gradient(180deg,#fffefb,#fff6ee 48%,#fffaf4);
}
body.soft-radiance .time-page>.page-heading{margin-bottom:4px}
body.soft-radiance .time-page>.page-sub{max-width:680px;margin-bottom:15px}

/* Month and service-year selectors */
body.soft-radiance .time-month-controls,
body.soft-radiance .time-year-controls{
  position:relative;z-index:2;display:grid;
  grid-template-columns:54px minmax(0,1fr) 54px;
  gap:9px;align-items:stretch;margin:2px 0 12px;
}
body.soft-radiance .time-month-shift,
body.soft-radiance .time-year-shift{
  min-height:58px;border:1px solid rgba(234,113,86,.46);border-radius:18px;
  background:
    radial-gradient(circle at 30% 10%,rgba(255,255,255,.94) 0 8%,transparent 9%),
    linear-gradient(180deg,#ffb39e,#ff8e76 52%,#ed6d57);
  color:#fff;font-family:var(--font-display);font-size:1.85rem;font-weight:700;line-height:1;
  box-shadow:inset 0 1px 0 #fff,inset 0 -7px 14px rgba(167,52,34,.13),0 7px 14px rgba(194,78,54,.15);
}
body.soft-radiance .time-month-picker,
body.soft-radiance .time-year-controls>strong{
  min-height:58px;border:1px solid rgba(235,126,97,.34);border-radius:18px;
  background:radial-gradient(circle at 17% 4%,#fff,transparent 25%),linear-gradient(180deg,#fff,#fff0e8);
  box-shadow:inset 0 1px 0 #fff,inset 0 -6px 14px rgba(240,139,107,.07),0 7px 14px rgba(177,83,60,.09);
}
body.soft-radiance .time-month-picker{grid-template-columns:38px minmax(0,1fr);padding:7px 10px}
body.soft-radiance .time-month-picker .native-picker-icon{
  width:36px;height:36px;border:1px solid rgba(235,120,91,.34);border-radius:13px;
  color:#df6752;background:linear-gradient(180deg,#fff,#ffd9ca);box-shadow:inset 0 1px 0 #fff;
}
body.soft-radiance .time-year-controls>strong{
  display:grid;place-items:center;padding:8px 10px;text-align:center;color:#6d4b43;
  font-size:.98rem;font-weight:800;letter-spacing:.015em;
}

/* Selected month / service-year spotlights */
body.soft-radiance .time-month-focus,
body.soft-radiance .time-year-position{
  position:relative;overflow:hidden;display:grid;grid-template-columns:48px minmax(0,1fr) auto;
  gap:11px;align-items:center;min-height:74px;margin:0 0 12px;padding:10px 12px;
  border:1px solid rgba(235,124,95,.31);border-radius:19px;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,231,181,.72),transparent 42%),
    linear-gradient(135deg,#fff,#fff0e7 62%,#fff8dc);
  box-shadow:inset 0 1px 0 #fff,inset 0 -8px 18px rgba(240,137,104,.06),0 8px 17px rgba(173,82,60,.09);
}
body.soft-radiance .time-month-focus::after,
body.soft-radiance .time-year-position::after{
  content:"";position:absolute;left:10%;right:10%;top:1px;height:2px;
  background:linear-gradient(90deg,transparent,#fff,transparent);
}
body.soft-radiance .time-focus-icon,
body.soft-radiance .time-year-position>span{
  width:48px;height:48px;display:grid;place-items:center;border:1px solid rgba(233,111,83,.35);
  border-radius:15px;color:#df6752;
  background:radial-gradient(circle at 28% 12%,#fff 0 10%,transparent 11%),linear-gradient(180deg,#fff8f4,#ffd5c5);
  box-shadow:inset 0 1px 0 #fff,0 5px 10px rgba(192,82,57,.10);
}
body.soft-radiance .time-focus-icon svg,
body.soft-radiance .time-year-position>span svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.7}
body.soft-radiance .time-month-focus small,
body.soft-radiance .time-year-position small{display:block;color:#a16f63;font-size:.63rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
body.soft-radiance .time-month-focus strong,
body.soft-radiance .time-year-position strong{display:block;margin-top:3px;color:#65463f;font-size:1.04rem;font-weight:850;line-height:1.22}
body.soft-radiance .time-focus-total{
  max-width:130px;padding:8px 10px;border:1px solid rgba(234,119,90,.25);border-radius:13px;
  background:rgba(255,255,255,.78);color:#d65d49;font-size:.88rem;font-weight:850;text-align:center;
  box-shadow:inset 0 1px 0 #fff;
}
body.soft-radiance .time-year-position{grid-template-columns:48px minmax(0,1fr);margin-bottom:13px}

/* Compact, colorful time metrics */
body.soft-radiance .time-metrics,
body.soft-radiance .time-service-metrics{display:grid;gap:9px}
body.soft-radiance .time-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
body.soft-radiance .time-service-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
body.soft-radiance .time-page .metric{
  position:relative;overflow:hidden;min-height:116px;padding:10px;border-radius:18px;
  border:1px solid rgba(233,123,94,.28);box-shadow:inset 0 1px 0 #fff,inset 0 -7px 16px rgba(239,138,106,.06),0 7px 15px rgba(174,82,59,.08);
}
body.soft-radiance .time-page .metric:nth-child(4n+1){background:linear-gradient(180deg,#fff,#ffe9df)}
body.soft-radiance .time-page .metric:nth-child(4n+2){background:linear-gradient(180deg,#fff,#eef8ff);border-color:rgba(110,174,221,.28)}
body.soft-radiance .time-page .metric:nth-child(4n+3){background:linear-gradient(180deg,#fff,#effaee);border-color:rgba(104,175,112,.25)}
body.soft-radiance .time-page .metric:nth-child(4n+4){background:linear-gradient(180deg,#fff,#f4f0ff);border-color:rgba(139,115,199,.24)}
body.soft-radiance .time-page .metric::before{content:"";position:absolute;inset:5px;border:1px solid rgba(255,255,255,.84);border-radius:13px;pointer-events:none}
body.soft-radiance .time-page .metric::after{content:"";position:absolute;left:12%;right:12%;top:1px;height:2px;background:linear-gradient(90deg,transparent,#fff,transparent)}
body.soft-radiance .time-page .metric-heading{position:relative;z-index:1;display:flex;align-items:center;gap:7px}
body.soft-radiance .time-page .metric-icon{
  width:38px;height:38px;flex:0 0 38px;border-radius:13px;color:#df6752;
  border:1px solid rgba(234,117,88,.32);background:linear-gradient(180deg,#fff,#ffd8ca);box-shadow:inset 0 1px 0 #fff;
}
body.soft-radiance .time-page .metric:nth-child(4n+2) .metric-icon{color:#3b82bd;border-color:rgba(76,142,192,.28);background:linear-gradient(180deg,#fff,#dcefff)}
body.soft-radiance .time-page .metric:nth-child(4n+3) .metric-icon{color:#468c57;border-color:rgba(76,145,87,.25);background:linear-gradient(180deg,#fff,#dff2df)}
body.soft-radiance .time-page .metric:nth-child(4n+4) .metric-icon{color:#8063be;border-color:rgba(125,97,186,.25);background:linear-gradient(180deg,#fff,#e7e0ff)}
body.soft-radiance .time-page .metric-icon svg{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:1.7}
body.soft-radiance .time-page .metric-label{color:#805b52;font-size:.60rem;font-weight:850;line-height:1.13;text-transform:uppercase;letter-spacing:.035em}
body.soft-radiance .time-page .metric-value{
  position:relative;z-index:1;display:block;width:100%;align-self:stretch;margin-top:12px;
  color:#d85e49;text-align:center;font-size:1.72rem;font-weight:850;line-height:1;text-shadow:0 1px 0 #fff;
}
body.soft-radiance .time-page .metric:nth-child(4n+2) .metric-value{color:#3179b3}
body.soft-radiance .time-page .metric:nth-child(4n+3) .metric-value{color:#3f8a52}
body.soft-radiance .time-page .metric:nth-child(4n+4) .metric-value{color:#765ab6}
body.soft-radiance .time-service-metrics .metric{min-height:104px}

/* Goal, chart, and primary actions */
body.soft-radiance .time-goal-card,
body.soft-radiance .time-chart-panel{
  position:relative;overflow:hidden;z-index:1;margin:13px 0;padding:15px;
  border:1px solid rgba(231,121,92,.29)!important;border-radius:19px!important;
  background:radial-gradient(circle at 92% 0%,rgba(232,227,255,.74),transparent 38%),linear-gradient(180deg,#fff,#fff3eb)!important;
  color:#5f433c!important;box-shadow:inset 0 1px 0 #fff,inset 0 -8px 18px rgba(238,134,102,.06),0 8px 18px rgba(173,82,59,.09)!important;
}
body.soft-radiance .time-goal-card::before,
body.soft-radiance .time-chart-panel::before{content:"";position:absolute;inset:5px;border:1px solid rgba(255,255,255,.86);border-radius:14px;pointer-events:none}
body.soft-radiance .time-card-kicker{display:block;color:#dd664f;font-size:.65rem;font-weight:850;text-transform:uppercase;letter-spacing:.065em;margin-bottom:4px}
body.soft-radiance .time-goal-card strong{display:block;color:#664840!important;font-size:1.08rem;font-weight:850}
body.soft-radiance .time-goal-header{position:relative;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
body.soft-radiance .time-goal-header>span{max-width:150px;color:#8a655c;font-size:.74rem;font-weight:800;text-align:right;line-height:1.3}
body.soft-radiance .time-goal-card .progress-track{position:relative;z-index:1;height:11px;border:1px solid rgba(232,118,89,.28);border-radius:999px;background:#ffe1d4;overflow:hidden;box-shadow:inset 0 2px 5px rgba(177,78,56,.10)}
body.soft-radiance .time-goal-card .progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#ffb39e,#ef725b);box-shadow:0 0 9px rgba(235,105,80,.18)}
body.soft-radiance .time-goal-footer{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;color:#8a655c!important;font-size:.73rem}
body.soft-radiance .time-goal-footer .action,
body.soft-radiance .time-goal-card>.row-between .action{width:auto;min-height:42px;padding:8px 11px}
body.soft-radiance .time-goal-card>.row-between{position:relative;z-index:1}
body.soft-radiance .time-primary-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:13px 0}
body.soft-radiance .time-primary-actions .action{min-height:56px;border-radius:18px}
body.soft-radiance .time-study-note{margin:12px 0;padding-left:13px;padding-right:13px}
body.soft-radiance .time-list-heading{margin:18px 0 10px}
body.soft-radiance .time-list-heading>span{color:#947068;font-size:.70rem;text-align:right}

/* Time-entry cards */
body.soft-radiance .time-entry-list{display:grid;gap:9px}
body.soft-radiance .time-entry-card{
  position:relative;overflow:hidden;display:grid;grid-template-columns:50px minmax(0,1fr) auto;
  gap:11px;align-items:center;min-height:84px;padding:11px;
  border:1px solid rgba(233,120,91,.27)!important;border-radius:18px!important;
  background:radial-gradient(circle at 94% 4%,rgba(255,231,181,.46),transparent 38%),linear-gradient(180deg,#fff,#fff3ec)!important;
  color:#5f433c!important;box-shadow:inset 0 1px 0 #fff,0 7px 15px rgba(174,82,59,.08)!important;
}
body.soft-radiance .time-entry-card.monthly{border-color:rgba(107,168,214,.27)!important;background:radial-gradient(circle at 94% 4%,rgba(189,225,255,.62),transparent 40%),linear-gradient(180deg,#fff,#eef8ff)!important}
body.soft-radiance .time-entry-card::before{content:"";position:absolute;inset:5px;border:1px solid rgba(255,255,255,.82);border-radius:13px;pointer-events:none}
body.soft-radiance .time-entry-icon{
  position:relative;z-index:1;width:50px;height:50px;display:grid;place-items:center;border:1px solid rgba(233,115,87,.34);border-radius:15px;
  color:#df6752;background:linear-gradient(180deg,#fff,#ffd5c6);box-shadow:inset 0 1px 0 #fff,0 4px 9px rgba(188,78,55,.08)
}
body.soft-radiance .time-entry-card.monthly .time-entry-icon{color:#347cad;border-color:rgba(70,139,190,.29);background:linear-gradient(180deg,#fff,#dcefff)}
body.soft-radiance .time-entry-icon svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.7}
body.soft-radiance .time-entry-copy,
body.soft-radiance .time-entry-actions{position:relative;z-index:1}
body.soft-radiance .time-entry-type{display:inline-block;color:#a06f63;font-size:.61rem;font-weight:850;text-transform:uppercase;letter-spacing:.055em}
body.soft-radiance .time-entry-copy h3{margin:3px 0 4px;color:#65463f!important;font-size:1rem;font-weight:850;line-height:1.24}
body.soft-radiance .time-entry-copy p{margin:0;color:#d85f49!important;font-size:.79rem;font-weight:850}
body.soft-radiance .time-entry-card.monthly .time-entry-copy p{color:#347cad!important}
body.soft-radiance .time-entry-actions{display:flex;gap:7px}
body.soft-radiance .time-inline-action{
  min-width:68px;min-height:43px;padding:7px 9px;display:flex;align-items:center;justify-content:center;gap:5px;
  border:1px solid rgba(232,116,88,.31);border-radius:14px;background:linear-gradient(180deg,#fff,#ffe6da);color:#cb5946;
  font-size:.69rem;font-weight:850;box-shadow:inset 0 1px 0 #fff;
}
body.soft-radiance .time-inline-action svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.7}
body.soft-radiance .time-inline-action.danger{color:#fff;border-color:#d84d59;background:linear-gradient(180deg,#f77a86,#dc5360)}

/* Add-time and goal dialogs */
body.soft-radiance .time-entry-form,
body.soft-radiance .time-goal-form{display:grid;gap:12px}
body.soft-radiance .time-scope-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
body.soft-radiance .time-scope-option{
  min-height:48px;border:1px solid rgba(233,119,90,.28);border-radius:15px;background:linear-gradient(180deg,#fff,#fff0e8);
  color:#805d54;font-size:.76rem;font-weight:850;box-shadow:inset 0 1px 0 #fff;
}
body.soft-radiance .time-scope-option.active{color:#fff;border-color:#ea7059;background:linear-gradient(180deg,#ffa991,#ee7059);box-shadow:inset 0 1px 0 #fff,0 5px 10px rgba(194,73,49,.12)}
body.soft-radiance .time-duration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
body.soft-radiance .time-duration-grid label,
body.soft-radiance .time-custom-goal,
body.soft-radiance .time-service-year-input{display:grid;gap:6px;color:#6d4c44;font-size:.76rem;font-weight:850}
body.soft-radiance .time-duration-grid input,
body.soft-radiance .time-custom-goal input,
body.soft-radiance .time-service-year-input input{
  width:100%;min-height:48px;border:1px solid rgba(232,117,89,.31);border-radius:14px;background:linear-gradient(180deg,#fff,#fff6f0);
  color:#5e413a;padding:9px 11px;font-size:1rem;outline:0;box-shadow:inset 0 1px 0 #fff;
}
body.soft-radiance .time-duration-grid input:focus,
body.soft-radiance .time-custom-goal input:focus,
body.soft-radiance .time-service-year-input input:focus{border-color:#ed745d;box-shadow:0 0 0 3px rgba(238,118,94,.11),inset 0 1px 0 #fff}
body.soft-radiance .time-quick-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:9px}
body.soft-radiance .time-quick-row button{
  min-height:43px;border:1px solid rgba(230,114,86,.26);border-radius:13px;background:linear-gradient(180deg,#fff,#ffe7dc);
  color:#cb5a47;font-size:.70rem;font-weight:850;box-shadow:inset 0 1px 0 #fff;
}
body.soft-radiance .time-goal-options{display:grid;gap:8px}
body.soft-radiance .time-goal-option{
  min-height:67px;padding:10px 12px;border:1px solid rgba(232,118,89,.27);border-radius:15px;
  background:linear-gradient(180deg,#fff,#fff2eb);color:#8a665d;text-align:left;display:grid;gap:3px;box-shadow:inset 0 1px 0 #fff;
}
body.soft-radiance .time-goal-option strong{color:#65463f;font-size:.92rem;font-weight:850}
body.soft-radiance .time-goal-option span{color:#94736a;font-size:.70rem}
body.soft-radiance .time-goal-option.active{border-color:#eb7059;background:linear-gradient(180deg,#ffac95,#ef715a);box-shadow:inset 0 1px 0 #fff,0 5px 11px rgba(196,73,49,.13)}
body.soft-radiance .time-goal-option.active strong,
body.soft-radiance .time-goal-option.active span{color:#fff}
body.soft-radiance .time-service-year-input small{color:#96746b;font-weight:600;font-size:.68rem}

/* Service-year milestone, chart, and monthly cards */
body.soft-radiance .time-midyear-card{
  position:relative;overflow:hidden;margin:13px 0;padding:16px;border:1px solid rgba(226,175,72,.36);border-radius:19px;
  background:radial-gradient(circle at 85% 0%,rgba(255,255,255,.80),transparent 35%),linear-gradient(135deg,#fff8d9,#ffe5a1);
  box-shadow:inset 0 1px 0 #fff,0 8px 18px rgba(178,131,40,.10);
}
body.soft-radiance .time-midyear-card>span{color:#b8791f;font-size:.65rem;font-weight:850;text-transform:uppercase;letter-spacing:.065em}
body.soft-radiance .time-midyear-card h3{margin:6px 0;color:#875617;font-size:1.3rem;font-weight:850}
body.soft-radiance .time-midyear-card p{margin:0;color:#745b38;line-height:1.48}
body.soft-radiance .time-midyear-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:13px}
body.soft-radiance .time-midyear-stats>div{padding:10px;border:1px solid rgba(193,137,35,.20);border-radius:13px;background:rgba(255,255,255,.66);text-align:center}
body.soft-radiance .time-midyear-stats small{display:block;color:#997447;font-size:.61rem}
body.soft-radiance .time-midyear-stats strong{display:block;margin-top:4px;color:#875617;font-size:.88rem;font-weight:850}
body.soft-radiance .time-chart-panel .section-heading{position:relative;z-index:1;margin-bottom:4px}
body.soft-radiance .time-chart-panel .section-heading h3{color:#65463f}
body.soft-radiance .time-trend-chart{position:relative;z-index:1;height:218px;display:grid;grid-template-columns:repeat(12,minmax(30px,1fr));gap:5px;align-items:end;padding:18px 2px 0;overflow-x:auto;overscroll-behavior:contain}
body.soft-radiance .time-trend-column{min-width:30px;height:100%;display:grid;grid-template-rows:18px minmax(0,1fr) 18px;gap:4px;align-items:end;text-align:center}
body.soft-radiance .time-trend-value{color:#947068;font-size:.52rem}
body.soft-radiance .time-trend-bar-wrap{height:100%;display:flex;align-items:flex-end;justify-content:center;border-bottom:1px solid rgba(229,121,92,.19)}
body.soft-radiance .time-trend-bar{width:72%;min-height:3px;border:1px solid rgba(229,105,78,.32);border-bottom:0;border-radius:7px 7px 0 0;background:linear-gradient(180deg,#ffbdab,#ed7059);box-shadow:0 0 7px rgba(225,96,71,.13)}
body.soft-radiance .time-trend-column:nth-child(3n+2) .time-trend-bar{border-color:rgba(64,132,181,.28);background:linear-gradient(180deg,#cdeaff,#5fa7d7)}
body.soft-radiance .time-trend-column:nth-child(3n) .time-trend-bar{border-color:rgba(73,145,84,.26);background:linear-gradient(180deg,#daf2d9,#6db57a)}
body.soft-radiance .time-trend-column>span{color:#8a665d;font-size:.58rem;font-weight:750}
body.soft-radiance .service-month-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
body.soft-radiance .service-month-card{
  position:relative;overflow:hidden;min-height:154px;padding:12px;border:1px solid rgba(233,120,91,.27)!important;border-radius:18px!important;
  background:radial-gradient(circle at 92% 2%,rgba(255,231,181,.54),transparent 38%),linear-gradient(180deg,#fff,#fff0e8)!important;
  color:#5f433c!important;text-align:left;display:grid;gap:7px;align-content:start;
  box-shadow:inset 0 1px 0 #fff,inset 0 -8px 17px rgba(239,138,106,.05),0 7px 15px rgba(174,82,59,.08)!important;
}
body.soft-radiance .service-month-card:nth-child(3n+2){border-color:rgba(94,154,204,.25)!important;background:radial-gradient(circle at 92% 2%,rgba(189,225,255,.62),transparent 40%),linear-gradient(180deg,#fff,#eef8ff)!important}
body.soft-radiance .service-month-card:nth-child(3n){border-color:rgba(84,158,96,.23)!important;background:radial-gradient(circle at 92% 2%,rgba(205,236,207,.70),transparent 40%),linear-gradient(180deg,#fff,#eff9ef)!important}
body.soft-radiance .service-month-card::before{content:"";position:absolute;inset:5px;border:1px solid rgba(255,255,255,.86);border-radius:13px;pointer-events:none}
body.soft-radiance .service-month-card.current{border-color:#e96f58!important;box-shadow:inset 0 0 0 1px rgba(238,112,87,.14),inset 0 1px 0 #fff,0 0 0 3px rgba(239,119,93,.08),0 8px 17px rgba(175,79,57,.11)!important}
body.soft-radiance .service-month-top{position:relative;z-index:1;display:flex;align-items:baseline;justify-content:space-between;gap:8px}
body.soft-radiance .service-month-card .service-month-top>span{color:#65463f!important;font-size:1rem;font-weight:850}
body.soft-radiance .service-month-card .service-month-top>small{color:#99766d;font-size:.64rem}
body.soft-radiance .service-month-current{position:relative;z-index:1;justify-self:start;padding:4px 7px;border:1px solid rgba(232,112,84,.29);border-radius:999px;background:#ffe2d6;color:#cc5946;font-size:.58rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
body.soft-radiance .service-month-card>strong{position:relative;z-index:1;color:#d85f49;font-size:1.25rem;font-weight:850}
body.soft-radiance .service-month-card>p{position:relative;z-index:1;margin:0;color:#8c6960!important;font-size:.69rem;line-height:1.3}
body.soft-radiance .mini-goal-track{position:relative;z-index:1;height:7px;border:1px solid rgba(232,116,87,.20);border-radius:999px;background:#ffe1d4;overflow:hidden}
body.soft-radiance .mini-goal-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#ffb19b,#ef7159);box-shadow:0 0 7px rgba(225,97,72,.13)}
body.soft-radiance .service-month-open{position:relative;z-index:1;display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-top:auto;color:#cb5946;font-size:.65rem;font-weight:850}
body.soft-radiance .service-month-open svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.7}

/* Keep the previously approved whole-control bubble pulse, not the failed spring experiment. */
body.soft-radiance :is(.time-month-shift,.time-year-shift,.time-inline-action,.time-scope-option,.time-goal-option,.time-quick-row button,.service-month-card){transform-origin:center center;will-change:transform,filter,box-shadow}

@media(max-width:620px){
  body.soft-radiance .time-entry-card{grid-template-columns:48px minmax(0,1fr)}
  body.soft-radiance .time-entry-icon{width:48px;height:48px}
  body.soft-radiance .time-entry-actions{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  body.soft-radiance .time-inline-action{width:100%}
  body.soft-radiance .time-goal-header,
  body.soft-radiance .time-goal-footer{align-items:flex-start;flex-direction:column}
  body.soft-radiance .time-goal-footer .action{width:100%}
  body.soft-radiance .time-primary-actions{grid-template-columns:1fr}
  body.soft-radiance .time-midyear-stats{grid-template-columns:1fr}
}
@media(max-width:520px){
  body.soft-radiance .time-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
  body.soft-radiance .time-page .metric{min-height:108px;padding:8px}
  body.soft-radiance .time-page .metric-icon{width:35px;height:35px;flex-basis:35px;border-radius:12px}
  body.soft-radiance .time-page .metric-icon svg{width:19px;height:19px}
  body.soft-radiance .time-page .metric-label{font-size:.53rem;letter-spacing:.02em}
  body.soft-radiance .time-page .metric-value{font-size:1.43rem;margin-top:11px}
  body.soft-radiance .time-service-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.soft-radiance .service-month-grid{grid-template-columns:1fr}
  body.soft-radiance .time-month-focus{grid-template-columns:45px minmax(0,1fr)}
  body.soft-radiance .time-focus-icon{width:45px;height:45px}
  body.soft-radiance .time-focus-total{grid-column:1/-1;max-width:none;width:100%}
}
@media(max-width:390px){
  body.soft-radiance .time-month-controls,
  body.soft-radiance .time-year-controls{grid-template-columns:48px minmax(0,1fr) 48px}
  body.soft-radiance .time-month-shift,
  body.soft-radiance .time-year-shift{font-size:1.6rem}
  body.soft-radiance .time-duration-grid,
  body.soft-radiance .time-scope-row,
  body.soft-radiance .time-quick-row{grid-template-columns:1fr}
  body.soft-radiance .time-service-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
}


/* =========================================================
   Soft Radiance visual repair — Map + contact details (v3.00)
   Prevents the unscoped Black & Gold map/mobile rules from
   showing through while Soft Radiance is active.
   ========================================================= */

/* Keep inline section icons at their intended line-icon size.
   Android WebView otherwise expands the raw SVG into a giant
   filled map pin or warning triangle. */
body.soft-radiance .section-heading h3{
  display:flex;
  align-items:center;
  gap:9px;
  min-width:0
}
body.soft-radiance .section-heading h3>svg{
  flex:0 0 auto;
  width:22px;
  height:22px;
  stroke:currentColor;
  fill:none;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round
}

/* Contact detail actions stay compact on phones. */
body.soft-radiance .contact-detail-actions{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px
}
body.soft-radiance .contact-detail-actions .action{
  width:100%;
  min-width:0;
  min-height:52px;
  padding:8px 9px;
  font-size:.79rem
}
body.soft-radiance .contact-detail-actions .action.primary{
  grid-column:1/-1;
  width:100%;
  justify-self:stretch
}
body.soft-radiance .contact-detail-actions .action:last-child:nth-child(odd){
  grid-column:auto;
  width:100%;
  justify-self:stretch
}

/* History controls remain in normal document flow and never cover notes. */
body.soft-radiance .history-card{
  overflow:hidden
}
body.soft-radiance .history-card-header{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:9px;
  align-items:start
}
body.soft-radiance .history-card-header h4{
  min-width:0;
  overflow-wrap:anywhere
}
body.soft-radiance .history-card-actions{
  position:relative;
  inset:auto;
  z-index:1;
  width:100%!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:7px;
  margin:0!important
}
body.soft-radiance .history-action{
  position:relative;
  inset:auto;
  width:100%!important;
  min-width:0;
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:7px 9px;
  overflow:hidden
}
body.soft-radiance .history-action svg{
  width:18px;
  height:18px;
  flex:0 0 auto;
  stroke:currentColor;
  fill:none;
  stroke-width:1.8
}
body.soft-radiance .history-card>p{
  position:relative;
  z-index:0;
  overflow-wrap:anywhere
}

/* Soft Radiance Ministry Map */
body.soft-radiance .map-page{overflow:visible}
body.soft-radiance .map-search-panel{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1fr) 62px;
  margin:3px 0 11px;
  overflow:hidden;
  border:1px solid rgba(233,116,91,.34);
  border-radius:18px;
  background:linear-gradient(180deg,#fff,#fff5ee);
  box-shadow:inset 0 1px 0 #fff,0 7px 15px rgba(177,82,59,.08)
}
body.soft-radiance .map-search-panel::before{
  content:"";
  position:absolute;
  inset:4px;
  border:1px solid rgba(255,255,255,.92);
  border-radius:13px;
  pointer-events:none
}
body.soft-radiance .map-search-wrap{
  position:relative;
  min-height:58px;
  display:flex;
  align-items:center;
  border-right:1px solid rgba(233,116,91,.18)
}
body.soft-radiance .map-search-wrap>svg{
  position:absolute;
  left:16px;
  width:24px;
  height:24px;
  stroke:#df6752;
  fill:none;
  stroke-width:1.7;
  pointer-events:none
}
body.soft-radiance .map-search-wrap input{
  width:100%;
  height:58px;
  border:0;
  outline:0;
  background:transparent;
  color:#5f433c;
  padding:0 12px 0 50px;
  font-size:.92rem
}
body.soft-radiance .map-search-wrap input::placeholder{color:#a1847b;opacity:1}
body.soft-radiance .map-search-reset{
  position:relative;
  border:0;
  background:linear-gradient(180deg,#fff9f4,#ffd9ca);
  color:#df6752;
  display:grid;
  place-items:center
}
body.soft-radiance .map-search-reset svg{width:25px;height:25px;stroke:currentColor;fill:none;stroke-width:1.75}
body.soft-radiance .map-filter-row{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:7px;
  margin-bottom:11px
}
body.soft-radiance .map-filter{
  min-width:0;
  min-height:46px;
  padding:7px 4px;
  border:1px solid rgba(233,116,91,.28);
  border-radius:14px;
  color:#8b655c;
  background:linear-gradient(180deg,#fff,#fff1e9);
  box-shadow:inset 0 1px 0 #fff,0 4px 9px rgba(177,82,59,.06);
  font-family:var(--font-display);
  font-size:.62rem;
  font-weight:800;
  text-transform:uppercase;
  line-height:1.08
}
body.soft-radiance .map-filter.active{
  color:#fff;
  border-color:#e96f58;
  background:radial-gradient(circle at 28% 8%,rgba(255,255,255,.92) 0 8%,transparent 9%),linear-gradient(180deg,#ffad97,#f47a63);
  box-shadow:inset 0 1px 0 #fff,inset 0 -5px 10px rgba(171,51,31,.10),0 6px 12px rgba(193,73,49,.12)
}
body.soft-radiance .map-summary-bar{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:9px;
  padding:9px 10px;
  margin-bottom:11px;
  border:1px solid rgba(233,116,91,.25);
  border-radius:15px;
  background:linear-gradient(180deg,#fff,#fff8f3);
  color:#84645b;
  font-size:.75rem;
  line-height:1.3
}
body.soft-radiance .map-summary-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
body.soft-radiance .map-small-action{
  min-height:38px;
  padding:6px 9px;
  border:1px solid rgba(233,116,91,.30);
  border-radius:12px;
  background:linear-gradient(180deg,#fff,#ffe8dd);
  color:#ce5c49;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  font-family:var(--font-display);
  font-size:.67rem;
  font-weight:800
}
body.soft-radiance .map-small-action svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.75}
body.soft-radiance .map-small-action:disabled{opacity:.46}
body.soft-radiance .ui2-map-shell{
  position:relative;
  z-index:1;
  min-height:350px;
  overflow:hidden;
  border:1px solid rgba(233,116,91,.38);
  border-radius:19px;
  background:#eef4e9;
  box-shadow:inset 0 0 0 5px rgba(255,255,255,.70),0 11px 22px rgba(144,82,61,.14)
}
body.soft-radiance .ui2-map-shell::before{
  content:"";
  position:absolute;
  inset:5px;
  z-index:550;
  border:1px solid rgba(255,255,255,.88);
  border-radius:14px;
  pointer-events:none
}
body.soft-radiance .ui2-map-canvas{width:100%;height:350px;background:#e8efe2}
body.soft-radiance .ui2-map-canvas.leaflet-container{font-family:var(--font-body);background:#e8efe2}
body.soft-radiance .ui2-map-canvas .leaflet-tile-pane{filter:saturate(.72) brightness(1.06) contrast(.94)}
body.soft-radiance .ui2-map-canvas .leaflet-control-zoom{
  overflow:hidden;
  border:1px solid rgba(233,116,91,.42)!important;
  border-radius:12px!important;
  box-shadow:0 7px 15px rgba(123,72,56,.18)!important
}
body.soft-radiance .ui2-map-canvas .leaflet-control-zoom a{
  background:#fff9f3!important;
  color:#d95d49!important;
  border-bottom-color:rgba(233,116,91,.22)!important
}
body.soft-radiance .ui2-map-canvas .leaflet-tooltip{
  background:#fffaf4;
  color:#6a4b43;
  border:1px solid rgba(233,116,91,.44);
  box-shadow:0 7px 15px rgba(123,72,56,.18);
  font-family:var(--font-display);
  font-weight:800
}
body.soft-radiance .ui2-map-canvas .leaflet-tooltip-top::before{border-top-color:rgba(233,116,91,.44)}
body.soft-radiance .ui2-map-overlay{
  position:absolute;
  inset:6px;
  z-index:540;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:22px;
  text-align:center;
  background:rgba(255,249,243,.90);
  color:#74534b;
  backdrop-filter:blur(4px)
}
body.soft-radiance .ui2-map-overlay.is-hidden{display:none}
body.soft-radiance .ui2-map-overlay>svg{width:36px;height:36px;stroke:#df6752;fill:none;stroke-width:1.7}
body.soft-radiance .map-loader{width:30px;height:30px;border:2px solid rgba(233,116,91,.20);border-top-color:#e36a54;border-radius:50%}
body.soft-radiance .ui2-map-legend{
  position:absolute;
  z-index:530;
  left:12px;
  right:12px;
  bottom:11px;
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:center;
  padding:7px 9px;
  border:1px solid rgba(233,116,91,.27);
  border-radius:13px;
  background:rgba(255,250,245,.92);
  backdrop-filter:blur(5px);
  font-size:.63rem;
  color:#705149;
  box-shadow:0 5px 12px rgba(118,70,55,.12)
}
body.soft-radiance .ui2-map-legend span{display:inline-flex;align-items:center;gap:5px}
body.soft-radiance .ui2-map-legend i,
body.soft-radiance .map-contact-group h4 i{width:9px;height:9px;border-radius:50%;background:#e7bd58;box-shadow:0 0 7px currentColor}
body.soft-radiance .ui2-map-legend i.study,
body.soft-radiance .map-contact-group h4 i.study{background:#62cc91;color:#62cc91}
body.soft-radiance .ui2-map-legend i.followup,
body.soft-radiance .map-contact-group h4 i.followup{background:#b987dc;color:#b987dc}
body.soft-radiance .ui2-map-legend i.contact,
body.soft-radiance .map-contact-group h4 i.contact{background:#e7bd58;color:#e7bd58}
body.soft-radiance .ui2-map-legend i.paused,
body.soft-radiance .map-contact-group h4 i.paused{background:#aaa49b;color:#aaa49b}
body.soft-radiance .ui2-map-pin-wrap{background:transparent!important;border:0!important}
body.soft-radiance .ui2-map-pin{
  position:relative;
  width:30px;
  height:30px;
  border:2px solid #f0ca69;
  border-radius:50% 50% 50% 0;
  transform:rotate(-45deg);
  background:#fff9f3;
  box-shadow:0 4px 9px rgba(92,55,44,.32),inset 0 0 0 3px rgba(255,255,255,.72)
}
body.soft-radiance .ui2-map-pin::after{content:"";position:absolute;inset:7px;border-radius:50%;background:#e7bd58;box-shadow:0 0 9px rgba(231,189,88,.65)}
body.soft-radiance .ui2-map-pin.study{border-color:#80dca6}
body.soft-radiance .ui2-map-pin.study::after{background:#62cc91;box-shadow:0 0 9px rgba(98,204,145,.62)}
body.soft-radiance .ui2-map-pin.followup{border-color:#cba2e6}
body.soft-radiance .ui2-map-pin.followup::after{background:#b987dc;box-shadow:0 0 9px rgba(185,135,220,.62)}
body.soft-radiance .ui2-map-pin.paused{border-color:#c9c4bc}
body.soft-radiance .ui2-map-pin.paused::after{background:#aaa49b;box-shadow:none}
body.soft-radiance .map-list-section{position:relative;margin-top:17px}
body.soft-radiance .map-list-section>.section-heading{margin-bottom:9px}
body.soft-radiance .map-list-section>.section-heading h3{font-size:1.03rem;color:#d95d49}
body.soft-radiance .map-section-copy{margin:-3px 0 10px;color:#80635b;font-size:.78rem;line-height:1.4}
body.soft-radiance .map-contact-groups,
body.soft-radiance .map-location-list{display:grid;gap:13px}
body.soft-radiance .map-contact-group{display:grid;gap:8px}
body.soft-radiance .map-contact-group h4{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0;
  padding:0 3px;
  color:#74534b;
  font-family:var(--font-display);
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.03em
}
body.soft-radiance .map-contact-group h4 span{margin-left:auto;color:#9a7b72}
body.soft-radiance .map-contact-list{display:grid;gap:9px}
body.soft-radiance .map-contact-card{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(233,116,91,.28)!important;
  border-radius:17px;
  background:linear-gradient(180deg,#fff,#fff5ee)!important;
  color:#5f433c!important;
  box-shadow:inset 0 1px 0 #fff,0 7px 15px rgba(177,82,59,.08)!important
}
body.soft-radiance .map-contact-card.study,
body.soft-radiance .map-location-card.study{border-color:rgba(79,185,124,.42)!important}
body.soft-radiance .map-contact-card.followup,
body.soft-radiance .map-location-card.followup{border-color:rgba(166,111,205,.40)!important}
body.soft-radiance .map-contact-card.paused,
body.soft-radiance .map-location-card.paused{border-color:rgba(153,145,134,.36)!important}
body.soft-radiance .map-contact-main{
  width:100%;
  border:0;
  background:transparent;
  color:#5f433c;
  display:grid;
  grid-template-columns:46px minmax(0,1fr) 22px;
  gap:10px;
  align-items:center;
  padding:12px;
  text-align:left
}
body.soft-radiance .map-card-pin{
  width:46px;
  height:46px;
  border:1px solid rgba(233,116,91,.38);
  border-radius:15px;
  display:grid;
  place-items:center;
  color:#df6752;
  background:linear-gradient(180deg,#fff,#ffe4d8)
}
body.soft-radiance .map-card-pin svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.8}
body.soft-radiance .map-card-pin.study{color:#3fa771;border-color:rgba(79,185,124,.48);background:linear-gradient(180deg,#fff,#e8f8ee)}
body.soft-radiance .map-card-pin.followup{color:#9b67c2;border-color:rgba(166,111,205,.46);background:linear-gradient(180deg,#fff,#f2eafb)}
body.soft-radiance .map-card-pin.paused{color:#858078;border-color:rgba(153,145,134,.42);background:linear-gradient(180deg,#fff,#f2f0ed)}
body.soft-radiance .map-card-copy{min-width:0}
body.soft-radiance .map-card-copy strong{display:block;color:#63473f;font-family:var(--font-display);font-size:1rem;margin-bottom:3px;overflow-wrap:anywhere}
body.soft-radiance .map-card-copy small{display:block;color:#80635b;font-size:.72rem;line-height:1.32;overflow-wrap:anywhere}
body.soft-radiance .map-card-copy .map-card-date{color:#a78358;margin-top:3px}
body.soft-radiance .map-card-chevron{color:#df6752}
body.soft-radiance .map-card-chevron svg{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:1.9}
body.soft-radiance .map-card-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid rgba(233,116,91,.16)}
body.soft-radiance .map-inline-action{
  min-height:42px;
  border:0;
  border-right:1px solid rgba(233,116,91,.16);
  background:linear-gradient(180deg,#fff,#fff0e8);
  color:#c75a48;
  display:flex;
  align-items:center;
  justify-content:center;
  font-family:var(--font-display);
  font-size:.72rem;
  font-weight:800
}
body.soft-radiance .map-inline-action:last-child{border-right:0}
body.soft-radiance .map-location-warning-section{padding-top:4px}
body.soft-radiance .map-location-card{
  position:relative;
  overflow:hidden;
  padding:13px;
  border:1px solid rgba(233,116,91,.30)!important;
  border-radius:17px;
  background:linear-gradient(180deg,#fff,#fff5ee)!important;
  color:#5f433c!important;
  display:grid;
  gap:11px;
  box-shadow:inset 0 1px 0 #fff,0 7px 15px rgba(177,82,59,.08)!important
}
body.soft-radiance .map-location-copy strong{display:block;color:#63473f;font-family:var(--font-display);font-size:1rem}
body.soft-radiance .map-location-copy>span{display:inline-block;margin-top:3px;color:#8f6e65;font-size:.72rem}
body.soft-radiance .map-location-copy p{margin:8px 0 3px;color:#b65d50;font-size:.78rem;line-height:1.4}
body.soft-radiance .map-location-copy small{color:#80635b;line-height:1.35}
body.soft-radiance .map-location-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
body.soft-radiance .map-location-actions .action{min-height:46px;padding:8px;font-size:.75rem}
body.soft-radiance .map-page .empty-state{
  width:100%;
  min-height:130px;
  padding:20px 14px;
  color:#80635b;
  text-align:center
}
body.soft-radiance .map-page .empty-state>svg{
  width:38px;
  height:38px;
  margin:0 auto 10px;
  stroke:#df6752;
  fill:none;
  stroke-width:1.7
}

/* Map controls use the same whole-bubble press/release treatment. */
body.soft-radiance :is(.map-filter,.map-search-reset,.map-small-action,.map-contact-main,.map-inline-action,.map-contact-card,.map-location-card){
  position:relative;
  isolation:isolate;
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation
}
body.soft-radiance :is(.map-filter,.map-search-reset,.map-small-action,.map-contact-main,.map-inline-action,.map-contact-card,.map-location-card).ui2-pressing{
  animation:srBubblePress .18s cubic-bezier(.22,.72,.2,1) both!important
}
body.soft-radiance :is(.map-filter,.map-search-reset,.map-small-action,.map-contact-main,.map-inline-action,.map-contact-card,.map-location-card).ui2-soft-release{
  animation:srBubbleRelease .24s cubic-bezier(.18,.82,.22,1) both!important
}
body.soft-radiance :is(.map-filter,.map-search-reset,.map-small-action,.map-contact-main,.map-inline-action,.map-contact-card,.map-location-card).ui2-activated{animation:none!important}

@media(min-width:560px){
  body.soft-radiance .history-card-header{
    display:flex!important;
    align-items:flex-start;
    justify-content:space-between
  }
  body.soft-radiance .history-card-actions{
    width:auto!important;
    display:flex!important;
    flex:0 0 auto
  }
  body.soft-radiance .history-action{width:auto!important}
}
@media(max-width:430px){
  body.soft-radiance .map-summary-bar{align-items:stretch;flex-direction:column}
  body.soft-radiance .map-summary-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  body.soft-radiance .map-small-action{width:100%}
  body.soft-radiance .ui2-map-shell,
  body.soft-radiance .ui2-map-canvas{height:330px;min-height:330px}
  body.soft-radiance .map-filter{font-size:.56rem;padding-inline:2px}
  body.soft-radiance .ui2-map-legend{gap:6px;font-size:.57rem}
  body.soft-radiance .map-location-actions{grid-template-columns:1fr}
}
@media(max-width:370px){
  body.soft-radiance .map-filter-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.soft-radiance .map-search-panel{grid-template-columns:minmax(0,1fr) 56px}
  body.soft-radiance .contact-detail-actions{grid-template-columns:1fr!important}
  body.soft-radiance .contact-detail-actions .action.primary{grid-column:auto}
}

/* =========================================================
   Soft Radiance Phase 4 — Ministry Map + Teaching Toolbox
   v3.01: complete map preview states, toolbox management,
   resource pickers, and phone-size consistency.
   ========================================================= */

/* Map page is now a purpose-built Soft Radiance surface. */
body.soft-radiance .map-page{
  overflow:visible;
  background:
    radial-gradient(circle at 4% 2%,rgba(255,231,181,.56),transparent 18rem),
    radial-gradient(circle at 102% 15%,rgba(189,225,255,.42),transparent 22rem),
    radial-gradient(circle at 8% 96%,rgba(205,236,207,.38),transparent 21rem),
    linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,247,240,.98));
}
body.soft-radiance .map-search-panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) 54px;
  gap:8px;
  margin:13px 0 9px;
}
body.soft-radiance .map-search-wrap{
  min-width:0;
  min-height:52px;
  display:grid;
  grid-template-columns:25px minmax(0,1fr);
  align-items:center;
  gap:9px;
  padding:7px 12px;
  border:1px solid rgba(233,116,91,.30);
  border-radius:17px;
  background:
    radial-gradient(circle at 9% 0%,rgba(255,255,255,.98),transparent 25%),
    linear-gradient(180deg,#fff,#fff5ee);
  box-shadow:inset 0 1px 0 #fff,0 6px 13px rgba(177,82,59,.08);
}
body.soft-radiance .map-search-wrap:focus-within{
  border-color:#ed775f;
  box-shadow:0 0 0 3px rgba(238,118,94,.12),inset 0 1px 0 #fff,0 7px 14px rgba(177,82,59,.09);
}
body.soft-radiance .map-search-wrap>svg{
  width:23px;
  height:23px;
  stroke:#df6752;
  fill:none;
  stroke-width:1.75;
}
body.soft-radiance .map-search-wrap input{
  width:100%;
  min-width:0;
  height:38px;
  padding:0;
  border:0;
  outline:0;
  background:transparent;
  color:#62463f;
  font:inherit;
  font-size:.89rem;
}
body.soft-radiance .map-search-wrap input::placeholder{color:#ad8f86}
body.soft-radiance .map-search-reset{
  width:54px;
  min-height:52px;
  border:1px solid rgba(233,116,91,.34);
  border-radius:17px;
  display:grid;
  place-items:center;
  color:#d95d49;
  background:
    radial-gradient(circle at 30% 12%,#fff 0 9%,transparent 10%),
    linear-gradient(180deg,#fff,#ffd9ca);
  box-shadow:inset 0 1px 0 #fff,0 6px 13px rgba(177,82,59,.09);
}
body.soft-radiance .map-search-reset svg{width:23px;height:23px;stroke:currentColor;fill:none;stroke-width:1.75}
body.soft-radiance .map-filter-row{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:7px;
  margin-bottom:9px;
}
body.soft-radiance .map-filter{
  min-width:0;
  min-height:47px;
  padding:7px 4px;
  border:1px solid rgba(233,116,91,.25);
  border-radius:15px;
  color:#8a665d;
  background:linear-gradient(180deg,#fff,#fff1e9);
  box-shadow:inset 0 1px 0 #fff,0 4px 9px rgba(177,82,59,.06);
  font-family:var(--font-display);
  font-size:.61rem;
  font-weight:800;
  text-transform:uppercase;
  line-height:1.08;
}
body.soft-radiance .map-filter.active{
  color:#fff;
  border-color:#e96f58;
  background:
    radial-gradient(circle at 28% 8%,rgba(255,255,255,.92) 0 8%,transparent 9%),
    linear-gradient(180deg,#ffad97,#f47a63);
  box-shadow:inset 0 1px 0 #fff,inset 0 -5px 10px rgba(171,51,31,.10),0 6px 12px rgba(193,73,49,.12);
}

/* Selected map contact preview. */
body.soft-radiance .map-preview-slot:empty{display:none}
body.soft-radiance .map-contact-preview{
  position:relative;
  overflow:hidden;
  display:grid;
  gap:12px;
  margin-top:13px;
  padding:14px;
  border:1px solid rgba(233,116,91,.34);
  border-radius:19px;
  background:
    radial-gradient(circle at 10% 0%,rgba(255,255,255,.98),transparent 30%),
    linear-gradient(180deg,#fff,#fff2e9);
  color:#62463f;
  box-shadow:inset 0 1px 0 #fff,0 10px 21px rgba(144,82,61,.13);
}
body.soft-radiance .map-contact-preview::after{
  content:"";
  position:absolute;
  left:16px;
  right:16px;
  top:1px;
  height:2px;
  border-radius:99px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.98),transparent);
  pointer-events:none;
}
body.soft-radiance .map-contact-preview.study{border-color:rgba(79,185,124,.45);background:linear-gradient(180deg,#fff,#eefaf2)}
body.soft-radiance .map-contact-preview.followup{border-color:rgba(166,111,205,.42);background:linear-gradient(180deg,#fff,#f5effc)}
body.soft-radiance .map-contact-preview.paused{border-color:rgba(153,145,134,.38);background:linear-gradient(180deg,#fff,#f4f1ed)}
body.soft-radiance .map-preview-top{
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  gap:11px;
  align-items:center;
}
body.soft-radiance .map-preview-pin{
  width:52px;
  height:52px;
  border:1px solid rgba(233,116,91,.38);
  border-radius:17px;
  display:grid;
  place-items:center;
  color:#df6752;
  background:linear-gradient(180deg,#fff,#ffe1d4);
  box-shadow:inset 0 1px 0 #fff,0 6px 12px rgba(177,82,59,.09);
}
body.soft-radiance .map-preview-pin svg{width:27px;height:27px;stroke:currentColor;fill:none;stroke-width:1.8}
body.soft-radiance .map-preview-pin.study{color:#3fa771;border-color:rgba(79,185,124,.48);background:linear-gradient(180deg,#fff,#e6f8ed)}
body.soft-radiance .map-preview-pin.followup{color:#9b67c2;border-color:rgba(166,111,205,.46);background:linear-gradient(180deg,#fff,#f0e7fa)}
body.soft-radiance .map-preview-pin.paused{color:#858078;border-color:rgba(153,145,134,.42);background:linear-gradient(180deg,#fff,#efede9)}
body.soft-radiance .map-preview-top h3{
  margin:0 0 5px;
  color:#62463f;
  font-family:var(--font-display);
  font-size:1.15rem;
  line-height:1.12;
  overflow-wrap:anywhere;
}
body.soft-radiance .map-type-badge{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:4px 9px;
  border:1px solid rgba(233,116,91,.30);
  border-radius:999px;
  color:#c75a48;
  background:#fff6f0;
  font-size:.63rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.03em;
}
body.soft-radiance .map-type-badge.study{color:#328b5b;border-color:rgba(79,185,124,.40);background:#ebf9f0}
body.soft-radiance .map-type-badge.followup{color:#8b56b4;border-color:rgba(166,111,205,.38);background:#f3ebfa}
body.soft-radiance .map-type-badge.paused{color:#756f68;border-color:rgba(153,145,134,.35);background:#f1efec}
body.soft-radiance .map-preview-details{
  display:grid;
  gap:5px;
  padding:10px 11px;
  border:1px solid rgba(233,116,91,.18);
  border-radius:14px;
  background:rgba(255,255,255,.70);
}
body.soft-radiance .map-preview-details p{margin:0;color:#7b5d55;font-size:.77rem;line-height:1.35}
body.soft-radiance .map-preview-details p:last-child{color:#a77c4f}
body.soft-radiance .map-preview-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
body.soft-radiance .map-preview-actions .action{min-width:0;min-height:47px;padding:8px 6px;font-size:.68rem}
body.soft-radiance .map-preview-actions .action svg{width:19px;height:19px}

/* Finished map card/list behavior. */
body.soft-radiance .map-contact-groups{gap:16px}
body.soft-radiance .map-contact-group{
  padding:11px;
  border:1px solid rgba(233,116,91,.18);
  border-radius:18px;
  background:rgba(255,255,255,.50);
}
body.soft-radiance .map-contact-group h4{padding:0 2px 2px}
body.soft-radiance .map-contact-group h4 span{
  min-width:27px;
  min-height:24px;
  padding:4px 8px;
  border:1px solid rgba(233,116,91,.20);
  border-radius:999px;
  display:grid;
  place-items:center;
  color:#8f6b61;
  background:#fff8f3;
  font-size:.67rem;
}
body.soft-radiance .map-contact-card:focus-within,
body.soft-radiance .map-location-card:focus-within{border-color:#e8745b!important;box-shadow:0 0 0 3px rgba(238,118,94,.10),0 8px 17px rgba(177,82,59,.10)!important}
body.soft-radiance .ui2-map-pin.selected{
  border-color:#fff;
  box-shadow:0 0 0 3px rgba(232,104,80,.72),0 6px 13px rgba(92,55,44,.36),inset 0 0 0 3px rgba(255,255,255,.76);
  transform:rotate(-45deg) scale(1.13);
}
body.soft-radiance .map-location-warning-section{
  margin-top:18px;
  padding:13px;
  border:1px solid rgba(233,116,91,.18);
  border-radius:19px;
  background:linear-gradient(180deg,rgba(255,255,255,.68),rgba(255,245,237,.76));
}

/* Teaching Toolbox management. */
body.soft-radiance .settings-block:has(.settings-toolbox-dropdown){
  background:
    radial-gradient(circle at 100% 0%,rgba(205,236,207,.40),transparent 18rem),
    radial-gradient(circle at 0% 100%,rgba(255,231,181,.40),transparent 17rem),
    linear-gradient(180deg,#fff,#fff7f0)!important;
}
body.soft-radiance .toolbox-summary-strip{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:7px;
  margin-bottom:10px;
}
body.soft-radiance .toolbox-summary-chip{
  min-width:0;
  min-height:62px;
  padding:9px 6px;
  border:1px solid rgba(233,116,91,.22);
  border-radius:15px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
  text-align:center;
  background:linear-gradient(180deg,#fff,#fff2ea);
  box-shadow:inset 0 1px 0 #fff,0 5px 10px rgba(177,82,59,.06);
}
body.soft-radiance .toolbox-summary-chip:nth-child(2){background:linear-gradient(180deg,#fff,#eef8ff);border-color:rgba(112,177,222,.24)}
body.soft-radiance .toolbox-summary-chip:nth-child(3){background:linear-gradient(180deg,#fff,#eff9ef);border-color:rgba(95,174,107,.24)}
body.soft-radiance .toolbox-summary-chip strong{color:#d95d49;font-size:1.18rem;line-height:1}
body.soft-radiance .toolbox-summary-chip span{color:#907067;font-size:.61rem;font-weight:800;text-transform:uppercase;line-height:1.12}
body.soft-radiance .settings-toolbox-dropdown{
  position:relative;
  overflow:hidden;
  margin:10px 0 12px;
  border:1px solid rgba(233,116,91,.28)!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,#fff,#fff5ee)!important;
  box-shadow:inset 0 1px 0 #fff,0 8px 16px rgba(177,82,59,.08)!important;
}
body.soft-radiance .settings-toolbox-dropdown>summary{
  min-height:56px;
  padding:12px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  color:#6d4d45;
  font-family:var(--font-display);
  font-size:.88rem;
  font-weight:800;
  cursor:pointer;
  list-style:none;
  background:linear-gradient(180deg,#fff,#fff1e8);
  -webkit-tap-highlight-color:transparent;
}
body.soft-radiance .settings-toolbox-dropdown>summary::-webkit-details-marker{display:none}
body.soft-radiance .settings-toolbox-dropdown>summary svg{width:21px;height:21px;flex:0 0 auto;stroke:#df6752;fill:none;stroke-width:1.75;transition:transform .18s ease}
body.soft-radiance .settings-toolbox-dropdown[open]>summary{border-bottom:1px solid rgba(233,116,91,.18)}
body.soft-radiance .settings-toolbox-dropdown[open]>summary svg{transform:rotate(90deg)}
body.soft-radiance .toolbox-manage-list{
  display:grid;
  gap:11px;
  padding:10px;
  max-height:460px;
  overflow:auto;
  overscroll-behavior:contain;
  background:rgba(255,255,255,.38);
}
body.soft-radiance .toolbox-type-group{
  display:grid;
  gap:7px;
  padding:9px;
  border:1px solid rgba(233,116,91,.15);
  border-radius:16px;
  background:rgba(255,255,255,.66);
}
body.soft-radiance .toolbox-type-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding:0 2px 2px;
  color:#c65a48;
  font-family:var(--font-display);
  font-size:.75rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.035em;
}
body.soft-radiance .toolbox-type-heading span{
  min-width:25px;
  min-height:23px;
  padding:3px 7px;
  border:1px solid rgba(233,116,91,.20);
  border-radius:999px;
  display:grid;
  place-items:center;
  color:#8e6b62!important;
  background:#fff7f2;
  font-size:.65rem;
}
body.soft-radiance .toolbox-manage-row{
  min-width:0;
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr) auto!important;
  gap:10px!important;
  align-items:center!important;
  padding:10px!important;
  border:1px solid rgba(233,116,91,.20)!important;
  border-radius:15px!important;
  background:linear-gradient(180deg,#fff,#fff7f1)!important;
  box-shadow:inset 0 1px 0 #fff,0 5px 10px rgba(177,82,59,.05)!important;
}
body.soft-radiance .toolbox-resource-icon{
  width:44px;
  height:44px;
  border:1px solid rgba(233,116,91,.30);
  border-radius:14px;
  display:grid;
  place-items:center;
  color:#df6752;
  background:linear-gradient(180deg,#fff,#ffe0d2);
}
body.soft-radiance .toolbox-resource-icon svg{width:23px;height:23px;stroke:currentColor;fill:none;stroke-width:1.75}
body.soft-radiance .toolbox-manage-row[data-toolbox-type="Video"] .toolbox-resource-icon{color:#377ba9;border-color:rgba(82,153,202,.30);background:linear-gradient(180deg,#fff,#e8f5ff)}
body.soft-radiance .toolbox-manage-row[data-toolbox-type="Article"] .toolbox-resource-icon,
body.soft-radiance .toolbox-manage-row[data-toolbox-type="Tract"] .toolbox-resource-icon{color:#4d9c63;border-color:rgba(83,164,105,.30);background:linear-gradient(180deg,#fff,#eaf8ed)}
body.soft-radiance .toolbox-manage-row[data-toolbox-type="Invitation"] .toolbox-resource-icon{color:#a06abf;border-color:rgba(160,106,191,.30);background:linear-gradient(180deg,#fff,#f4eafb)}
body.soft-radiance .toolbox-manage-copy{min-width:0}
body.soft-radiance .toolbox-manage-copy strong{
  display:block;
  color:#65483f!important;
  font-size:.84rem;
  line-height:1.2;
  overflow-wrap:anywhere;
}
body.soft-radiance .toolbox-manage-copy span{
  display:block;
  margin-top:3px;
  color:#98766d!important;
  font-size:.66rem;
  line-height:1.25;
}
body.soft-radiance .toolbox-manage-actions{display:flex;gap:6px;align-items:center}
body.soft-radiance .toolbox-manage-actions button{
  width:40px;
  height:40px;
  padding:0;
  border:1px solid rgba(233,116,91,.30);
  border-radius:13px;
  display:grid;
  place-items:center;
  color:#d45f4b;
  background:linear-gradient(180deg,#fff,#ffe5da);
  box-shadow:inset 0 1px 0 #fff,0 4px 8px rgba(177,82,59,.06);
}
body.soft-radiance .toolbox-manage-actions button.danger{color:#d94f5d;border-color:rgba(217,79,93,.32);background:linear-gradient(180deg,#fff,#ffe5e8)}
body.soft-radiance .toolbox-manage-actions svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.8}

/* Toolbox add/edit dialog and resource selectors. */
body.soft-radiance #ui2ToolboxForm{
  display:grid;
  gap:12px;
  padding:2px;
}
body.soft-radiance #ui2ToolboxForm .form-field{
  display:grid;
  gap:6px;
  color:#75554d;
  font-size:.76rem;
  font-weight:800;
}
body.soft-radiance #ui2ToolboxForm .form-control{min-height:50px;background:linear-gradient(180deg,#fff,#fff8f3)}
body.soft-radiance :is(.settings-toolbox-dropdown,.toolbox-manage-actions button,.visit-resource-dropdown>summary,.visit-resource-choice,.study-lesson-dropdown>summary,.study-lesson-list-choice){
  transform-origin:center center;
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
}
body.soft-radiance :is(.settings-toolbox-dropdown>summary,.toolbox-manage-actions button,.visit-resource-choice,.study-lesson-list-choice).ui2-pressing{
  animation:srBubblePress .18s cubic-bezier(.20,.78,.26,1) both!important;
}
body.soft-radiance :is(.settings-toolbox-dropdown>summary,.toolbox-manage-actions button,.visit-resource-choice,.study-lesson-list-choice).ui2-soft-release{
  animation:srBubbleRelease .24s cubic-bezier(.18,.82,.22,1) both!important;
}

@media(min-width:720px){
  body.soft-radiance .map-contact-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.soft-radiance .map-location-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
  body.soft-radiance .map-contact-preview{padding:12px}
  body.soft-radiance .map-preview-actions{grid-template-columns:1fr 1fr}
  body.soft-radiance .map-preview-actions .action:last-child{grid-column:1/-1}
  body.soft-radiance .toolbox-summary-strip{grid-template-columns:repeat(3,minmax(0,1fr))}
  body.soft-radiance .toolbox-manage-list{max-height:390px}
}
@media(max-width:430px){
  body.soft-radiance .map-filter-row{gap:5px}
  body.soft-radiance .map-filter{min-height:44px;font-size:.54rem;padding-inline:2px}
  body.soft-radiance .map-contact-group{padding:8px}
  body.soft-radiance .map-contact-main{grid-template-columns:43px minmax(0,1fr) 20px;padding:10px}
  body.soft-radiance .map-card-pin{width:43px;height:43px;border-radius:14px}
  body.soft-radiance .map-card-copy strong{font-size:.94rem}
  body.soft-radiance .map-card-copy small{font-size:.68rem}
  body.soft-radiance .toolbox-manage-row{grid-template-columns:40px minmax(0,1fr) auto!important;gap:8px!important;padding:8px!important}
  body.soft-radiance .toolbox-resource-icon{width:40px;height:40px;border-radius:13px}
  body.soft-radiance .toolbox-manage-actions button{width:37px;height:37px;border-radius:12px}
}
@media(max-width:370px){
  body.soft-radiance .map-preview-actions{grid-template-columns:1fr}
  body.soft-radiance .map-preview-actions .action:last-child{grid-column:auto}
  body.soft-radiance .toolbox-summary-strip{grid-template-columns:1fr}
  body.soft-radiance .toolbox-summary-chip{min-height:52px;flex-direction:row;gap:7px}
  body.soft-radiance .toolbox-manage-row{grid-template-columns:38px minmax(0,1fr)!important}
  body.soft-radiance .toolbox-manage-actions{grid-column:1/-1;justify-content:flex-end}
}


/* v3.03 — Decorative icon removal and compact content-only layouts. */
body.soft-radiance .settings-status-card{grid-template-columns:minmax(0,1fr)!important}
body.soft-radiance .time-month-focus{grid-template-columns:minmax(0,1fr) auto!important}
body.soft-radiance .time-year-position{grid-template-columns:minmax(0,1fr)!important}
body.soft-radiance .settings-status-card>div,
body.soft-radiance .time-month-focus>div,
body.soft-radiance .time-year-position>div{min-width:0}
@media(max-width:420px){
  body.soft-radiance .time-month-focus{grid-template-columns:minmax(0,1fr)!important}
  body.soft-radiance .time-focus-total{justify-self:start!important;margin-top:6px}
}

/* v3.06 — Soft Radiance whole-button color flash. */
body.soft-radiance .ui2-tap-shimmer,
body.soft-radiance .ui2-soft-pop{display:none!important}
body.soft-radiance .ui2-pressing{
  animation:none!important;
  transform:translateZ(0) scale(.965)!important;
  background:linear-gradient(180deg,#ffad95 0%,#ef7059 100%)!important;
  border-color:#e65d47!important;
  color:#fff!important;
  filter:saturate(1.06) brightness(1.02)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88),0 5px 12px rgba(190,73,49,.20)!important;
  transition:transform .075s ease,background .075s ease,color .075s ease,border-color .075s ease,box-shadow .075s ease!important
}
body.soft-radiance .ui2-pressing :is(span,strong,small){color:#fff!important}
body.soft-radiance .ui2-pressing svg{color:#fff!important;stroke:currentColor!important}
body.soft-radiance .ui2-color-release{filter:none!important}
