:root{
  --paper:#eee9df;
  --paper2:#f6f2e9;
  --ink:#1e2a26;
  --muted:#6d756f;
  --sage:#7d8f80;
  --sage-deep:#52685b;
  --line:rgba(42,61,52,.16);
  --glass:rgba(248,245,237,.70);
  --shadow:0 24px 70px rgba(38,47,42,.16);
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:#dcd7cc;color:var(--ink)}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
button,textarea{font:inherit}
button{color:inherit}
button:focus-visible,textarea:focus-visible{outline:2px solid rgba(68,93,78,.45);outline-offset:3px}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.app{min-height:100svh;position:relative;overflow:hidden}
.view{display:none;position:relative;min-height:100svh;width:100%;overflow:hidden;background:var(--paper)}
.view.active{display:flex;flex-direction:column}

/* HOME */
.home-view{isolation:isolate;background:#efeae0}
.home-art{position:absolute;inset:0;background:
  linear-gradient(to bottom,rgba(248,245,237,.24),rgba(238,233,223,.62)),
  url('bg-home-v5.jpg') center/cover no-repeat;z-index:-2}
.home-view:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(250,248,243,.25) 0%,rgba(245,241,233,.17) 38%,rgba(234,230,221,.48) 100%);z-index:-1}
.home-top,.inquiry-top,.info-top{display:flex;align-items:center;justify-content:space-between;padding:max(18px,env(safe-area-inset-top)) 22px 12px;min-height:64px;letter-spacing:.18em;font-size:11px;font-weight:650}
.brand-small{font-family:Georgia,"Times New Roman",serif;font-size:12px;letter-spacing:.22em}
.menu-button,.close-door,.question-top,.info-top button,.drawer button,.home-footer button,.inquiry-actions button{border:0;background:transparent;cursor:pointer}
.menu-button{font-size:22px;line-height:1;padding:8px}
.home-center{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:24px 30px 70px;max-width:560px;width:100%;margin:auto}
.home-mark{width:66px;height:66px;object-fit:contain;opacity:.88;margin-bottom:10px}
.brand-kicker{font-size:10px;letter-spacing:.34em;font-weight:700;margin-bottom:24px;color:#5f6d64}
.home-center h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(34px,9.4vw,52px);font-weight:400;line-height:1.06;margin:0 0 18px;letter-spacing:-.03em;max-width:470px}
.home-line{font-family:Georgia,"Times New Roman",serif;font-size:18px;line-height:1.48;margin:0 0 38px;max-width:390px;color:#34443b}
.open-button{min-width:220px;border:1px solid rgba(45,67,55,.22);background:rgba(111,137,118,.90);color:#fff;padding:16px 26px;border-radius:999px;font-weight:650;letter-spacing:.02em;box-shadow:0 13px 26px rgba(59,78,67,.18);cursor:pointer}
.open-button:active{transform:translateY(1px)}
.setup-note{font-size:12px;margin:14px 0 0;color:#795d4f;background:rgba(255,247,232,.72);padding:7px 11px;border-radius:999px}
.home-footer{display:flex;justify-content:center;gap:10px;padding:14px 18px max(25px,env(safe-area-inset-bottom));font-size:12px;color:#55645c}
.home-footer button{text-decoration:underline;text-decoration-color:rgba(55,72,63,.22);text-underline-offset:4px;padding:0}

/* MIND ILLUMINATOR: a single unchanged observation space */
.inquiry-view{isolation:isolate;background:#182420;color:#f2f0e8}
.inquiry-art{position:absolute;inset:0;background:
  linear-gradient(to bottom,rgba(11,23,20,.38),rgba(17,30,25,.28) 38%,rgba(11,19,17,.58)),
  url('bg-inquiry-v5.jpg') center/cover no-repeat;z-index:-2;transform:scale(1.02)}
.inquiry-view:after{content:"";position:absolute;inset:-3%;background:radial-gradient(ellipse at 50% 43%,rgba(247,232,196,.16) 0%,rgba(239,229,205,.08) 26%,transparent 56%);z-index:-1;pointer-events:none;opacity:.58;transform:scale(1.01);animation:ambientLakeLight 17s ease-in-out infinite}
@keyframes ambientLakeLight{0%,100%{opacity:.50;transform:scale(1.01)}27%{opacity:.68;transform:scale(1.025)}61%{opacity:.56;transform:scale(1.014)}82%{opacity:.74;transform:scale(1.03)}}
.inquiry-top{color:rgba(247,245,238,.82);padding-left:18px;padding-right:18px}
.inquiry-top>span{font-family:Georgia,"Times New Roman",serif;font-size:11px;letter-spacing:.27em}
.close-door,.question-top{width:42px;height:42px;border-radius:50%;color:#f4f1e9;background:rgba(23,38,32,.20);font-size:27px;display:grid;place-items:center;backdrop-filter:blur(7px)}
.question-top{font-size:17px;font-family:Georgia,"Times New Roman",serif}
.inquiry-main{flex:1;display:flex;flex-direction:column;align-items:center;min-height:0;padding:5vh 24px max(25px,env(safe-area-inset-bottom));}
.inquiry-stage{flex:1;width:min(100%,530px);display:flex;align-items:center;justify-content:center;text-align:center;padding:20px 10px;transition:opacity .42s ease,transform .42s ease}
.inquiry-stage.fading{opacity:0;transform:translateY(4px)}
.inquiry-stage p{font-family:Georgia,"Times New Roman",serif;font-size:clamp(27px,7.3vw,39px);font-weight:400;line-height:1.28;letter-spacing:-.018em;margin:0;text-wrap:balance;text-shadow:0 2px 18px rgba(0,0,0,.22)}
.inquiry-stage[data-kind="echo"] p{font-size:clamp(19px,5vw,26px);font-style:italic;color:rgba(245,242,233,.72);max-width:430px}
.inquiry-stage[data-kind="pointer"] p{font-size:clamp(34px,9vw,48px)}
.inquiry-stage[data-kind="safety"] p{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:17px;line-height:1.5;max-width:430px;background:rgba(26,38,33,.66);padding:18px 20px;border-radius:18px}
.inquiry-stage.empty p{display:none}
.inquiry-composer{width:min(100%,520px);display:flex;align-items:flex-end;gap:10px;background:rgba(240,237,226,.11);border:1px solid rgba(255,255,255,.16);border-radius:20px;padding:10px 10px 10px 16px;backdrop-filter:blur(15px);box-shadow:0 12px 30px rgba(0,0,0,.16)}
.inquiry-composer textarea{flex:1;resize:none;max-height:132px;min-height:30px;border:0;outline:0;background:transparent;color:#fbf8f0;line-height:1.45;padding:5px 0;font-size:16px}
.inquiry-composer textarea::placeholder{color:rgba(245,241,230,.56)}
.send-observation{width:36px;height:36px;min-width:36px;border:0;border-radius:50%;background:rgba(241,239,231,.90);color:#304238;font-size:20px;cursor:pointer;display:grid;place-items:center}
.send-observation:disabled{opacity:.4}
.inquiry-actions{display:flex;align-items:center;gap:10px;margin-top:17px;font-size:12px;color:rgba(247,244,235,.70)}
.inquiry-actions button{color:inherit;letter-spacing:.04em;padding:5px 2px}
.inquiry-status{height:18px;margin:7px 0 0;font-size:11px;letter-spacing:.08em;color:rgba(245,242,233,.48)}
.is-thinking .inquiry-stage{animation:breathe 2.6s ease-in-out infinite}
@keyframes breathe{0%,100%{opacity:.72}50%{opacity:1}}

/* INFO */
.info-view{isolation:isolate;background:#eee9df}
.info-art{position:absolute;inset:0;background:linear-gradient(rgba(246,243,236,.84),rgba(239,234,224,.89)),url('bg-info-v5.jpg') center/cover no-repeat;z-index:-1}
.info-top{position:sticky;top:0;background:rgba(242,238,229,.78);backdrop-filter:blur(12px);z-index:2;border-bottom:1px solid rgba(46,62,53,.08)}
.info-top button{font-size:31px;padding:0 10px;margin-left:-8px}
.info-top .top-spacer{width:40px}
.info-body{width:min(100%,620px);margin:0 auto;padding:42px 29px 80px;overflow:auto}
.info-body h2{font-family:Georgia,"Times New Roman",serif;font-size:37px;line-height:1.08;font-weight:400;margin:0 0 30px;letter-spacing:-.025em}
.info-body p{font-family:Georgia,"Times New Roman",serif;font-size:18px;line-height:1.65;margin:0 0 22px;color:#314039}
.info-body blockquote{font-family:Georgia,"Times New Roman",serif;font-size:26px;line-height:1.45;font-style:italic;margin:36px 0;padding:3px 0 3px 22px;border-left:2px solid rgba(74,95,81,.42);color:#31463a}

/* drawer */
.drawer-backdrop{position:fixed;inset:0;background:rgba(13,22,18,.28);z-index:30;backdrop-filter:blur(2px)}
.drawer{position:fixed;z-index:31;top:0;right:0;height:100svh;width:min(84vw,330px);background:#f3efe7;box-shadow:-18px 0 60px rgba(28,36,32,.18);padding:max(20px,env(safe-area-inset-top)) 22px 26px;transform:translateX(104%);transition:transform .32s ease;display:flex;flex-direction:column;gap:4px}
.drawer.open{transform:translateX(0)}
.drawer-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:18px;border-bottom:1px solid var(--line);font-family:Georgia,"Times New Roman",serif;font-size:12px;letter-spacing:.22em}
.drawer-head button{font-size:27px;padding:5px}
.drawer>button{text-align:left;padding:17px 4px;border-bottom:1px solid rgba(44,61,51,.08);font-family:Georgia,"Times New Roman",serif;font-size:18px}
.drawer-note{margin-top:auto;color:#6f776f;font-size:12px;line-height:1.5}

/* close confirmation */
.confirm-sheet[hidden]{display:none}
.confirm-sheet{position:fixed;inset:0;z-index:50;background:rgba(10,17,14,.45);display:flex;align-items:flex-end;justify-content:center;padding:18px 18px max(18px,env(safe-area-inset-bottom));backdrop-filter:blur(5px)}
.confirm-card{width:min(100%,470px);background:#f4f0e7;color:#26342d;border-radius:24px;padding:26px 24px 20px;box-shadow:var(--shadow)}
.confirm-card h2{font-family:Georgia,"Times New Roman",serif;font-size:29px;font-weight:400;margin:0 0 9px}
.confirm-card p{margin:0 0 22px;color:#667068}
.confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.confirm-actions button{border:1px solid rgba(49,66,56,.15);border-radius:14px;padding:13px;background:#ebe7de;cursor:pointer}
.confirm-actions .confirm-primary{background:#637b69;color:white}
.toast{position:fixed;left:50%;bottom:max(25px,env(safe-area-inset-bottom));z-index:70;transform:translate(-50%,18px);background:rgba(31,43,36,.94);color:white;padding:10px 15px;border-radius:999px;font-size:12px;opacity:0;pointer-events:none;transition:.24s;max-width:88vw;text-align:center}
.toast.show{opacity:1;transform:translate(-50%,0)}

@media (min-width:760px){
  body{background:#d7d2c7}
  .view{width:min(100%,540px);margin:0 auto;box-shadow:0 0 90px rgba(30,38,34,.17)}
  .drawer{right:calc((100vw - min(100vw,540px))/2)}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* V5 safety/support additions */
.safety-actions[hidden]{display:none}
.safety-actions{width:min(100%,520px);display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:0 0 14px}
.safety-actions a,.safety-actions button{border:1px solid rgba(255,255,255,.18);background:rgba(22,35,30,.48);color:#f5f1e9;text-decoration:none;border-radius:999px;padding:10px 14px;font-size:12px;backdrop-filter:blur(10px);cursor:pointer}
.inquiry-stage[data-kind="safety"]{flex:.88}
.inquiry-stage[data-kind="safety"] p{text-shadow:none}
.support-body strong{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.support-buttons{display:flex;gap:10px;margin:26px 0 30px}
.support-buttons a{display:inline-block;text-decoration:none;background:#637b69;color:#fff;border-radius:999px;padding:12px 18px;font-size:14px;font-weight:650}


/* V6 — observation posture and one-space inquiry refinement */
.home-posture{margin:20px auto 3px;padding:14px 18px 3px;width:min(100%,390px);border-top:1px solid rgba(55,73,62,.12);color:#68726a;font-family:Georgia,"Times New Roman",serif;font-size:15px;line-height:1.55;letter-spacing:.005em}
.home-posture p{margin:0 0 4px}
.inquiry-top-spacer{width:42px;height:42px;display:block}
.inquiry-posture{width:min(100%,470px);margin:-4px auto 20px;text-align:center;color:rgba(245,242,233,.58);font-family:Georgia,"Times New Roman",serif;font-size:13px;line-height:1.45;letter-spacing:.015em;text-wrap:balance;transition:opacity .45s ease}
.inquiry-stage[data-kind="safety"] + .inquiry-posture{opacity:0}

.home-line{margin-bottom:14px}
.home-posture{margin-top:0}

/* V16 — writing is optional and stays hidden until requested. */
.type-toggle{margin-top:8px;border:0;background:transparent;color:rgba(247,244,235,.62);font-family:Georgia,"Times New Roman",serif;font-size:13px;text-decoration:underline;text-decoration-color:rgba(255,255,255,.18);text-underline-offset:5px;cursor:pointer;padding:7px 10px}
.type-toggle:disabled{opacity:.35}
.write-toggle{min-height:34px}
.inquiry-composer[hidden]{display:none!important}
.inquiry-composer{margin-top:9px}
.inquiry-actions{margin-top:12px}
.inquiry-status{margin-top:5px}

@media (max-height:720px){
  .inquiry-main{padding-top:2vh}
  .inquiry-stage p{font-size:clamp(24px,6.4vw,34px)}
  .inquiry-posture{margin-bottom:12px}
}


/* V8 — subtle processing orb and intentional silence cue */
.inquiry-processing[hidden]{display:none!important}
.inquiry-processing{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;margin:-2px 0 16px;min-height:48px;color:rgba(247,244,235,.64)}
.thinking-orb{width:12px;height:12px;border-radius:50%;background:radial-gradient(circle at 35% 35%,rgba(255,255,255,.95) 0%,rgba(234,231,214,.92) 28%,rgba(181,198,184,.72) 62%,rgba(142,162,149,.28) 100%);box-shadow:0 0 0 5px rgba(241,239,230,.04),0 0 26px rgba(240,237,224,.12);animation:orbDrift 1.9s ease-in-out infinite}
.inquiry-processing p{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:12px;letter-spacing:.05em}
@keyframes orbDrift{0%,100%{transform:translateY(0) scale(.96);opacity:.7}50%{transform:translateY(-3px) scale(1);opacity:1}}
.inquiry-stage[data-kind="pointer"] p{max-width:470px;font-size:clamp(24px,6vw,31px);line-height:1.38}
.inquiry-stage p{white-space:pre-line}


/* V10/V16 — clear optional-writing guidance; the app decides whether a question helps. */
.inquiry-guide[hidden]{display:none!important}
.inquiry-guide{width:min(100%,470px);margin:-9px auto 13px;text-align:center;color:rgba(247,244,235,.74);font-family:Georgia,"Times New Roman",serif;line-height:1.45;text-wrap:balance}
.inquiry-guide p{margin:0}
.inquiry-guide p:first-child{font-size:16px;color:rgba(248,245,237,.88)}
.inquiry-guide p:last-child{font-size:12px;margin-top:5px;color:rgba(247,244,235,.54)}
.inquiry-actions button{opacity:.88}


/* V14+ — temporary development API cost meter. */
.cost-meter[hidden]{display:none!important}
.cost-meter{position:fixed;z-index:90;right:12px;bottom:max(12px,env(safe-area-inset-bottom));border:1px solid rgba(255,255,255,.18);border-radius:14px;background:rgba(17,27,23,.88);color:rgba(255,255,255,.88);padding:8px 11px;font-size:10px;line-height:1.35;letter-spacing:.02em;box-shadow:0 8px 24px rgba(0,0,0,.18);backdrop-filter:blur(12px);white-space:pre-line;text-align:left;max-width:88vw;cursor:pointer}
.cost-meter.expanded{font-size:11px;padding:11px 13px;min-width:235px}


/* V17 — writing is the clear primary doorway into inquiry while remaining optional. */
.write-toggle{
  width:min(100%,360px);
  min-height:52px;
  margin-top:10px;
  padding:14px 22px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:999px;
  background:rgba(238,236,225,.13);
  color:rgba(251,248,239,.96);
  font-family:Georgia,"Times New Roman",serif;
  font-size:17px;
  line-height:1.2;
  letter-spacing:.005em;
  text-decoration:none;
  box-shadow:0 10px 30px rgba(0,0,0,.14);
  backdrop-filter:blur(12px);
  transition:background .22s ease,border-color .22s ease,transform .22s ease;
}
.write-toggle:hover{background:rgba(238,236,225,.18);border-color:rgba(255,255,255,.34)}
.write-toggle:active{transform:translateY(1px)}
.inquiry-guide{margin:-7px auto 7px}
.inquiry-guide p:first-child{font-size:15px;color:rgba(248,245,237,.72)}


/* V23 — long-lived active inquiry + conscious new beginning */
.home-actions{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:2px;width:min(100%,330px)}
.home-actions .open-button{width:100%}
.home-actions.has-active .continue-button{background:rgba(111,137,118,.94)}
.home-actions.has-active .begin-again-button{background:rgba(248,245,237,.56);color:#415148;border-color:rgba(45,67,55,.18);box-shadow:none}
.active-inquiry-note{margin:3px 0 0;color:#69746c;font-family:Georgia,"Times New Roman",serif;font-size:12px;line-height:1.4}


/* V23 — automatic continuation; explicit Start fresh only */
.start-fresh-button{width:auto!important;min-width:78px!important;height:36px!important;border-radius:999px!important;padding:0 13px!important;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;font-size:11px!important;font-weight:650!important;letter-spacing:.02em!important;background:rgba(23,38,32,.20)!important;color:rgba(247,245,238,.88)!important}
.home-actions{margin-top:2px}

/* V28 — fixed observation reminder and in-app tuning log control. */
.observation-reminder{
  flex:0 0 auto;
  width:min(100%,520px);
  text-align:center;
  margin:clamp(6px,2.2vh,22px) auto 0;
  color:rgba(249,246,238,.90);
  text-shadow:0 2px 18px rgba(0,0,0,.20);
}
.observation-reminder p{
  margin:0;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(20px,5.7vw,28px);
  font-weight:400;
  line-height:1.2;
  letter-spacing:-.012em;
}
.observation-reminder small{
  display:block;
  margin-top:5px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:12px;
  line-height:1.35;
  letter-spacing:.035em;
  color:rgba(245,242,233,.56);
}
.inquiry-stage{padding-top:16px}
.inquiry-actions span{opacity:.42}
#copyTempLog{opacity:.72}
#copyTempLog:hover{opacity:1}
@media (max-height:720px){
  .observation-reminder{margin-top:2px}
  .observation-reminder p{font-size:20px}
  .observation-reminder small{font-size:11px;margin-top:3px}
  .inquiry-stage{padding-top:8px;padding-bottom:8px}
}

/* V40.5A-L — laptop / desktop composition.
   Mobile remains the primary compact experience; 900px+ becomes a full desktop window. */
@media (min-width:900px){
  html,body{min-height:100%;background:#cfc9bd}
  body{overflow:hidden}
  .app{min-height:100vh}
  .view{
    width:100%;
    min-height:100vh;
    margin:0;
    box-shadow:none;
  }

  /* Shared desktop top bars */
  .home-top,.inquiry-top,.info-top{
    width:calc(100% - 72px);
    max-width:1220px;
    margin-left:auto;
    margin-right:auto;
    padding-left:0;
    padding-right:0;
  }
  .home-top,.inquiry-top{padding-top:26px}
  .brand-small{font-size:13px;letter-spacing:.25em}
  .menu-button{width:44px;height:44px;border-radius:50%;background:rgba(247,244,236,.42);backdrop-filter:blur(10px)}

  /* Home becomes an intentional landing panel, not a stretched phone screen. */
  .home-view{background:#ddd7cb}
  .home-art{background-position:center 43%}
  .home-view:after{
    background:
      radial-gradient(ellipse at 50% 43%,rgba(250,248,242,.08) 0%,rgba(245,241,233,.14) 35%,rgba(225,220,211,.36) 100%),
      linear-gradient(to bottom,rgba(250,248,243,.12),rgba(234,229,220,.30));
  }
  .home-center{
    flex:0 1 auto;
    width:min(700px,calc(100% - 96px));
    max-width:700px;
    margin:auto;
    padding:58px 64px 54px;
    border:1px solid rgba(255,255,255,.42);
    border-radius:34px;
    background:linear-gradient(145deg,rgba(248,245,237,.62),rgba(241,237,228,.42));
    box-shadow:0 26px 80px rgba(43,52,47,.15);
    backdrop-filter:blur(16px) saturate(.92);
  }
  .home-center h1{
    max-width:610px;
    font-size:clamp(48px,4.2vw,64px);
    line-height:1.02;
    margin-bottom:22px;
    letter-spacing:-.04em;
  }
  .home-line{max-width:500px;font-size:20px;line-height:1.5;margin-bottom:16px}
  .home-posture{width:min(100%,500px);font-size:16px;line-height:1.62;padding-top:18px}
  .home-actions{width:min(100%,360px);margin-top:16px}
  .open-button{min-height:56px;font-size:16px;box-shadow:0 15px 34px rgba(59,78,67,.18)}
  .home-footer{padding-bottom:28px}

  /* Inquiry: one large quiet window in the landscape rather than a phone column. */
  .inquiry-view{background:#13201b}
  .inquiry-art{background-position:center 48%;transform:scale(1.008)}
  .inquiry-view:after{
    inset:0;
    background:
      radial-gradient(ellipse at 50% 44%,rgba(247,232,196,.16) 0%,rgba(239,229,205,.07) 31%,transparent 61%),
      linear-gradient(to right,rgba(6,14,11,.18),transparent 24%,transparent 76%,rgba(6,14,11,.18));
  }
  .inquiry-top{min-height:70px;color:rgba(247,245,238,.84)}
  .inquiry-top>span{font-size:12px;letter-spacing:.31em}
  .start-fresh-button{min-width:92px!important;height:40px!important;padding:0 16px!important;background:rgba(18,31,26,.32)!important;border:1px solid rgba(255,255,255,.10)!important;backdrop-filter:blur(10px)}
  .inquiry-top-spacer{width:92px}

  .inquiry-main{
    flex:1;
    width:min(920px,calc(100% - 96px));
    min-height:0;
    margin:10px auto 34px;
    padding:34px 56px 30px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:36px;
    background:linear-gradient(180deg,rgba(13,25,20,.28),rgba(10,20,17,.19));
    box-shadow:0 34px 90px rgba(0,0,0,.20);
    backdrop-filter:blur(9px) saturate(.94);
  }
  .observation-reminder{width:min(100%,720px);margin:0 auto 2px}
  .observation-reminder p{font-size:28px}
  .observation-reminder small{font-size:12px;letter-spacing:.055em;margin-top:6px}
  .inquiry-stage{
    width:min(100%,760px);
    min-height:180px;
    padding:26px 22px 20px;
  }
  .inquiry-stage p{
    font-size:clamp(35px,3vw,46px);
    line-height:1.25;
    max-width:740px;
  }
  .inquiry-stage[data-kind="echo"] p{font-size:clamp(23px,2vw,29px);max-width:650px}
  .inquiry-stage[data-kind="pointer"] p{font-size:clamp(30px,2.55vw,39px);max-width:710px;line-height:1.34}
  .inquiry-stage[data-kind="safety"] p{font-size:18px;max-width:650px;padding:22px 25px}
  .inquiry-guide{width:min(100%,650px);margin:-2px auto 10px}
  .inquiry-guide p:first-child{font-size:16px;line-height:1.5}
  .inquiry-guide p:last-child{font-size:13px}
  .inquiry-processing{margin:0 0 14px}
  .write-toggle{width:min(100%,430px);min-height:54px;font-size:17px;margin-top:8px}
  .inquiry-composer{width:min(100%,700px);border-radius:22px;padding:11px 11px 11px 18px}
  .inquiry-composer textarea{font-size:17px;max-height:165px}
  .send-observation{width:40px;height:40px;min-width:40px}
  .safety-actions{width:min(100%,700px)}
  .inquiry-actions{margin-top:15px;font-size:12px}
  .inquiry-status{margin-top:7px}

  /* Reading pages use desktop measure and a calm translucent sheet. */
  .info-view{overflow:auto}
  .info-top{
    max-width:1040px;
    top:0;
    padding-top:22px;
    background:rgba(242,238,229,.50);
    border-bottom-color:rgba(46,62,53,.06);
  }
  .info-body{
    width:min(820px,calc(100% - 96px));
    max-width:820px;
    margin:34px auto 64px;
    padding:60px 72px 72px;
    border:1px solid rgba(255,255,255,.48);
    border-radius:32px;
    background:rgba(246,242,234,.66);
    box-shadow:0 26px 70px rgba(45,53,49,.10);
    backdrop-filter:blur(14px);
    overflow:visible;
  }
  .info-body h2{font-size:46px;max-width:650px}
  .info-body p{font-size:19px;line-height:1.72}
  .info-body blockquote{font-size:29px;margin:42px 0;padding-left:26px}

  /* Desktop overlays */
  .drawer{
    top:18px;
    right:18px;
    height:calc(100vh - 36px);
    width:360px;
    border-radius:26px;
    padding:26px;
    box-shadow:-12px 18px 70px rgba(28,36,32,.22);
  }
  .confirm-sheet{align-items:center;padding:30px}
  .confirm-card{width:min(520px,calc(100% - 60px));padding:32px 30px 26px}
  .confirm-card h2{font-size:32px}
}

/* Common 13–14 inch laptop heights: keep the desktop window airy without forcing scroll. */
@media (min-width:900px) and (max-height:820px){
  .home-top,.inquiry-top{padding-top:18px;min-height:58px}
  .home-center{padding:38px 54px 36px}
  .home-center h1{font-size:clamp(43px,3.7vw,54px);margin-bottom:16px}
  .home-line{font-size:18px;margin-bottom:11px}
  .home-posture{padding-top:12px;font-size:14px;line-height:1.48}
  .home-actions{margin-top:10px}
  .open-button{min-height:50px;padding-top:13px;padding-bottom:13px}
  .home-footer{padding-bottom:18px}

  .inquiry-main{margin-top:4px;margin-bottom:20px;padding:22px 48px 20px;border-radius:30px}
  .observation-reminder{margin-top:0}
  .observation-reminder p{font-size:24px}
  .observation-reminder small{font-size:11px;margin-top:4px}
  .inquiry-stage{min-height:120px;padding:14px 20px 12px}
  .inquiry-stage p{font-size:clamp(30px,2.65vw,39px)}
  .inquiry-stage[data-kind="pointer"] p{font-size:clamp(27px,2.35vw,35px)}
  .inquiry-guide{margin:0 auto 6px}
  .inquiry-guide p:first-child{font-size:15px}
  .write-toggle{min-height:48px;margin-top:5px}
  .inquiry-composer{margin-top:7px}
  .inquiry-actions{margin-top:9px}
  .inquiry-status{height:13px;margin-top:3px}
}
