:root{
  --paper:#f6efe2;
  --paper-2:#efe2cc;
  --ink:#2e271f;
  --muted:#74685b;
  --line:#c79a7d;
  --terracotta:#c97959;
  --sage:#98a38d;
  --sand:#d8c29d;
  --ochre:#d7a14a;
  --blue:#8aa4ae;
  --green:#75836f;
  --soft-white:rgba(255,252,244,.74);
  --shadow:0 24px 60px rgba(58,42,26,.16);
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  padding-bottom:86px;
  color:var(--ink);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:
    radial-gradient(circle at 8% 10%,rgba(199,121,89,.18),transparent 28%),
    radial-gradient(circle at 90% 84%,rgba(138,164,174,.2),transparent 30%),
    linear-gradient(135deg,#ead8bd,#fbf6ea 46%,#e6d3b4);
}
body:before,body:after{
  content:"";
  position:fixed;
  pointer-events:none;
  border-radius:48% 52% 44% 56%;
  background:rgba(255,255,255,.25);
  filter:blur(.2px);
}
body:before{width:420px;height:220px;left:-80px;top:90px;transform:rotate(-18deg)}
body:after{width:360px;height:260px;right:-90px;bottom:70px;transform:rotate(-22deg)}
button,input,textarea{font:inherit}
::selection{background:rgba(215,161,74,.28);color:#2e271f}
button{
  color:inherit;
  -webkit-tap-highlight-color:transparent;
  user-select:none;
  -webkit-user-select:none;
  touch-action:manipulation;
}
button:focus{outline:none}
button:focus-visible{outline:2px solid rgba(215,161,74,.45);outline-offset:3px}
button:active:not(:disabled){filter:brightness(.98) saturate(1.04)}
.app-frame{
  width:min(1240px,calc(100vw - 18px));
  min-height:calc(100vh - 18px);
  margin:9px auto;
  border:1px solid rgba(100,76,55,.16);
  border-radius:30px;
  background:linear-gradient(180deg,rgba(255,252,244,.9),rgba(246,239,226,.88));
  box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.75);
  overflow:hidden;
  position:relative;
}
.app-frame:before{
  content:"";
  position:absolute;
  inset:88px auto auto 40px;
  width:280px;
  height:170px;
  border-radius:44% 56% 60% 40%;
  background:rgba(216,194,157,.26);
  pointer-events:none;
}
.topbar{
  height:72px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:0 28px;
  background:rgba(231,212,181,.64);
  border-bottom:1px solid rgba(100,76,55,.1);
  position:relative;
  z-index:2;
}
.brand{
  display:flex;
  align-items:center;
  gap:5px;
  width:max-content;
  min-height:46px;
  padding:5px;
  border:1px solid rgba(120,88,38,.12);
  border-radius:999px;
  background:rgba(255,252,244,.36);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.58);
  color:#4b4035;
  cursor:pointer;
  font-weight:760;
  letter-spacing:.01em;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease;
}
.brand:hover,.brand:focus-visible{
  border-color:rgba(120,88,38,.24);
  background:rgba(255,252,244,.5);
  box-shadow:0 10px 22px rgba(133,91,27,.1),inset 0 1px 0 rgba(255,255,255,.68);
}
.brand:active{
  transform:translateY(1px) scale(.99);
}
.brand.active{
  background:#fff8eb;
  box-shadow:inset 0 0 0 1px rgba(100,76,55,.1),0 8px 18px rgba(58,42,26,.05);
}
.brand-mark{
  position:relative;
  display:inline-grid;
  place-items:center;
  width:36px;
  height:36px;
  flex:0 0 36px;
  padding:0;
  border:1px solid rgba(120,88,38,.2);
  border-radius:38% 62% 42% 58% / 54% 42% 58% 46%;
  background:
    radial-gradient(circle at 34% 27%,rgba(255,255,255,.78),transparent 28%),
    linear-gradient(145deg,#fff6d6 0%,#edcf83 62%,#d4a246 100%);
  box-shadow:0 7px 16px rgba(133,91,27,.13),inset 0 1px 0 rgba(255,255,255,.74);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.brand:hover .brand-mark,.brand:focus-visible .brand-mark{
  border-color:rgba(120,88,38,.34);
  box-shadow:0 10px 20px rgba(133,91,27,.17),inset 0 1px 0 rgba(255,255,255,.82);
  transform:translateY(-1px);
}
.brand-mark:before{
  content:"";
  position:absolute;
  width:18px;
  height:18px;
  border:1.35px solid rgba(85,71,50,.58);
  border-radius:50%;
  box-shadow:0 0 0 5px rgba(255,252,244,.2);
}
.brand-mark:after{
  content:"";
  position:absolute;
  width:6px;
  height:6px;
  border-radius:999px;
  background:#4e4134;
  box-shadow:0 0 0 4px rgba(255,252,244,.34);
}
.brand-separator{color:rgba(75,64,53,.48);font-weight:620;margin-left:2px}
.brand-label{
  min-width:max-content;
  min-height:36px;
  border-radius:999px;
  background:rgba(255,255,255,.18);
  color:#4b4035;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:14px;
  font-weight:790;
  letter-spacing:.005em;
  line-height:1;
  padding:0 15px;
  transition:background .18s ease,box-shadow .18s ease;
}
.brand:hover .brand-label{background:rgba(255,255,255,.38)}
.brand.active .brand-label{background:#fff8eb;box-shadow:inset 0 0 0 1px rgba(100,76,55,.08),0 6px 14px rgba(58,42,26,.04)}
.nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));flex:1 1 auto;align-items:center;gap:6px;min-width:0;max-width:520px;overflow:visible}
.nav button{
  position:relative;
  border:0;
  border-radius:999px;
  background:transparent;
  padding:10px 14px;
  min-width:0;
  width:100%;
  cursor:pointer;
  color:#4b4035;
  font-weight:680;
}
.nav button:hover{background:rgba(255,255,255,.34)}
.nav button.active{background:#fff8eb;box-shadow:inset 0 0 0 1px rgba(100,76,55,.12)}
.nav button.depth-locked,.area-tabs button.depth-locked,.focus-day-tabs button.depth-locked,.focus-day-mini-tabs button.depth-locked{color:rgba(75,64,53,.48)}
.nav button.depth-locked:not(.active):focus,
.nav button.depth-locked:not(.active):focus-visible,
.area-tabs button.depth-locked:not(.active):focus,
.area-tabs button.depth-locked:not(.active):focus-visible,
.thought-section-tabs button.depth-locked:not(.active):focus,
.thought-section-tabs button.depth-locked:not(.active):focus-visible,
.thought-section-mini-tabs button.depth-locked:not(.active):focus,
.thought-section-mini-tabs button.depth-locked:not(.active):focus-visible,
.focus-day-tabs button.depth-locked:not(.active):focus,
.focus-day-tabs button.depth-locked:not(.active):focus-visible,
.focus-day-mini-tabs button.depth-locked:not(.active):focus,
.focus-day-mini-tabs button.depth-locked:not(.active):focus-visible{outline:0;background:transparent;box-shadow:none}
@media(hover:none){
  .nav button.depth-locked:not(.active):hover,
  .area-tabs button.depth-locked:not(.active):hover,
  .thought-section-tabs button.depth-locked:not(.active):hover,
  .thought-section-mini-tabs button.depth-locked:not(.active):hover,
  .focus-day-tabs button.depth-locked:not(.active):hover,
  .focus-day-mini-tabs button.depth-locked:not(.active):hover{background:transparent;box-shadow:none}
}
.nav-depth-seal{
  position:absolute;
  top:-5px;
  right:-5px;
  z-index:2;
  display:inline-flex;
  align-items:center;
  gap:2px;
  min-width:29px;
  height:18px;
  border:1px solid rgba(58,126,129,.19);
  border-radius:999px;
  background:rgba(244,249,244,.96);
  color:#557879;
  padding:0 5px;
  font-size:9px;
  font-style:normal;
  font-weight:850;
  line-height:1;
  box-shadow:0 3px 8px rgba(52,79,75,.1);
}
.nav-depth-seal em{color:#49a5a8;font-size:10px;font-style:normal}
.nav-depth-seal .station-lock{width:7px;height:6px}
.nav-depth-seal .station-lock:before{bottom:4px;width:4px;height:4px}
.settings-entry{
  position:relative;
  flex:0 0 auto;
  width:44px;
  height:44px;
  border:0;
  border-radius:50%;
  background:linear-gradient(145deg,#d85649,#aa3029);
  display:grid;
  place-items:center;
  cursor:pointer;
  padding:2px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 5px 12px rgba(122,42,34,.2);
  transition:transform .18s ease,filter .18s ease,box-shadow .18s ease;
}
.settings-entry:hover,.settings-entry:focus-visible{
  background:linear-gradient(145deg,#df6153,#a92e27);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 7px 16px rgba(122,42,34,.25);
  transform:translateY(-1px) scale(1.06);
  filter:brightness(1.05);
}
.settings-entry.active{box-shadow:0 0 0 3px rgba(201,67,53,.14),inset 0 1px 0 rgba(255,255,255,.28),0 6px 14px rgba(122,42,34,.22)}
.settings-entry[data-auth-state="logged-in"]{background:linear-gradient(145deg,#65a276,#3f7654)}
.settings-gear{
  width:36px;
  height:36px;
  display:block;
  overflow:visible;
  transform:translateY(0);
  filter:drop-shadow(0 0 1px rgba(35,31,28,.18));
}
.settings-gear-body{
  fill:url(#settings-gear-metal);
  stroke:#e4e6e2;
  stroke-width:.72;
  stroke-linejoin:round;
}
.settings-gear-axis{fill:url(#settings-gear-axis-metal);stroke:#303532;stroke-width:.72}
.area-shell{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:-6px 0 18px;
  padding:8px 10px;
  border:1px solid rgba(100,76,55,.1);
  border-radius:999px;
  background:rgba(255,252,244,.48);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.5);
}
.area-title{
  color:rgba(46,39,31,.56);
  font-size:12px;
  font-weight:850;
  letter-spacing:.04em;
  text-transform:uppercase;
  padding-left:8px;
  white-space:nowrap;
}
.area-tabs{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  min-width:0;
  overflow-x:auto;
  scrollbar-width:none;
}
.area-tabs::-webkit-scrollbar{display:none}
.area-tabs button{
  position:relative;
  border:0;
  border-radius:999px;
  background:transparent;
  color:#4b4035;
  cursor:pointer;
  font:inherit;
  font-size:13px;
  font-weight:780;
  min-height:34px;
  min-width:max-content;
  padding:8px 12px;
}
.area-tabs button:hover{background:rgba(255,255,255,.42)}
.area-tabs button.active{
  background:#fff8eb;
  box-shadow:inset 0 0 0 1px rgba(100,76,55,.13),0 8px 16px rgba(58,42,26,.05);
}
.thought-section-tabs,.thought-section-mini-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden}
.thought-section-tabs{width:min(760px,100%);min-height:56px;margin:0 auto 18px;border:1px solid rgba(100,76,55,.1);border-radius:22px;background:rgba(255,252,244,.48);box-shadow:inset 0 1px 0 rgba(255,255,255,.58),0 8px 20px rgba(58,42,26,.04)}
.thought-section-tabs button,.thought-section-mini-tabs button{position:relative;min-width:0;border:0;border-right:1px solid rgba(120,88,38,.08);background:transparent;color:rgba(46,39,31,.64);cursor:pointer;font:inherit;font-weight:820;letter-spacing:0}
.thought-section-tabs button{min-height:56px;font-size:14px;padding:8px}
.thought-section-tabs button:last-child,.thought-section-mini-tabs button:last-child{border-right:0}
.thought-section-tabs button:hover,.thought-section-tabs button:focus-visible,.thought-section-mini-tabs button:hover,.thought-section-mini-tabs button:focus-visible{background:rgba(255,248,235,.56);color:#2e271f;outline:none}
.thought-section-tabs button.active,.thought-section-mini-tabs button.active{background:linear-gradient(145deg,rgba(255,248,235,.94),rgba(239,222,193,.7));color:#2e271f;box-shadow:inset 0 -3px 0 rgba(215,161,74,.48),inset 0 1px 0 rgba(255,255,255,.72)}
.thought-section-mini-tabs{position:fixed;z-index:30;left:var(--thought-mini-left,10px);top:10px;width:var(--thought-mini-width,min(760px,calc(100vw - 44px)));height:40px;border:1px solid rgba(103,126,123,.2);border-radius:16px;background:linear-gradient(145deg,rgba(255,253,247,.97),rgba(238,244,239,.94));box-shadow:0 2px 0 rgba(255,255,255,.72),0 10px 22px rgba(49,73,71,.16),inset 0 1px 0 rgba(255,255,255,.86);backdrop-filter:blur(12px) saturate(1.08);opacity:0;pointer-events:none;transform:translateY(-10px);transition:opacity .22s ease,transform .22s ease}
.thought-section-mini-tabs.visible{opacity:1;pointer-events:auto;transform:translateY(0)}
.thought-section-mini-tabs button{font-size:12px;padding:0 8px}
main{position:relative;z-index:1;padding:clamp(18px,2.1vw,26px)}
.view{display:none;position:relative;isolation:isolate;min-height:calc(100vh - 160px)}
.view.active{display:block}
.view:before{
  content:"";
  position:absolute;
  z-index:-1;
  left:-18px;
  top:8px;
  width:min(700px,86vw);
  height:330px;
  pointer-events:none;
  background:
    radial-gradient(circle at 13% 38%,rgba(152,163,141,.24) 0 42px,transparent 44px),
    radial-gradient(circle at 38% 12%,rgba(199,121,89,.16) 0 28px,transparent 30px),
    radial-gradient(circle at 64% 42%,rgba(216,194,157,.22) 0 64px,transparent 66px),
    radial-gradient(circle at 88% 24%,rgba(138,164,174,.16) 0 36px,transparent 38px);
  filter:blur(.2px);
  opacity:.86;
  transform-origin:18% 26%;
  animation:floatOutLeft 18s ease-in-out infinite alternate;
}
.view:after{
  content:"";
  position:absolute;
  z-index:-1;
  right:-12px;
  top:96px;
  width:min(360px,48vw);
  height:220px;
  pointer-events:none;
  background:
    radial-gradient(circle at 22% 72%,rgba(199,121,89,.11) 0 34px,transparent 36px),
    radial-gradient(circle at 62% 28%,rgba(152,163,141,.18) 0 48px,transparent 50px),
    radial-gradient(circle at 88% 76%,rgba(216,194,157,.18) 0 26px,transparent 28px);
  opacity:.72;
  transform-origin:36% 24%;
  animation:floatOutRight 22s ease-in-out infinite alternate;
}
.view .hero,.view .grid,.view .thought-space-layout{position:relative;z-index:1}
@keyframes floatOutLeft{
  0%{transform:translate3d(18px,6px,0) scale(.985) rotate(-.8deg)}
  45%{transform:translate3d(-10px,-7px,0) scale(1) rotate(.4deg)}
  100%{transform:translate3d(-42px,18px,0) scale(1.025) rotate(1.2deg)}
}
@keyframes floatOutRight{
  0%{transform:translate3d(-34px,-8px,0) scale(.98) rotate(.8deg)}
  50%{transform:translate3d(4px,8px,0) scale(1.005) rotate(-.3deg)}
  100%{transform:translate3d(48px,22px,0) scale(1.025) rotate(-1.1deg)}
}
.hero{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:end;margin-bottom:22px}
.eyebrow{font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:var(--terracotta)}
h1,h2,h3,p{margin-top:0}
h1{font-family:Georgia,"Times New Roman",serif;font-weight:500;font-size:clamp(36px,6vw,68px);line-height:.95;margin-bottom:8px}
h2{font-size:22px;line-height:1.12;margin-bottom:12px}
h3{font-size:15px;line-height:1.2;margin-bottom:8px}
.subtitle{color:var(--muted);font-size:16px;line-height:1.5;margin:0}
.pill{border:1px solid rgba(100,76,55,.13);border-radius:999px;background:rgba(255,255,255,.45);padding:9px 12px;color:var(--muted);font-size:13px;font-weight:700}
.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}
.card{
  grid-column:span 6;
  border:1px solid rgba(100,76,55,.12);
  border-radius:24px;
  background:rgba(255,252,244,.58);
  box-shadow:0 14px 34px rgba(58,42,26,.08),inset 0 1px 0 rgba(255,255,255,.68);
  padding:20px;
  min-width:0;
}
.settings-page{position:relative;z-index:1}
.settings-hero{
  display:grid;
  grid-template-columns:1fr auto;
  gap:18px;
  align-items:end;
  margin-bottom:22px;
  padding:clamp(18px,2.4vw,28px);
  border:1px solid rgba(100,76,55,.1);
  border-radius:28px;
  background:linear-gradient(135deg,rgba(255,252,244,.72),rgba(246,239,226,.66));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.68);
}
.settings-hero h1{font-size:clamp(32px,5vw,58px);line-height:.98;margin:6px 0 8px}
.settings-login-badge{
  display:inline-flex;
  align-items:center;
  gap:9px;
  min-height:42px;
  padding:0 14px;
  border:2px solid rgba(201,67,53,.82);
  border-radius:999px;
  background:rgba(255,247,238,.74);
  color:#87352d;
  font-size:13px;
  font-weight:820;
  white-space:nowrap;
  box-shadow:0 10px 22px rgba(122,42,34,.08);
}
.settings-login-badge span{
  width:9px;
  height:9px;
  border-radius:999px;
  background:#c94335;
  box-shadow:0 0 0 4px rgba(201,67,53,.12);
}
.area-tabs button.depth-locked{padding-right:30px}
.area-tabs button .nav-depth-seal{top:50%;right:5px;transform:translateY(-50%);box-shadow:none}
.settings-hero-actions{align-self:start;display:grid;justify-items:end;gap:10px}
.settings-status-card p{max-width:620px;color:var(--muted);line-height:1.55}
.depth-test-button{
  border-color:rgba(53,164,181,.3);
  background:linear-gradient(145deg,rgba(103,218,211,.2),rgba(73,151,190,.16));
  color:#356f82;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.62);
}
.depth-test-button:hover,.depth-test-button:focus-visible{
  border-color:rgba(53,164,181,.48);
  background:linear-gradient(145deg,rgba(103,218,211,.3),rgba(73,151,190,.22));
}
@media(max-width:620px){
  .settings-hero-actions{justify-items:start}
}
.settings-status-list{display:grid;gap:10px}
.settings-status-list span{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 0;
  border-bottom:1px solid rgba(100,76,55,.1);
}
.settings-status-list span:last-child{border-bottom:0}
.settings-status-list b{font-size:14px}
.settings-status-list em{
  font-style:normal;
  color:var(--muted);
  font-size:13px;
  font-weight:720;
}
.span-all{grid-column:1/-1}.span-4{grid-column:span 4}.span-8{grid-column:span 8}
.soft-panel{
  border:2px solid rgba(199,121,89,.62);
  border-radius:34px;
  background:rgba(255,252,244,.45);
  min-height:260px;
  padding:18px;
  box-shadow:inset 0 0 0 5px rgba(255,252,244,.46);
}
.composer{display:grid;gap:12px}
.today-composer{min-height:0;padding:12px 16px;border-radius:30px}
.today-composer textarea{min-height:92px;font-size:19px}
#view-today .hero{
  margin-bottom:14px;
}
#view-today .hero h1{
  font-size:clamp(34px,5vw,56px);
}
#view-today>.area-shell{
  display:none;
}
#view-today .focus-flow-prototype{
  margin-top:0;
}
#view-today .focus-flow-prototype:not(:has(.focus-flow-intro)){
  padding-top:0;
}
.today-empty-focus-stage{
  width:100%;
  min-height:clamp(360px,58vh,620px);
  border:1px solid rgba(100,76,55,.1);
  border-radius:28px;
  background:
    radial-gradient(circle at 50% 42%, rgba(226,199,135,.16), transparent 34%),
    linear-gradient(135deg, rgba(255,252,244,.72), rgba(245,238,221,.5));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 18px 44px rgba(58,42,26,.07);
  margin:0 0 18px;
}
.today-thought-card{
  padding:14px 16px;
}
.composer-title-wrap{
  width:min(280px,100%);
  margin:0 auto;
  position:relative;
}
.composer-title{
  width:100%;
  border:0;
  border-bottom:1px solid rgba(100,76,55,.18);
  background:transparent;
  text-align:center;
  font-weight:850;
  padding:7px 4px;
  outline:none;
}
.title-count{
  position:absolute;
  right:-26px;
  top:50%;
  transform:translateY(-50%);
  color:rgba(46,39,31,.34);
  font-size:11px;
  font-weight:800;
}
.composer-meta-box{display:grid;gap:8px}
.composer-meta-display{
  display:flex;
  align-items:center;
  gap:13px;
  min-height:38px;
  cursor:pointer;
}
.meta-tag-stack{display:flex;flex-wrap:wrap;gap:7px}
.meta-chip{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  border-radius:999px;
  padding:7px 12px;
  border:1px solid rgba(100,76,55,.11);
  background:rgba(255,255,255,.42);
  color:rgba(46,39,31,.76);
  font-size:12px;
  font-weight:850;
}
.category-chip{background:rgba(138,164,174,.2);color:#43505a;margin-right:4px}
.tag-chip{background:rgba(216,194,157,.22);color:#67533b}
.composer-meta-row{
  display:grid;
  grid-template-columns:minmax(120px,170px) minmax(160px,1fr);
  gap:10px;
  align-items:end;
  display:none;
}
.composer-meta-box.editing .composer-meta-row{display:grid}
.composer-meta-box.editing .composer-meta-display{display:none}
.composer-meta-row label{display:grid;gap:4px;color:rgba(46,39,31,.48);font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.composer-meta-row select,.composer-meta-row input{
  min-width:0;
  border:1px solid rgba(100,76,55,.12);
  border-radius:999px;
  background:rgba(255,255,255,.42);
  color:var(--ink);
  padding:9px 12px;
  outline:none;
}
.composer-meta-row select:focus,.composer-meta-row input:focus{border-color:rgba(80,121,142,.42);box-shadow:0 0 0 3px rgba(138,164,174,.16)}
textarea{
  width:100%;
  min-height:185px;
  resize:vertical;
  border:0;
  background:transparent;
  color:var(--ink);
  outline:none;
  font-size:22px;
  line-height:1.35;
  padding:10px 4px;
}
textarea::placeholder,.composer-title::placeholder{color:rgba(46,39,31,.42)}
.button-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.btn{
  border:1px solid rgba(100,76,55,.13);
  border-radius:999px;
  background:rgba(255,255,255,.45);
  padding:10px 14px;
  font-weight:760;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(58,42,26,.08);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
}
.btn:hover{transform:translateY(-1px);background:rgba(255,255,255,.64)}
.btn.primary{background:var(--sage);color:#fff;border-color:rgba(73,83,67,.2)}
.btn.ai{background:linear-gradient(145deg,var(--blue),var(--sage));color:#fff}
.btn.danger{background:rgba(199,89,76,.12);border-color:rgba(199,89,76,.28);color:#8a3a31}
.btn.danger:hover{background:rgba(199,89,76,.18);border-color:rgba(199,89,76,.38)}
.btn.ki-compact{min-width:74px;padding-inline:16px}
.btn.save-wide{flex:1;box-shadow:none}
.magic-wand{display:inline-block;font-size:1.05em;line-height:1;transform-origin:32% 78%;filter:drop-shadow(0 2px 4px rgba(58,42,26,.2))}
.ai-working{position:relative;overflow:hidden;cursor:progress;opacity:.94}
.ai-working:before{content:"";position:absolute;inset:-2px;border-radius:inherit;background:linear-gradient(110deg,transparent 12%,rgba(255,255,255,.34) 42%,transparent 68%);transform:translateX(-120%);animation:aiButtonSweep 1.35s ease-in-out infinite;pointer-events:none}
.ai-working .magic-wand{animation:wandWorking 1.05s ease-in-out infinite}
.ai-working .ai-label,.ai-working .magic-wand{position:relative;z-index:1}
@keyframes wandWorking{0%,100%{transform:rotate(-10deg) translateY(0) scale(1)}35%{transform:rotate(16deg) translateY(-2px) scale(1.12)}65%{transform:rotate(4deg) translateY(1px) scale(1.04)}}
@keyframes aiButtonSweep{to{transform:translateX(120%)}}
.composer .button-row{flex-wrap:nowrap}
.composer-status{
  min-height:24px;
  border-radius:999px;
  background:rgba(255,255,255,.36);
  border:1px solid rgba(100,76,55,.1);
  color:var(--muted);
  font-size:12px;
  line-height:1.25;
  padding:7px 11px;
}
.check-grid{display:grid;gap:13px}
.check-card-wide{
  padding-top:16px;
  padding-bottom:16px;
}
.check-card-wide h2{margin-bottom:0}
.check-card-head{
  display:grid;
  justify-items:center;
  gap:9px;
  margin-bottom:14px;
  text-align:center;
}
.checkin-sentence{
  max-width:360px;
  margin:0;
  border:1px solid rgba(127,167,184,.18);
  border-radius:999px;
  background:linear-gradient(145deg,rgba(255,252,244,.68),rgba(255,255,255,.38));
  color:#5d5146;
  box-shadow:0 10px 24px rgba(58,42,26,.07),inset 0 1px 0 rgba(255,255,255,.62);
  padding:8px 13px;
  font-size:13px;
  line-height:1.25;
  font-weight:760;
  text-align:center;
  transition:opacity .18s ease,transform .18s ease,filter .18s ease;
}
.checkin-sentence.sentence-out{opacity:0;transform:translateY(4px);filter:blur(.6px)}
.checkin-sentence.sentence-in{animation:sentenceSoftIn .34s ease both}
.today-ai-task-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:14px 16px;
  background:linear-gradient(145deg,rgba(231,238,232,.82),rgba(255,248,234,.7));
  border-color:rgba(127,167,184,.18);
}
.today-ai-task-card h2{
  margin:3px 0 2px;
  font-size:18px;
}
.today-ai-task-card .subtitle{
  margin:0;
  color:var(--muted);
  font-size:13px;
}
.today-ai-task-card .btn{
  min-height:42px;
  padding-inline:18px;
  white-space:nowrap;
}
.focus-quick-capture{
  width:min(760px,100%);
  margin:0 auto 12px;
  display:grid;
  gap:7px;
}
.focus-quick-capture label{
  padding-left:8px;
  color:rgba(46,39,31,.62);
  font-size:13px;
  font-weight:820;
}
.focus-quick-input{
  display:grid;
  grid-template-columns:1fr 42px;
  align-items:end;
  gap:8px;
  border:1px solid rgba(120,88,38,.13);
  border-radius:22px;
  background:rgba(255,252,244,.66);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.64),0 10px 24px rgba(58,42,26,.05);
  padding:8px 8px 8px 14px;
}
.focus-quick-input textarea{
  width:100%;
  min-height:34px;
  max-height:108px;
  resize:none;
  border:0;
  outline:none;
  background:transparent;
  color:#2e271f;
  font-size:15px;
  line-height:1.35;
  padding:7px 2px;
  overflow:auto;
}
.focus-quick-input:focus-within textarea{
  min-height:72px;
}
.focus-quick-save{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid rgba(120,88,38,.16);
  border-radius:50%;
  background:linear-gradient(145deg,#f6d98e,#d7a14a);
  color:#3e321f;
  cursor:pointer;
  font-size:24px;
  font-weight:520;
  line-height:1;
  box-shadow:0 8px 18px rgba(133,91,27,.14),inset 0 1px 0 rgba(255,255,255,.64);
  transition:transform .16s ease,box-shadow .16s ease;
}
.focus-quick-save:hover,.focus-quick-save:focus-visible{
  outline:none;
  transform:translateY(-1px);
  box-shadow:0 11px 24px rgba(133,91,27,.18),inset 0 1px 0 rgba(255,255,255,.72);
}
.focus-flow-prototype{
  display:grid;
  gap:12px;
  margin:0 auto 24px;
  max-width:100%;
}
.focus-day-shell{
  width:100%;
  touch-action:pan-y;
}
.focus-flow-intro{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:12px;
  padding:0 4px;
}
.focus-flow-intro h2{
  margin:0;
  font-size:22px;
  font-weight:760;
  letter-spacing:0;
}
.focus-flow-snap{
  display:grid;
  gap:28px;
  scroll-snap-type:y proximity;
}
.focus-day-tabs{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  width:min(760px,100%);
  min-height:58px;
  border-radius:24px;
  background:rgba(255,252,244,.4);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.56),0 8px 20px rgba(58,42,26,.04);
  overflow:hidden;
  margin:0 auto 12px;
}
.focus-day-tabs button{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-width:0;
  min-height:58px;
  border:0;
  border-right:1px solid rgba(120,88,38,.08);
  background:transparent;
  color:rgba(46,39,31,.64);
  cursor:pointer;
  font-size:14px;
  font-weight:820;
  letter-spacing:.005em;
  padding:8px 8px;
  transition:background .18s ease,color .18s ease,box-shadow .18s ease;
}
.focus-day-tabs button:last-child{border-right:0}
.focus-day-tabs button:hover,.focus-day-tabs button:focus-visible{
  background:rgba(255,248,235,.56);
  color:#2e271f;
  outline:none;
}
.focus-day-tabs button.active{
  background:linear-gradient(145deg,rgba(255,248,235,.92),rgba(239,222,193,.68));
  color:#2e271f;
  box-shadow:inset 0 -3px 0 rgba(215,161,74,.48),inset 0 1px 0 rgba(255,255,255,.72);
}
.focus-day-mini-tabs{
  position:fixed;
  z-index:30;
  left:var(--focus-mini-left,10px);
  top:10px;
  width:var(--focus-mini-width,min(700px,calc(100vw - 44px)));
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  height:40px;
  border:1px solid rgba(103,126,123,.2);
  border-radius:16px;
  background:linear-gradient(145deg,rgba(255,253,247,.97),rgba(238,244,239,.94));
  box-shadow:
    0 2px 0 rgba(255,255,255,.72),
    0 10px 22px rgba(49,73,71,.16),
    inset 0 1px 0 rgba(255,255,255,.86);
  backdrop-filter:blur(12px) saturate(1.08);
  opacity:0;
  pointer-events:none;
  transform:translateY(-10px);
  transition:opacity .24s ease,transform .24s ease;
  overflow:hidden;
}
#view-today .focus-day-mini-tabs.visible{
  opacity:1 !important;
  pointer-events:auto !important;
  transform:translateY(0) !important;
}
.focus-day-mini-tabs button{
  border:0;
  border-right:1px solid rgba(120,88,38,.08);
  background:transparent;
  color:rgba(46,39,31,.64);
  cursor:pointer;
  font-size:12px;
  font-weight:840;
  letter-spacing:.01em;
  padding:0 8px;
}
.focus-day-mini-tabs button:last-child{border-right:0}
.focus-day-mini-tabs button.active{
  background:linear-gradient(145deg,rgba(255,248,235,.94),rgba(239,222,193,.7));
  color:#2e271f;
  box-shadow:inset 0 -2px 0 rgba(215,161,74,.46);
}
.focus-day-icon{
  position:relative;
  display:inline-grid;
  place-items:center;
  width:31px;
  height:31px;
  flex:0 0 31px;
  border:1px solid rgba(120,88,38,.14);
  border-radius:50%;
  background:rgba(255,252,244,.52);
}
.focus-day-icon:before,.focus-day-icon:after,.focus-day-icon i:before,.focus-day-icon i:after{
  content:"";
  position:absolute;
  display:block;
}
.focus-day-icon-person:before{
  top:6px;
  width:8px;
  height:8px;
  border:1.4px solid currentColor;
  border-radius:50%;
}
.focus-day-icon-person:after{
  bottom:6px;
  width:17px;
  height:9px;
  border:1.4px solid currentColor;
  border-bottom:0;
  border-radius:12px 12px 0 0;
}
.focus-day-icon-write svg{
  width:22px;
  height:22px;
  overflow:visible;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.focus-day-tabs button.depth-locked,
.focus-day-mini-tabs button.depth-locked,
.focus-day-tabs button.depth-locked:hover,
.focus-day-tabs button.depth-locked:focus,
.focus-day-tabs button.depth-locked:focus-visible,
.focus-day-tabs button.depth-locked:active,
.focus-day-mini-tabs button.depth-locked:hover,
.focus-day-mini-tabs button.depth-locked:focus,
.focus-day-mini-tabs button.depth-locked:focus-visible,
.focus-day-mini-tabs button.depth-locked:active{background:transparent!important;color:rgba(75,64,53,.48)!important;box-shadow:none!important;filter:none!important;outline:none!important;transform:none!important}
.focus-day-tabs button.depth-locked{padding-right:42px}
.focus-day-tabs button .nav-depth-seal{top:7px;right:7px}
.focus-day-icon-flag:before{
  left:10px;
  top:7px;
  width:2px;
  height:17px;
  border-radius:999px;
  background:currentColor;
}
.focus-day-icon-flag:after{
  left:12px;
  top:7px;
  width:12px;
  height:9px;
  border:1.5px solid currentColor;
  border-left:0;
  border-radius:0 7px 7px 0;
  transform:skewY(-5deg);
}
.focus-day-icon-flag i:before{
  left:7px;
  bottom:5px;
  width:11px;
  height:2px;
  border-radius:999px;
  background:currentColor;
  opacity:.65;
}
.focus-day-panel{
  display:grid;
  gap:34px;
  width:min(760px,100%);
  margin:0 auto;
}
.focus-day-panel-thought{
  width:min(820px,100%);
}
.focus-drop-card{
  position:relative;
  display:flex;
  align-items:flex-end;
  width:100%;
  min-height:clamp(620px,calc(100vh - 190px),880px);
  padding:clamp(22px,4vw,38px);
  border:1px solid rgba(92,119,114,.16);
  border-radius:30px;
  background:
    radial-gradient(circle at 50% 18%,rgba(255,255,255,.74),transparent 34%),
    linear-gradient(155deg,rgba(253,250,241,.94),rgba(236,241,230,.72));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82),inset 0 -22px 46px rgba(73,108,97,.035),0 18px 42px rgba(58,42,26,.08);
  overflow:hidden;
}
.focus-drop-card:before{
  content:"";
  position:absolute;
  inset:16px;
  border:1px solid rgba(255,255,255,.56);
  border-radius:24px;
  pointer-events:none;
}
.focus-drop-composer{
  position:relative;
  z-index:1;
  width:min(680px,100%);
  margin:0 auto;
  padding-bottom:28px;
}
.focus-drop-ai-strip{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  gap:8px;
  width:calc(100% - 30px);
  min-height:34px;
  margin:0 auto -1px;
  border:1px solid rgba(34,137,150,.26);
  border-bottom-color:rgba(34,137,150,.18);
  border-radius:14px 14px 0 0;
  background:
    repeating-linear-gradient(135deg,rgba(29,151,161,.13) 0 6px,rgba(255,255,255,.18) 6px 12px),
    linear-gradient(90deg,rgba(188,233,226,.9),rgba(184,224,229,.78));
  color:#285f65;
  cursor:pointer;
  padding:7px 13px;
  font-size:12px;
  font-weight:820;
  letter-spacing:.015em;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.62);
}
.focus-drop-ai-strip input{position:absolute;opacity:0;pointer-events:none}
.focus-drop-ai-check{
  position:relative;
  display:grid;
  place-items:center;
  width:17px;
  height:17px;
  flex:0 0 17px;
  border:1.5px solid rgba(35,112,121,.5);
  border-radius:5px;
  background:rgba(255,255,255,.62);
  box-shadow:inset 0 1px 2px rgba(39,93,99,.08);
}
.focus-drop-ai-strip input:checked + .focus-drop-ai-check{border-color:#247f89;background:#2a929b}
.focus-drop-ai-strip input:checked + .focus-drop-ai-check:after{content:"";width:7px;height:4px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:translateY(-1px) rotate(-45deg)}
.focus-drop-ai-strip input:focus-visible + .focus-drop-ai-check{outline:2px solid rgba(35,128,138,.34);outline-offset:2px}
.focus-drop-input-shell{
  position:relative;
  border:1px solid rgba(67,103,100,.18);
  border-radius:22px;
  background:rgba(255,253,247,.94);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82),0 14px 32px rgba(49,73,71,.12);
  overflow:visible;
}
.focus-drop-input-shell textarea{
  display:block;
  width:100%;
  min-height:108px;
  max-height:220px;
  resize:none;
  border:0;
  background:transparent;
  color:#2e302c;
  outline:none;
  padding:18px 68px 38px 18px;
  font-size:16px;
  line-height:1.48;
  overflow:auto;
}
.focus-drop-input-shell textarea::placeholder{color:rgba(55,70,66,.45)}
.focus-drop-input-shell:focus-within{border-color:rgba(37,133,143,.34);box-shadow:0 0 0 3px rgba(53,159,166,.1),0 16px 34px rgba(49,73,71,.14)}
.focus-drop-send{
  position:absolute;
  z-index:3;
  right:12px;
  bottom:12px;
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border:1px solid rgba(21,80,83,.2);
  border-radius:50%;
  background:linear-gradient(145deg,#327f84,#1f6066);
  color:#fff;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(30,91,96,.22),inset 0 1px 0 rgba(255,255,255,.28);
  transition:transform .16s ease,filter .16s ease,opacity .16s ease;
}
.focus-drop-send svg{width:21px;height:21px;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.focus-drop-send:hover,.focus-drop-send:focus-visible{outline:none;filter:brightness(1.08);transform:translateY(-1px)}
.focus-drop-send:disabled{cursor:wait;opacity:.58;transform:none}
.focus-drop-voice{
  position:absolute;
  z-index:5;
  left:50%;
  bottom:-28px;
  display:grid;
  place-items:center;
  width:56px;
  height:56px;
  border:3px solid rgba(255,250,241,.96);
  border-radius:50%;
  background:linear-gradient(145deg,#e35f55,#b72e2c);
  color:#fff;
  cursor:pointer;
  box-shadow:0 10px 22px rgba(151,41,37,.28),inset 0 1px 0 rgba(255,255,255,.3);
  transform:translateX(-50%);
  transition:transform .18s ease,filter .18s ease,box-shadow .18s ease;
}
.focus-drop-voice svg{width:23px;height:23px;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.focus-drop-voice:hover,.focus-drop-voice:focus-visible{outline:none;filter:brightness(1.08);transform:translateX(-50%) scale(1.04)}
.focus-drop-voice.listening{animation:focusDropVoicePulse 1.15s ease-in-out infinite;box-shadow:0 0 0 8px rgba(212,65,57,.14),0 12px 26px rgba(151,41,37,.32)}
.focus-drop-status{position:absolute;right:3px;bottom:1px;max-width:42%;overflow:hidden;color:rgba(50,91,91,.64);font-size:10px;font-weight:720;line-height:1.2;text-align:right;text-overflow:ellipsis;white-space:nowrap}
@keyframes focusDropVoicePulse{0%,100%{transform:translateX(-50%) scale(1)}50%{transform:translateX(-50%) scale(1.08)}}
.focus-day-panel-action{
  width:min(760px,100%);
}
.focus-action-legacy-grid{width:100%;gap:16px}
.focus-room-link{
  width:min(100%,520px);
  justify-self:center;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:13px;
  border:1px solid rgba(120,88,38,.13);
  border-radius:999px;
  background:rgba(255,252,244,.5);
  color:#3c332a;
  cursor:pointer;
  padding:10px 16px 10px 10px;
  text-align:left;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55);
  transition:background .18s ease,border-color .18s ease,transform .18s ease;
}
.focus-room-link:hover,.focus-room-link:focus-visible{
  background:rgba(255,248,235,.74);
  border-color:rgba(207,166,74,.28);
  outline:none;
  transform:translateY(-1px);
}
.focus-room-link b{
  display:block;
  font-size:14px;
  font-weight:840;
  line-height:1.15;
}
.focus-room-link small{
  display:block;
  color:#74685b;
  font-size:12px;
  font-weight:650;
  line-height:1.25;
  margin-top:2px;
}
.focus-room-link-orb{
  position:relative;
  width:42px;
  height:42px;
  flex:0 0 42px;
  border-radius:50%;
  background:radial-gradient(circle at 34% 28%,rgba(255,255,255,.8),transparent 25%),linear-gradient(145deg,#f4d88c,#d7a14a);
  box-shadow:0 10px 22px rgba(133,91,27,.15),inset 0 1px 0 rgba(255,255,255,.68);
}
.focus-room-link-orb span{
  position:absolute;
  width:8px;
  height:8px;
  border-radius:50%;
  background:rgba(255,252,244,.82);
  box-shadow:0 0 0 1px rgba(120,88,38,.12);
}
.focus-room-link-orb span:nth-child(1){right:-2px;top:9px}
.focus-room-link-orb span:nth-child(2){left:1px;bottom:6px;width:7px;height:7px}
.focus-room-link-orb span:nth-child(3){right:8px;bottom:-2px;width:6px;height:6px}
.focus-flow-panel{
  position:relative;
  display:grid;
  align-content:center;
  gap:18px;
  min-height:clamp(520px,68vh,680px);
  padding:clamp(22px,5vw,46px);
  border:1px solid transparent;
  border-radius:30px;
  background:
    linear-gradient(145deg,rgba(255,252,244,.76),rgba(247,238,222,.5)) padding-box,
    linear-gradient(135deg,rgba(255,255,255,.82) 0%,rgba(170,139,96,.2) 72%,rgba(105,78,47,.24) 100%) border-box;
  box-shadow:
    inset 7px 7px 14px rgba(255,255,255,.16),
    inset -8px -8px 16px rgba(104,77,43,.025),
    1px 1px 0 rgba(180,151,111,.3),
    3px 3px 0 rgba(151,119,78,.18),
    5px 6px 0 rgba(112,83,50,.1),
    9px 12px 18px -12px rgba(67,48,29,.25);
  overflow:visible;
  scroll-snap-align:start;
}
.focus-flow-divider{
  width:min(180px,54%);
  height:18px;
  justify-self:center;
  display:grid;
  place-items:center;
  position:relative;
  margin:-8px 0;
}
.focus-flow-divider:before{
  content:"";
  width:100%;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(72,60,48,.45),transparent);
}
.focus-flow-divider span{
  position:absolute;
  width:7px;
  height:7px;
  border-radius:50%;
  background:rgba(72,60,48,.62);
  box-shadow:0 0 0 5px rgba(72,60,48,.08);
}
.focus-flow-panel:before{
  content:"";
  position:absolute;
  inset:16px;
  border:1px solid rgba(255,255,255,.5);
  border-radius:24px;
  pointer-events:none;
}
.focus-flow-copy{
  position:relative;
  z-index:1;
  display:grid;
  gap:6px;
  justify-items:center;
  text-align:center;
}
.focus-flow-copy.compact{align-self:start}
.focus-state-deep-panel .focus-flow-copy.compact{
  padding-top:18px;
}
.focus-flow-copy h2{
  margin:0;
  color:#302820;
  font-size:clamp(28px,7vw,42px);
  font-weight:640;
  letter-spacing:0;
}
.focus-flow-copy p{
  max-width:410px;
  margin:0;
  color:#716457;
  font-size:15px;
  line-height:1.45;
}
.focus-energy-panel{
  --focus-energy-date-top:clamp(16px,3vw,26px);
  --focus-energy-slider-top:55%;
  --focus-energy-title-gap:clamp(58px,13svh,116px);
  --focus-energy-title-top:calc(var(--focus-energy-slider-top) - var(--focus-energy-title-gap));
  --focus-energy-status-top-gap:clamp(28px,4.2vw,40px);
  --focus-energy-status-bottom-gap:clamp(16px,2.6vw,24px);
  align-content:start;
  gap:16px;
  padding-bottom:clamp(92px,14vw,118px);
}
.focus-energy-date{
  position:absolute;
  top:var(--focus-energy-date-top);
  right:clamp(18px,4vw,34px);
  z-index:3;
  color:rgba(77,62,45,.4);
  font-family:"Segoe Print","Bradley Hand ITC","Comic Sans MS",cursive;
  font-size:clamp(13px,2.4vw,17px);
  font-weight:300;
  letter-spacing:.02em;
  line-height:1;
  transform:none;
  pointer-events:none;
}
.focus-section-label{
  position:absolute;
  top:clamp(16px,3vw,26px);
  left:clamp(18px,4vw,34px);
  z-index:3;
}
.focus-energy-panel .focus-flow-copy h2{
  font-size:clamp(25px,6vw,38px);
}
.focus-energy-panel .focus-flow-copy{
  position:absolute;
  top:var(--focus-energy-title-top);
  left:50%;
  z-index:1;
  width:min(calc(100% - 44px),420px);
  transform:translate(-50%,6px);
}
.focus-energy-status{
  position:absolute;
  top:calc(var(--focus-energy-date-top) + var(--focus-energy-status-top-gap));
  bottom:calc(100% - var(--focus-energy-title-top) + var(--focus-energy-status-bottom-gap));
  left:50%;
  width:min(82%,340px);
  z-index:1;
  display:grid;
  justify-items:center;
  align-content:center;
  gap:7px;
  min-height:0;
  margin:0;
  order:-1;
  transform:translateX(-50%);
}
.focus-companion-graphic{
  width:78px;
  min-height:80px;
  display:grid;
  align-content:center;
  place-items:center;
  gap:4px;
  padding:0;
  border:2px dashed rgba(120,88,38,.42);
  border-radius:18px;
  background:transparent;
  opacity:0;
  transform:translateY(-4px) scale(.96);
  transition:opacity .34s ease,transform .34s ease;
  cursor:pointer;
}
.focus-companion-graphic.pending{
  width:0;
  min-height:0;
  height:0;
  border:0;
  gap:0;
  overflow:hidden;
}
.focus-companion-graphic.show{
  opacity:1;
  transform:translateY(0) scale(1);
}
.focus-companion-slot,
.focus-companion-graphic{
  transition:opacity .22s ease,transform .24s ease,filter .22s ease;
}
.focus-companion-slot.companion-fade-out,
.focus-companion-graphic.companion-fade-out{
  opacity:0;
  transform:translateY(4px) scale(.96);
  filter:blur(2px);
}
.focus-companion-slot.companion-fade-in,
.focus-companion-graphic.companion-fade-in{
  animation:companionSoftIn .28s ease both;
}
.focus-companion-graphic .focus-animal-shape{
  transform:scale(.88);
}
.focus-companion-graphic b{
  color:#302820;
  font-size:11px;
  font-weight:820;
  line-height:1.05;
}
.focus-companion-image{
  display:block;
  width:54px;
  height:54px;
  object-fit:contain;
  mix-blend-mode:multiply;
  filter:contrast(1.04);
  border-radius:16px;
  -webkit-mask-image:radial-gradient(ellipse at center,#000 58%,rgba(0,0,0,.88) 70%,rgba(0,0,0,.42) 84%,transparent 100%);
  mask-image:radial-gradient(ellipse at center,#000 58%,rgba(0,0,0,.88) 70%,rgba(0,0,0,.42) 84%,transparent 100%);
  -webkit-mask-size:100% 100%;
  mask-size:100% 100%;
}
.focus-energy-control{
  position:absolute;
  top:var(--focus-energy-slider-top);
  left:50%;
  z-index:1;
  display:grid;
  gap:10px;
  margin:0;
  width:min(calc(100% - clamp(44px,10vw,92px)),440px);
  transform:translateX(-50%);
}
.focus-energy-control::after{
  content:"";
  position:absolute;
  right:2px;
  top:48px;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#b8483f;
  box-shadow:0 0 0 rgba(184,72,63,0);
  opacity:0;
  pointer-events:none;
}
.focus-energy-control.energy-logged::after{
  animation:focusEnergyLogged .34s ease-in-out 2;
}
.focus-energy-slider{
  width:100%;
  accent-color:#d0a54b;
}
.focus-quick-mode{
  justify-self:center;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:auto;
  min-width:0;
  min-height:24px;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
  opacity:0;
  pointer-events:none;
  transform:translateY(-6px);
  visibility:hidden;
  transition:opacity .42s ease,transform .42s ease,visibility .42s ease;
}
.focus-quick-mode.show{
  opacity:1;
  pointer-events:auto;
  transform:translateY(0);
  visibility:visible;
}
.focus-quick-mode span{
  color:rgba(67,52,37,.68);
  font-family:"Segoe Print","Bradley Hand ITC","Comic Sans MS",cursive;
  font-size:clamp(16px,3.8vw,23px);
  font-weight:360;
  line-height:1.12;
  text-align:center;
  letter-spacing:-.01em;
}
.focus-quick-mode b{
  color:inherit;
  font:inherit;
}
.focus-energy-state{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:nowrap;
  min-height:34px;
  color:#4f453a;
  font-size:clamp(16px,4vw,21px);
  font-weight:640;
  letter-spacing:0;
  text-align:center;
  white-space:nowrap;
}
.focus-energy-state b{
  color:#302820;
  font-weight:780;
}
.focus-bolts{
  display:inline-flex;
  align-items:center;
  flex:0 0 auto;
  gap:5px;
  color:rgba(151,126,64,.24);
  font-size:clamp(23px,5.7vw,31px);
  line-height:1;
}
.focus-bolts span{
  transform:translateY(1px) scale(.92);
  transition:color .2s ease,transform .2s ease,filter .2s ease;
}
.focus-bolts span.active{
  color:#d2a642;
  filter:drop-shadow(0 5px 10px rgba(207,166,74,.2));
  transform:translateY(0) scale(1);
}
.focus-energy-saved{
  justify-self:center;
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:30px;
  padding:6px 12px;
  border:1px solid rgba(111,139,105,.18);
  border-radius:999px;
  background:rgba(246,251,241,.58);
  color:#536f4d;
  font-size:12px;
  font-weight:820;
  opacity:0;
  transform:translateY(-4px);
  transition:opacity .24s ease,transform .24s ease;
  pointer-events:none;
}
.focus-energy-saved.show{
  opacity:1;
  transform:translateY(0);
}
.focus-energy-saved span:first-child{
  display:grid;
  place-items:center;
  width:18px;
  height:18px;
  border-radius:50%;
  background:rgba(111,139,105,.18);
}
.focus-energy-panel .focus-energy-saved{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  border:0;
  overflow:hidden;
  clip:rect(0 0 0 0);
  white-space:nowrap;
}
@keyframes focusEnergyLogged{
  0%,100%{opacity:0;transform:scale(.72);box-shadow:0 0 0 rgba(184,72,63,0)}
  45%{opacity:1;transform:scale(1);box-shadow:0 0 0 5px rgba(184,72,63,.14),0 0 12px rgba(184,72,63,.28)}
}
@keyframes companionSoftIn{
  from{opacity:0;transform:translateY(5px) scale(.96);filter:blur(2px)}
  to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}
}
.focus-energy-deepen{
  position:absolute;
  z-index:3;
  border:0;
  background:transparent;
  color:rgba(67,52,37,.64);
  cursor:pointer;
  font-family:"Segoe Print","Bradley Hand ITC","Comic Sans MS",cursive;
  font-size:clamp(16px,3.8vw,22px);
  font-weight:360;
  letter-spacing:-.01em;
  box-shadow:none;
  transition:opacity .18s ease,transform .18s ease,color .18s ease;
}
.focus-energy-deepen:hover,
.focus-energy-deepen:focus-visible{
  color:rgba(67,52,37,.84);
  transform:translateX(-50%);
  outline:none;
}
.focus-energy-deepen{
  left:50%;
  bottom:clamp(18px,3.4vw,30px);
  display:grid;
  justify-items:center;
  gap:3px;
  min-width:150px;
  min-height:56px;
  padding:5px 22px 3px;
  text-align:center;
  transform:translateX(-50%);
}
.focus-energy-deepen i{
  width:20px;
  height:15px;
  position:relative;
}
.focus-energy-deepen i:before{
  content:"";
  position:absolute;
  left:9px;
  top:0;
  width:2px;
  height:12px;
  border-radius:999px;
  background:rgba(123,97,48,.62);
}
.focus-energy-deepen i:after{
  content:"";
  position:absolute;
  left:5px;
  top:6px;
  width:10px;
  height:10px;
  border-right:2px solid rgba(123,97,48,.62);
  border-bottom:2px solid rgba(123,97,48,.62);
  transform:rotate(45deg);
  border-radius:1px;
}
.focus-state-deep-panel{
  align-content:start;
  gap:22px;
}
.focus-feeling-reset{
  position:absolute;
  right:clamp(16px,4vw,28px);
  top:clamp(14px,3.4vw,24px);
  z-index:3;
  min-height:30px;
  padding:0 11px;
  border:1px solid rgba(120,88,38,.12);
  border-radius:999px;
  background:rgba(255,252,244,.42);
  color:#74685b;
  cursor:pointer;
  font:inherit;
  font-size:11px;
  font-weight:820;
  letter-spacing:.02em;
  transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;
}
.focus-feeling-reset:hover,
.focus-feeling-reset:focus-visible{
  background:rgba(255,248,235,.78);
  border-color:rgba(207,166,74,.3);
  color:#4b4035;
  transform:translateY(-1px);
}
.focus-state-deep-panel .focus-flow-copy{
  align-self:start;
}
.focus-state-deep-panel::after{
  content:"";
  position:absolute;
  right:clamp(22px,5vw,38px);
  bottom:clamp(22px,4vw,34px);
  z-index:3;
  width:9px;
  height:9px;
  border-radius:50%;
  background:#b8483f;
  box-shadow:0 0 0 rgba(184,72,63,0);
  opacity:0;
  pointer-events:none;
}
.focus-state-deep-panel.feeling-logged::after{
  animation:focusEnergyLogged .34s ease-in-out 2;
}
.focus-state-deep-panel .focus-flow-copy h2{
  font-size:clamp(24px,5.8vw,36px);
}
.focus-feeling-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  width:min(100%,760px);
  margin:0 auto;
}
.focus-feeling-row{
  display:grid;
  gap:9px;
  padding:13px 14px 12px;
  border:1px solid rgba(100,76,55,.1);
  border-radius:18px;
  background:rgba(255,252,244,.54);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.58);
}
.focus-feeling-labels{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  color:#5d5146;
  font-size:12px;
  font-weight:820;
  line-height:1.1;
}
.focus-feeling-labels span:last-child{
  color:#3f362d;
}
.focus-feeling-slider{
  width:100%;
  accent-color:#d0a54b;
}
.focus-energy-slider,.focus-feeling-slider{
  --slider-thumb-size:36px;
  --slider-track-height:7px;
  --slider-thumb-offset:-14.5px;
  --slider-progress:50%;
  appearance:none;
  -webkit-appearance:none;
  height:var(--slider-thumb-size);
  margin:0;
  padding:0;
  box-sizing:border-box;
  border:0;
  background:transparent;
  cursor:pointer;
  overflow:visible;
}
.focus-energy-slider{--slider-thumb-size:38px;--slider-track-height:8px;--slider-thumb-offset:-15px}
.focus-energy-slider::-webkit-slider-runnable-track,
.focus-feeling-slider::-webkit-slider-runnable-track{
  height:var(--slider-track-height);
  border:0;
  border-radius:999px;
  background:transparent;
  box-shadow:none;
}
.focus-energy-slider::-webkit-slider-thumb,
.focus-feeling-slider::-webkit-slider-thumb{
  width:var(--slider-thumb-size);
  height:var(--slider-thumb-size);
  margin-top:var(--slider-thumb-offset);
  -webkit-appearance:none;
  appearance:none;
  box-sizing:border-box;
  border:6px solid rgba(235,216,169,.46);
  border-radius:999px;
  background:
    radial-gradient(circle at 32% 24%,rgba(255,255,255,.82),transparent 27%),
    linear-gradient(145deg,#f1d78b 0%,#bf8d32 54%,#705225 100%);
  box-shadow:0 8px 16px rgba(88,65,35,.19),inset 0 0 0 1px rgba(255,250,226,.24),inset 0 1px 0 rgba(255,255,255,.68),inset 0 -2px 4px rgba(89,61,24,.22);
  transition:transform .16s ease,box-shadow .16s ease,filter .16s ease;
}
.focus-energy-slider:focus-visible::-webkit-slider-thumb,
.focus-feeling-slider:focus-visible::-webkit-slider-thumb,
.focus-energy-slider:active::-webkit-slider-thumb,
.focus-feeling-slider:active::-webkit-slider-thumb{
  transform:scale(1.08);
  filter:brightness(1.05);
  box-shadow:0 0 0 5px rgba(80,154,163,.16),0 10px 18px rgba(88,65,35,.22),inset 0 1px 0 rgba(255,255,255,.78);
}
.focus-energy-slider::-moz-range-track,
.focus-feeling-slider::-moz-range-track{
  height:var(--slider-track-height);
  border:0;
  border-radius:999px;
  background:transparent;
  box-shadow:none;
}
.focus-energy-slider::-moz-range-thumb,
.focus-feeling-slider::-moz-range-thumb{
  width:var(--slider-thumb-size);
  height:var(--slider-thumb-size);
  box-sizing:border-box;
  border:6px solid rgba(235,216,169,.46);
  border-radius:999px;
  background:radial-gradient(circle at 32% 24%,rgba(255,255,255,.82),transparent 27%),linear-gradient(145deg,#f1d78b 0%,#bf8d32 54%,#705225 100%);
  box-shadow:0 8px 16px rgba(88,65,35,.19),inset 0 1px 0 rgba(255,255,255,.68);
}
.focus-visual-slider{
  --slider-progress:50%;
  --slider-thumb-size:36px;
  --slider-thumb-radius:18px;
  position:relative;
  display:block;
  width:100%;
  height:40px;
}
.focus-visual-slider-energy{
  --slider-thumb-size:38px;
  --slider-thumb-radius:19px;
  height:44px;
}
.focus-visual-rail{
  position:absolute;
  inset:0 var(--slider-thumb-radius);
  pointer-events:none;
}
.focus-visual-track{
  position:absolute;
  left:0;
  right:0;
  top:50%;
  height:8px;
  border:0;
  border-radius:999px;
  overflow:hidden;
  background:linear-gradient(90deg,#9dcfcd 0%,#c9e5df 100%);
  box-shadow:0 0 0 1px rgba(35,73,82,.22),inset 0 2px 4px rgba(20,53,62,.22),0 1px 0 rgba(255,255,255,.58);
  transform:translateY(-50%);
}
.focus-visual-track:before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:min(100%,calc(var(--slider-progress) + 4px));
  background:linear-gradient(90deg,#214d5b 0%,#2f6b78 58%,#397c86 100%);
}
.focus-visual-thumb{
  position:absolute;
  left:var(--slider-progress);
  top:50%;
  z-index:1;
  width:var(--slider-thumb-size);
  height:var(--slider-thumb-size);
  border-radius:50%;
  background:linear-gradient(145deg,rgba(246,232,194,.72),rgba(128,94,42,.32));
  box-shadow:0 4px 8px rgba(88,65,35,.15),inset 0 1px 1px rgba(255,255,255,.3);
  transform:translate(-50%,-50%);
  transition:transform .12s ease,box-shadow .12s ease;
  will-change:left;
}
.focus-visual-thumb:before{
  content:"";
  position:absolute;
  inset:6px;
  border-radius:50%;
  background:radial-gradient(circle at 32% 24%,rgba(255,255,255,.82),transparent 28%),linear-gradient(145deg,#f1d78b 0%,#bf8d32 54%,#705225 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.68),inset 0 -2px 4px rgba(89,61,24,.22);
}
.focus-visual-thumb:after{
  content:"";
  position:absolute;
  inset:calc(50% - 4px);
  border-radius:50%;
  background:rgba(91,62,27,.2);
  box-shadow:0 0 0 1px rgba(255,252,244,.2);
}
.focus-visual-slider:focus-within .focus-visual-thumb,
.focus-visual-slider:active .focus-visual-thumb{
  transform:translate(-50%,-50%) scale(1.025);
  box-shadow:0 0 0 2px rgba(80,154,163,.13),0 5px 10px rgba(88,65,35,.17),inset 0 1px 1px rgba(255,255,255,.34);
}
.focus-visual-slider>.focus-energy-slider,
.focus-visual-slider>.focus-feeling-slider{
  position:absolute;
  inset:0;
  z-index:2;
  width:100%;
  height:100%;
  margin:0;
  padding:0;
  box-sizing:border-box;
  opacity:0;
  cursor:pointer;
}
.focus-companion-slot{
  position:relative;
  z-index:1;
  justify-self:center;
  display:grid;
  justify-items:center;
  gap:5px;
}
.focus-companion-box{
  width:116px;
  aspect-ratio:1;
  display:grid;
  place-items:center;
  align-content:center;
  gap:5px;
  padding:0;
  border:2px dashed rgba(120,88,38,.42);
  border-radius:22px;
  background:transparent;
  color:#4b4035;
  text-align:center;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.36);
  cursor:default;
}
.focus-companion-box.pending{
  width:96px;
  border-width:1.4px;
  border-color:rgba(120,88,38,.2);
  color:rgba(75,64,53,.46);
  box-shadow:none;
}
.focus-companion-box.pending small{
  color:rgba(75,64,53,.38);
  font-size:11px;
  font-weight:620;
}
.focus-companion-count{
  color:#302820;
  font-size:28px;
  font-weight:760;
  letter-spacing:0;
  line-height:1;
}
.focus-companion-box.pending .focus-companion-count{
  color:rgba(67,52,37,.48);
  font-size:20px;
  font-weight:560;
}
.focus-companion-box.ready{
  width:78px;
  min-height:80px;
  aspect-ratio:auto;
  gap:4px;
  border-color:rgba(207,166,74,.42);
  border-radius:18px;
  cursor:pointer;
}
.focus-companion-box.ready b{
  color:#302820;
  font-size:11px;
  font-weight:780;
  line-height:1.05;
}
.focus-companion-kicker{
  color:rgba(75,64,53,.46);
  font-size:10px;
  font-weight:680;
  line-height:1;
  letter-spacing:.02em;
}
.focus-animal-shape{
  position:relative;
  display:block;
  width:36px;
  height:27px;
  border:1.6px solid rgba(95,78,53,.76);
  border-radius:48% 52% 44% 56% / 58% 48% 52% 42%;
}
.focus-animal-shape:before,
.focus-animal-shape:after,
.focus-animal-shape i:before,
.focus-animal-shape i:after{
  content:"";
  position:absolute;
  display:block;
}
.focus-animal-shape:before{
  right:-8px;
  top:7px;
  width:10px;
  height:9px;
  border:1.5px solid rgba(95,78,53,.76);
  border-radius:50%;
}
.focus-animal-shape:after{
  left:6px;
  bottom:-5px;
  width:5px;
  height:5px;
  border-radius:50%;
  background:rgba(95,78,53,.62);
  box-shadow:16px 0 0 rgba(95,78,53,.62);
}
.focus-animal-shape i:before{
  right:-5px;
  top:10px;
  width:2px;
  height:2px;
  border-radius:50%;
  background:rgba(95,78,53,.8);
}
.focus-companion-box[data-companion="owl"] .focus-animal-shape{
  width:32px;
  height:34px;
  border-radius:44% 44% 50% 50%;
}
.focus-companion-box[data-companion="owl"] .focus-animal-shape:before{
  left:6px;
  right:auto;
  top:8px;
  width:5px;
  height:5px;
  background:rgba(95,78,53,.72);
  border:0;
  box-shadow:14px 0 0 rgba(95,78,53,.72);
}
.focus-companion-box[data-companion="owl"] .focus-animal-shape:after{
  left:12px;
  top:17px;
  bottom:auto;
  width:7px;
  height:5px;
  border-radius:0 0 6px 6px;
  background:rgba(95,78,53,.56);
  box-shadow:none;
}
.focus-companion-box[data-companion="lion"] .focus-animal-shape{
  width:34px;
  height:34px;
  border-radius:50%;
  box-shadow:0 0 0 5px rgba(207,166,74,.14);
}
.focus-companion-box[data-companion="fox"] .focus-animal-shape{
  width:36px;
  height:25px;
  border-radius:12px 20px 16px 12px;
  transform:skewX(-6deg);
}
.focus-companion-box[data-companion="deer"] .focus-animal-shape,
.focus-companion-graphic[data-companion="deer"] .focus-animal-shape{
  width:38px;
  height:25px;
  border-radius:50% 44% 46% 54% / 54% 44% 56% 46%;
  transform:none;
}
.focus-companion-box[data-companion="deer"] .focus-animal-shape:before,
.focus-companion-graphic[data-companion="deer"] .focus-animal-shape:before{
  right:-9px;
  top:3px;
  width:13px;
  height:12px;
  border:1.5px solid rgba(95,78,53,.76);
  border-left-color:transparent;
  border-bottom-color:transparent;
  border-radius:45% 55% 42% 58%;
  transform:rotate(-12deg);
}
.focus-companion-box[data-companion="deer"] .focus-animal-shape:after,
.focus-companion-graphic[data-companion="deer"] .focus-animal-shape:after{
  left:7px;
  bottom:-6px;
  width:4px;
  height:8px;
  border-radius:999px;
  background:rgba(95,78,53,.62);
  box-shadow:17px 0 0 rgba(95,78,53,.62);
}
.focus-companion-box[data-companion="deer"] .focus-animal-shape i:before,
.focus-companion-graphic[data-companion="deer"] .focus-animal-shape i:before{
  right:-7px;
  top:-10px;
  width:14px;
  height:14px;
  border-left:1.5px solid rgba(95,78,53,.72);
  border-top:1.5px solid rgba(95,78,53,.72);
  border-radius:5px 0 0 0;
  transform:rotate(26deg);
  box-shadow:-5px 3px 0 -3px rgba(95,78,53,.72),3px 5px 0 -3px rgba(95,78,53,.72);
}
.focus-companion-box[data-companion="deer"] .focus-animal-shape i:after,
.focus-companion-graphic[data-companion="deer"] .focus-animal-shape i:after{
  right:-4px;
  top:7px;
  width:2.5px;
  height:2.5px;
  border-radius:50%;
  background:rgba(95,78,53,.78);
}
.focus-companion-box[data-companion="bear"] .focus-animal-shape{
  width:35px;
  height:31px;
  border-radius:44% 44% 52% 52%;
}
.focus-feeling-thought-link{
  position:relative;
  z-index:1;
  justify-self:center;
  min-height:38px;
  padding:0 16px;
  border:1px solid rgba(120,88,38,.12);
  border-radius:999px;
  background:rgba(255,252,244,.5);
  color:#5d5146;
  cursor:pointer;
  font:inherit;
  font-size:13px;
  font-weight:820;
  transition:background .18s ease,border-color .18s ease,transform .18s ease;
}
.focus-feeling-thought-link:hover,
.focus-feeling-thought-link:focus-visible{
  background:rgba(255,248,235,.76);
  border-color:rgba(207,166,74,.28);
  transform:translateY(-1px);
}
.focus-feeling-saved{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  border:0;
  overflow:hidden;
  clip:rect(0 0 0 0);
  white-space:nowrap;
}
.focus-state-trend{
  display:grid;
  gap:18px;
  position:relative;
  width:min(100%,760px);
  max-width:100%;
  min-width:0;
  overflow:hidden;
  margin:0 auto 52px;
  padding:14px 12px 13px;
  border:1px solid transparent;
  border-radius:24px;
  background:
    linear-gradient(145deg,rgba(255,252,244,.72),rgba(243,236,220,.45)) padding-box,
    linear-gradient(135deg,rgba(255,255,255,.78),rgba(170,139,96,.16) 74%,rgba(105,78,47,.2)) border-box;
  box-shadow:
    inset 6px 6px 12px rgba(255,255,255,.14),
    inset -7px -7px 14px rgba(104,77,43,.02),
    1px 1px 0 rgba(180,151,111,.25),
    2px 3px 0 rgba(151,119,78,.14),
    4px 5px 0 rgba(112,83,50,.08),
    8px 10px 16px -12px rgba(67,48,29,.2);
}
.focus-state-trend>.focus-section-label{
  top:14px;
  left:14px;
}
.focus-state-trend-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  text-align:center;
  padding-top:18px;
}
.focus-state-trend-head>div:first-of-type{
  min-width:0;
  flex:1 1 auto;
}
.focus-state-trend-head h2{
  overflow:hidden;
  margin:2px 0 0;
  color:#302820;
  font-family:Georgia,"Times New Roman",serif;
  font-size:20px;
  font-weight:520;
  line-height:1.08;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.focus-state-trend-head>span{
  min-width:48px;
  border-radius:999px;
  background:rgba(255,252,244,.58);
  color:rgba(75,64,53,.68);
  padding:6px 9px;
  text-align:center;
  font-size:12px;
  font-weight:760;
}
.focus-trend-head-actions{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:7px;
}
.focus-trend-head-actions>span{
  min-width:48px;
  border-radius:999px;
  background:rgba(255,252,244,.58);
  color:rgba(75,64,53,.68);
  padding:6px 9px;
  text-align:center;
  font-size:12px;
  font-weight:760;
}
.focus-trend-month-btn{
  width:32px;
  height:32px;
  flex:0 0 32px;
  display:grid;
  place-items:center;
  border:1px solid rgba(100,76,55,.08);
  border-radius:50%;
  background:rgba(255,252,244,.58);
  color:#6e552d;
  cursor:pointer;
  font-size:22px;
  font-weight:420;
  line-height:1;
  padding:0 0 2px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6);
  transition:transform .16s ease,background .16s ease,box-shadow .16s ease;
}
.focus-trend-month-btn:active{
  transform:scale(.94);
  background:rgba(244,226,183,.58);
  box-shadow:inset 0 2px 5px rgba(80,60,38,.08);
}
.focus-state-heatmap{
  --heat-dot-size:24px;
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  justify-items:center;
  align-items:center;
  gap:8px 4px;
  padding:4px 2px 3px;
}
.focus-heat-day{
  width:var(--heat-dot-size);
  height:var(--heat-dot-size);
  min-height:0;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.62);
  border-radius:50%;
  background:rgba(100,76,55,.06);
  color:rgba(75,64,53,.45);
  cursor:pointer;
  padding:0;
  box-shadow:0 4px 10px rgba(70,52,34,.06),inset 1px 1px 3px rgba(255,255,255,.86),inset -2px -4px 7px rgba(100,76,55,.06);
  transition:background .18s ease,box-shadow .18s ease,border-color .18s ease,color .18s ease;
}
.focus-heat-day span{
  display:block;
  font-size:8.5px;
  font-weight:760;
  line-height:1;
  text-align:center;
  transform:translateY(.25px);
}
.focus-heat-day.empty{
  background:radial-gradient(circle at 32% 28%,rgba(255,255,255,.86),rgba(100,76,55,.045) 58%,rgba(100,76,55,.075));
  color:rgba(75,64,53,.3);
}
.focus-heat-day.calm{
  border-color:rgba(127,157,132,.24);
  background:radial-gradient(circle at 32% 27%,rgba(255,255,255,.9),rgba(218,232,211,.9) 43%,rgba(142,178,148,.76));
  color:#52664e;
}
.focus-heat-day.mixed{
  border-color:rgba(215,161,74,.25);
  background:radial-gradient(circle at 32% 27%,rgba(255,255,255,.9),rgba(250,226,159,.88) 43%,rgba(215,161,74,.66));
  color:#7b5d25;
}
.focus-heat-day.good{
  border-color:rgba(117,157,184,.25);
  background:radial-gradient(circle at 32% 27%,rgba(255,255,255,.9),rgba(211,230,238,.88) 43%,rgba(117,157,184,.7));
  color:#496879;
}
.focus-heat-day.stress{
  border-color:rgba(176,105,81,.25);
  background:radial-gradient(circle at 32% 27%,rgba(255,255,255,.86),rgba(238,188,164,.82) 43%,rgba(176,105,81,.62));
  color:#815344;
}
.focus-heat-day.today{
  box-shadow:0 4px 10px rgba(70,52,34,.06),inset 0 0 0 2px rgba(215,161,74,.25),inset 1px 1px 3px rgba(255,255,255,.86);
}
.focus-heat-day.active{
  border-color:rgba(215,161,74,.42);
  color:#302820;
  box-shadow:0 4px 10px rgba(70,52,34,.06),inset 0 0 0 2px rgba(110,85,45,.25),inset 1px 1px 3px rgba(255,255,255,.88);
}
.focus-state-segments{
  position:relative;
  display:grid;
  align-items:end;
  gap:2px;
  min-height:88px;
  padding:8px 2px 7px;
  border-bottom:1px solid rgba(100,76,55,.12);
}
.focus-segment-day{
  appearance:none;
  min-width:0;
  height:82px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-end;
  gap:4px;
  border:0;
  background:transparent;
  color:rgba(75,64,53,.38);
  cursor:pointer;
  padding:0;
  outline:0;
  border:0 !important;
  border-radius:0;
}
.focus-segment-day:focus,
.focus-segment-day:focus-visible{
  outline:0;
}
.focus-segment-bar{
  width:min(100%,11px);
  height:var(--segment-height);
  min-height:4px;
  border-radius:999px 999px 0 0;
  background:rgba(100,76,55,.12);
  box-shadow:none;
  transition:height .2s ease,background .2s ease,box-shadow .2s ease,opacity .2s ease;
}
.focus-segment-label{
  min-height:10px;
  color:rgba(75,64,53,.42);
  font-size:7px;
  font-weight:720;
  line-height:1;
}
.focus-segment-day.logged .focus-segment-label{
  color:rgba(75,64,53,.62);
}
.focus-segment-day.no-entry .focus-segment-bar{
  width:6px;
  background:rgba(100,76,55,.13);
  opacity:.58;
}
.focus-segment-day.future .focus-segment-bar{
  background:rgba(100,76,55,.08);
  opacity:.34;
}
.focus-segment-day.future .focus-segment-label{
  color:rgba(75,64,53,.22);
}
.focus-segment-day.stress .focus-segment-bar{
  background:linear-gradient(180deg,rgba(199,112,88,.88),rgba(171,82,72,.62));
}
.focus-segment-day.mixed .focus-segment-bar{
  background:linear-gradient(180deg,rgba(238,199,103,.9),rgba(210,157,67,.62));
}
.focus-segment-day.good .focus-segment-bar{
  background:linear-gradient(180deg,rgba(157,198,214,.9),rgba(112,158,184,.66));
}
.focus-segment-day.calm .focus-segment-bar{
  background:linear-gradient(180deg,rgba(172,210,178,.92),rgba(111,165,130,.66));
}
.focus-segment-day.today .focus-segment-label{
  position:relative;
  color:#6e552d;
  font-weight:860;
}
.focus-segment-day.today .focus-segment-label:after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-6px;
  width:4px;
  height:4px;
  border-radius:50%;
  background:#b84a3d;
  transform:translateX(-50%);
}
.focus-segment-day.active .focus-segment-bar{
  box-shadow:none;
}
.focus-segment-day.active .focus-segment-label{
  position:relative;
  color:#302820;
  font-weight:900;
}
.focus-segment-day.active .focus-segment-label:before{
  display:none;
}
.focus-trend-window{
  position:absolute;
  z-index:3;
  left:var(--week-start);
  bottom:4px;
  width:var(--week-span);
  height:7px;
  pointer-events:none;
}
.focus-trend-window i{
  position:absolute;
  left:0;
  right:0;
  top:3px;
  height:1px;
  background:rgba(205,156,52,.82);
}
.focus-trend-window:before{
  content:"";
  position:absolute;
  z-index:1;
  left:0;
  top:0;
  width:1px;
  height:7px;
  background:#c99a36;
}
.focus-trend-window:after{
  content:"";
  position:absolute;
  z-index:2;
  right:-3px;
  top:0;
  width:7px;
  height:7px;
  border-radius:50%;
  background:#d4a43f;
  box-shadow:none;
}
.focus-state-trend-summary{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:7px;
}
.focus-state-trend-detail{
  display:grid;
  gap:7px;
  width:100%;
  max-width:100%;
  min-width:0;
  min-height:88px;
  overflow:hidden;
  border:1px solid rgba(100,76,55,.08);
  border-radius:19px;
  background:rgba(255,252,244,.58);
  padding:7px;
  color:#5d5146;
  font-size:12px;
  font-weight:680;
}
.focus-trend-detail-strip{
  display:grid;
  grid-template-columns:auto auto minmax(0,1fr);
  align-items:center;
  width:100%;
  max-width:100%;
  min-width:0;
  gap:6px;
  overflow:hidden;
}
.focus-state-trend-detail b{
  min-width:0;
  overflow:hidden;
  color:#302820;
  font-size:12px;
  font-weight:800;
  padding:0 3px 0 2px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.focus-trend-detail-strip>span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  border-radius:999px;
  background:rgba(255,255,255,.48);
  color:rgba(75,64,53,.68);
  padding:6px 9px;
  font-size:11px;
  font-weight:730;
  white-space:nowrap;
}
.focus-trend-detail-strip>em{
  min-width:0;
  overflow:hidden;
  color:rgba(75,64,53,.62);
  font-size:12px;
  font-style:normal;
  font-weight:680;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.focus-trend-detail-toggle{
  display:none;
}
.focus-trend-backfill{
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(100,76,55,.1);
  border-radius:999px;
  background:rgba(244,226,183,.45);
  color:#6e552d;
  cursor:pointer;
  padding:6px 10px;
  font-size:11px;
  font-weight:780;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.focus-trend-detail-more .focus-trend-backfill{
  width:100%;
  min-height:100%;
  padding:7px 6px;
  font-size:10px;
}
.focus-state-trend-detail.no-entry .focus-trend-detail-strip>span:not(.state){
  background:rgba(255,255,255,.34);
  color:rgba(75,64,53,.54);
}
.focus-state-trend-detail.no-entry .focus-trend-detail-strip{
  grid-template-columns:auto auto minmax(0,1fr);
}
.focus-state-trend-detail.no-entry .state{
  background:rgba(100,76,55,.08);
  color:rgba(75,64,53,.56);
}
.focus-trend-detail-strip>.state{
  background:rgba(215,161,74,.14);
  color:#6e552d;
  font-weight:800;
}
.focus-state-trend-detail.no-entry .focus-trend-detail-strip>.state{
  background:rgba(100,76,55,.08);
  color:rgba(75,64,53,.56);
}
.focus-trend-detail-strip strong{
  color:#332a22;
  font-weight:820;
}
.focus-trend-detail-more{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:6px;
  padding:0 1px 1px;
}
.focus-trend-detail-more span{
  min-width:0;
  display:grid;
  gap:1px;
  border-radius:13px;
  background:rgba(255,255,255,.38);
  color:#3d3329;
  padding:7px 7px;
  font-size:11px;
  font-weight:780;
  text-align:center;
}
.focus-trend-detail-more span b{
  color:rgba(75,64,53,.5);
  font-size:9px;
  font-weight:760;
}
.focus-trend-detail-more p{
  grid-column:1/-1;
  overflow:hidden;
  margin:0;
  color:rgba(75,64,53,.62);
  font-size:11px;
  font-weight:680;
  text-align:center;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.focus-trend-detail-more.compact{
  grid-template-columns:repeat(6,minmax(0,1fr));
  align-items:stretch;
}
.focus-state-trend-detail span,
.focus-state-trend-summary span{
  white-space:nowrap;
}
.focus-state-trend-summary{
  color:rgba(75,64,53,.58);
  font-size:11px;
  font-weight:720;
}
.focus-trend-week{
  display:grid;
  gap:12px;
  padding:4px 0;
}
.focus-trend-week h3,
.focus-trend-days h3{
  margin:0;
  color:#3d3329;
  font-size:14px;
  font-weight:760;
}
.focus-trend-bars{
  display:grid;
  gap:9px;
}
.focus-trend-bar{
  display:grid;
  grid-template-columns:74px minmax(0,1fr) 34px;
  align-items:center;
  gap:10px;
  color:rgba(75,64,53,.68);
  font-size:12px;
  font-weight:720;
}
.focus-trend-bar i{
  height:9px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(100,76,55,.08);
  box-shadow:inset 0 1px 1px rgba(80,60,38,.08);
}
.focus-trend-bar i b{
  display:block;
  width:var(--bar);
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,rgba(127,167,184,.68),rgba(215,161,74,.72));
}
.focus-trend-bar em{
  color:#3d3329;
  text-align:right;
  font-style:normal;
  font-size:11px;
  font-weight:780;
}
.focus-trend-companion{
  display:grid;
  align-items:center;
  justify-items:center;
  gap:8px;
  width:min(100%,260px);
  margin:0 auto;
  border:0;
  border-radius:0;
  background:transparent;
  padding:6px 0 3px;
  text-align:center;
}
.focus-trend-companion>span{
  color:rgba(75,64,53,.5);
  font-size:11px;
  font-weight:760;
}
.focus-trend-companion>div{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:auto;
  min-width:0;
  border:1px solid rgba(100,76,55,.08);
  border-radius:999px;
  background:rgba(255,252,244,.52);
  padding:6px 10px 6px 7px;
}
.focus-trend-companion .focus-companion-image{
  width:36px;
  height:36px;
  border-radius:14px;
}
.focus-trend-companion b{
  color:#302820;
  font-size:13px;
  font-weight:780;
}
.focus-trend-companion em{
  color:rgba(75,64,53,.56);
  font-size:11px;
  font-style:normal;
  font-weight:720;
}
.focus-trend-companion.muted b{
  color:rgba(75,64,53,.68);
}
.focus-flow-confirm{
  position:relative;
  z-index:1;
  justify-self:center;
  min-width:min(100%,240px);
}
.focus-card-panel{
  --swipe-left:0;
  --swipe-right:0;
  --swipe-up:0;
  justify-items:center;
}
.focus-swipe-edge{
  position:absolute;
  top:50%;
  z-index:5;
  width:62px;
  height:68%;
  display:grid;
  place-items:center;
  border:1px solid transparent;
  opacity:0;
  pointer-events:none;
  transform:translateY(-50%);
  transition:opacity .12s ease,transform .12s ease,border-color .12s ease,background .12s ease;
}
.focus-swipe-edge span{
  display:grid;
  place-items:center;
  width:34px;
  height:44px;
  border-radius:10px;
  font-size:24px;
  font-weight:920;
  line-height:1;
  box-shadow:0 10px 22px rgba(58,42,26,.12),inset 0 1px 0 rgba(255,255,255,.7);
}
.focus-swipe-edge-left{
  left:0;
  border-radius:0 18px 18px 0;
  background:rgba(199,88,73,calc(.1 + var(--swipe-left) * .28));
  border-left-color:rgba(199,88,73,calc(.25 + var(--swipe-left) * .58));
  opacity:calc(.08 + var(--swipe-left) * 1.05);
  transform:translateY(-50%) translateX(calc(-42px + var(--swipe-left) * 38px));
}
.focus-swipe-edge-left span{
  color:#a93f37;
  background:rgba(255,247,241,.84);
  transform:scale(calc(.78 + var(--swipe-left) * .22));
}
.focus-swipe-edge-right{
  right:0;
  border-radius:18px 0 0 18px;
  background:rgba(111,139,105,calc(.1 + var(--swipe-right) * .28));
  border-right-color:rgba(111,139,105,calc(.25 + var(--swipe-right) * .58));
  opacity:calc(.08 + var(--swipe-right) * 1.05);
  transform:translateY(-50%) translateX(calc(42px - var(--swipe-right) * 38px));
}
.focus-swipe-edge-right span{
  color:#416f3d;
  background:rgba(247,255,243,.84);
  transform:scale(calc(.78 + var(--swipe-right) * .22));
}
.focus-swipe-top{
  position:absolute;
  top:50%;
  left:50%;
  z-index:6;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  place-items:center;
  width:178px;
  min-height:46px;
  border:1px solid rgba(127,167,184,calc(.24 + var(--swipe-up) * .5));
  border-radius:999px;
  background:rgba(248,253,252,calc(.72 + var(--swipe-up) * .2));
  color:#315f6a;
  font-size:12px;
  font-weight:900;
  letter-spacing:.04em;
  opacity:calc(.18 + var(--swipe-up) * .88);
  pointer-events:none;
  box-shadow:0 14px 28px rgba(58,42,26,calc(.08 + var(--swipe-up) * .12)),inset 0 1px 0 rgba(255,255,255,.74);
  text-transform:uppercase;
  transform:translate(-50%,calc(-150px - var(--swipe-up) * 20px));
  transition:opacity .12s ease,transform .12s ease,background .12s ease;
}
.focus-swipe-top-icon{
  position:relative;
  display:block;
  width:34px;
  height:28px;
  border-radius:999px;
  background:rgba(226,239,240,.72);
  box-shadow:inset 0 0 0 1px rgba(127,167,184,.18);
  transform:scale(calc(.82 + var(--swipe-up) * .18));
}
.focus-swipe-top-icon i{
  position:absolute;
  width:17px;
  height:11px;
  border:2px solid #315f6a;
  border-bottom:0;
  border-left:0;
  border-radius:0 999px 0 0;
}
.focus-swipe-top-icon i:after{
  content:"";
  position:absolute;
  width:0;
  height:0;
  border-top:4px solid transparent;
  border-bottom:4px solid transparent;
  border-left:6px solid #315f6a;
}
.focus-swipe-top-icon i:first-child{
  left:7px;
  top:6px;
  transform:rotate(5deg);
}
.focus-swipe-top-icon i:first-child:after{
  right:-5px;
  top:5px;
  transform:rotate(35deg);
}
.focus-swipe-top-icon i:last-child{
  right:7px;
  bottom:6px;
  transform:rotate(185deg);
}
.focus-swipe-top-icon i:last-child:after{
  right:-5px;
  top:5px;
  transform:rotate(35deg);
}
.focus-swipe-lanes{
  position:absolute;
  inset:auto 28px 32px;
  display:flex;
  justify-content:space-between;
  color:rgba(76,67,56,.42);
  font-size:12px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.focus-flow-card{
  position:relative;
  z-index:3;
  width:min(68vw,250px);
  aspect-ratio:890 / 1217;
  border:0;
  background:transparent;
  cursor:grab;
  perspective:900px;
  touch-action:none;
  transition:transform .2s ease,opacity .18s ease;
}
.focus-flow-card.dragging{
  cursor:grabbing;
  transition:none;
}
.focus-flow-card-face{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:9px;
  padding:18px 16px;
  border:1px solid rgba(100,76,55,.13);
  border-radius:5.2% / 4.1%;
  background:linear-gradient(145deg,#fff8eb 0%,#f5e4c5 64%,#ecd2a5 100%);
  color:#372f27;
  box-shadow:0 22px 44px rgba(58,42,26,.14),inset 0 1px 0 rgba(255,255,255,.66);
  backface-visibility:hidden;
  transform-style:preserve-3d;
  transition:transform .55s cubic-bezier(.2,.8,.2,1),border-color .2s ease;
}
.focus-flow-card-back{
  align-items:center;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}
.focus-flow-card-front{transform:rotateY(180deg)}
.focus-flow-card-front small{
  color:#7a6a58;
  font-size:12px;
  font-weight:880;
}
.focus-flow-card-front b{
  font-size:21px;
  font-weight:760;
  line-height:1.08;
}
.focus-flow-card-front span{
  color:#5d5146;
  font-size:15px;
  line-height:1.38;
}
.focus-flow-card.flipped .focus-flow-card-back{transform:rotateY(180deg)}
.focus-flow-card.flipped .focus-flow-card-front{transform:rotateY(360deg)}
.focus-flow-card.swipe-left .focus-flow-card-face{border-color:rgba(199,121,89,.34)}
.focus-flow-card.swipe-right .focus-flow-card-face{border-color:rgba(111,139,105,.38)}
.focus-flow-card.swipe-up .focus-flow-card-face{border-color:rgba(127,167,184,.38)}
.focus-flow-card.fly-left{opacity:0;transform:translateX(-220px) rotate(-16deg) !important}
.focus-flow-card.fly-right{opacity:0;transform:translateX(220px) rotate(16deg) !important}
.focus-flow-card.fly-up{opacity:0;transform:translateY(-180px) scale(.96) !important}
.focus-thought-panel{align-content:center}
.focus-thought-mode{
  position:relative;
  z-index:1;
  display:flex;
  justify-content:center;
  gap:6px;
  padding:4px;
  margin:0 auto;
  border:1px solid rgba(100,76,55,.1);
  border-radius:999px;
  background:rgba(255,252,244,.52);
}
.focus-thought-mode button{
  border:0;
  border-radius:999px;
  background:transparent;
  color:#584d42;
  cursor:pointer;
  font:inherit;
  font-size:13px;
  font-weight:820;
  min-height:34px;
  padding:7px 13px;
}
.focus-thought-mode button.active{
  background:#fff8eb;
  box-shadow:inset 0 0 0 1px rgba(100,76,55,.12);
}
#focusFlowThoughtText{
  position:relative;
  z-index:1;
  width:min(100%,520px);
  min-height:132px;
  justify-self:center;
  border:1px solid rgba(100,76,55,.12);
  border-radius:22px;
  background:rgba(255,252,244,.72);
  color:#342c24;
  font:inherit;
  font-size:18px;
  line-height:1.45;
  outline:none;
  padding:16px 18px;
  resize:vertical;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.64);
}
#focusFlowThoughtText:focus{
  border-color:rgba(207,166,74,.42);
  box-shadow:0 0 0 4px rgba(207,166,74,.1),inset 0 1px 0 rgba(255,255,255,.64);
}
.check-grid-wide{
  grid-template-columns:1fr;
  gap:14px;
}
.check-grid-wide .check-row{
  border:1px solid rgba(100,76,55,.1);
  border-radius:20px;
  background:rgba(255,255,255,.3);
  padding:13px 14px 11px;
}
.home-intro{display:grid;grid-template-columns:1fr;gap:0;margin-bottom:34px}
.home-visual{position:relative;margin:0;border:1px solid rgba(100,76,55,.1);border-radius:36px;overflow:hidden;min-height:clamp(360px,48vw,620px);background:#f8f1e5;box-shadow:var(--shadow)}
.home-visual:after{content:"";position:absolute;left:0;right:0;bottom:0;height:58%;background:linear-gradient(to bottom,transparent,rgba(251,246,236,.52) 48%,rgba(251,246,236,.95));pointer-events:none}
.home-visual img{width:100%;height:100%;display:block;object-fit:cover}
.home-hero-copy{position:absolute;z-index:1;left:clamp(22px,5vw,72px);right:clamp(22px,18vw,250px);bottom:clamp(54px,8vw,96px);margin:0;max-width:660px;color:#2f2922}
.home-hero-copy h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(52px,7vw,86px);line-height:.94;margin:0 0 14px;color:#2f2922;font-weight:500;letter-spacing:0;text-wrap:balance}
.home-hero-copy p{font-size:clamp(16px,1.65vw,19px);line-height:1.45;max-width:570px;margin:0;color:#5a4d41}
.home-depth-gateway{
  position:relative;
  z-index:2;
  display:grid;
  justify-items:center;
  width:min(820px,calc(100% - 32px));
  margin:22px auto 0;
  padding:clamp(25px,4vw,40px);
  border:1px solid rgba(67,130,137,.16);
  border-radius:28px;
  background:linear-gradient(145deg,rgba(253,251,244,.97),rgba(226,239,235,.94));
  box-shadow:0 18px 38px rgba(49,73,71,.12),inset 0 1px 0 rgba(255,255,255,.82);
}
.home-depth-head{display:grid;justify-items:center;gap:7px;max-width:610px;text-align:center}
.home-depth-head h2{margin:0;color:#302820;font-family:Georgia,"Times New Roman",serif;font-size:clamp(27px,3.6vw,38px);font-weight:520;line-height:1.04}
.home-depth-head p{max-width:560px;margin:0;color:#65594d;font-size:15px;line-height:1.5}
.depth-seed-field{
  position:relative;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:center;
  width:min(100%,460px);
  height:148px;
  margin:10px auto 0;
}
.depth-seed-field:before{
  content:"";
  position:absolute;
  left:12%;
  right:12%;
  top:74px;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(54,145,149,.16),transparent);
}
.depth-seed-button{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-rows:48px 20px;
  align-content:center;
  justify-items:center;
  gap:7px;
  width:92px;
  height:100px;
  justify-self:center;
  margin:0;
  border:0;
  background:transparent;
  cursor:pointer;
  padding:0;
  color:#3d5e60;
}
.depth-seed-node.seed-1{transform:translateY(13px)}
.depth-seed-node.seed-2{transform:translateY(-13px)}
.depth-seed-node.seed-3{transform:translateY(11px)}
.depth-seed-button small{font-size:11px;font-weight:780;letter-spacing:.01em}
.depth-seed-button:before,.depth-seed-button:after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:9px;
  height:9px;
  border-radius:50%;
  background:rgba(76,205,201,.58);
  opacity:0;
  pointer-events:none;
  transform:translate(-50%,-50%) scale(.4);
}
.depth-seed-diamond{
  position:relative;
  width:30px;
  height:31px;
  background:#237f91;
  clip-path:polygon(19% 5%,81% 5%,100% 33%,50% 100%,0 33%);
  filter:drop-shadow(0 5px 5px rgba(28,111,126,.24));
  transition:transform .2s ease,filter .2s ease;
}
.depth-seed-field .depth-seed-diamond{width:38px;height:40px}
.depth-seed-diamond:before{
  content:"";
  position:absolute;
  inset:2px;
  clip-path:polygon(18% 4%,82% 4%,100% 32%,50% 100%,0 32%);
  background:
    linear-gradient(63deg,transparent 0 48%,rgba(221,255,249,.62) 49% 51%,transparent 52%),
    linear-gradient(-63deg,transparent 0 48%,rgba(24,110,133,.38) 49% 51%,transparent 52%),
    linear-gradient(135deg,#d4fff7 0 23%,#78dfd8 24% 48%,#36b6bb 49% 70%,#247f9c 71% 100%);
}
.depth-seed-diamond:after{
  content:"";
  position:absolute;
  left:2px;
  right:2px;
  top:2px;
  height:10px;
  clip-path:polygon(18% 0,82% 0,100% 100%,0 100%);
  background:
    linear-gradient(110deg,rgba(255,255,255,.72),transparent 34%),
    linear-gradient(90deg,#baf7ec 0 32%,#55cac8 33% 67%,#3194aa 68% 100%);
  border-bottom:1px solid rgba(24,111,130,.28);
}
.depth-seed-button:hover .depth-seed-diamond,
.depth-seed-button:focus-visible .depth-seed-diamond{
  filter:brightness(1.12) drop-shadow(0 6px 6px rgba(28,111,126,.3));
  transform:translateY(-1px) scale(1.1);
}
.depth-seed-button:focus-visible{outline:2px solid rgba(48,145,154,.22);outline-offset:2px;border-radius:18px}
.depth-seed-button.collecting{pointer-events:none}
.depth-seed-button.collecting:before{animation:depthSeedMistLeft .82s ease-out forwards}
.depth-seed-button.collecting:after{animation:depthSeedMistRight .82s .06s ease-out forwards}
.depth-seed-button.collecting .depth-seed-diamond{animation:depthSeedSpark .72s ease-out forwards}
.depth-seed-collected-mark{
  position:absolute;
  top:29px;
  left:50%;
  display:grid;
  place-items:center;
  gap:14px;
  width:24px;
  height:24px;
  border:1px solid rgba(45,143,146,.22);
  border-radius:50%;
  background:rgba(232,249,244,.86);
  color:#317f83;
  font-size:13px;
  font-weight:850;
  opacity:0;
  transform:translate(-50%,-50%) scale(.65);
}
.depth-seed-button.collected{cursor:default;color:rgba(61,94,96,.58)}
.depth-seed-button.collected .depth-seed-diamond{opacity:.12;filter:grayscale(.45) blur(.7px);transform:scale(.72)}
.depth-seed-button.collected .depth-seed-collected-mark{opacity:1;transform:translate(-50%,-50%) scale(1);transition:opacity .28s ease,transform .28s ease}
.depth-seed-progress{
  display:grid;
  grid-template-columns:auto minmax(120px,260px);
  align-items:center;
  gap:10px;
  color:rgba(57,76,73,.62);
  font-size:11px;
  font-weight:720;
}
.depth-seed-progress span{white-space:nowrap}
.depth-seed-progress span b{color:#326f75;font-size:13px}
.depth-seed-progress i{position:relative;height:4px;overflow:hidden;border-radius:999px;background:rgba(64,126,130,.12)}
.depth-seed-progress i:before{content:"";position:absolute;inset:0 auto 0 0;width:var(--depth-intro-progress);border-radius:inherit;background:linear-gradient(90deg,#4caeb3,#78d7ca);transition:width .75s ease}
.depth-seed-reveal{
  display:grid;
  align-content:start;
  justify-items:center;
  gap:5px;
  width:min(100%,610px);
  min-height:86px;
  margin-top:16px;
  padding-top:16px;
  border-top:1px solid rgba(67,130,137,.11);
  text-align:center;
  animation:depthRevealIn .44s ease both;
}
.depth-seed-reveal strong{color:#315e61;font-family:Georgia,"Times New Roman",serif;font-size:19px;font-weight:520}
.depth-seed-reveal p{margin:0;color:#665b50;font-size:14px;line-height:1.48}
@keyframes depthRevealIn{from{opacity:0;transform:translateY(5px);filter:blur(2px)}to{opacity:1;transform:none;filter:blur(0)}}
.home-focus-cta{
  width:min(100%,420px);
  min-height:54px;
  margin-top:10px;
  border:1px solid rgba(51,118,122,.25);
  border-radius:18px;
  background:linear-gradient(145deg,#4f9698,#376f78);
  color:#fffdf8;
  cursor:pointer;
  font:inherit;
  font-size:15px;
  font-weight:800;
  box-shadow:0 10px 20px rgba(44,92,96,.16),inset 0 1px 0 rgba(255,255,255,.28);
  transition:transform .18s ease,filter .18s ease,box-shadow .18s ease;
}
.home-focus-cta:not(:disabled):hover,.home-focus-cta:not(:disabled):focus-visible{outline:none;filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 12px 23px rgba(44,92,96,.2),inset 0 1px 0 rgba(255,255,255,.32)}
.home-focus-cta:disabled{border-color:rgba(83,105,100,.11);background:rgba(109,132,125,.12);color:rgba(61,79,74,.45);cursor:not-allowed;box-shadow:inset 0 1px 0 rgba(255,255,255,.52)}
.home-depth-reset-mini{
  position:absolute;
  top:13px;
  right:14px;
  z-index:8;
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border:1px solid rgba(67,130,137,.14);
  border-radius:50%;
  background:rgba(248,252,247,.62);
  color:rgba(57,103,104,.56);
  cursor:pointer;
  padding:0;
  font:inherit;
  font-size:17px;
  line-height:1;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72);
  transition:color .18s ease,border-color .18s ease,background .18s ease,transform .18s ease;
}
.home-depth-reset-mini:hover,.home-depth-reset-mini:focus-visible{border-color:rgba(55,128,132,.28);background:rgba(232,245,240,.9);color:#356f72;outline:none;transform:rotate(-18deg)}
.home-welcome-copy{
  position:relative;
  z-index:2;
  display:grid;
  justify-items:center;
  width:min(720px,calc(100% - 38px));
  margin:26px auto 0;
  padding:8px 18px 4px;
  color:#5c5045;
  text-align:center;
}
.home-welcome-copy p{max-width:680px;margin:7px 0 0;font-size:15px;line-height:1.6}
.home-welcome-copy .home-welcome-lead{margin-top:12px;color:#3e352c;font-family:Georgia,"Times New Roman",serif;font-size:22px;line-height:1.3}
.home-welcome-copy .home-welcome-compass{max-width:650px;margin-top:16px;color:#5c5045}
.home-welcome-copy .home-welcome-compass strong{color:#2f2922;font-weight:850}
.home-welcome-copy>i{width:82px;height:1px;margin-top:18px;background:linear-gradient(90deg,transparent,rgba(207,166,74,.62),transparent)}
.home-compass-instrument{
  --instrument-depth:0%;
  position:relative;
  z-index:4;
  display:grid;
  place-items:center;
  width:min(390px,calc(100% - 36px));
  margin:0 auto;
  scroll-margin-top:68px;
  transition:filter .25s ease;
}
.home-compass-ring{
  position:relative;
  width:100%;
  aspect-ratio:1;
  border:3px solid #caaa61;
  border-radius:50%;
  background:radial-gradient(circle at 50% 45%,rgba(255,253,246,.92),rgba(235,243,234,.68) 58%,rgba(216,235,229,.54));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.88),inset 0 0 0 7px rgba(196,166,94,.08),0 12px 30px rgba(75,63,39,.08);
}
.home-compass-ring:before{
  content:"";
  position:absolute;
  inset:-13px;
  border-radius:50%;
  background:conic-gradient(from 180deg,#35aeb3 0 var(--instrument-depth),transparent var(--instrument-depth) 100%);
  pointer-events:none;
  filter:drop-shadow(0 1px 1px rgba(31,111,115,.16));
  -webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 5px),#000 0);
  mask:radial-gradient(farthest-side,transparent calc(100% - 5px),#000 0);
}
.home-compass-ring:after{content:"";position:absolute;inset:8%;border:1px solid rgba(178,145,70,.18);border-radius:50%;pointer-events:none}
.home-compass-depth-origin{position:absolute;z-index:5;left:50%;bottom:-19px;width:1px;height:14px;border:0;border-radius:0;background:rgba(47,46,41,.34);box-shadow:none;transform:translateX(-50%);pointer-events:none}
.home-compass-directions{position:absolute;z-index:2;inset:10%;color:rgba(103,82,42,.62);font-family:Georgia,"Times New Roman",serif;font-size:10px;font-weight:650;pointer-events:none}
.home-compass-directions i{position:absolute;font-style:normal;line-height:1}
.home-compass-directions i:nth-child(1){left:50%;top:0;transform:translateX(-50%)}
.home-compass-directions i:nth-child(2){right:0;top:50%;transform:translateY(-50%)}
.home-compass-directions i:nth-child(3){left:50%;bottom:0;transform:translateX(-50%)}
.home-compass-directions i:nth-child(4){left:0;top:50%;transform:translateY(-50%)}
.home-compass-caption{position:absolute;left:50%;top:17%;transform:translateX(-50%);color:#47787a;font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.home-compass-needle{position:absolute;z-index:3;left:50%;top:29%;width:22px;height:40%;transform:translateX(-50%);transform-origin:50% 50%;will-change:transform;filter:drop-shadow(0 3px 3px rgba(64,49,33,.18))}
.home-compass-needle i{position:relative;display:block;width:100%;height:100%}
.home-compass-needle i:before,.home-compass-needle i:after{content:"";position:absolute;left:0;width:100%;height:50%;clip-path:polygon(50% 0,92% 92%,50% 76%,8% 92%)}
.home-compass-needle i:before{top:0;background:linear-gradient(90deg,#a9483d 0 48%,#dfb04c 49% 100%)}
.home-compass-needle i:after{bottom:0;background:linear-gradient(90deg,#4f5856 0 48%,#89918d 49% 100%);transform:rotate(180deg)}
.home-compass-hub{position:absolute;z-index:5;left:50%;top:50%;width:18px;height:18px;border:2px solid #8f743d;border-radius:50%;background:radial-gradient(circle at 38% 34%,#f2d783 0 18%,#b88a35 46%,#6e5631 100%);box-shadow:0 0 0 2px rgba(255,249,230,.84),0 2px 4px rgba(67,51,28,.22);transform:translate(-50%,-50%)}
.home-compass-depth{position:absolute;left:50%;top:72%;display:grid;justify-items:center;gap:1px;transform:translateX(-50%);color:#3d4e4d}
.home-compass-depth b{color:#283230;font-family:Georgia,"Times New Roman",serif;font-size:25px;font-weight:650;line-height:1;letter-spacing:-.02em;white-space:nowrap}
.home-compass-depth small{color:#6a7772;font-size:9px;font-weight:760;letter-spacing:.04em;text-transform:uppercase}
.home-compass-depth small.gaining{color:#168d94;animation:compassDepthGainText .9s ease both}
@keyframes compassDepthGainText{0%{opacity:0;transform:translateY(4px) scale(.94)}35%{opacity:1;transform:translateY(-1px) scale(1.06)}100%{opacity:1;transform:translateY(0) scale(1)}}
.home-compass-calibrate{position:relative;z-index:6;min-width:190px;min-height:42px;border:1px solid rgba(47,133,137,.3);border-radius:999px;background:rgba(236,247,242,.92);color:#356e70;cursor:pointer;padding:9px 18px;font:inherit;font-size:12px;font-weight:820;box-shadow:0 6px 14px rgba(45,93,91,.09),inset 0 1px 0 rgba(255,255,255,.82)}
.home-compass-calibrate:hover,.home-compass-calibrate:focus-visible{border-color:rgba(47,133,137,.48);background:#e1f2ec;outline:none;transform:translateY(-1px)}
.home-compass-card.uncalibrated .home-compass-calibrate{border-color:#287f82;background:linear-gradient(145deg,#3fa7a8,#287f82);color:#fff;box-shadow:0 8px 20px rgba(38,120,123,.24);animation:compassCalibratePulse 2.15s ease-in-out infinite}
.home-compass-instrument.uncalibrated.compass-stage-0 .home-compass-needle{animation:compassNeedleWide 3.4s ease-in-out infinite!important}
.home-compass-instrument.uncalibrated.compass-stage-1 .home-compass-needle{animation:compassNeedleMedium 3.4s ease-in-out infinite!important}
.home-compass-instrument.uncalibrated.compass-stage-2 .home-compass-needle{animation:compassNeedleNarrow 3.4s ease-in-out infinite!important}
.home-compass-instrument.calibrated .home-compass-needle{transform:translateX(-50%) rotate(var(--settled-angle,0deg))}
.home-compass-instrument.depth-progress-gain .home-compass-ring{animation:compassInstrumentGain 1.1s ease both}
@keyframes compassNeedleWide{0%,100%{transform:translateX(-50%) rotate(-96deg)}50%{transform:translateX(-50%) rotate(96deg)}}
@keyframes compassNeedleMedium{0%,100%{transform:translateX(-50%) rotate(-34deg)}50%{transform:translateX(-50%) rotate(34deg)}}
@keyframes compassNeedleNarrow{0%,100%{transform:translateX(-50%) rotate(-8deg)}50%{transform:translateX(-50%) rotate(8deg)}}
@keyframes compassCalibratePulse{0%,100%{transform:scale(1);filter:brightness(1);box-shadow:0 8px 20px rgba(38,120,123,.22),0 0 0 0 rgba(57,168,170,0)}50%{transform:scale(1.055);filter:brightness(1.12);box-shadow:0 10px 24px rgba(38,120,123,.3),0 0 0 9px rgba(57,168,170,.14)}}
@keyframes compassInstrumentGain{0%,100%{filter:brightness(1);transform:scale(1)}48%{filter:brightness(1.16);transform:scale(1.018)}}
.home-compass-card{
  position:relative;
  z-index:2;
  display:grid;
  justify-items:center;
  width:min(820px,calc(100% - 32px));
  margin:28px auto 0;
  padding:30px clamp(22px,4vw,42px) 64px;
  border:1px solid transparent;
  border-radius:30px;
  background:
    linear-gradient(145deg,rgba(255,252,244,.88),rgba(235,241,229,.7)) padding-box,
    linear-gradient(135deg,rgba(255,255,255,.86) 0%,rgba(153,151,113,.2) 70%,rgba(83,112,101,.24) 100%) border-box;
  box-shadow:
    inset 7px 7px 14px rgba(255,255,255,.16),
    inset -8px -8px 16px rgba(71,98,86,.03),
    1px 1px 0 rgba(180,151,111,.28),
    3px 3px 0 rgba(132,137,101,.16),
    5px 6px 0 rgba(76,105,94,.09),
    9px 12px 18px -12px rgba(52,68,57,.24);
}
.home-compass-card:before{content:"";position:absolute;inset:16px 16px 24px;border:1px solid rgba(255,255,255,.52);border-radius:24px;pointer-events:none}
.home-compass-card>.home-depth-reset-mini{top:14px;right:14px}
.home-compass-divider{display:block;width:min(100%,650px);height:1px;margin:24px auto 20px;background:linear-gradient(90deg,transparent,rgba(61,132,136,.2),transparent)}
.home-compass-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,650px);margin:0 auto 19px;color:#24221f;border-top:1px solid rgba(36,34,31,.08);border-bottom:1px solid rgba(36,34,31,.08)}
.home-compass-stat{display:grid;align-content:center;justify-items:center;gap:4px;min-width:0;min-height:62px;padding:10px 12px;text-align:center;border-left:1px solid rgba(36,34,31,.1);border-bottom:1px solid rgba(36,34,31,.08)}
.home-compass-stat:nth-child(odd){border-left:0}
.home-compass-stat:nth-child(n+3){border-bottom:0}
.home-compass-stat b{color:#1f1e1b;font-family:Georgia,"Times New Roman",serif;font-size:20px;font-weight:520;line-height:1}
.home-compass-stat small{color:rgba(31,30,27,.68);font-size:9px;font-weight:760;line-height:1.25;letter-spacing:.035em;text-transform:uppercase}
.home-compass-panel{display:grid;justify-items:center;width:min(100%,650px);animation:depthRevealIn .38s ease both}
.home-compass-start{gap:14px;text-align:center}
.home-compass-start p{max-width:470px;margin:0;color:#695e53;font-size:13px;line-height:1.48}
.home-compass-depth-seeds{position:absolute;z-index:5;left:50%;bottom:14px;display:flex;align-items:center;justify-content:center;gap:13px;min-height:20px;transform:translateX(-50%)}
.home-compass-depth-seeds span{position:relative;display:block;width:20px;height:20px;border:0;border-radius:3px;background:linear-gradient(145deg,rgba(77,105,94,.18),rgba(55,83,75,.28));box-shadow:inset 2px 2px 5px rgba(50,75,66,.18),inset -1px -1px 3px rgba(255,255,255,.16),0 0 4px rgba(61,96,86,.1);transform:rotate(45deg)}
.home-compass-depth-seeds span:before{content:"";position:absolute;inset:3px;border-radius:1px;background:linear-gradient(145deg,#43e7da,#078c9b);opacity:1;filter:drop-shadow(0 1px 1px rgba(23,83,87,.24)) drop-shadow(0 0 4px rgba(43,211,203,.28));transition:opacity .28s ease,transform .28s ease}
.home-compass-depth-seeds span:after{content:"";position:absolute;inset:3px;border-radius:1px;background:rgba(238,255,252,.72);clip-path:polygon(50% 50%,0 0,0 100%);pointer-events:none}
.home-compass-depth-seeds span.filled:before{animation:compassSeedSettle .34s ease both}
.home-compass-depth-seeds span.filled.collecting:before{animation:compassSeedCollect .72s ease forwards}
.home-compass-depth-seeds span.filled.collecting:after{animation:compassSeedGlintCollect .72s ease forwards}
.home-compass-depth-seeds span.vacant:before{inset:5px;background:linear-gradient(145deg,rgba(64,91,81,.2),rgba(47,74,66,.34));filter:blur(.35px);opacity:.72}
.home-compass-depth-seeds span.vacant:after{display:none}
.focus-card-depth-seed{min-height:22px}
.focus-card-depth-seed[data-focus-depth-seed="energy"]{left:50%;right:auto;bottom:clamp(86px,12vw,102px);transform:translateX(-50%)}
.focus-card-depth-seed[data-focus-depth-seed="feeling"]{position:relative;left:auto;right:auto;bottom:auto;justify-self:center;margin:0 auto;transform:none}
.focus-state-deep-panel::after{display:none}
@keyframes compassSeedSettle{from{opacity:0;transform:translateY(-5px) scale(.82)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes compassSeedCollect{0%{opacity:1;transform:scale(1);filter:brightness(1)}55%{opacity:.9;transform:scale(1.16);filter:brightness(1.2)}100%{opacity:0;transform:scale(.35);filter:blur(2px)}}
@keyframes compassSeedGlintCollect{0%,45%{opacity:1}100%{opacity:0}}
.home-compass-card + .home-discovery{margin-top:30px}
.home-compass-question{
  display:grid;
  justify-items:center;
  width:min(100%,650px);
  min-height:0;
  margin-top:0;
  padding-top:0;
  text-align:center;
  animation:depthRevealIn .42s ease both;
}
.home-compass-question>span{color:#507d7d;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.home-compass-question h3{display:grid;place-items:center;max-width:560px;min-height:2.24em;margin:7px 0 18px;color:#302820;font-family:Georgia,"Times New Roman",serif;font-size:clamp(23px,3.2vw,31px);font-weight:520;line-height:1.12}
.compass-answer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:96px;gap:10px;width:100%}
.compass-selection-hint{display:flex;align-items:center;justify-content:space-between;width:100%;margin:-6px 0 9px;color:#6e6256;font-size:11px}
.compass-selection-hint b{color:#3f7778;font-size:11px;font-weight:800}
.compass-answer{
  display:grid;
  align-content:center;
  gap:4px;
  min-height:0;
  height:100%;
  border:1px solid rgba(80,117,115,.13);
  border-radius:15px;
  background:rgba(255,253,247,.55);
  color:#3d342b;
  cursor:pointer;
  padding:12px 34px 12px 14px;
  text-align:left;
  transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease;
}
.compass-answer b{font-size:14px;font-weight:800}
.compass-answer small{color:#6c6156;font-size:12px;line-height:1.35}
.compass-answer:hover,.compass-answer:focus-visible{border-color:rgba(62,143,145,.3);background:rgba(243,250,245,.88);outline:none;transform:translateY(-1px)}
.compass-answer.selected{border-color:rgba(48,136,140,.5);background:linear-gradient(145deg,rgba(221,244,238,.92),rgba(247,248,233,.84));box-shadow:0 0 0 2px rgba(60,153,154,.09),inset 0 1px 0 rgba(255,255,255,.72)}
.compass-answer.selected:after{content:"\2713";position:absolute;top:9px;right:10px;color:#397d7d;font-size:12px;font-weight:900}
.compass-answer{position:relative}
.compass-confirm{margin-top:18px}
.compass-calibration{width:min(100%,650px);padding:0}
.compass-cancel{margin-top:8px;border:0;background:transparent;color:rgba(66,89,85,.55);cursor:pointer;padding:5px 9px;font:inherit;font-size:11px;font-weight:700}
.compass-cancel:hover,.compass-cancel:focus-visible{color:#356f72;outline:none;text-decoration:underline;text-underline-offset:3px}
.home-compass-summary{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  justify-items:stretch;
  gap:18px;
  width:min(100%,650px);
  margin:0;
  padding:0;
  text-align:left;
}
.home-compass-summary h2{margin:4px 0 4px;color:#302820;font-family:Georgia,"Times New Roman",serif;font-size:25px;font-weight:520}
.home-compass-summary p{margin:0;color:#695e53;font-size:13px;line-height:1.42}
.compass-summary-copy{flex:1;min-width:0}
.compass-summary-axes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:15px 0 12px;border-top:1px solid rgba(67,130,137,.12);border-bottom:1px solid rgba(67,130,137,.1);padding:11px 0}
.compass-summary-axis{display:grid;align-content:start;gap:3px;min-width:0;padding:0 13px;border-left:1px solid rgba(67,130,137,.1)}
.compass-summary-axis:first-child{padding-left:0;border-left:0}
.compass-summary-axis small{color:#568081;font-size:9px;font-weight:820;letter-spacing:.04em;text-transform:uppercase}
.compass-summary-axis b{color:#3c332a;font-size:13px;font-weight:720;line-height:1.35}
.compass-recalibrate{min-height:38px;border:1px solid rgba(58,126,129,.18);border-radius:999px;background:rgba(248,252,247,.68);color:#416f72;cursor:pointer;padding:8px 13px;font:inherit;font-size:11px;font-weight:760}
.compass-recalibrate:hover,.compass-recalibrate:focus-visible{border-color:rgba(48,132,136,.34);background:rgba(232,245,240,.92);outline:none}
.home-discovery{
  width:min(820px,calc(100% - 32px));
  margin:24px auto 0;
  padding:26px 24px 24px;
  border-top:1px solid rgba(95,119,105,.14);
  border-bottom:1px solid rgba(95,119,105,.12);
}
.home-discovery>header{display:grid;justify-items:center;max-width:640px;margin:0 auto 24px;text-align:center}
.home-discovery h2{margin:5px 0 7px;color:#302820;font-family:Georgia,"Times New Roman",serif;font-size:30px;font-weight:520}
.home-discovery header p{margin:0;color:#695e53;font-size:13px;line-height:1.48}
.discovery-path{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.discovery-path:before{content:"";position:absolute;left:8%;right:8%;top:25px;height:1px;background:linear-gradient(90deg,rgba(205,165,76,.42),rgba(66,145,148,.26),rgba(100,76,55,.11))}
.discovery-station{position:relative;z-index:1;display:grid;justify-items:center;align-content:start;gap:8px;min-width:0;border:0;background:transparent;color:#3d342b;cursor:pointer;padding:0 5px 8px;text-align:center}
.discovery-node{display:grid;place-items:center;width:50px;height:50px;border:1px solid rgba(80,121,119,.18);border-radius:50%;background:#f8f5ea;box-shadow:0 5px 12px rgba(58,82,74,.09)}
.discovery-node i{width:15px;height:15px;border:2px solid rgba(55,128,132,.64);border-radius:50%;background:rgba(111,205,192,.23)}
.discovery-copy{display:grid;gap:3px}
.discovery-area{color:#4d797a;font-size:9px;font-weight:850;letter-spacing:.055em;text-transform:uppercase}
.discovery-copy b{font-size:13px;font-weight:800}
.discovery-copy small{color:#72675c;font-size:11px;line-height:1.35}
.depth-requirement{display:inline-flex;align-items:center;gap:4px;min-height:24px;border:1px solid rgba(65,124,124,.13);border-radius:999px;background:rgba(248,252,247,.58);color:#507678;padding:3px 7px;font-size:10px;font-weight:800}
.depth-requirement em{color:#4ba8aa;font-style:normal;font-size:12px}
.discovery-station.locked{color:rgba(61,52,43,.52)}
.discovery-station.locked .discovery-node{background:rgba(239,237,227,.72);box-shadow:none}
.discovery-station.locked .discovery-node i{border-color:rgba(90,103,98,.3);background:rgba(120,133,126,.08)}
.discovery-station.current .discovery-node{border-color:rgba(205,165,76,.5);background:linear-gradient(145deg,#fff7d8,#e6c675);box-shadow:0 0 0 5px rgba(205,165,76,.1),0 7px 15px rgba(123,93,32,.14)}
.station-lock{position:relative;display:inline-block;flex:0 0 auto;width:8px;height:7px;border:1.2px solid currentColor;border-radius:2px}
.station-lock:before{content:"";position:absolute;left:50%;bottom:5px;width:5px;height:5px;border:1.2px solid currentColor;border-bottom:0;border-radius:5px 5px 0 0;transform:translateX(-50%)}
.home-main-cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:min(100%,360px);min-height:50px;margin:24px auto 10px;border-radius:999px}
.home-main-cta span{display:inline-grid;place-items:center;width:22px;height:22px;border:1px solid rgba(255,255,255,.28);border-radius:50%;font-size:14px;line-height:1;transition:transform .18s ease}
.home-main-cta:hover span,.home-main-cta:focus-visible span{transform:translateX(2px)}
@keyframes depthSeedSpark{
  0%{transform:scale(1)}
  34%{transform:translateY(-2px) rotate(5deg) scale(1.2);filter:brightness(1.38) blur(0)}
  100%{opacity:0;transform:translateY(-9px) rotate(12deg) scale(1.9);filter:brightness(1.55) blur(8px)}
}
@keyframes depthSeedMistLeft{
  0%{opacity:0;filter:blur(0);transform:translate(-50%,-50%) scale(.35)}
  28%{opacity:.58}
  100%{opacity:0;filter:blur(5px);transform:translate(-18px,-20px) scale(2.2)}
}
@keyframes depthSeedMistRight{
  0%{opacity:0;filter:blur(0);transform:translate(-50%,-50%) scale(.3)}
  24%{opacity:.5}
  100%{opacity:0;filter:blur(6px);transform:translate(10px,-17px) scale(2.5)}
}
.depth-reset-settings{border-color:rgba(61,119,122,.18);color:#447477;background:rgba(232,244,240,.58)}
.check-row b{display:block;margin-bottom:8px}
.check-slider-row{
  display:grid;
  gap:0;
}
.check-slider{
  width:100%;
  height:48px;
  appearance:none;
  -webkit-appearance:none;
  background:transparent;
  cursor:pointer;
  touch-action:pan-y;
  opacity:0;
  position:absolute;
  inset:0;
  z-index:2;
}
.check-slider:focus{outline:none}
.check-slider-shell{
  position:relative;
  display:block;
  min-height:48px;
  margin:0 2px;
}
.check-slider-curve{
  position:relative;
  display:block;
  height:48px;
}
.check-slider-curve svg{
  position:absolute;
  inset:0;
  width:100%;
  height:44px;
  overflow:visible;
}
.slider-crescent{
  fill:#a7c5c4;
  stroke:none;
  filter:none;
}
.slider-crescent-glow{
  fill:none;
  stroke:rgba(255,252,244,.38);
  stroke-width:1.2;
  stroke-linecap:round;
}
.check-slider-dot{
  position:absolute;
  left:var(--curve-x);
  top:var(--curve-y);
  width:41px;
  height:41px;
  border-radius:999px;
  border:0;
  background:linear-gradient(145deg,rgba(246,232,194,.66),rgba(128,94,42,.28));
  box-shadow:0 9px 18px rgba(88,65,35,.17),inset 0 1px 1px rgba(255,255,255,.32),inset 0 -1px 2px rgba(74,51,24,.13);
  transform:translate(-50%,-50%);
  pointer-events:none;
  z-index:1;
}
.check-slider-dot::before{
  content:"";
  position:absolute;
  inset:6px;
  border-radius:inherit;
  background:
    radial-gradient(circle at 32% 24%,rgba(255,255,255,.8),transparent 28%),
    linear-gradient(145deg,#f1d78b 0%,#bf8d32 54%,#705225 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.68),inset 0 -2px 4px rgba(89,61,24,.22);
}
.check-slider-dot::after{
  content:"";
  position:absolute;
  inset:15px;
  border-radius:inherit;
  background:rgba(91,62,27,.18);
  box-shadow:0 0 0 1px rgba(255,252,244,.18);
}
.check-slider-center{
  position:absolute;
  left:50%;
  top:39px;
  transform:translate(-50%,-50%);
  color:rgba(46,39,31,.58);
  font-size:15px;
  font-weight:900;
  letter-spacing:0;
  text-transform:capitalize;
  pointer-events:none;
  transition:opacity .16s ease,color .16s ease,transform .16s ease;
}
.check-slider-center.show-value{
  color:#287884;
  font-size:13px;
  font-weight:620;
  transform:translate(-50%,-50%);
}
.check-hint-ready{animation:cardHintReady .82s ease both;background:rgba(119,153,98,.18);border-color:rgba(92,139,94,.32)}
.check-hint-ready .slider-crescent{fill:rgba(126,166,100,.72)}
.check-hint-ready .slider-crescent-glow{stroke:rgba(255,252,244,.68)}
.check-hint-ready .check-slider-dot{
  background:linear-gradient(145deg,rgba(246,239,214,.68),rgba(157,184,119,.28));
  box-shadow:0 10px 18px rgba(92,139,94,.18),inset 0 1px 1px rgba(255,255,255,.34),inset 0 -1px 2px rgba(74,96,52,.12);
}
.check-hint-ready .check-slider-dot::before{
  background:
    radial-gradient(circle at 32% 24%,rgba(255,255,255,.84),transparent 28%),
    linear-gradient(145deg,#e9d68f 0%,#a7b66a 52%,#73834c 100%);
}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip,.tag{
  border:1px solid rgba(100,76,55,.13);
  border-radius:999px;
  background:rgba(255,255,255,.46);
  padding:8px 10px;
  font-size:13px;
  font-weight:760;
}
.chip{cursor:pointer}.chip.active{background:rgba(152,163,141,.28);border-color:rgba(117,131,111,.34)}
.thought-list,.action-list{display:grid;gap:10px}
.thought-card,.action-card,.theme-card,.need-card{
  border:1px solid rgba(100,76,55,.12);
  border-radius:18px;
  background:rgba(255,255,255,.42);
  padding:14px;
}
.thought-card b,.action-card b,.theme-card b,.need-card b{display:block;margin-bottom:5px}
.thought-card p,.action-card p,.theme-card p,.need-card p{color:var(--muted);line-height:1.42;margin:0 0 10px}
.action-plan-list{display:grid;gap:14px}
.action-plan{
  display:grid;
  gap:14px;
  border:1px solid rgba(100,76,55,.12);
  border-radius:24px;
  background:linear-gradient(145deg,rgba(255,252,244,.66),rgba(244,223,183,.34));
  padding:18px;
  box-shadow:0 14px 30px rgba(58,42,26,.07),inset 0 1px 0 rgba(255,255,255,.62);
}
.action-plan-goal{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
.action-plan-goal h2{margin:4px 0 0;font-size:24px;line-height:1.08}
.progress-badge{
  flex:0 0 auto;
  border-radius:999px;
  border:1px solid rgba(80,121,142,.18);
  background:rgba(138,164,174,.18);
  color:#405461;
  padding:8px 11px;
  font-size:13px;
  font-weight:900;
}
.progress-track{
  height:9px;
  border-radius:999px;
  background:rgba(100,76,55,.09);
  overflow:hidden;
}
.progress-track span{
  display:block;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,var(--blue),var(--sage));
}
.action-plan-row{
  display:grid;
  grid-template-columns:140px 1fr;
  gap:14px;
  align-items:start;
}
.action-plan-row>b{font-size:13px;color:#5f5145}
.milestone-list{display:flex;flex-wrap:wrap;gap:8px}
.milestone-list span{
  border-radius:999px;
  border:1px solid rgba(199,121,89,.16);
  background:rgba(255,255,255,.38);
  padding:8px 11px;
  font-size:13px;
  font-weight:780;
}
.step-list{
  margin:0;
  padding-left:20px;
  columns:2;
  color:var(--muted);
  line-height:1.45;
}
.step-list li{break-inside:avoid;margin:0 0 6px}
.action-goals-card{overflow:hidden}
.action-goals-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
}
.action-goals-head h2{margin:4px 0 0;font-size:28px;line-height:1.08}
.action-goal-list{
  display:grid;
  gap:16px;
}
.action-goal-card{
  min-width:0;
  display:grid;
  gap:14px;
  border:1px solid rgba(100,76,55,.12);
  border-radius:22px;
  background:linear-gradient(145deg,rgba(255,252,244,.88),rgba(244,223,183,.28));
  padding:18px;
  box-shadow:0 16px 34px rgba(58,42,26,.08),inset 0 1px 0 rgba(255,255,255,.68);
}
.action-goal-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
.action-goal-top h2{margin:4px 0 0;font-size:24px;line-height:1.1}
.action-goal-actions{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:8px;
}
.action-edit-btn{
  min-height:34px;
  padding:8px 11px;
  font-size:12px;
}
.action-goal-progress{
  height:8px;
  border-radius:999px;
  background:rgba(100,76,55,.08);
  overflow:hidden;
}
.action-goal-progress span{
  display:block;
  width:var(--progress);
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,rgba(117,131,111,.72),rgba(212,178,90,.82));
}
.action-goal-milestones{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.action-goal-milestones span{
  border-radius:999px;
  border:1px solid rgba(199,121,89,.14);
  background:rgba(255,255,255,.44);
  padding:7px 10px;
  font-size:12px;
  font-weight:760;
  color:#5f5145;
}
.action-step-board{
  position:relative;
  min-width:0;
  padding:8px 0 2px;
}
.action-step-slider{
  min-width:0;
  max-width:100%;
  display:flex;
  align-items:stretch;
  gap:12px;
  overflow-x:auto;
  overflow-y:hidden;
  padding:4px 4px 16px;
  scrollbar-color:rgba(198,153,61,.75) rgba(100,76,55,.08);
  scrollbar-width:thin;
}
.action-step-slider::-webkit-scrollbar{height:10px}
.action-step-slider::-webkit-scrollbar-track{
  border-radius:999px;
  background:linear-gradient(90deg,rgba(255,252,244,.72),rgba(244,223,183,.34));
  border:1px solid rgba(100,76,55,.08);
}
.action-step-slider::-webkit-scrollbar-thumb{
  border-radius:999px;
  background:linear-gradient(90deg,rgba(212,178,90,.94),rgba(152,163,141,.72));
  border:2px solid rgba(255,252,244,.9);
  box-shadow:0 2px 8px rgba(100,76,55,.14);
}
.action-step-side{
  display:flex;
  align-items:stretch;
  gap:10px;
  min-width:max-content;
}
.action-step-divider{
  flex:0 0 5px;
  align-self:stretch;
  min-height:102px;
  border-radius:999px;
  background:linear-gradient(180deg,rgba(255,234,118,.55),#f3c73b 48%,rgba(255,214,62,.74));
  box-shadow:0 0 0 2px rgba(243,199,59,.12);
}
.action-step-placeholder{
  align-self:center;
  border-radius:999px;
  border:1px dashed rgba(100,76,55,.14);
  background:rgba(255,255,255,.34);
  color:rgba(95,81,69,.58);
  padding:10px 13px;
  font-size:12px;
  font-weight:760;
}
.action-step-tab{
  position:relative;
  flex:0 0 198px;
  min-width:198px;
  height:118px;
  border-radius:14px;
  border:1px solid rgba(100,76,55,.1);
  background:rgba(255,255,255,.7);
  color:#4e453b;
  padding:11px 34px 11px 11px;
  text-align:left;
  cursor:pointer;
  box-shadow:0 5px 12px rgba(58,42,26,.035),inset 0 1px 0 rgba(255,255,255,.68);
  transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease;
}
.action-step-tab:hover,.action-step-tab:focus{
  outline:0;
  transform:translateY(-1px);
  box-shadow:0 7px 16px rgba(58,42,26,.055),inset 0 1px 0 rgba(255,255,255,.74);
}
.action-step-tab.selected{
  border-color:rgba(243,199,59,.68);
  box-shadow:0 6px 15px rgba(154,112,37,.06),0 0 0 2px rgba(243,199,59,.18),inset 0 1px 0 rgba(255,255,255,.78);
}
.action-step-tab.done{
  border-color:rgba(117,131,111,.28);
  background:linear-gradient(145deg,rgba(241,248,234,.86),rgba(164,177,150,.22));
}
.action-step-tab.upcoming{
  border-color:rgba(100,76,55,.1);
  background:linear-gradient(145deg,rgba(248,246,240,.9),rgba(229,224,216,.32));
  color:#6e665e;
}
.action-step-tab span{
  display:block;
  margin-bottom:5px;
  font-size:11px;
  font-weight:820;
  text-transform:uppercase;
  letter-spacing:0;
  color:rgba(95,81,69,.72);
}
.action-step-tab b{
  display:block;
  font-size:12.4px;
  line-height:1.16;
  font-weight:690;
  display:-webkit-box;
  -webkit-line-clamp:4;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.action-step-check{
  position:absolute;
  top:7px;
  right:7px;
  width:28px;
  height:28px;
  border-radius:999px;
  border:1px solid rgba(100,76,55,.14);
  background:rgba(255,255,255,.56);
  color:transparent;
  padding:0;
  display:grid;
  place-items:center;
  cursor:pointer;
  font-size:15px;
  font-weight:900;
  line-height:1;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease;
}
.action-step-check:hover,.action-step-check:focus{
  outline:0;
  transform:scale(1.05);
  border-color:rgba(117,131,111,.34);
}
.action-step-tab.done .action-step-check{
  background:linear-gradient(145deg,rgba(152,163,141,.95),rgba(93,126,91,.86));
  border-color:rgba(93,126,91,.42);
  color:#fff;
  box-shadow:0 5px 12px rgba(93,126,91,.22);
}
.action-editor-modal{
  width:min(820px,100%);
  overflow-y:auto;
  overscroll-behavior:contain;
  gap:12px;
  padding-bottom:18px;
}
.action-editor-goal input{
  width:100%;
  border:1px solid rgba(100,76,55,.12);
  border-radius:16px;
  background:rgba(255,255,255,.5);
  padding:12px 13px;
  font:inherit;
  color:var(--ink);
  outline:0;
}
.action-editor-fields{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  min-height:0;
}
.action-editor-fields .thought-editor-text{
  min-width:0;
  height:100%;
}
.action-editor-modal .thought-editor-text textarea{
  min-height:clamp(190px,32vh,280px);
  max-height:clamp(190px,32vh,280px);
  overflow:auto;
  resize:none;
}
.action-editor-lines textarea{
  height:clamp(190px,32vh,280px);
}
.action-editor-modal .thought-editor-text textarea::-webkit-scrollbar{width:8px}
.action-editor-modal .thought-editor-text textarea::-webkit-scrollbar-track{background:rgba(100,76,55,.06);border-radius:999px}
.action-editor-modal .thought-editor-text textarea::-webkit-scrollbar-thumb{background:rgba(212,178,90,.62);border-radius:999px}
.action-editor-actions{
  position:sticky;
  bottom:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  flex-shrink:0;
  z-index:2;
  background:linear-gradient(180deg,rgba(255,252,244,.88),rgba(246,239,226,.98));
  backdrop-filter:blur(8px);
  border-top:1px solid rgba(100,76,55,.1);
  margin-top:8px;
  padding-top:16px;
}
.action-editor-danger-zone{
  flex:0 0 auto;
}
.action-editor-danger-zone .btn.danger{
  background:transparent;
  box-shadow:none;
}
.action-editor-danger-zone .btn.danger:hover{
  background:rgba(199,89,76,.11);
}
.action-editor-confirm-actions{
  flex:0 0 auto;
  justify-content:flex-end;
}
.goal-suggestions-panel{
  display:grid;
  gap:16px;
  scroll-margin-top:18px;
  position:relative;
  overflow:hidden;
  border:1px solid rgba(80,121,142,.34);
  border-radius:26px;
  background:
    radial-gradient(circle at 12% 0%,rgba(255,255,255,.34),transparent 30%),
    linear-gradient(145deg,rgba(127,167,184,.34),rgba(117,131,111,.25) 58%,rgba(255,252,244,.72));
  box-shadow:0 22px 48px rgba(64,84,97,.14),inset 0 1px 0 rgba(255,255,255,.68);
}
.goal-suggestions-panel:before{
  content:none;
}
.goal-suggestions-panel:after{
  content:none;
}
.goal-suggestions-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  position:relative;
  z-index:1;
}
.goal-suggestions-head h2{margin:4px 0 8px;font-size:28px;line-height:1.08}
.goal-suggestions-head .eyebrow{color:#405461}
.goal-suggestions-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  border-top:1px solid rgba(80,121,142,.18);
  border-bottom:1px solid rgba(80,121,142,.18);
  padding:12px 0;
  position:relative;
  z-index:1;
}
.goal-suggestion-list{
  overflow:visible;
  padding:0;
  position:relative;
  z-index:1;
}
.modal-backdrop{
  position:fixed;
  inset:0;
  z-index:40;
  display:grid;
  align-items:start;
  justify-items:center;
  padding:96px 24px 24px;
  overflow:auto;
  background:rgba(46,39,31,.38);
  backdrop-filter:blur(10px);
}
.modal-panel{
  width:min(980px,100%);
  max-height:calc(100vh - 124px);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  border:1px solid rgba(100,76,55,.18);
  border-radius:28px;
  background:linear-gradient(180deg,rgba(255,252,244,.96),rgba(246,239,226,.96));
  box-shadow:0 28px 80px rgba(58,42,26,.28),inset 0 1px 0 rgba(255,255,255,.75);
  padding:22px;
}
.modal-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:16px;
}
.modal-head h2{margin:4px 0 8px;font-size:30px;line-height:1.05}
.modal-close{flex:0 0 auto}
.modal-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  border-top:1px solid rgba(100,76,55,.1);
  border-bottom:1px solid rgba(100,76,55,.1);
  padding:12px 0;
  margin-bottom:14px;
}
.thought-editor-modal{width:min(760px,100%)}
.thought-editor-meta{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-bottom:14px;
}
.thought-editor-meta label,.thought-editor-meta>div,.thought-editor-text{
  display:grid;
  gap:6px;
  color:rgba(46,39,31,.56);
  font-size:11px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.thought-editor-meta input,.thought-editor-meta select,.thought-editor-text textarea{
  min-width:0;
  border:1px solid rgba(100,76,55,.12);
  border-radius:16px;
  background:rgba(255,255,255,.48);
  color:var(--ink);
  font:inherit;
  font-size:15px;
  font-weight:560;
  letter-spacing:0;
  text-transform:none;
  padding:11px 12px;
  outline:none;
}
.thought-editor-meta select{border-radius:999px}
.thought-editor-meta input:focus,.thought-editor-meta select:focus,.thought-editor-text textarea:focus{
  border-color:rgba(80,121,142,.42);
  box-shadow:0 0 0 3px rgba(138,164,174,.16);
}
.thought-editor-meta>div{
  justify-content:center;
  border:1px solid rgba(100,76,55,.1);
  border-radius:16px;
  background:rgba(255,255,255,.3);
  padding:10px 12px;
}
.thought-editor-meta>div b{
  color:#4b4035;
  font-size:14px;
  font-weight:760;
  letter-spacing:0;
  text-transform:none;
}
.thought-editor-text textarea{
  min-height:190px;
  resize:vertical;
  line-height:1.48;
}
.thought-editor-actions{
  margin:16px 0 0;
  padding-bottom:0;
  border-bottom:0;
}
.selection-count{
  flex:0 0 auto;
  border-radius:999px;
  background:rgba(138,164,174,.16);
  border:1px solid rgba(80,121,142,.16);
  color:#405461;
  padding:8px 11px;
  font-size:13px;
  font-weight:900;
}
.btn:disabled{
  opacity:.48;
  cursor:not-allowed;
  transform:none;
}
.goal-suggestions-modal{
  width:min(900px,100%);
  gap:14px;
}
.goal-suggestions-modal .modal-head{
  margin-bottom:4px;
}
.goal-suggestions-modal .goal-suggestion-list{
  display:grid;
  gap:14px;
  overflow:auto;
  padding-right:4px;
}
.goal-suggestions-modal .goal-suggestion-list::-webkit-scrollbar{width:8px}
.goal-suggestions-modal .goal-suggestion-list::-webkit-scrollbar-track{background:rgba(100,76,55,.06);border-radius:999px}
.goal-suggestions-modal .goal-suggestion-list::-webkit-scrollbar-thumb{background:rgba(212,178,90,.62);border-radius:999px}
.goal-suggestion-item{
  background:linear-gradient(145deg,rgba(255,252,244,.9),rgba(244,223,183,.34));
  box-shadow:0 8px 22px rgba(58,42,26,.06),inset 0 1px 0 rgba(255,255,255,.66);
  transition:opacity .22s ease,transform .22s ease,max-height .22s ease,margin .22s ease,padding .22s ease,border-color .18s ease;
}
.goal-suggestion-item.accepting{
  opacity:0;
  transform:translateY(-8px);
  pointer-events:none;
}
.goal-suggestion-steps{
  display:grid;
  gap:8px;
}
.goal-suggestion-steps span{
  display:flex;
  align-items:flex-start;
  gap:8px;
  border-radius:12px;
  border:1px solid rgba(100,76,55,.08);
  background:rgba(255,255,255,.36);
  color:#5f5145;
  padding:8px 10px;
  font-size:13px;
  line-height:1.3;
  font-weight:620;
}
.goal-suggestion-steps b{
  flex:0 0 auto;
  display:grid;
  place-items:center;
  width:20px;
  height:20px;
  border-radius:999px;
  background:rgba(243,199,59,.28);
  color:#8b6820;
  font-size:11px;
}
.goal-suggestion-card-actions{
  display:flex;
  justify-content:flex-end;
  padding-top:2px;
}
.goal-suggestions-modal .action-plan{background:linear-gradient(145deg,rgba(255,252,244,.78),rgba(244,223,183,.42))}
.goal-suggestions-panel .action-plan{
  border-style:solid;
  border-color:rgba(80,121,142,.22);
  background:linear-gradient(145deg,rgba(255,252,244,.94),rgba(255,252,244,.66));
}
.goal-suggestions-panel .progress-badge{
  border-style:solid;
  background:rgba(255,255,255,.42);
  color:#557178;
}
.goal-suggestions-panel .progress-track{
  background:rgba(80,121,142,.1);
  border:1px solid rgba(80,121,142,.14);
}
.goal-suggestions-panel .progress-track span{background:linear-gradient(90deg,rgba(138,164,174,.55),rgba(152,163,141,.55))}
.goal-suggestion-card{
  position:relative;
  cursor:pointer;
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease;
}
.goal-suggestion-card:hover,.goal-suggestion-card:focus{
  outline:0;
  border-color:rgba(127,167,184,.45);
  transform:translateY(-1px);
  box-shadow:0 18px 38px rgba(58,42,26,.11),inset 0 1px 0 rgba(255,255,255,.7);
}
.goal-suggestion-card.selected{
  border-color:rgba(117,131,111,.58);
  border-style:solid;
  background:linear-gradient(145deg,rgba(255,252,244,.96),rgba(152,163,141,.28));
  box-shadow:0 20px 46px rgba(58,42,26,.13),0 0 0 3px rgba(152,163,141,.18),inset 0 1px 0 rgba(255,255,255,.72);
}
.goal-suggestion-card.selected .action-plan-goal{padding-left:42px}
.goal-suggestion-card.selected:after{
  content:"\2713";
  position:absolute;
  top:12px;
  left:14px;
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:var(--sage);
  color:#fff;
  font-weight:900;
  box-shadow:0 8px 18px rgba(58,42,26,.14);
}
.action-card-panel{
  padding-left:12px;
  padding-right:12px;
}
.today-action-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:12px;
}
.today-action-head h2{
  margin-bottom:2px;
}
.today-action-head p{
  margin:0;
  color:var(--muted);
  font-size:13px;
}
.today-progress-badge{
  min-width:72px;
  min-height:54px;
  display:grid;
  place-items:center;
  border:1px solid rgba(111,139,105,.2);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(255,252,244,.78),rgba(226,239,217,.58));
  color:#43573f;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.68);
}
.today-progress-badge span{font-weight:900;font-size:17px;line-height:1}
.today-progress-badge small{font-size:11px;color:#6f7f69;font-weight:800}
.action-card-deck{
  grid-template-columns:repeat(4,190px);
  justify-content:start;
  align-items:start;
  gap:10px;
}
.pixel-action-card{
  position:relative;
  width:100%;
  --card-radius:5.2% / 4.1%;
  --card-visible-inset:0;
  --card-visible-radius:var(--card-radius);
  aspect-ratio:890 / 1217;
  min-height:0;
  border:0;
  background:transparent;
  padding:0;
  cursor:pointer;
  perspective:800px;
  text-align:left;
  overflow:visible;
}
.pixel-card-face{
  position:absolute;
  inset:0;
  box-sizing:border-box;
  display:grid;
  align-content:center;
  gap:8px;
  padding:16px;
  border:1px solid rgba(100,76,55,.14);
  border-radius:var(--card-radius);
  background:#f4dfb7;
  box-shadow:0 18px 34px rgba(58,42,26,.13),inset 0 1px 0 rgba(255,255,255,.62);
  backface-visibility:hidden;
  transform-style:preserve-3d;
  transition:transform .55s cubic-bezier(.2,.8,.2,1);
  overflow:hidden;
}
.pixel-card-back{
  place-items:center;
  text-align:center;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
  border-radius:var(--card-radius);
  overflow:visible;
}
.card-back-art{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
  filter:none;
  transform-origin:center;
  transition:transform .28s ease;
}
.pixel-card-front{
  inset:var(--card-visible-inset);
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border-radius:var(--card-visible-radius);
  border-color:rgba(100,76,55,.1);
  background:linear-gradient(145deg,#fff7e8 0%,#f6e8cc 58%,#efd8ad 100%);
  color:#3c332a;
  transform:rotateY(180deg);
  padding:15px 14px;
}
.pixel-card-front b{font-size:15px}.pixel-card-front small{font-weight:900;color:#7a6a58}.pixel-card-front span{font-size:13px;line-height:1.3}
.today-card-topline{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:8px;
  margin-bottom:4px;
}
.today-task-toggle{
  position:absolute;
  z-index:6;
  top:10px;
  right:10px;
  width:30px;
  height:30px;
  flex:0 0 30px;
  display:grid;
  place-items:center;
  border:1px solid rgba(111,139,105,.26);
  border-radius:999px;
  background:rgba(255,252,244,.58);
  color:rgba(83,111,78,.62);
  font-weight:900;
  cursor:pointer;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72);
  opacity:0;
  pointer-events:none;
  transform:translateY(2px) scale(.96);
  transition:background .18s ease,color .18s ease,transform .18s ease,border-color .18s ease,opacity .18s ease;
}
.pixel-action-card.flipped .today-task-toggle{
  opacity:1;
  pointer-events:auto;
  transform:translateY(0) scale(1);
}
.today-task-toggle:hover,.today-task-toggle:focus-visible{
  transform:translateY(-1px);
  border-color:rgba(111,139,105,.44);
  color:#4d7d52;
}
.today-task-toggle.done{
  background:#7fa76f;
  border-color:#7fa76f;
  color:#fff;
}
.today-card-replace{
  position:absolute;
  z-index:6;
  left:10px;
  top:10px;
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border:1px solid rgba(127,167,184,.26);
  border-radius:999px;
  background:rgba(255,252,244,.58);
  color:#587c87;
  font-weight:900;
  cursor:pointer;
  opacity:0;
  pointer-events:none;
  transform:translateY(2px) scale(.96);
  transition:opacity .18s ease,transform .18s ease,border-color .18s ease,color .18s ease;
}
.pixel-action-card.flipped .today-card-replace{
  opacity:1;
  pointer-events:auto;
  transform:translateY(0) scale(1);
}
.today-card-replace:hover,.today-card-replace:focus-visible{
  border-color:rgba(127,167,184,.5);
  color:#3f6975;
  transform:translateY(-1px);
}
.today-card-text{
  display:-webkit-box;
  -webkit-line-clamp:4;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin-top:3px;
}
.today-card-meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:5px;
  margin-top:9px;
}
.today-source-chip{
  border:1px solid rgba(127,167,184,.2);
  border-radius:999px;
  background:rgba(255,255,255,.42);
  color:#6b5c4e;
  padding:3px 7px;
  font-size:10px !important;
  font-weight:850;
  line-height:1.1 !important;
}
.today-source-chip.source-goal{
  border-color:rgba(127,167,184,.3);
  background:rgba(219,237,237,.52);
  color:#486d76;
}
.today-source-chip.source-adapted{
  border-color:rgba(207,166,74,.34);
  background:rgba(255,238,184,.56);
  color:#806333;
}
.today-source-chip.source-state{
  border-color:rgba(157,143,190,.28);
  background:rgba(235,229,246,.5);
  color:#635a7e;
}
.today-source-chip.source-rest{
  border-color:rgba(111,139,105,.3);
  background:rgba(226,239,217,.56);
  color:#526f4e;
}
.today-source-goal{
  color:#7a6a58;
  font-size:10px !important;
  line-height:1.18 !important;
}
.pixel-action-card.done .pixel-card-front{
  border-color:rgba(111,139,105,.28);
  background:linear-gradient(145deg,#fbf8ea 0%,#e7f0df 62%,#d6e5c8 100%);
}
.pixel-action-card.done .pixel-card-front b,
.pixel-action-card.done .today-card-text{
  color:#40553d;
}
.diamond-action-card.locked{
  opacity:.72;
}
.diamond-action-card.locked .diamond-card-back:before{
  filter:saturate(.72);
}
.bonus-lock-label{
  position:absolute;
  left:50%;
  bottom:18px;
  transform:translateX(-50%);
  border-radius:999px;
  background:rgba(255,252,244,.76);
  border:1px solid rgba(100,76,55,.12);
  color:#766753;
  font-size:11px;
  font-weight:900;
  padding:5px 9px;
  white-space:nowrap;
  box-shadow:0 8px 18px rgba(58,42,26,.12);
}
.today-completion-card{
  display:grid;
  gap:14px;
}
.today-completion-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
.today-completion-head h2{margin-bottom:0}
.today-bonus-state{
  border:1px solid rgba(207,166,74,.26);
  border-radius:999px;
  background:rgba(255,238,184,.42);
  color:#7c6634;
  font-size:12px;
  font-weight:900;
  padding:7px 10px;
  white-space:nowrap;
}
.today-bonus-state.unlocked{
  border-color:rgba(111,139,105,.32);
  background:rgba(226,239,217,.56);
  color:#526f4e;
}
.today-completion-columns{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.today-completion-columns b{
  display:block;
  margin-bottom:7px;
  color:#5d5146;
  font-size:13px;
}
.today-pill-list{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}
.today-pill-list span{
  border:1px solid rgba(100,76,55,.1);
  border-radius:999px;
  background:rgba(255,255,255,.42);
  color:#6d6054;
  padding:6px 9px;
  font-size:12px;
  font-weight:800;
}
.today-pill-list.done span{
  border-color:rgba(111,139,105,.22);
  background:rgba(226,239,217,.52);
  color:#526f4e;
}
.today-note-field{
  display:grid;
  gap:7px;
}
.today-note-field span{
  color:#6d6054;
  font-size:13px;
  font-weight:850;
}
.today-note-field textarea{
  width:100%;
  resize:vertical;
  min-height:72px;
  border:1px solid rgba(100,76,55,.14);
  border-radius:18px;
  background:rgba(255,252,244,.7);
  padding:11px 13px;
  color:#3c332a;
  font:inherit;
}
.today-completion-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.today-completion-actions small{
  color:var(--muted);
  font-size:12px;
}
.pixel-action-card.flipped .pixel-card-back{transform:rotateY(180deg)}
.pixel-action-card.flipped .pixel-card-front{transform:rotateY(360deg)}
.pixel-action-card:hover .card-back-art{transform:translateY(-3px) scale(1.025)}
.diamond-card-back{
  background:transparent;
  border:0;
  box-shadow:none;
  overflow:visible;
}
.diamond-card-back:before{
  content:"";
  position:absolute;
  inset:var(--card-visible-inset);
  border-radius:var(--card-visible-radius);
  border:1px solid rgba(67,112,122,.28);
  background:
    radial-gradient(circle at 50% 40%,rgba(0,188,204,.5),transparent 34%),
    linear-gradient(135deg,transparent 0 47%,rgba(0,128,148,.4) 48% 52%,transparent 53%),
    linear-gradient(45deg,transparent 0 47%,rgba(170,95,67,.18) 48% 52%,transparent 53%),
    linear-gradient(145deg,#f6e6c8 0%,#d7b57f 38%,#46c7d1 100%);
  box-shadow:0 18px 34px rgba(24,104,116,.2),inset 0 1px 0 rgba(255,255,255,.58);
}
.diamond-card-back:after{
  content:"";
  position:absolute;
  inset:14px 12px;
  border-radius:calc(var(--card-visible-radius) - 6px);
  border:1px solid rgba(199,121,89,.16);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.46);
}
.diamond-gem{
  position:relative;
  z-index:1;
  width:86px;
  height:62px;
  transform:none;
  border:1px solid rgba(0,111,132,.95);
  border-radius:0;
  clip-path:polygon(12% 24%,88% 24%,100% 43%,50% 100%,0 43%);
  background:
    linear-gradient(135deg,rgba(255,248,232,.96) 0 22%,rgba(0,190,207,.78) 23% 62%,rgba(228,196,139,.96) 63%),
    #63d2d8;
  box-shadow:0 14px 30px rgba(0,128,148,.34),inset 0 1px 0 rgba(255,255,255,.82);
}
.diamond-gem:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(64deg,transparent 0 38%,rgba(0,102,124,.58) 39% 40%,transparent 41%),
    linear-gradient(116deg,transparent 0 38%,rgba(0,102,124,.58) 39% 40%,transparent 41%),
    linear-gradient(90deg,transparent 0 49%,rgba(0,102,124,.5) 50%,transparent 51%),
    linear-gradient(180deg,transparent 0 35%,rgba(0,102,124,.5) 36% 37%,transparent 38%);
}
.diamond-gem:after{
  content:"";
  position:absolute;
  left:18%;
  right:18%;
  top:18%;
  height:12px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.58),transparent);
  transform:rotate(-7deg);
}
.diamond-card-front{background:linear-gradient(145deg,#eff8f9,#fff2df)}
.diamond-denied{}
.diamond-denied .pixel-card-face{
  background:linear-gradient(145deg,#ffe9e3,#f2c2b7);
  box-shadow:0 18px 34px rgba(199,65,55,.2),inset 0 0 0 2px rgba(199,65,55,.24);
}
.diamond-denied .card-back-art{filter:none}
.diamond-denied .pixel-card-back:after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:rgba(210,92,78,.24);
  box-shadow:inset 0 0 0 2px rgba(199,65,55,.2);
  pointer-events:none;
}
.diamond-denied .diamond-card-back:before{box-shadow:0 18px 34px rgba(24,104,116,.2),inset 0 1px 0 rgba(255,255,255,.58)}
.checkin-card-denied{}
.checkin-card-denied .pixel-card-back:after,.checkin-card-denied .pixel-card-front:after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:rgba(210,92,78,.16);
  box-shadow:inset 0 0 0 1px rgba(199,65,55,.14);
  pointer-events:none;
}
.checkin-card-denied .card-back-art{filter:none}
.checkin-card-denied .diamond-card-back:before{box-shadow:0 18px 34px rgba(24,104,116,.2),inset 0 1px 0 rgba(255,255,255,.58)}
.card-hint-ready{animation:cardHintReady .82s ease both}
.card-hint-ready .pixel-card-face{
  background:linear-gradient(145deg,#eef7de,#9fbc86);
  box-shadow:0 18px 34px rgba(92,139,94,.24),inset 0 0 0 2px rgba(92,139,94,.28);
}
.card-hint-ready .card-back-art{filter:none}
.card-hint-ready .pixel-card-back:after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:rgba(119,153,98,.18);
  box-shadow:inset 0 0 0 2px rgba(92,139,94,.32);
  pointer-events:none;
}
.card-hint-ready .diamond-card-back:before{box-shadow:0 18px 34px rgba(24,104,116,.2),inset 0 1px 0 rgba(255,255,255,.58)}
@keyframes cardHintReady{
  0%,100%{transform:translateX(0)}
  16%{transform:translateX(-5px) rotate(-.8deg)}
  32%{transform:translateX(5px) rotate(.8deg)}
  48%{transform:translateX(-3px)}
  64%{transform:translateX(3px)}
}
.tag-row{display:flex;flex-wrap:wrap;gap:6px}
.tag.terracotta{background:rgba(199,121,89,.18)}.tag.sage{background:rgba(152,163,141,.22)}.tag.blue{background:rgba(138,164,174,.22)}.tag.ochre{background:rgba(215,161,74,.18)}
.empty{color:var(--muted);border:1px dashed rgba(100,76,55,.18);border-radius:18px;padding:18px;background:rgba(255,255,255,.28)}
.thought-space-layout{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}
.thought-room-only{margin-top:16px}
.thought-sort-layout{width:100%;margin-top:16px;padding:0 2px}
.thought-sort-head{display:flex;align-items:end;justify-content:space-between;gap:16px;padding:10px 8px 14px;border-bottom:1px solid rgba(85,105,99,.12)}
.thought-sort-head h2{margin:3px 0 0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(25px,3vw,34px);font-weight:520}
.thought-sort-list{display:grid}
.thought-sort-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;width:100%;min-height:82px;border:0;border-bottom:1px solid rgba(85,105,99,.11);background:transparent;color:#3f352c;cursor:pointer;padding:14px 9px;text-align:left;transition:background .18s ease,transform .18s ease}
.thought-sort-row:hover,.thought-sort-row:focus-visible{background:rgba(255,252,244,.58);outline:none;transform:translateX(2px)}
.thought-sort-copy{display:grid;gap:4px;min-width:0}
.thought-sort-copy b{font-size:15px;font-weight:760}
.thought-sort-copy small{display:-webkit-box;overflow:hidden;color:#74685d;font-size:12px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.thought-sort-tags{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:5px;max-width:250px}
.thought-sort-tags em{border:1px solid rgba(61,125,126,.12);border-radius:999px;background:rgba(226,241,236,.5);color:#4d7271;font-size:10px;font-style:normal;padding:4px 7px}
.thought-room-card,.thought-mode-card,.thought-summary-card,.thought-input-strip,.animation-tuning-card,.animation-values-card{grid-column:1/-1}
.room-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px}
.room-head h2{margin-bottom:0}
.thought-room-card{position:relative}
.animation-tuning-card,.animation-values-card{
  background:rgba(255,252,244,.64);
}
.animation-tuning-card{
  padding:0;
  overflow:hidden;
}
.animation-tuning-card.open .animation-tuning-bar{
  display:none;
}
.animation-tuning-card.collapsed{
  background:rgba(255,252,244,.52);
}
.animation-tuning-bar{
  width:100%;
  min-height:52px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  border:0;
  background:transparent;
  color:#4b4035;
  padding:10px 18px;
  text-align:left;
  font:inherit;
  cursor:pointer;
}
.animation-tuning-bar h2{
  margin-bottom:0;
  font-size:18px;
}
.animation-tuning-summary{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:32px;
  border:1px solid rgba(100,76,55,.12);
  border-radius:999px;
  background:rgba(255,255,255,.48);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7);
  padding:0 11px;
  font-size:12px;
  font-weight:850;
  white-space:nowrap;
}
.animation-tuning-summary b{
  width:18px;
  height:18px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff8eb;
  color:#8f6338;
}
.animation-tuning-body{
  border-top:1px solid rgba(100,76,55,.09);
  padding:14px 18px 18px;
}
.animation-tuning-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}
.animation-tuning-selects{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.animation-tuning-selects .room-bottom-controls{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.icon-only{
  min-width:38px;
  width:38px;
  height:38px;
  padding:0;
  border-radius:999px;
  font-size:20px;
  line-height:1;
}
.animation-tuning-actions{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:14px;
  color:#7a6a5a;
  font-size:13px;
}
.animation-tuning-actions>div{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.animation-tuning-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  margin-bottom:14px;
}
.animation-tuning-head.compact{
  align-items:center;
  margin-bottom:10px;
}
.animation-tuning-head h2{
  margin-bottom:0;
}
.animation-tuning-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.animation-tuning-group{
  border:1px solid rgba(100,76,55,.1);
  border-radius:18px;
  background:rgba(255,255,255,.32);
  padding:12px;
}
.animation-tuning-group h3{
  margin:0 0 10px;
  color:#5d4d3e;
  font-size:13px;
  line-height:1;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.animation-tuning-group>div{
  display:grid;
  gap:8px;
}
.animation-tuning-row{
  display:grid;
  grid-template-columns:1fr;
  align-items:center;
  gap:8px;
  min-height:64px;
  border:1px solid rgba(100,76,55,.1);
  border-radius:14px;
  background:rgba(255,255,255,.46);
  padding:9px 10px;
}
.animation-tuning-row span{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:10px;
  min-width:0;
}
.animation-tuning-row b{
  font-size:12px;
  line-height:1.1;
  color:#4b4035;
}
.animation-tuning-row em{
  min-width:50px;
  text-align:right;
  font-style:normal;
  font-size:12px;
  font-weight:850;
  color:#8f6338;
}
.animation-tuning-row input[type="range"]{
  width:100%;
  accent-color:#d29a45;
}
.animation-values-card pre{
  margin:0;
  max-height:260px;
  overflow:auto;
  border:1px solid rgba(100,76,55,.1);
  border-radius:18px;
  background:rgba(47,39,31,.9);
  color:#fff6e6;
  padding:14px;
  font-size:12px;
  line-height:1.5;
  white-space:pre-wrap;
}
.animation-values-inline{
  margin-top:12px;
}
.animation-values-inline pre{
  margin:7px 0 0;
  max-height:210px;
  overflow:auto;
  border:1px solid rgba(100,76,55,.1);
  border-radius:16px;
  background:rgba(47,39,31,.9);
  color:#fff6e6;
  padding:12px;
  font-size:12px;
  line-height:1.5;
  white-space:pre-wrap;
}
.thought-room-toolbar{
  display:grid;
  grid-template-columns:minmax(150px,1fr) auto minmax(230px,1fr);
  align-items:center;
  gap:12px;
  margin-bottom:12px;
}
.thought-room-title h2{margin-bottom:0}
.thought-head-tools{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:center}
.room-toolbar-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
}
.thought-range-toggle{
  display:inline-flex;
  gap:3px;
  padding:4px;
  border:1px solid rgba(100,76,55,.1);
  border-radius:999px;
  background:rgba(255,252,244,.58);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.64);
}
.thought-range-toggle button{
  min-width:38px;
  height:30px;
  border:0;
  border-radius:999px;
  background:transparent;
  color:#5d4d3e;
  font:inherit;
  font-size:12px;
  font-weight:900;
  cursor:pointer;
}
.thought-range-toggle button:hover{background:rgba(255,255,255,.48)}
.thought-range-toggle button.active{background:#fff8eb;color:#5d3b2c;box-shadow:0 6px 14px rgba(58,42,26,.08),inset 0 0 0 1px rgba(199,121,89,.28)}
.thought-head-tools .pill{white-space:nowrap}
.thought-room{
  position:relative;
  min-height:610px;
  border:1px solid rgba(168,143,111,.14);
  border-radius:30px;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 48%,rgba(226,174,77,.1),transparent 18%),
    radial-gradient(circle at 23% 24%,rgba(134,159,132,.1),transparent 28%),
    radial-gradient(circle at 76% 23%,rgba(215,149,100,.1),transparent 29%),
    radial-gradient(circle at 31% 82%,rgba(122,172,194,.08),transparent 27%),
    radial-gradient(circle at 72% 80%,rgba(147,168,135,.09),transparent 25%),
    linear-gradient(120deg,#fbf5e9 0%,#fffaf1 45%,#fbefe0 100%);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.58),0 18px 48px rgba(91,70,45,.08);
  cursor:grab;
  touch-action:pan-y;
  user-select:none;
}
.room-no-select,.room-no-select *{user-select:none!important}
.thought-room.panning{cursor:grabbing}
.thought-room:before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:
    radial-gradient(ellipse at 50% 50%,transparent 0 9%,rgba(255,255,255,.34) 9.2% 9.42%,transparent 9.7% 12%,rgba(255,255,255,.24) 12.2% 12.42%,transparent 12.7% 15.4%,rgba(255,255,255,.18) 15.7% 15.92%,transparent 16.2%),
    radial-gradient(ellipse at 28% 78%,transparent 0 15%,rgba(255,255,255,.2) 15.2% 15.42%,transparent 15.8% 21%,rgba(255,255,255,.14) 21.2% 21.42%,transparent 21.8%),
    radial-gradient(ellipse at 77% 73%,transparent 0 16%,rgba(255,255,255,.18) 16.2% 16.42%,transparent 16.8% 23%,rgba(255,255,255,.12) 23.2% 23.42%,transparent 23.8%);
  pointer-events:none;
  z-index:0;
  opacity:.72;
  filter:blur(1.2px);
}
.thought-room:after{
  content:"";
  position:absolute;
  inset:-26% -8%;
  pointer-events:none;
  opacity:.26;
  z-index:0;
  filter:blur(1.8px);
  background:
    radial-gradient(ellipse at 4% 48%,transparent 0 22%,rgba(255,255,255,.62) 22.15% 22.3%,transparent 22.45% 31%,rgba(255,255,255,.42) 31.15% 31.3%,transparent 31.5%),
    radial-gradient(ellipse at 100% 48%,transparent 0 25%,rgba(255,255,255,.56) 25.15% 25.3%,transparent 25.45% 36%,rgba(255,255,255,.38) 36.15% 36.3%,transparent 36.5%);
}
.room-world{position:absolute;inset:0;z-index:1;transform-origin:0 0;will-change:transform;transition:transform .18s ease}
.room-world.mode-enter .topic-hub{animation:topicRise .7s cubic-bezier(.18,.82,.18,1) both}
.room-center,.topic-hub{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);min-width:164px;min-height:78px;border:1px solid rgba(255,250,241,.28);border-radius:42% 58% 50% 50%/52% 44% 56% 48%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;text-align:center;padding:13px 18px;color:#fffaf1;background:radial-gradient(circle at 30% 22%,rgba(255,250,241,.24),transparent 28%),linear-gradient(145deg,rgba(65,60,52,.92),rgba(111,126,106,.82));box-shadow:0 22px 42px rgba(58,42,26,.18),inset 0 1px 0 rgba(255,255,255,.24),inset 0 -12px 28px rgba(45,35,26,.16);font-weight:680}
.room-center:after,.topic-hub:after{content:"";position:absolute;inset:9px 14px auto 18px;height:18px;border-radius:999px;background:linear-gradient(90deg,rgba(255,250,241,.3),transparent);pointer-events:none;filter:blur(.2px)}
.room-center.thought-room-orb{
  z-index:8;
  width:108px;
  min-width:0;
  height:108px;
  min-height:0;
  aspect-ratio:1;
  padding:18px;
  border:0;
  border-radius:0;
  gap:0;
  color:#5b3c1b;
  font-size:15px;
  font-family:Georgia,"Times New Roman",serif;
  font-weight:400;
  line-height:1;
  text-shadow:
    0 1px 0 rgba(255,250,235,.62),
    0 10px 22px rgba(128,82,29,.14);
  background:transparent;
  box-shadow:none;
  animation:roomOrbIdle 7s ease-in-out infinite alternate;
}
.focus-hex-frame{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  overflow:visible;
  filter:none;
  pointer-events:none;
}
.focus-hex-frame path{
  fill:#f7ead1;
  fill-opacity:1;
  stroke:#e6b84c;
  stroke-width:5;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
}
.focus-orb-label{
  position:relative;
  z-index:1;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.thought-room.animation-gravity .thought-room-orb{animation:none}
.room-center.thought-room-orb:after{
  display:none;
}
.topic-hub{
  width:var(--hub-w,190px);
  height:var(--hub-h,90px);
  min-height:var(--hub-h,90px);
  border-radius:42px;
  background:radial-gradient(circle at 28% 18%,rgba(255,255,255,.62),transparent 30%),linear-gradient(145deg,color-mix(in srgb,var(--blue) 24%,#fbf8ef),#f8f7ef);
  color:#263d45;
  box-shadow:0 14px 28px rgba(58,42,26,.09),inset 0 1px 0 rgba(255,255,255,.78),inset 0 -10px 18px color-mix(in srgb,var(--blue) 10%,transparent);
}
.topic-hub::before{
  content:"◇";
  position:relative;
  z-index:1;
  font-size:22px;
  line-height:1;
  color:color-mix(in srgb,var(--blue) 70%,#6c573b);
}
.topic-hub b{position:relative;z-index:1;font-size:15.5px;line-height:1.18;max-width:88%;font-weight:640;letter-spacing:.01em}.topic-hub span{position:relative;z-index:1;font-size:14px;font-weight:520;opacity:.86}
.topic-hub[data-topic-focus="ziele"]{--hub-accent:#9bb69a}
.topic-hub[data-topic-focus="druck"]{--hub-accent:#d79a74}
.topic-hub[data-topic-focus="ressourcen"]{--hub-accent:#9fb999}
.topic-hub[data-topic-focus="aufgaben"]{--hub-accent:#9fc3d3}
.topic-hub[data-topic-focus="ziele"]::before{content:"◉"}
.topic-hub[data-topic-focus="druck"]::before{content:"↻"}
.topic-hub[data-topic-focus="ressourcen"]::before{content:"◇"}
.topic-hub[data-topic-focus="aufgaben"]::before{content:"☑"}
.topic-hub[data-topic-focus]{
  border-color:color-mix(in srgb,var(--hub-accent,var(--blue)) 42%,rgba(100,76,55,.13));
  background:radial-gradient(circle at 28% 18%,rgba(255,255,255,.66),transparent 30%),linear-gradient(145deg,color-mix(in srgb,var(--hub-accent,var(--blue)) 24%,#fbf8ef),#f8f7ef);
  box-shadow:0 14px 28px rgba(58,42,26,.09),inset 0 1px 0 rgba(255,255,255,.78),inset 0 -10px 18px color-mix(in srgb,var(--hub-accent,var(--blue)) 10%,transparent);
}
.topic-room .topic-hub,.goal-room .goal-hub{
  top:auto;
  z-index:8;
  transform:translate(-50%,-50%);
  border:1px solid color-mix(in srgb,var(--blue) 38%,rgba(100,76,55,.16));
  cursor:pointer;
  touch-action:none;
  user-select:none;
  appearance:none;
  -webkit-appearance:none;
}
.topic-room .topic-hub:hover,.topic-room .topic-hub.active,.goal-room .goal-hub:hover,.goal-room .goal-hub.active{
  z-index:28;
  filter:brightness(1.035);
  box-shadow:0 18px 34px rgba(58,42,26,.13),inset 0 1px 0 rgba(255,255,255,.72),inset 0 -10px 18px color-mix(in srgb,var(--blue) 16%,transparent);
}
.topic-room-arriving .room-world.mode-enter .topic-hub{
  opacity:0;
  animation:topicHubFadeIn .9s cubic-bezier(.18,.82,.18,1) forwards;
  animation-delay:var(--topic-delay,0ms);
}
.topic-room:not(.topic-room-arriving) .room-world.mode-enter .topic-hub{
  animation:none;
  opacity:1;
}
.topic-room.topic-focused .room-thought,.goal-room.goal-focused .room-thought{opacity:.22;filter:saturate(.58) blur(.2px)}
.topic-room.topic-focused .room-thought.topic-active,.goal-room.goal-focused .room-thought.goal-active{
  z-index:27;
  opacity:1;
  filter:brightness(1.08) saturate(1.1);
  box-shadow:0 24px 44px rgba(58,42,26,.21),inset 0 1px 0 rgba(255,255,255,.72),inset 0 -10px 22px color-mix(in srgb,var(--node) 24%,transparent);
}
.room-node{transition:transform 1.9s cubic-bezier(.42,0,.18,1),width 1.35s cubic-bezier(.42,0,.18,1),height 1.35s cubic-bezier(.42,0,.18,1),min-height 1.35s cubic-bezier(.42,0,.18,1),border-radius 1.2s cubic-bezier(.42,0,.18,1),color .7s ease,opacity .65s ease}
.thought-room.animation-linear .room-node{
  transition:left .78s cubic-bezier(.2,.82,.18,1),top .78s cubic-bezier(.2,.82,.18,1),opacity .22s ease,filter .22s ease,box-shadow .22s ease,transform .22s ease;
}
.thought-room.animation-linear [data-linear-anchor]{cursor:pointer}
.thought-room.animation-linear .room-center.active,.thought-room.animation-linear .topic-hub.active{
  filter:brightness(1.08) saturate(1.06);
  box-shadow:0 28px 54px rgba(58,42,26,.24),inset 0 1px 0 rgba(255,255,255,.34),inset 0 -12px 28px rgba(45,35,26,.16);
}
.thought-room.animation-linear .room-center.thought-room-orb.active{
  box-shadow:none;
}
.thought-room.animation-linear .room-center.thought-room-orb.active .focus-hex-frame path{
  stroke:#e0a83e;
  stroke-width:6;
}
.room-node b{transition:opacity .42s ease,transform .56s ease}
.room-node.morphing,.room-node.settling{animation-play-state:paused!important;will-change:transform,width,height,border-radius,background}
.room-thought{--node:#d8c29d;position:absolute;z-index:3;width:104px;height:104px;min-height:0;transform:translate(-50%,-50%);border:1px solid color-mix(in srgb,var(--node) 30%,rgba(100,76,55,.12));border-radius:50%;background:radial-gradient(circle at 28% 22%,rgba(255,255,255,.78),transparent 26%),linear-gradient(145deg,color-mix(in srgb,var(--node) 28%,#fff8ec),rgba(255,255,255,.56));color:#30281f;padding:13px;cursor:grab;box-shadow:0 18px 32px rgba(58,42,26,.1),inset 0 1px 0 rgba(255,255,255,.76),inset 0 -10px 20px color-mix(in srgb,var(--node) 14%,transparent);animation:none;user-select:none;touch-action:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center}
.room-thought::before{
  content:"✦";
  color:color-mix(in srgb,var(--node) 72%,#64513a);
  font-size:17px;
  line-height:1;
  opacity:.95;
}
.room-thought.terracotta::before{content:"↻"}
.room-thought.sage::before{content:"◇"}
.room-thought.blue::before{content:"☑"}
.room-thought.ochre::before{content:"⚑"}
.room-thought.sand::before{content:"○"}
.topic-room .room-thought,.goal-room .room-thought{width:74px;height:74px;min-height:0;padding:8px;box-shadow:0 14px 26px rgba(58,42,26,.1),inset 0 1px 0 rgba(255,255,255,.74);animation:none}
.goal-room .room-thought.goal:not(.cluster){width:var(--goal-w,164px);height:auto;min-height:78px;border-radius:999px;background:radial-gradient(circle at 24% 18%,rgba(255,255,255,.5),transparent 27%),linear-gradient(145deg,color-mix(in srgb,var(--blue) 52%,#fff8ec),rgba(255,255,255,.52));color:#263d45;padding:13px 16px;box-shadow:0 16px 32px rgba(58,42,26,.13),inset 0 1px 0 rgba(255,255,255,.72),inset 0 -10px 22px color-mix(in srgb,var(--blue) 18%,transparent)}
.goal-room .room-thought.goal:not(.cluster) b{font-size:12.4px;line-height:1.1}
.thought-room.animation-orbit .room-thought:not(.dragging){animation:none;will-change:transform}
.thought-room.animation-orbit .room-thought{transition:opacity .22s ease,filter .22s ease,box-shadow .22s ease}
.thought-room.animation-orbit .room-thought.orbit-drag-follow{transition:none}
.thought-room.animation-orbit .need-point:not(.dragging){animation:roomNodeOrbit 10s linear infinite;animation-delay:var(--delay)}
.thought-room.animation-gravity .room-thought:not(.dragging),
.thought-room.animation-gravity .need-point:not(.dragging){
  transition:left 1.05s cubic-bezier(.18,.82,.18,1),top 1.05s cubic-bezier(.18,.82,.18,1),opacity .42s ease,filter .42s ease,box-shadow .42s ease,transform .42s ease;
}
.thought-room .room-thought.thought-arriving,
.thought-room.animation-orbit .room-thought.thought-arriving,
.thought-room .need-point.thought-arriving,
.thought-room.animation-orbit .need-point.thought-arriving{
  z-index:35;
  animation:thoughtArriveFromBottom 1.85s cubic-bezier(.16,.78,.14,1) both;
  will-change:translate,scale,opacity,filter;
}
.topic-room .room-thought:not(.morphing),.goal-room .room-thought:not(.morphing){transition:opacity .22s ease,filter .22s ease,transform .22s ease,box-shadow .22s ease}
.thought-room.animation-orbit.topic-room .room-thought:not(.morphing),.thought-room.animation-orbit.goal-room .room-thought:not(.morphing){transition:opacity .22s ease,filter .22s ease,box-shadow .22s ease}
.topic-room .room-thought.morphing,.goal-room .room-thought.morphing,.room-node.morphing{transition:transform 1.9s cubic-bezier(.42,0,.18,1),width 1.35s cubic-bezier(.42,0,.18,1),height 1.35s cubic-bezier(.42,0,.18,1),min-height 1.35s cubic-bezier(.42,0,.18,1),border-radius 1.2s cubic-bezier(.42,0,.18,1),color .7s ease,opacity .65s ease}
.topic-room .room-thought b,.goal-room .room-thought b{font-size:9.2px;line-height:1.1;font-weight:560}
.topic-room.topic-hovering .room-thought:not(.hovered),.goal-room.goal-hovering .room-thought:not(.hovered){opacity:.36;filter:saturate(.74) blur(.15px)}
.topic-room .room-thought.hovered,.topic-room .room-thought:hover,.goal-room .room-thought.hovered,.goal-room .room-thought:hover{z-index:30;opacity:1;filter:brightness(1.06);transform:translate(-50%,-50%) scale(1.13);box-shadow:0 24px 44px rgba(58,42,26,.22),inset 0 1px 0 rgba(255,255,255,.72)}
.room-thought b{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:11.2px;line-height:1.1;font-weight:560;overflow:hidden;text-overflow:ellipsis;position:relative;z-index:1}.room-thought.terracotta{--node:var(--terracotta)}.room-thought.sage{--node:var(--sage)}.room-thought.blue{--node:var(--blue)}.room-thought.ochre{--node:var(--ochre)}.room-thought.sand{--node:var(--sand)}
.room-thought:hover,.room-thought:focus-visible,.need-point:hover,.need-point:focus-visible,.need-cluster:hover{z-index:32;filter:brightness(1.06);transform:translate(-50%,-50%) scale(1.06);outline:none}
.room-thought.dragging,.need-point.dragging,.topic-hub.dragging{z-index:36;cursor:grabbing;filter:brightness(1.08);animation:none}
@keyframes thoughtFloat{from{translate:-4px -3px;rotate:-.6deg}to{translate:5px 6px;rotate:.8deg}}
@keyframes roomNodeOrbit{
  0%{transform:translate(-50%,-50%) rotate(0deg) translateX(4px) rotate(0deg)}
  100%{transform:translate(-50%,-50%) rotate(360deg) translateX(4px) rotate(-360deg)}
}
@keyframes thoughtArriveFromBottom{
  0%{opacity:0;translate:0 118px;scale:.78;filter:blur(5px) saturate(.9)}
  42%{opacity:.82;translate:0 28px;scale:.94;filter:blur(1.6px) saturate(.96)}
  78%{opacity:1;translate:0 -4px;scale:1.015;filter:blur(0) saturate(1.02)}
  100%{opacity:1;translate:0 0;scale:1;filter:none}
}
@keyframes topicRise{from{opacity:0;scale:.9;translate:0 10px}to{opacity:1;scale:1;translate:0 0}}
@keyframes topicHubFadeIn{from{opacity:0;scale:.9;translate:0 8px}to{opacity:1;scale:1;translate:0 0}}
.room-ai-btn{min-height:36px;border:1px solid rgba(80,121,142,.28);border-radius:999px;color:#fff;background:linear-gradient(145deg,#7fa7b8,#75836f);box-shadow:0 10px 22px rgba(58,42,26,.14),inset 0 1px 0 rgba(255,255,255,.28);padding:0 16px;font-weight:900;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap}
.room-settings-btn{
  width:38px;
  height:38px;
  border-radius:999px;
  border:1px solid rgba(100,76,55,.14);
  background:rgba(255,252,244,.78);
  color:#6f5538;
  box-shadow:0 8px 18px rgba(58,42,26,.09),inset 0 1px 0 rgba(255,255,255,.72);
  display:grid;
  place-items:center;
  cursor:pointer;
  font-size:17px;
  line-height:1;
}
.room-settings-btn:hover,.room-settings-btn:focus{
  outline:0;
  border-color:rgba(212,178,90,.46);
  background:#fff8eb;
}
.room-controls{position:absolute;right:14px;top:14px;z-index:14;display:flex;gap:5px;padding:4px;border-radius:999px;background:rgba(255,252,244,.68);border:1px solid rgba(100,76,55,.12);box-shadow:0 10px 22px rgba(58,42,26,.09);backdrop-filter:blur(8px);user-select:none}
.room-controls button{min-width:34px;height:28px;border:0;border-radius:999px;background:rgba(255,255,255,.58);font-weight:900;cursor:pointer;color:#4b4035;user-select:none;-webkit-user-select:none}.room-controls button:hover{background:#fff8eb}
.thought-room-footer{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  margin-top:10px;
}
.room-bottom-controls{
  display:contents;
}
.room-setting-select{
  height:36px;
  width:178px;
  max-width:178px;
  border:1px solid rgba(100,76,55,.12);
  border-radius:999px;
  background:rgba(255,255,255,.58);
  box-shadow:0 10px 22px rgba(58,42,26,.08),inset 0 1px 0 rgba(255,255,255,.62);
  color:#4b4035;
  font:inherit;
  font-size:12px;
  font-weight:850;
  padding:0 28px 0 11px;
  cursor:pointer;
}
.room-setting-select:focus{outline:2px solid rgba(127,167,184,.42);outline-offset:2px}
.room-layout-select{width:188px;max-width:188px}
.thought-mode-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.thought-mode-tabs .btn{width:100%;box-shadow:none}.thought-mode-tabs .btn.active{background:#fff8eb;border-color:rgba(199,121,89,.48);color:#5d3b2c}

.reflection-grid{
  align-items:start;
}
.reflection-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:14px;
}
.reflection-card-head h2{
  margin-bottom:0;
}
.reflection-today-card{
  background:linear-gradient(145deg,rgba(255,252,244,.66),rgba(246,239,226,.5));
}
.reflection-today-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.reflection-today-grid>div{
  border:1px solid rgba(100,76,55,.1);
  border-radius:18px;
  background:rgba(255,255,255,.3);
  padding:12px;
  min-width:0;
}
.reflection-today-grid>div>b,
.reflection-note-preview>b{
  display:block;
  color:rgba(46,39,31,.62);
  font-size:12px;
  letter-spacing:.04em;
  text-transform:uppercase;
  margin-bottom:8px;
}
.reflection-chip-list{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
.reflection-chip-list span{
  border:1px solid rgba(100,76,55,.1);
  border-radius:999px;
  background:rgba(255,252,244,.62);
  padding:7px 10px;
  color:rgba(46,39,31,.78);
  font-size:12px;
  font-weight:720;
  line-height:1.25;
}
.reflection-chip-list span b{
  margin-right:5px;
}
.reflection-chip-list.done span{
  background:rgba(152,163,141,.2);
  border-color:rgba(117,131,111,.18);
}
.reflection-note-preview{
  margin-top:12px;
  border-top:1px solid rgba(100,76,55,.1);
  padding-top:12px;
}
.reflection-note-preview p{
  color:var(--muted);
  line-height:1.45;
  margin:0;
}
.reflection-topic-tabs{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.reflection-topic-tabs .btn{
  box-shadow:none;
}
.reflection-topic-tabs .btn.active{
  background:#fff8eb;
  border-color:rgba(199,121,89,.45);
  color:#674431;
}
.reflection-topic-input{
  min-height:92px;
  border:1px solid rgba(100,76,55,.11);
  border-radius:20px;
  background:rgba(255,255,255,.32);
  padding:14px 15px;
  font-size:17px;
  resize:vertical;
}
.reflection-topic-input[readonly]{
  color:rgba(46,39,31,.75);
  cursor:default;
}
.reflection-character-section{
  overflow:hidden;
}
.reflection-selection-count{
  border:1px solid rgba(100,76,55,.11);
  border-radius:999px;
  background:rgba(255,255,255,.36);
  padding:8px 11px;
  color:rgba(46,39,31,.62);
  font-size:12px;
  font-weight:820;
  white-space:nowrap;
}
.reflection-character-row{
  display:grid;
  grid-template-columns:repeat(5,minmax(118px,1fr));
  gap:10px;
}
.reflection-character-card{
  border:1px solid rgba(100,76,55,.12);
  border-radius:22px;
  background:rgba(255,252,244,.5);
  min-height:174px;
  padding:14px 12px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  cursor:pointer;
  text-align:center;
  box-shadow:0 10px 22px rgba(58,42,26,.06),inset 0 1px 0 rgba(255,255,255,.62);
  transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease;
  position:relative;
  overflow:hidden;
}
.reflection-character-card:hover{
  transform:translateY(-2px);
  background:rgba(255,252,244,.68);
}
.reflection-character-card.active{
  border-color:rgba(199,121,89,.34);
  box-shadow:0 12px 28px rgba(58,42,26,.08),inset 0 0 0 2px rgba(255,255,255,.3);
}
.reflection-character-card.selected{
  background:linear-gradient(145deg,rgba(215,161,74,.34),rgba(255,248,235,.9));
  border-color:rgba(168,122,42,.68);
  box-shadow:0 16px 30px rgba(126,89,32,.14),inset 0 0 0 2px rgba(255,255,255,.52);
}
.reflection-character-card.selected:after{
  content:"\2713";
  position:absolute;
  top:10px;
  right:10px;
  width:24px;
  height:24px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:#8f7a3a;
  color:#fffaf0;
  font-size:14px;
  font-weight:900;
  box-shadow:0 6px 14px rgba(58,42,26,.16);
}
.reflection-character-card.selected .reflection-portrait{
  background:linear-gradient(145deg,#fff7df,rgba(215,161,74,.42));
  border-color:rgba(168,122,42,.46);
  color:#7f5b18;
}
.reflection-portrait{
  width:118px;
  height:92px;
  border-radius:20px;
  display:grid;
  place-items:center;
  background:linear-gradient(145deg,rgba(255,248,235,.94),rgba(216,194,157,.28));
  border:1px solid rgba(100,76,55,.13);
  color:#8e6a2b;
  font-family:Georgia,"Times New Roman",serif;
  font-size:24px;
  font-weight:520;
  overflow:hidden;
  box-shadow:0 8px 16px rgba(58,42,26,.08),inset 0 1px 0 rgba(255,255,255,.58);
}
.reflection-portrait img,
.reflection-detail-symbol img,
.reflection-voice-avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.reflection-character-card b{
  font-size:15px;
}
.reflection-character-card small{
  color:var(--muted);
  line-height:1.25;
  font-size:12px;
}
.reflection-character-detail{
  margin-top:13px;
  border:1px solid rgba(100,76,55,.1);
  border-radius:22px;
  background:rgba(255,255,255,.3);
  padding:14px;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:14px;
  align-items:start;
}
.reflection-detail-symbol{
  width:112px;
  height:90px;
  border-radius:20px;
  display:grid;
  place-items:center;
  border:1px solid rgba(100,76,55,.12);
  background:#fff8eb;
  color:#8e6a2b;
  font-family:Georgia,"Times New Roman",serif;
  font-size:22px;
  overflow:hidden;
  box-shadow:0 10px 20px rgba(58,42,26,.08);
}
.reflection-character-detail h3{
  font-size:18px;
  margin-bottom:5px;
}
.reflection-character-detail p{
  color:var(--muted);
  margin-bottom:11px;
  line-height:1.45;
}
.reflection-detail-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.reflection-detail-grid span{
  border-radius:16px;
  background:rgba(246,239,226,.56);
  padding:10px 11px;
  color:rgba(46,39,31,.72);
  line-height:1.35;
  font-size:13px;
}
.reflection-detail-grid b{
  display:block;
  color:rgba(46,39,31,.56);
  font-size:11px;
  letter-spacing:.04em;
  text-transform:uppercase;
  margin-bottom:4px;
}
.reflection-start-row{
  display:flex;
  justify-content:center;
}
.reflection-start-row .btn{
  min-width:min(100%,260px);
  min-height:46px;
}
.reflection-result-card{
  background:linear-gradient(145deg,rgba(255,248,235,.76),rgba(238,226,207,.48));
}
.reflection-result-card.empty-result{
  text-align:center;
  padding:28px 20px;
}
.reflection-result-card.empty-result p{
  color:var(--muted);
  max-width:560px;
  margin:0 auto;
  line-height:1.5;
}
.reflection-voice-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.reflection-voice-card{
  border:1px solid rgba(100,76,55,.11);
  border-radius:20px;
  background:rgba(255,252,244,.58);
  padding:13px;
  min-width:0;
}
.reflection-voice-card p{
  margin:10px 0 0;
  color:rgba(46,39,31,.72);
  line-height:1.42;
  font-size:13.5px;
}
.reflection-voice-head{
  display:flex;
  align-items:center;
  gap:10px;
}
.reflection-voice-avatar{
  width:54px;
  height:54px;
  border-radius:16px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  background:#fff8eb;
  border:1px solid rgba(100,76,55,.11);
  color:#8e6a2b;
  font-family:Georgia,"Times New Roman",serif;
  font-size:17px;
  overflow:hidden;
}
.reflection-voice-head b,
.reflection-voice-head small{
  display:block;
}
.reflection-voice-head small{
  color:var(--muted);
  font-size:12px;
  margin-top:2px;
}
.reflection-synthesis{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:12px;
}
.reflection-synthesis>div{
  border-radius:18px;
  background:rgba(152,163,141,.14);
  border:1px solid rgba(117,131,111,.15);
  padding:13px;
}
.reflection-synthesis b{
  display:block;
  margin-bottom:6px;
}
.reflection-synthesis p{
  color:var(--muted);
  line-height:1.42;
  margin:0;
  font-size:13.5px;
}
.reflection-psych-card{
  background:
    radial-gradient(circle at 8% 18%,rgba(215,161,74,.22),transparent 30%),
    linear-gradient(145deg,rgba(255,248,235,.84),rgba(226,212,189,.52));
  border-color:rgba(168,122,42,.2);
  overflow:hidden;
}
.reflection-psych-main{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:18px;
  align-items:center;
}
.reflection-psych-mark{
  width:94px;
  height:94px;
  border-radius:32px;
  display:grid;
  place-items:center;
  background:linear-gradient(145deg,rgba(255,252,244,.92),rgba(216,194,157,.45));
  border:1px solid rgba(168,122,42,.2);
  box-shadow:0 18px 34px rgba(58,42,26,.1),inset 0 1px 0 rgba(255,255,255,.68);
  color:#8e6a2b;
  font-family:Georgia,"Times New Roman",serif;
  font-size:42px;
}
.reflection-psych-copy h2{
  margin-bottom:8px;
}
.reflection-psych-copy p{
  color:rgba(46,39,31,.72);
  line-height:1.5;
  margin:0;
  max-width:760px;
}
.reflection-psych-points{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:13px;
}
.reflection-psych-points span{
  border:1px solid rgba(168,122,42,.16);
  border-radius:999px;
  background:rgba(255,252,244,.52);
  color:rgba(46,39,31,.68);
  font-size:12px;
  font-weight:760;
  padding:8px 11px;
}
.reflection-psych-summary{
  margin-top:16px;
  border:1px solid rgba(100,76,55,.1);
  border-radius:20px;
  background:rgba(255,252,244,.48);
  padding:13px;
}
.reflection-psych-summary b{
  display:block;
  margin-bottom:8px;
}
.reflection-psych-summary pre{
  margin:0;
  white-space:pre-wrap;
  word-break:break-word;
  color:rgba(46,39,31,.72);
  font:600 13px/1.5 Inter,ui-sans-serif,system-ui,sans-serif;
}
.reflection-psych-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:10px;
  margin-top:16px;
}
.reflection-history-card .thought-list{
  max-height:360px;
  overflow:auto;
  padding-right:2px;
}
.need-room{padding:0 18px}.need-label-row{position:absolute;left:18px;right:18px;z-index:3;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:7px}.need-label-row.top{top:16px}.need-label-row.bottom{bottom:18px}
.need-label-row span{border-radius:12px;padding:9px 4px;text-align:center;font-size:11px;line-height:1.05;font-weight:850;background:rgba(255,255,255,.42);border:1px solid rgba(100,76,55,.1)}.need-label-row.top span{background:rgba(138,164,174,.2)}.need-label-row.bottom span{background:rgba(199,121,89,.14)}
.need-midline{position:absolute;left:26px;right:26px;top:50%;border-top:1px dashed rgba(100,76,55,.22)}
.need-point{position:absolute;z-index:4;width:var(--size);height:var(--size);min-width:0;min-height:0;padding:0;border-radius:52% 48% 46% 54%/50% 44% 56% 50%;border:1px solid rgba(255,255,255,.78);transform:translate(-50%,-50%);cursor:grab;box-shadow:0 12px 24px rgba(58,42,26,.16),inset 0 1px 0 rgba(255,255,255,.72);animation:needPointFloat 6.5s ease-in-out infinite alternate;animation-delay:var(--delay);touch-action:none}
.need-point.need-enter{animation:needPointArrive .72s cubic-bezier(.2,.82,.18,1) both,needPointFloat 6.5s ease-in-out infinite alternate;animation-delay:var(--delay),calc(var(--delay) + .72s)}
.need-cluster{position:absolute;z-index:5;width:var(--size);height:var(--size);border-radius:45% 55% 50% 50%/52% 45% 55% 48%;border:1px solid rgba(255,255,255,.82);transform:translate(-50%,-50%) scale(.7);opacity:0;cursor:pointer;box-shadow:0 16px 28px rgba(58,42,26,.18),inset 0 1px 0 rgba(255,255,255,.75);animation:needClusterAppear .42s cubic-bezier(.2,.82,.18,1) forwards,thoughtFloat 7.2s ease-in-out infinite alternate;animation-delay:var(--delay),calc(var(--delay) + .42s);display:grid;place-items:center;color:rgba(46,39,31,.76);font-weight:900;font-size:13px;touch-action:none}
.need-cluster span{pointer-events:none}
.need-positive{background:radial-gradient(circle at 35% 30%,#ffffff,rgba(138,164,174,.86))}.need-negative{background:radial-gradient(circle at 35% 30%,#fff5ed,rgba(199,121,89,.86))}
@keyframes needPointArrive{0%{opacity:0;transform:translate(-50%,-50%) translate(var(--from-x),var(--from-y)) scale(.45)}65%{opacity:1}100%{opacity:1;transform:translate(-50%,-50%) translate(0,0) scale(1)}}
@keyframes needPointFloat{from{translate:0 0;rotate:0deg}to{translate:.08px .08px;rotate:.04deg}}
@keyframes needClusterAppear{0%{opacity:0;transform:translate(-50%,-50%) scale(.65)}100%{opacity:1;transform:translate(-50%,-50%) scale(1)}}
.room-empty{position:absolute;left:50%;top:64%;transform:translate(-50%,-50%);color:var(--muted);font-weight:760}
.topic-summary-grid,.need-summary-table{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.summary-row{width:100%;display:flex;justify-content:space-between;gap:10px;border:1px solid rgba(100,76,55,.1);border-radius:13px;background:rgba(255,255,255,.34);padding:9px 10px;text-align:left;cursor:pointer}.summary-row span{color:var(--muted);font-size:12px}
.collect-summary-list{display:grid;gap:14px}
.collect-summary-group{
  border:1px solid rgba(100,76,55,.1);
  border-radius:18px;
  background:rgba(255,252,244,.36);
  overflow:hidden;
}
.collect-summary-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 13px;
  background:rgba(255,255,255,.34);
  border-bottom:1px solid rgba(100,76,55,.08);
}
.collect-summary-head b{font-size:13px;color:#3e342a}
.collect-summary-head span{
  min-width:26px;
  height:22px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:rgba(127,167,184,.18);
  color:#4b4035;
  font-size:12px;
  font-weight:850;
}
.collect-summary-rows{display:grid}
.collect-summary-row{
  width:100%;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  border:0;
  border-bottom:1px solid rgba(100,76,55,.07);
  background:transparent;
  padding:10px 13px;
  text-align:left;
  cursor:pointer;
}
.collect-summary-row:last-child{border-bottom:0}
.collect-summary-row:hover{background:rgba(255,255,255,.32)}
.collect-summary-main{display:grid;gap:3px;min-width:0}
.collect-summary-main b{
  color:#3e342a;
  font-size:13px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.collect-summary-main small{
  color:var(--muted);
  font-size:12px;
  line-height:1.25;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.collect-summary-tags{display:flex;gap:5px;justify-content:flex-end;max-width:260px;overflow:hidden}
.collect-summary-tags em{
  font-style:normal;
  white-space:nowrap;
  border-radius:999px;
  padding:4px 7px;
  background:rgba(117,131,111,.12);
  color:#5c5045;
  font-size:11px;
  font-weight:760;
}
.need-balance-list{display:grid;gap:12px}
.need-balance-row{
  border:1px solid rgba(100,76,55,.1);
  border-radius:18px;
  background:rgba(255,252,244,.38);
  padding:13px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.34);
}
.need-balance-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}
.need-balance-top b{color:#3e342a;font-size:14px}
.need-balance-top span{
  min-width:44px;
  text-align:center;
  border-radius:999px;
  padding:4px 8px;
  font-weight:850;
  font-size:12px;
  background:rgba(255,255,255,.45);
  color:#5c5045;
}
.need-balance-row.is-loaded .need-balance-top span{background:rgba(199,121,89,.16);color:#7a3f2b}
.need-balance-row.is-resourceful .need-balance-top span{background:rgba(127,167,184,.18);color:#2f6673}
.need-balance-bar{
  position:relative;
  height:18px;
  border-radius:999px;
  overflow:hidden;
  background:linear-gradient(90deg,rgba(199,121,89,.72) 0%,rgba(216,194,157,.52) 50%,rgba(127,167,184,.74) 100%);
  box-shadow:inset 0 1px 2px rgba(58,42,26,.12),0 1px 0 rgba(255,255,255,.5);
}
.need-balance-bar:before{
  content:"";
  position:absolute;
  left:50%;
  top:0;
  bottom:0;
  width:1px;
  background:rgba(255,252,244,.72);
}
.need-balance-marker{
  position:absolute;
  left:var(--marker);
  top:50%;
  width:16px;
  height:16px;
  border-radius:50%;
  transform:translate(-50%,-50%);
  background:#fff8eb;
  box-shadow:0 4px 10px rgba(58,42,26,.18),inset 0 0 0 4px rgba(74,64,52,.16);
}
.need-balance-copy{display:grid;gap:5px;margin-top:10px}
.need-balance-copy p{margin:0;color:var(--muted);line-height:1.38;font-size:13px}
.need-balance-copy strong{color:#4b4035}
.need-balance-thoughts{display:grid;gap:6px;margin-top:10px}
.archive-card{background:radial-gradient(circle at 12% 12%,rgba(127,167,184,.12),transparent 34%),rgba(255,252,244,.5)}
.archive-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.archive-calendar-head h2{margin:0;text-transform:capitalize}
.archive-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}
.archive-dow{min-height:30px;display:grid;place-items:center;color:var(--muted);font-size:12px;font-weight:850}
.archive-day{min-height:42px;border:1px solid rgba(100,76,55,.1);border-radius:14px;background:rgba(255,255,255,.34);color:#4b4035;cursor:pointer;position:relative;font-weight:820;transition:transform .14s ease,border-color .14s ease,background .14s ease,box-shadow .14s ease}
.archive-day:hover,.archive-day:focus-visible{transform:translateY(-1px);border-color:rgba(127,167,184,.5);background:rgba(127,167,184,.12);box-shadow:0 10px 24px rgba(58,42,26,.08);outline:none}
.archive-day.has{background:linear-gradient(to top,rgba(127,167,184,.18),rgba(255,255,255,.42));border-color:rgba(127,167,184,.22)}
.archive-day.productive{background:linear-gradient(to top,rgba(210,154,69,.2),rgba(255,255,255,.44));border-color:rgba(210,154,69,.28)}
.archive-day.active{outline:2px solid rgba(127,167,184,.76);outline-offset:2px;background:linear-gradient(to top,rgba(127,167,184,.26),rgba(255,255,255,.5));box-shadow:0 16px 28px rgba(58,42,26,.1)}
.archive-star{position:absolute;right:7px;top:4px;color:#d29a45;font-size:12px}
.archive-chartbox{height:320px;border:1px solid rgba(100,76,55,.09);border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.34),rgba(255,252,244,.26));padding:10px;overflow:hidden}
.archive-chartbox canvas{display:block;width:100%;height:100%}
.archive-toggles{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.archive-toggle{color:var(--metric);border-color:color-mix(in srgb,var(--metric) 30%,rgba(100,76,55,.12));box-shadow:none}
.archive-toggle.on{background:color-mix(in srgb,var(--metric) 18%,rgba(255,255,255,.48));border-color:color-mix(in srgb,var(--metric) 55%,rgba(100,76,55,.1));color:#3c332a}
.archive-logbook-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.archive-logbook-head h2{margin:0}
.date-badge{border:1px solid rgba(127,167,184,.28);background:rgba(127,167,184,.1);color:#4b4035;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:900}
.archive-log-lines{display:grid;gap:10px}
.archive-log-block{border:1px solid rgba(100,76,55,.09);border-radius:18px;background:rgba(255,255,255,.32);padding:13px}
.archive-log-block b{display:block;margin-bottom:8px}
.archive-log-block p{margin:0;color:var(--muted);line-height:1.45}
.archive-log-list{display:grid;gap:7px}
.archive-log-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border-radius:12px;background:rgba(117,131,111,.08);border:1px solid rgba(117,131,111,.13)}
.thought-input-strip{display:grid;grid-template-columns:240px 1fr;gap:16px;align-items:start}.thought-input-strip .soft-panel{min-height:0}.thought-input-strip textarea{min-height:92px;font-size:17px}
.vision-note{font-family:Georgia,"Times New Roman",serif;font-size:26px;line-height:1.25;color:#3e342a}
.today-thought-card{position:relative}
.today-room-stage{
  grid-column:1/-1;
}
.today-room-stage .thought-room{
  min-height:clamp(420px,54vh,580px);
  cursor:default;
  touch-action:pan-y;
}
.today-room-stage .room-thought,
.today-room-stage .need-point,
.today-room-stage .topic-hub,
.today-room-stage .goal-hub{
  cursor:pointer;
  touch-action:pan-y;
}
.today-compass-overlay{
  position:absolute;
  left:18px;
  bottom:18px;
  z-index:16;
  pointer-events:none;
}
.today-compass-overlay .today-compass-row{
  --compass-beam-width:74px;
  --compass-beam-height:40px;
  --compass-note-width:min(430px,calc(100vw - 220px));
  pointer-events:auto;
}
.today-compass-overlay .compass-symbol{
  width:58px;
  height:58px;
  flex-basis:58px;
}
.today-compass-overlay .lighthouse-icon{
  width:58px;
  height:58px;
  transform:translateY(11px) scale(1.12);
}
.today-compass-overlay .compass-question .vision-note{
  font-size:13px;
  min-height:var(--compass-beam-height);
  padding:10px 14px;
}
.today-compass-overlay .compass-card.compass-open .compass-question{
  max-width:min(520px,calc(100vw - 170px));
}
.today-compass-overlay .compass-card.compass-open .compass-beam{
  max-width:var(--compass-beam-width);
}
.today-compass-row{
  --compass-beam-width:92px;
  --compass-beam-height:46px;
  --compass-beam-gap:8px;
  --compass-radius:8px;
  --compass-note-width:min(570px,calc(100vw - 232px));
  --compass-shared-width:calc(var(--compass-beam-width) + var(--compass-beam-gap) + var(--compass-note-width));
  --compass-shared-bg:linear-gradient(90deg,rgba(255,252,244,.96) 0%,rgba(252,244,223,.88) 50%,rgba(248,232,190,.56) 84%,rgba(244,222,174,.42) 100%);
  --compass-border:rgba(202,166,94,.34);
  --compass-ease:cubic-bezier(.2,.82,.2,1);
  --compass-beam-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 104 46' preserveAspectRatio='none'%3E%3Cpath d='M7 23 Q7 20 12 19 L91 2 Q102 2 102 12 L102 34 Q102 44 91 44 L12 27 Q7 26 7 23 Z' fill='black'/%3E%3C/svg%3E");
  --compass-beam-border:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 104 46' preserveAspectRatio='none'%3E%3Cpath d='M7 23 Q7 20 12 19 L91 2 Q102 2 102 12 L102 34 Q102 44 91 44 L12 27 Q7 26 7 23 Z' fill='none' stroke='%23caa65e' stroke-opacity='.34' stroke-width='1'/%3E%3C/svg%3E");
  display:inline-flex;
  align-items:flex-start;
  gap:0;
  min-height:38px;
  margin:0;
  max-width:100%;
  cursor:pointer;
  user-select:none;
  -webkit-user-select:none;
}
.compass-symbol{
  position:relative;
  width:76px;
  height:76px;
  flex:0 0 76px;
  border-radius:999px;
  border:1px solid rgba(80,121,142,.24);
  background:linear-gradient(145deg,rgba(255,252,244,.82),rgba(138,164,174,.22));
  box-shadow:0 8px 18px rgba(58,42,26,.09),inset 0 1px 0 rgba(255,255,255,.72);
  cursor:pointer;
  display:grid;
  place-items:center;
  padding:0;
  overflow:hidden;
}
.lighthouse-icon{
  width:76px;
  height:76px;
  display:block;
  object-fit:contain;
  pointer-events:none;
  transform:translateY(15px) scale(1.12);
  transform-origin:center bottom;
}
.compass-beam{
  position:relative;
  width:var(--compass-beam-width);
  max-width:0;
  height:var(--compass-beam-height);
  flex:0 0 auto;
  margin:-6px var(--compass-beam-gap) 0 3px;
  opacity:0;
  transform:translateX(-10px) scaleX(.72);
  transform-origin:left center;
  pointer-events:none;
  background:var(--compass-shared-bg) left/var(--compass-shared-width) 100% no-repeat;
  -webkit-mask:var(--compass-beam-mask) center/100% 100% no-repeat;
  mask:var(--compass-beam-mask) center/100% 100% no-repeat;
  filter:drop-shadow(0 10px 16px rgba(202,166,94,.12));
  transition:max-width .48s var(--compass-ease),opacity .24s ease,transform .48s var(--compass-ease);
}
.compass-beam:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:var(--compass-beam-border) center/100% 100% no-repeat;
}
.compass-question{
  display:inline-flex;
  align-items:center;
  max-width:0;
  opacity:0;
  overflow:hidden;
  white-space:nowrap;
  transform:translateX(-12px);
  transform-origin:left center;
  border:0;
  padding:0;
  margin-top:-6px;
  margin-left:0;
  background:transparent;
  cursor:pointer;
  transition:max-width .48s var(--compass-ease),opacity .24s ease,transform .48s var(--compass-ease);
}
.compass-question .vision-note{
  margin:0;
  width:var(--compass-note-width);
  min-height:var(--compass-beam-height);
  display:flex;
  align-items:center;
  border-radius:var(--compass-radius);
  background:var(--compass-shared-bg) calc((var(--compass-beam-width) + var(--compass-beam-gap)) * -1) center/var(--compass-shared-width) 100% no-repeat,rgba(255,252,244,.9);
  border:1px solid var(--compass-border);
  color:rgba(46,39,31,.68);
  padding:13px 17px;
  font-size:15px;
  line-height:1.18;
  font-weight:780;
  box-shadow:0 12px 26px rgba(202,166,94,.1),inset 0 1px 0 rgba(255,255,255,.72);
}
.compass-card:hover .compass-symbol{border-color:rgba(80,121,142,.38);box-shadow:0 10px 20px rgba(58,42,26,.11)}
.compass-card.compass-hit .compass-symbol{animation:compassHit .82s cubic-bezier(.18,.9,.2,1);box-shadow:0 0 0 8px rgba(138,164,174,.16),0 14px 28px rgba(58,42,26,.12)}
.compass-card.compass-open .compass-question{
  max-width:min(760px,calc(100vw - 226px));
  opacity:1;
  transform:translateX(0);
}
.compass-card.compass-open .compass-beam{
  max-width:92px;
  opacity:1;
  transform:translateX(0) scaleX(1);
}
.compass-ghost{
  position:fixed;
  z-index:9999;
  pointer-events:none;
  padding:0;
  border:0;
  border-radius:20px;
  background:transparent;
  overflow:visible;
  transform-origin:center;
  animation:compassTransfer 1.15s cubic-bezier(.18,.86,.18,1) forwards;
  will-change:transform,opacity,filter;
}
.compass-ghost .vision-note{
  box-sizing:border-box;
  display:flex;
  align-items:center;
  width:100%;
  height:100%;
  margin:0;
  border-radius:20px;
  background:
    linear-gradient(145deg,rgba(255,252,244,.92),rgba(246,225,166,.38)),
    rgba(255,252,244,.68);
  border:1px solid rgba(202,166,94,.22);
  color:rgba(46,39,31,.68);
  padding:13px 17px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:15px;
  line-height:1.18;
  font-weight:780;
  box-shadow:0 16px 34px rgba(202,166,94,.16),inset 0 1px 0 rgba(255,255,255,.72);
}
.compass-ghost p{pointer-events:none;user-select:none}
@keyframes compassHit{
  0%{transform:scale(1)}
  18%{transform:scale(.93) rotate(-1deg)}
  42%{transform:scale(1.055) rotate(.65deg)}
  70%{transform:scale(.99) rotate(-.25deg)}
  100%{transform:scale(1)}
}
@keyframes compassTransfer{
  0%{opacity:.94;transform:translate3d(0,0,0) scale(1)}
  16%{opacity:1;transform:translate3d(0,0,0) scale(.92) rotate(-1deg)}
  58%{opacity:.62;transform:translate3d(calc(var(--fly-x) * .72),calc(var(--fly-y) * .72),0) scale(.48) rotate(1.4deg);filter:blur(.1px)}
  100%{opacity:0;transform:translate3d(var(--fly-x),var(--fly-y),0) scale(.14) rotate(3deg);filter:blur(1.2px)}
}
@keyframes roomOrbIdle{
  0%{transform:translate(-50%,-50%) translateY(0) rotate(-.5deg)}
  100%{transform:translate(-50%,-50%) translateY(-5px) rotate(.6deg)}
}
@keyframes sentenceSoftIn{
  from{opacity:0;transform:translateY(4px);filter:blur(.6px)}
  to{opacity:1;transform:translateY(0);filter:blur(0)}
}
@keyframes mobileDepthPulse{
  0%,100%{transform:scale(1);filter:brightness(1)}
  46%{transform:scale(1.08);filter:brightness(1.28)}
}
@keyframes mobileDepthRingPulse{
  0%,100%{transform:translate(-50%,-50%) scale(1);filter:brightness(1)}
  46%{transform:translate(-50%,-50%) scale(1.08);filter:brightness(1.28)}
}
@property --mana-angle{
  syntax:"<angle>";
  inherits:true;
  initial-value:0deg;
}
.mana-dock{
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  z-index:34;
  display:grid;
  justify-items:center;
  pointer-events:none;
}
.mana-dock-panel{
  position:relative;
  width:min(720px,calc(100vw - 40px));
  transform:translateY(calc(100% - 10px));
  transition:transform .34s cubic-bezier(.18,.82,.2,1);
  pointer-events:none;
}
.mana-dock.open .mana-dock-panel{
  transform:translateY(0);
}
.mana-orb-button{
  position:absolute;
  left:50%;
  top:-45px;
  width:94px;
  height:47px;
  display:grid;
  place-items:end center;
  padding:0;
  border:0;
  border-radius:94px 94px 0 0;
  background:conic-gradient(from 270deg at 50% 100%,rgba(91,145,170,.72) 0 var(--mana-angle),rgba(83,126,148,.13) var(--mana-angle) 180deg,transparent 180deg 360deg);
  cursor:pointer;
  pointer-events:auto;
  filter:drop-shadow(0 -3px 8px rgba(44,82,88,.11));
  transform:translateX(-50%);
  transition:filter .22s ease;
  overflow:hidden;
}
.mana-orb-button:hover,.mana-orb-button:focus-visible{
  filter:drop-shadow(0 -4px 10px rgba(44,82,88,.14));
}
.mana-orb{
  position:absolute;
  left:50%;
  top:5px;
  width:82px;
  height:82px;
  display:block;
  border-radius:50%;
  background:
    radial-gradient(circle at 38% 25%,rgba(255,250,216,.72),transparent 22%),
    radial-gradient(circle at 58% 66%,rgba(174,113,31,.22),transparent 44%),
    linear-gradient(145deg,#efd276 0%,#d5a64c 58%,#b98432 100%);
  border:1.5px solid rgba(201,157,66,.48);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.48),inset 0 -12px 20px rgba(122,78,24,.16);
  transform:translateX(-50%);
}
.mana-dock.depth-gain .mana-orb-button{
  animation:manaRingReward 1.22s cubic-bezier(.18,.78,.2,1) both;
  filter:drop-shadow(0 -8px 22px rgba(53,174,190,.23));
}
.mana-dock.depth-gain .mana-orb{
  animation:manaOrbReward 1.22s ease both;
}
.mana-dock.depth-gain .mana-percent{
  animation:manaDepthNumberReward .86s ease both;
}
.depth-particle-canvas{
  position:fixed;
  inset:0;
  z-index:2147482500;
  pointer-events:none;
  width:100vw;
  height:100vh;
}
@keyframes manaRingReward{
  0%,100%{transform:translateX(-50%) scale(1)}
  42%{transform:translateX(-50%) scale(1.085,1.12)}
  70%{transform:translateX(-50%) scale(1.025)}
}
@keyframes manaOrbReward{
  0%,100%{transform:translateX(-50%) scale(1);filter:brightness(1);box-shadow:inset 0 1px 0 rgba(255,255,255,.48),inset 0 -12px 20px rgba(122,78,24,.16)}
  46%{transform:translateX(-50%) scale(1.045);filter:brightness(1.2) saturate(1.06);box-shadow:0 -4px 24px rgba(255,225,135,.38),inset 0 1px 0 rgba(255,255,255,.82),inset 0 -9px 18px rgba(122,78,24,.11)}
}
@keyframes manaDepthNumberReward{
  0%{opacity:.5;transform:translateX(-50%) translateY(3px) scale(.9)}
  48%{opacity:1;transform:translateX(-50%) translateY(-2px) scale(1.12)}
  100%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}
}
@media(prefers-reduced-motion:reduce){
  .mana-orb-button{transition:none}
  .mana-dock.depth-gain:not(.force-motion) .mana-orb-button,
  .mana-dock.depth-gain:not(.force-motion) .mana-orb,
  .mana-dock.depth-gain:not(.force-motion) .mana-percent{animation:none}
}
.mana-percent{
  position:absolute;
  left:50%;
  bottom:5px;
  transform:translateX(-50%);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:0;
  width:42px;
  min-width:42px;
  color:#3b2d1d;
  line-height:1;
  text-shadow:0 1px 0 rgba(255,246,209,.6);
  white-space:nowrap;
}
.mana-percent b{
  display:block;
  font-size:12px;
  font-weight:740;
  letter-spacing:.01em;
}
.mana-percent small{
  display:block;
  margin-top:1px;
  color:rgba(59,45,29,.72);
  font-size:8px;
  font-weight:680;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.mana-info-sheet{
  width:100%;
  min-height:142px;
  padding:22px 18px 18px;
  border:1px solid rgba(67,130,137,.18);
  border-radius:20px 20px 0 0;
  background:linear-gradient(145deg,rgba(248,252,248,.985),rgba(225,239,236,.975));
  box-shadow:
    0 -7px 16px -11px rgba(34,79,86,.38),
    inset 0 1px 0 rgba(255,255,255,.78),
    inset 0 -1px 0 rgba(55,111,116,.055);
  backdrop-filter:blur(5px) saturate(1.03);
  pointer-events:auto;
}
.mana-dock.open .mana-info-sheet{
  pointer-events:auto;
}
.mana-info-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:6px;
}
.mana-info-head span{
  color:#5c8798;
  font-size:11px;
  font-weight:780;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.mana-info-close{
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border:1px solid rgba(100,76,55,.12);
  border-radius:999px;
  background:rgba(255,252,244,.52);
  color:#6b5d50;
  cursor:pointer;
}
.mana-info-sheet h2{
  margin:0 0 7px;
  color:#302820;
  font-family:Georgia,"Times New Roman",serif;
  font-size:20px;
  font-weight:520;
  line-height:1.08;
}
.mana-info-sheet p{
  margin:0;
  color:#5d5146;
  font-size:14px;
  line-height:1.45;
}
.mana-info-sheet small{
  display:block;
  margin-top:10px;
  color:#7a6a5a;
  font-size:12px;
  line-height:1.35;
}
#toast{
  position:fixed;
  z-index:2147483000;
  left:50%;
  bottom:88px;
  transform:translateX(-50%) translateY(20px);
  opacity:0;
  pointer-events:none;
  border-radius:999px;
  background:#3a3127;
  color:#fff;
  padding:10px 15px;
  box-shadow:0 18px 40px rgba(0,0,0,.2);
  transition:.22s ease;
}
#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
@media(max-width:900px){
  .topbar{height:auto;align-items:flex-start;flex-direction:column;gap:10px;padding:14px}
  .brand,.nav{width:100%}
  .brand{align-self:flex-start;justify-content:flex-start;width:max-content;max-width:calc(100% - 58px)}
  .settings-entry{position:absolute;right:14px;top:14px;width:42px;height:42px}
  .settings-gear{width:34px;height:34px}
  .nav{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:5px;
    overflow:visible;
  }
  .nav button{
    min-width:0;
    width:100%;
    padding:9px 6px;
    font-size:13px;
    text-align:center;
  }
  .area-shell{
    align-items:flex-start;
    border-radius:20px;
    flex-direction:column;
    gap:7px;
    margin:-2px 0 14px;
  }
  .area-title{padding-left:2px}
  .area-tabs{justify-content:flex-start;width:100%}
  main{padding:18px}
  .home-intro{grid-template-columns:1fr}
  .home-visual{min-height:300px;border-radius:28px}
  .hero{grid-template-columns:1fr}
  .settings-hero{grid-template-columns:1fr;align-items:start}
  .settings-login-badge{justify-self:start}
  .card,.span-4,.span-8{grid-column:1/-1}
  .thought-input-strip{grid-template-columns:1fr}
  .thought-mode-tabs{grid-template-columns:1fr 1fr}
  .animation-tuning-grid{grid-template-columns:1fr}
  .thought-room-toolbar{grid-template-columns:1fr;align-items:stretch}
  .thought-room-title{text-align:center}
  .room-toolbar-actions{justify-content:center}
  .thought-room{min-height:520px}
  .need-label-row{grid-template-columns:repeat(4,minmax(0,1fr))}
  .check-card-head{flex-direction:column;gap:8px}
  .checkin-sentence{max-width:100%;text-align:left}
  .topic-summary-grid,.need-summary-table{grid-template-columns:1fr}
  .action-plan-row{grid-template-columns:1fr;gap:8px}
  .step-list{columns:1}
  .action-step-tab{flex-basis:188px;min-width:188px;height:116px}
  .check-grid-wide{grid-template-columns:1fr}
  .goal-suggestions-head,.goal-suggestions-toolbar{align-items:stretch;flex-direction:column}
  .goal-suggestions-toolbar .button-row{display:grid;grid-template-columns:1fr}
  .selection-count{text-align:center}
  .modal-backdrop{padding:172px 18px 18px}
  .modal-panel{max-height:calc(100vh - 190px)}
  .thought-editor-meta{grid-template-columns:1fr}
}

@media(max-width:620px){
  html,body{width:100%;max-width:100%;min-height:100%;overflow-x:clip;background:#f8f1e5}
  body{min-width:0;padding:0}
  body:before,body:after{display:none}
  .app-frame{
    width:100%;
    min-width:100%;
    max-width:none;
    min-height:100dvh;
    margin:0;
    border:0;
    border-radius:0;
    background:linear-gradient(180deg,rgba(255,252,244,.96),rgba(246,239,226,.94));
    box-shadow:none;
    overflow:visible;
  }
  @supports(width:100dvw){.app-frame{width:100dvw;min-width:100dvw}}
  .app-frame:before{display:none}
  main{padding:12px 10px}
  body.focus-drop-no-scroll{height:100dvh;overflow:hidden;overscroll-behavior:none}
  body.focus-drop-no-scroll .app-frame{height:100dvh;min-height:100dvh;overflow:hidden}
  body.focus-drop-no-scroll main{height:calc(100dvh - 54px);overflow:hidden}
  body.focus-drop-no-scroll #view-today.active{height:100%;overflow:hidden}
  body.focus-drop-no-scroll .focus-flow-prototype{height:calc(100% - 66px);margin-bottom:0}
  body.focus-drop-no-scroll .focus-day-panel{height:100%}
  body.focus-drop-no-scroll .focus-drop-card{height:100%;min-height:0}
  .mana-dock-panel{width:100vw;transform:translateY(calc(100% + 2px))}
  .mana-orb-button{display:none}
  .mana-info-sheet{padding-bottom:calc(18px + env(safe-area-inset-bottom,0px))}
  #toast{bottom:calc(18px + env(safe-area-inset-bottom,0px))}
  .card{border-radius:22px;padding:16px}
  .topbar{
    display:grid;
    grid-template-columns:38px minmax(0,1fr) 38px;
    align-items:center;
    gap:5px;
    height:54px;
    padding:6px 8px;
    position:sticky;
    top:0;
    z-index:40;
    backdrop-filter:blur(12px) saturate(1.04);
    width:100%;
    margin:0;
  }
  .topbar .brand{
    position:relative;
    grid-column:1;
    align-self:center;
    justify-self:center;
    justify-content:center;
    width:38px;
    height:38px;
    min-height:38px;
    max-width:none;
    padding:2px;
    border:0;
    background:transparent;
    box-shadow:none;
  }
  .topbar .brand:before{
    content:"";
    position:absolute;
    z-index:2;
    left:50%;
    top:50%;
    width:38px;
    height:38px;
    border-radius:50%;
    background:conic-gradient(from 180deg,#4aaeb2 0 var(--depth-progress,0%),rgba(76,123,129,.14) var(--depth-progress,0%) 100%);
    transform:translate(-50%,-50%);
    pointer-events:none;
    -webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 0);
    mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 0);
  }
  .topbar .brand.depth-progress-gain:before{animation:mobileDepthRingPulse 1.1s ease both}
  .topbar .brand.depth-progress-gain .brand-mark{animation:mobileDepthPulse .82s ease both}
  .topbar .brand:hover,.topbar .brand:focus-visible{border:0;background:rgba(255,252,244,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.62)}
  .topbar .brand.active{border:0;background:transparent;box-shadow:none}
  .topbar .brand.active:after{display:none}
  .brand-mark{
    width:34px;
    height:34px;
    flex-basis:34px;
    border:1px solid rgba(89,82,72,.2);
    border-radius:50%;
    background:rgba(255,252,244,.34);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.58);
  }
  .brand-mark:before{width:20px;height:20px;border:1.25px solid rgba(74,70,63,.68);border-radius:50%;box-shadow:none}
  .brand-mark:after{width:5px;height:21px;border-radius:50% 50% 45% 45%;background:linear-gradient(180deg,#c9993e 0 48%,#66645e 49% 100%);box-shadow:none;clip-path:polygon(50% 0,100% 43%,62% 50%,100% 57%,50% 100%,0 57%,38% 50%,0 43%);transform:rotate(34deg)}
  .topbar .brand:hover .brand-mark,.topbar .brand:focus-visible .brand-mark{border-color:rgba(89,82,72,.28);box-shadow:inset 0 1px 0 rgba(255,255,255,.68);transform:none}
  .brand-label{display:none}
  .topbar .nav{grid-column:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;gap:2px;overflow:visible}
  .nav button{
    z-index:0;
    isolation:isolate;
    overflow:visible;
    min-height:38px;
    border-radius:12px;
    font-size:clamp(10px,2.82vw,11px);
    font-weight:740;
    line-height:1.08;
    padding:7px 2px;
    transition:color .18s ease,font-weight .18s ease;
  }
  .nav button::before{
    content:"";
    position:absolute;
    z-index:-1;
    inset:0 -6px -8px;
    border-radius:10px 10px 1px 1px;
    background:linear-gradient(180deg,#fff8eb 0%,#fff6e8 58%,#f4e5cf 100%);
    clip-path:polygon(6px 0,calc(100% - 6px) 0,100% 100%,0 100%);
    filter:drop-shadow(0 -1px 0 rgba(100,76,55,.13)) drop-shadow(0 3px 5px rgba(58,42,26,.08));
    opacity:0;
    pointer-events:none;
    transform:scaleY(.86);
    transform-origin:50% 0;
    transition:opacity .18s ease,transform .22s cubic-bezier(.2,.78,.2,1);
  }
  .nav button.active,.nav button.active:hover,.nav button.active:focus-visible{
    z-index:2;
    border-radius:10px 10px 0 0;
    background:transparent;
    box-shadow:none;
    color:#382f27;
    font-weight:800;
  }
  .nav button.active::before{opacity:1;transform:scaleY(1)}
  .nav button .nav-depth-seal{top:-5px;right:-4px;transform:scale(.76)}
  .topbar .settings-entry{
    position:relative;
    grid-column:3;
    right:auto;
    top:auto;
    justify-self:center;
    width:34px;
    height:34px;
    padding:4px;
    border:1px solid rgba(89,82,72,.2);
    background:rgba(255,252,244,.34);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.58);
  }
  .topbar .settings-entry:hover,.topbar .settings-entry:focus-visible,.topbar .settings-entry.active{border-color:rgba(89,82,72,.3);background:rgba(255,252,244,.52);box-shadow:inset 0 1px 0 rgba(255,255,255,.68);filter:none;transform:none}
  .topbar .settings-entry[data-auth-state="logged-in"]{background:rgba(255,252,244,.34)}
  .topbar .settings-entry:after{content:"";position:absolute;right:0;bottom:0;width:6px;height:6px;border:1.5px solid #f1e5d2;border-radius:50%;background:#c94335}
  .topbar .settings-entry[data-auth-state="logged-in"]:after{background:#57916a}
  .settings-gear{width:25px;height:25px;filter:none}
  .topbar .settings-gear-body{fill:none;stroke:#6b6861;stroke-width:1.08}
  .topbar .settings-gear-axis{fill:rgba(107,104,97,.12);stroke:#5b5954;stroke-width:.8}
  .topbar .brand.active .brand-mark{border-color:rgba(100,76,55,.16);background:#fff8eb;box-shadow:inset 0 0 0 1px rgba(100,76,55,.08),0 4px 10px rgba(58,42,26,.05);filter:brightness(1.06)}
  .topbar .settings-entry.active,.topbar .settings-entry.active[data-auth-state]{border-color:rgba(100,76,55,.12);background:#fff8eb;box-shadow:inset 0 0 0 1px rgba(100,76,55,.1),0 5px 12px rgba(58,42,26,.06)}
  .topbar .settings-entry.active .settings-gear{filter:brightness(1.18)}
  .thought-section-tabs{width:100%;min-height:52px;margin-bottom:12px;border-radius:18px}
  .thought-section-tabs button{min-height:52px;font-size:12px;padding:7px 4px}
  .thought-section-mini-tabs{top:62px;height:38px;border-radius:14px}
  .thought-section-mini-tabs button{font-size:11px;padding:0 4px}
  .focus-day-mini-tabs{top:62px}
  .home-intro{gap:12px;margin-bottom:22px}
  .home-visual{
    display:grid;
    min-height:0;
    border-radius:24px;
  }
  .home-visual:after{
    display:none;
  }
  .home-visual img{
    grid-row:1;
    aspect-ratio:1.34;
    height:auto;
    object-fit:cover;
    object-position:center 42%;
  }
  .home-hero-copy{
    position:relative;
    grid-row:2;
    left:auto;
    right:auto;
    bottom:auto;
    z-index:2;
    max-width:none;
    margin-top:0;
    padding:19px 18px 21px;
    background:#fbf5e9;
    border-top:1px solid rgba(112,88,61,.08);
  }
  .home-hero-copy h1{
    position:relative;
    z-index:2;
    width:max-content;
    max-width:100%;
    margin:0 0 8px;
    padding:0;
    font-size:40px;
    line-height:1;
    text-shadow:none;
  }
  .home-hero-copy p{max-width:31em;color:#5b5045;font-size:14.5px;line-height:1.55;text-wrap:pretty}
  .home-depth-gateway{
    width:100%;
    margin:0;
    padding:20px 14px 18px;
    border-radius:22px;
    box-shadow:0 10px 24px rgba(49,73,71,.1),inset 0 1px 0 rgba(255,255,255,.8);
  }
  #view-home .home-intro{padding-bottom:78px}
  .home-welcome-copy{width:100%;margin:10px auto 0;padding:18px 14px 5px;text-align:left;justify-items:start}
  .home-welcome-copy p{margin-top:11px;font-size:15px;line-height:1.58;text-wrap:pretty}
  .home-welcome-copy .home-welcome-lead{margin:13px 0 7px;font-size:22px;line-height:1.28;text-wrap:balance}
  .home-welcome-copy .home-welcome-compass{margin-top:20px}
  .home-welcome-copy .home-welcome-compass strong{display:block;margin-bottom:3px;font-size:14px;line-height:1.35;letter-spacing:.005em}
  .home-welcome-copy>i{justify-self:center;margin-top:19px}
  .home-compass-card{width:100%;margin:14px 0 0;padding:24px 14px 54px;border-radius:22px}
  .home-compass-card:before{inset:12px 12px 20px;border-radius:16px}
  .home-compass-depth-seeds{bottom:10px}
  .focus-card-depth-seed[data-focus-depth-seed="energy"]{left:50%;right:auto;bottom:86px;transform:translateX(-50%)}
  .focus-card-depth-seed[data-focus-depth-seed="feeling"]{position:relative;left:auto;right:auto;bottom:auto;transform:none}
  .home-compass-instrument{width:min(310px,calc(100% - 8px));margin:0 auto}
  .home-compass-caption{top:17%;font-size:9px}
  .home-compass-calibrate{min-width:min(190px,72%);min-height:40px;padding:8px 13px;font-size:11px}
  .home-compass-divider{margin:20px auto 17px}
  .home-compass-stats{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:17px;border-top:1px solid rgba(36,34,31,.08);border-bottom:1px solid rgba(36,34,31,.08)}
  .home-compass-stat{min-height:55px;padding:10px 8px;border-left:1px solid rgba(36,34,31,.09);border-bottom:1px solid rgba(36,34,31,.08)}
  .home-compass-stat:nth-child(odd){border-left:0}
  .home-compass-stat:nth-child(n+3){border-bottom:0}
  .home-compass-stat b{font-size:18px}
  .home-compass-stat small{font-size:8px}
  .home-depth-reset-mini{top:10px;right:10px;width:29px;height:29px;font-size:16px}
  .home-depth-head{gap:6px}
  .home-depth-head h2{font-size:27px}
  .home-depth-head p{font-size:13px;line-height:1.45}
  .depth-seed-field{height:132px;margin-top:7px}
  .depth-seed-field:before{top:66px}
  .depth-seed-button{width:76px;height:92px;grid-template-rows:43px 18px;gap:6px}
  .depth-seed-field .depth-seed-diamond{width:34px;height:36px}
  .depth-seed-node.seed-1{transform:translateY(10px)}
  .depth-seed-node.seed-2{transform:translateY(-10px)}
  .depth-seed-node.seed-3{transform:translateY(9px)}
  .depth-seed-button small{font-size:10px}
  .depth-seed-collected-mark{top:27px;width:22px;height:22px;font-size:12px}
  .depth-seed-progress{grid-template-columns:auto minmax(90px,1fr);width:min(100%,300px)}
  .depth-seed-reveal{min-height:105px;margin-top:13px;padding-top:14px}
  .depth-seed-reveal strong{font-size:18px}
  .depth-seed-reveal p{font-size:13px;line-height:1.42}
  .home-focus-cta{min-height:52px;margin-top:6px;border-radius:16px;font-size:14px}
  .home-compass-question{min-height:0;margin-top:0;padding-top:0}
  .home-compass-question h3{margin:6px 0 14px;font-size:23px}
  .compass-selection-hint{margin:-5px 0 8px}
  .compass-answer-grid{grid-auto-rows:108px;gap:8px}
  .compass-answer{min-height:0;border-radius:13px;padding:10px 30px 10px 10px}
  .compass-answer b{font-size:13px}
  .compass-answer small{font-size:11px;line-height:1.3}
  .compass-confirm{margin-top:14px}
  .home-compass-summary{grid-template-columns:1fr;align-items:stretch;width:100%;margin:0;padding:0}
  .home-compass-summary h2{font-size:21px;line-height:1.12}
  .home-compass-summary p{font-size:12px}
  .compass-summary-axes{grid-template-columns:1fr;margin:13px 0 11px;padding:0;border-bottom:0}
  .compass-summary-axis,.compass-summary-axis:first-child{grid-template-columns:92px minmax(0,1fr);align-items:start;gap:8px;padding:8px 0;border:0;border-bottom:1px solid rgba(67,130,137,.09)}
  .compass-summary-axis small{padding-top:2px}
  .compass-summary-axis b{font-size:12px}
  .compass-recalibrate{align-self:flex-start;min-height:36px}
  .home-discovery{width:100%;margin:18px 0 0;padding:22px 8px 18px}
  .home-discovery>header{margin-bottom:16px;padding:0 8px}
  .home-discovery h2{font-size:26px;line-height:1.08}
  .discovery-path{grid-template-columns:1fr;gap:0;padding-left:2px}
  .discovery-path:before{left:26px;right:auto;top:28px;bottom:28px;width:1px;height:auto;background:linear-gradient(180deg,rgba(205,165,76,.42),rgba(66,145,148,.26),rgba(100,76,55,.11))}
  .discovery-station{grid-template-columns:52px minmax(0,1fr) auto;align-items:center;justify-items:start;gap:10px;min-height:82px;padding:8px 4px;text-align:left}
  .discovery-node{width:46px;height:46px}
  .discovery-area{font-size:8px}
  .discovery-copy small{font-size:11px}
  .depth-requirement{justify-self:end}
  .home-main-cta{display:flex;width:calc(100% - 32px);min-height:50px;margin:18px auto 8px}
  .settings-hero{border-radius:22px;padding:18px 16px}
  .settings-hero h1{font-size:34px}
  .settings-login-badge{white-space:normal}
  .room-head{align-items:flex-start;gap:10px}
  .room-head h2{font-size:24px}
  .thought-room-toolbar{gap:10px}
  .animation-tuning-bar{padding:9px 13px}
  .animation-tuning-body{padding:12px}
  .animation-tuning-actions{align-items:stretch;flex-direction:column}
  .animation-tuning-actions>div{justify-content:stretch}
  .animation-tuning-actions .btn{flex:1}
  .animation-tuning-head{align-items:stretch;flex-direction:column}
  .animation-tuning-row{grid-template-columns:1fr;gap:8px}
  .thought-head-tools{width:100%;justify-content:center}
  .thought-range-toggle{gap:2px;padding:3px}
  .thought-range-toggle button{min-width:30px;height:28px;padding:0 6px}
  .thought-head-tools .pill{padding:7px 9px;font-size:11px}
  .thought-room{min-height:clamp(560px,74vh,680px);border-radius:24px;box-shadow:inset 0 0 0 3px rgba(255,252,244,.34)}
  .today-room-stage .thought-room{min-height:clamp(300px,42vh,410px)}
  .today-compass-overlay{left:12px;bottom:12px}
  .today-compass-overlay .today-compass-row{
    --compass-beam-width:54px;
    --compass-beam-height:34px;
    --compass-beam-gap:5px;
    --compass-note-width:calc(100vw - 144px);
  }
  .today-compass-overlay .compass-symbol{
    width:48px;
    height:48px;
    flex-basis:48px;
  }
  .today-compass-overlay .lighthouse-icon{
    width:48px;
    height:48px;
    transform:translateY(9px) scale(1.12);
  }
  .today-compass-overlay .compass-question .vision-note{
    font-size:12px;
    padding:9px 11px;
  }
  .today-compass-overlay .compass-card.compass-open .compass-question{
    max-width:calc(100vw - 124px);
  }
  #view-today .hero{
    margin-bottom:10px;
  }
  #view-today .hero .subtitle{
    display:none;
  }
  #view-today .hero .pill{
    display:none;
  }
  #view-today .hero h1{
    font-size:34px;
    margin-bottom:0;
  }
  .focus-quick-capture{
    margin-bottom:10px;
  }
  .focus-quick-capture label{
    font-size:12px;
    padding-left:5px;
  }
  .focus-quick-input{
    grid-template-columns:1fr 38px;
    border-radius:19px;
    padding:7px 7px 7px 12px;
  }
  .focus-quick-input textarea{
    min-height:32px;
    font-size:14px;
  }
  .focus-quick-input:focus-within textarea{
    min-height:64px;
  }
  .focus-quick-save{
    width:38px;
    height:38px;
    font-size:22px;
  }
  .focus-day-tabs{
    width:100%;
    min-height:54px;
    border-radius:20px;
  }
  .focus-day-tabs button{
    flex-direction:column;
    gap:3px;
    min-height:54px;
    font-size:11px;
    padding:6px 4px;
  }
  .focus-day-tabs button.depth-locked{padding-right:28px}
  .focus-day-tabs button .nav-depth-seal{top:4px;right:3px;transform:scale(.86)}
  .focus-day-panel{
    gap:30px;
  }
  .focus-flow-divider{
    width:min(150px,62%);
    margin:-7px 0;
  }
  .focus-day-icon{
    width:27px;
    height:27px;
    flex-basis:27px;
  }
  .focus-day-icon-person:before{top:5px;width:7px;height:7px}
  .focus-day-icon-person:after{bottom:5px;width:15px;height:8px}
  .focus-day-icon-write svg{width:20px;height:20px;stroke-width:1.85}
  .focus-day-icon-flag:before{left:9px;top:6px;height:15px}
  .focus-day-icon-flag:after{left:11px;top:6px;width:10px;height:8px}
  .focus-day-icon-flag i:before{left:6px;bottom:5px;width:10px}
  .focus-day-mini-tabs{
    top:8px;
    height:38px;
    border-radius:15px;
  }
.focus-day-mini-tabs button{
  position:relative;
    font-size:11px;
    padding:0 5px;
  }
  .today-empty-focus-stage{
    min-height:clamp(300px,48svh,460px);
    border-radius:24px;
    margin-bottom:14px;
  }
  .focus-flow-prototype{
    margin-bottom:18px;
    max-width:100%;
  }
  .focus-flow-intro h2{
    font-size:19px;
  }
  .focus-flow-snap{
    gap:22px;
  }
  .focus-room-link{
    align-items:center;
    justify-content:flex-start;
    padding:9px 13px 9px 9px;
  }
  .focus-room-link b{
    font-size:13px;
  }
  .focus-room-link small{
    font-size:11px;
  }
  .focus-room-link-orb{
    width:38px;
    height:38px;
    flex-basis:38px;
  }
  .focus-flow-panel{
    min-height:calc(100svh - 190px);
    padding:22px 16px;
    border-radius:24px;
  }
  .focus-section-label{
    top:16px;
    left:18px;
  }
  .focus-flow-panel:before{
    inset:10px;
    border-radius:20px;
  }
  .focus-day-panel-thought{width:100%}
  .focus-drop-card{
    min-height:max(560px,calc(100svh - 138px));
    padding:18px 12px 22px;
    border-radius:24px;
  }
  .focus-drop-card:before{inset:10px;border-radius:19px}
  .focus-drop-composer{padding-bottom:27px}
  .focus-drop-ai-strip{width:calc(100% - 20px);min-height:32px;padding:6px 11px;font-size:11px}
  .focus-drop-input-shell{border-radius:20px}
  .focus-drop-input-shell textarea{min-height:100px;max-height:190px;padding:16px 60px 36px 15px;font-size:15px}
  .focus-drop-send{right:10px;bottom:10px;width:42px;height:42px}
  .focus-drop-voice{bottom:-27px;width:54px;height:54px}
  .focus-flow-copy h2{
    font-size:30px;
  }
  .focus-flow-copy p{
    font-size:14px;
  }
  .focus-energy-panel{
    --focus-energy-date-top:18px;
    --focus-energy-slider-top:55%;
    --focus-energy-title-gap:clamp(58px,12svh,88px);
    --focus-energy-title-top:calc(var(--focus-energy-slider-top) - var(--focus-energy-title-gap));
    --focus-energy-status-top-gap:30px;
    --focus-energy-status-bottom-gap:16px;
    min-height:max(560px,calc(100svh - 190px));
    padding-bottom:104px;
  }
  .focus-energy-panel .focus-flow-copy{
    top:var(--focus-energy-title-top);
  }
  .focus-energy-deepen{
    bottom:14px;
    min-height:52px;
    padding:4px 22px 2px;
  }
  .focus-feeling-grid{
    grid-template-columns:1fr;
    gap:10px;
  }
  .focus-feeling-reset{
    top:12px;
    right:12px;
    min-height:28px;
    padding:0 10px;
    font-size:10px;
  }
  .focus-feeling-row{
    border-radius:16px;
    padding:11px 12px 10px;
  }
  .focus-state-trend{
    width:100%;
    padding:14px 12px;
    border-radius:22px;
    gap:16px;
  }
  .focus-state-trend>.focus-section-label{
    top:14px;
    left:14px;
  }
  .focus-state-heatmap{
    --heat-dot-size:23px;
    gap:6px;
  }
  .focus-heat-day{
    min-height:0;
  }
  .focus-state-segments{
    gap:2px;
    min-height:76px;
    padding-top:6px;
    padding-bottom:7px;
  }
  .focus-segment-day{
    height:70px;
  }
  .focus-segment-bar{
    width:min(100%,10px);
  }
  .focus-segment-label{
    font-size:6.5px;
  }
  .focus-state-trend-detail{
    padding:6px;
    min-height:112px;
  }
  .focus-trend-detail-strip{
    grid-template-columns:auto auto minmax(0,1fr);
  }
  .focus-trend-detail-more{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .focus-trend-bar{
    grid-template-columns:66px minmax(0,1fr) 30px;
    gap:8px;
  }
  .focus-flow-card{
    width:min(74vw,220px);
  }
  .focus-swipe-lanes{
    inset:auto 18px 22px;
    font-size:11px;
  }
  #focusFlowThoughtText{
    min-height:120px;
    font-size:16px;
    border-radius:18px;
    padding:14px;
  }
  .today-thought-card{padding:12px}
  .check-card-wide{padding:14px 12px}
  .check-card-head{margin-bottom:11px}
  .check-grid-wide{gap:10px}
  .check-grid-wide .check-row{padding:10px 11px 9px;border-radius:18px}
  .today-ai-task-card{
    align-items:stretch;
    flex-direction:column;
    gap:12px;
    padding:13px;
  }
  .today-ai-task-card h2{font-size:17px}
  .today-ai-task-card .btn{width:100%}
  .today-composer{border-radius:22px;padding:10px 12px}
  .today-composer textarea{min-height:76px;font-size:17px}
  .thought-room:before{inset:10px;border-radius:20px}
  .room-controls{gap:4px;padding:4px;max-width:100%}
  .room-controls button{min-width:30px;height:29px;font-size:12px;padding:0 8px}
  .thought-room-footer{align-items:center;flex-direction:row;gap:7px}
  .room-ai-btn{min-height:34px;padding:0 14px;font-size:13px}
  .room-settings-btn{width:36px;height:36px;font-size:16px}
  .animation-tuning-top{align-items:stretch;flex-direction:column}
  .animation-tuning-selects .room-bottom-controls{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .room-setting-select{width:104px;max-width:104px;height:34px;font-size:11px;padding-left:8px;padding-right:22px}
  .room-layout-select{width:116px;max-width:116px}
  .animation-tuning-selects .room-setting-select,
  .animation-tuning-selects .room-layout-select{width:100%;max-width:none}
  .room-center{min-width:128px;min-height:64px;padding:11px 14px;font-size:14px}
  .topic-room.animation-linear .thought-room-orb,
  .goal-room.animation-linear .thought-room-orb,
  .topic-room.animation-orbit .thought-room-orb,
  .goal-room.animation-orbit .thought-room-orb{
    top:24px;
    left:50%;
    width:66px;
    height:66px;
    min-width:0;
    min-height:0;
    padding:9px;
    transform:translateX(-50%);
    font-size:10.5px;
    gap:1px;
    z-index:1;
    opacity:.62;
    pointer-events:none;
    animation:none;
    box-shadow:0 10px 22px rgba(170,115,51,.1),0 0 0 8px rgba(255,255,255,.1),inset 0 1px 0 rgba(255,255,255,.64),inset 0 -8px 14px rgba(112,72,35,.1);
  }
  .topic-room.animation-linear .thought-room-orb::before,
  .goal-room.animation-linear .thought-room-orb::before,
  .topic-room.animation-orbit .thought-room-orb::before,
  .goal-room.animation-orbit .thought-room-orb::before{
    transform:translateY(-3px);
    font-size:15px;
  }
  .room-thought{width:50px;height:50px;min-height:0;padding:5px}
  .room-thought b{font-size:7.4px;line-height:1;-webkit-line-clamp:3}
  .modal-backdrop{padding:170px 10px 10px;align-items:start;justify-items:center}
  .modal-panel{max-height:calc(100vh - 182px);border-radius:22px;padding:16px}
  .thought-editor-backdrop{
    padding:8px;
    align-items:end;
    justify-items:stretch;
  }
  .thought-editor-modal{
    width:100%;
    max-height:calc(100dvh - 16px);
    min-height:min(620px,calc(100dvh - 16px));
    border-radius:24px 24px 18px 18px;
    padding:14px;
    overflow:auto;
  }
  .thought-editor-modal .modal-head{
    gap:10px;
    margin-bottom:12px;
  }
  .thought-editor-modal .modal-head .subtitle{
    display:none;
  }
  .thought-editor-meta{
    gap:9px;
    margin-bottom:10px;
  }
  .thought-editor-meta input,
  .thought-editor-meta select,
  .thought-editor-text textarea{
    font-size:16px;
    padding:11px 12px;
  }
  .thought-editor-meta>div{
    min-height:48px;
    padding:8px 11px;
  }
  .thought-editor-text textarea{
    min-height:clamp(180px,36dvh,300px);
    resize:none;
  }
  .thought-editor-actions{
    position:sticky;
    bottom:-14px;
    z-index:2;
    background:linear-gradient(180deg,rgba(255,252,244,.78),rgba(246,239,226,.98) 36%);
    backdrop-filter:blur(8px);
    padding:12px 0 2px;
    margin-top:12px;
  }
  .modal-head{flex-direction:column}
  .modal-head h2{font-size:24px}
  .modal-close{width:100%}
  .modal-toolbar{align-items:stretch;flex-direction:column}
  .modal-toolbar .button-row{display:grid;grid-template-columns:1fr}
  .thought-editor-actions .button-row{display:grid;grid-template-columns:1fr 1fr}
  .thought-editor-text textarea{min-height:160px}
  .selection-count{text-align:center}
  .goal-suggestions-head h2{font-size:23px}
  .topic-hub{width:min(var(--hub-w,120px),96px);height:min(var(--hub-h,70px),62px);min-width:0;min-height:min(var(--hub-h,70px),62px);padding:8px 9px}
  .topic-hub b{font-size:10px;line-height:1.04;overflow-wrap:anywhere}
  .topic-hub span{font-size:10px}
  .topic-room .room-thought,.goal-room .room-thought{width:52px;height:52px;min-height:0;padding:5px}
  .topic-room .room-thought b,.goal-room .room-thought b{font-size:7.6px;line-height:1}
  .need-room{padding:0}
  .need-label-row{left:8px;right:8px;grid-template-columns:repeat(8,minmax(0,1fr));gap:3px}
  .need-label-row.top{top:12px}
  .need-label-row.bottom{bottom:12px}
  .need-label-row span{border-radius:9px;padding:6px 1px;font-size:8px;line-height:1;overflow-wrap:anywhere;hyphens:auto}
  .need-midline{left:14px;right:14px}
.need-point{box-shadow:0 8px 16px rgba(58,42,26,.14),inset 0 1px 0 rgba(255,255,255,.72)}
  .action-card-panel{
    padding:14px 0 16px;
    overflow:hidden;
  }
  .action-card-panel>.eyebrow,
  .action-card-panel>h2{
    padding-inline:14px;
  }
  .today-action-head{
    align-items:flex-start;
    padding-inline:14px;
    margin-bottom:10px;
  }
  .today-action-head h2{font-size:22px}
  .today-action-head p{font-size:12px}
  .today-progress-badge{
    min-width:62px;
    min-height:48px;
    border-radius:15px;
  }
  .action-card-deck{
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns:minmax(142px,154px);
    grid-template-columns:none;
    justify-content:start;
    gap:10px;
    overflow-x:auto;
    overscroll-behavior-x:contain;
    scroll-snap-type:x proximity;
    padding:2px 14px 10px;
    scrollbar-width:thin;
  }
  .pixel-action-card{scroll-snap-align:start}
  .pixel-card-face{padding:13px 12px}
  .pixel-card-front b{font-size:14px}
  .pixel-card-front small{font-size:11px}
  .pixel-card-front span{font-size:12px;line-height:1.24}
  .today-card-text{-webkit-line-clamp:4}
  .today-card-meta{gap:4px;margin-top:7px}
  .today-source-goal{display:none}
  .today-task-toggle{
    width:29px;
    height:29px;
    top:8px;
    right:8px;
  }
  .today-card-replace{
    width:29px;
    height:29px;
    top:8px;
    left:8px;
  }
  .bonus-lock-label{
    bottom:14px;
    font-size:10px;
  }
  .today-completion-card{
    padding:14px;
    gap:12px;
  }
  .today-completion-head{
    flex-direction:column;
    gap:8px;
  }
  .today-completion-head h2{font-size:22px}
  .today-completion-columns{
    grid-template-columns:1fr;
    gap:10px;
  }
  .today-note-field textarea{
    min-height:66px;
    font-size:14px;
  }
  .today-completion-actions{
    align-items:stretch;
    flex-direction:column;
  }
  .today-completion-actions .btn{
    width:100%;
  }
  .reflection-card-head{
    align-items:stretch;
    flex-direction:column;
    gap:10px;
  }
  .reflection-card-head .btn,
  .reflection-topic-tabs .btn{
    width:100%;
  }
  .reflection-today-grid,
  .reflection-detail-grid,
  .reflection-synthesis,
  .reflection-voice-grid{
    grid-template-columns:1fr;
  }
  .reflection-topic-tabs{
    display:grid;
    grid-template-columns:1fr 1fr;
    width:100%;
  }
  .reflection-topic-input{
    min-height:104px;
    font-size:16px;
  }
  .reflection-character-section{
    padding-inline:12px;
  }
  .reflection-character-row{
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns:156px;
    grid-template-columns:none;
    justify-content:start;
    overflow-x:auto;
    overscroll-behavior-x:contain;
    scroll-snap-type:x proximity;
    padding:2px 0 10px;
    scrollbar-width:thin;
  }
  .reflection-character-card{
    min-height:166px;
    scroll-snap-align:start;
  }
  .reflection-character-detail{
    grid-template-columns:1fr;
    text-align:left;
  }
  .reflection-detail-symbol{
    width:112px;
    height:90px;
  }
  .reflection-start-row .btn{
    width:100%;
  }
  .reflection-selection-count{
    width:max-content;
  }
  .reflection-psych-main{
    grid-template-columns:1fr;
    gap:12px;
  }
  .reflection-psych-mark{
    width:72px;
    height:72px;
    border-radius:24px;
    font-size:34px;
  }
  .reflection-psych-actions{
    align-items:stretch;
    flex-direction:column;
  }
  .reflection-psych-actions .btn{
    width:100%;
  }
  .action-goals-head{align-items:stretch;flex-direction:column;gap:8px}
  .action-goals-head h2{font-size:24px}
  .action-goal-card{border-radius:20px;padding:14px}
  .action-goal-top{align-items:stretch;flex-direction:column}
  .action-goal-actions{justify-content:space-between}
  .action-goal-top h2{font-size:20px}
  .action-step-slider{gap:9px;padding-bottom:14px}
  .action-step-tab{flex-basis:174px;min-width:174px;height:112px;padding-right:34px}
  .action-step-tab b{font-size:11.8px;line-height:1.16}
  .action-step-divider{min-height:106px}
  .action-editor-actions{align-items:stretch;flex-direction:column-reverse;gap:10px}
  .action-editor-confirm-actions{display:grid;grid-template-columns:1fr;gap:8px}
  .action-editor-danger-zone .btn{width:100%}
  .action-editor-fields{grid-template-columns:1fr;gap:10px}
  .action-editor-modal .thought-editor-text textarea,
  .action-editor-lines textarea{
    min-height:170px;
    max-height:170px;
    height:170px;
  }
  .thought-mode-tabs{grid-template-columns:1fr 1fr;gap:8px}
  .thought-mode-tabs .btn{padding:11px 8px;font-size:13px}
  .thought-sort-layout{margin-top:10px;padding:0}
  .thought-sort-head{padding:8px 4px 12px}
  .thought-sort-head h2{font-size:27px}
  .thought-sort-row{grid-template-columns:1fr;gap:8px;min-height:0;padding:14px 4px}
  .thought-sort-tags{justify-content:flex-start;max-width:none}
}
.focus-day-mini-tabs button.depth-locked{padding-right:34px}
.focus-day-mini-tabs button .nav-depth-seal{top:50%;right:4px;transform:translateY(-50%);box-shadow:none}

@media(max-width:420px){
  .thought-room{min-height:600px}
  .room-thought{width:48px;height:48px;min-height:0;padding:5px}
  .topic-room .room-thought,.goal-room .room-thought{width:50px;height:50px;min-height:0}
  .topic-hub{width:min(var(--hub-w,112px),88px);height:min(var(--hub-h,64px),58px);min-height:min(var(--hub-h,64px),58px)}
  .topic-hub b{font-size:9px}
  .need-label-row span{font-size:7.4px;padding:5px 1px}
}
