/* Browser adaptation: calm workspace, mobile navigation, no external assets. */
html{color-scheme:light}body{background:#f5f6f2;margin:0}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid #5e8b7e;outline-offset:3px}#gate{max-width:490px;margin:9vh auto 5vh;padding:38px 42px;background:#fff;border:1px solid #e1e7df;border-radius:18px;box-shadow:0 15px 70px #25483408}#gate h1{font-size:27px;letter-spacing:-1px;font-weight:500}#gate>p{line-height:1.7;color:#748176;font-size:12px}.web-brand{font:38px Georgia,serif;color:#315e52;margin-bottom:35px}.web-brand small{display:inline-block;font:9px Arial,sans-serif;letter-spacing:2px;border:1px solid #dfe6dc;border-radius:4px;padding:5px;margin-left:12px;vertical-align:middle}#gate label{font-size:13px}#gate input{min-height:44px}#gate button{font-size:12px}#gate #open-label{width:100%;padding:13px;background:#326b66;border:0;color:white}#gate #restore-vault,#gate #previous-backup{margin-top:15px;display:block;background:transparent;border:0;padding:0;color:#426f62;text-align:left}.web-local{border-top:1px solid #e1e7df;margin-top:25px;padding-top:20px}#therapy-flow{min-height:100vh}#therapy-flow .app-statusbar{position:sticky;bottom:0;z-index:3;background:#fafbf7}#web-conflict{padding:15px;background:#fff0dd;color:#924a21;font-size:13px}#web-help{max-width:620px;width:calc(100% - 40px);box-sizing:border-box;border:1px solid #dce4db;border-radius:15px;padding:30px;color:#304c42;font:14px/1.8 'Inter Variable',sans-serif}#web-help::backdrop{background:#193e3455;backdrop-filter:blur(3px)}#web-help-close{float:right;background:white;border:1px solid #dce4db;border-radius:7px;padding:7px 12px}#web-help h2{font-size:22px;clear:both;padding-top:20px}#therapy-flow #app-tools .desktop-toolbar{max-height:75vh;overflow:auto}#therapy-flow table{max-width:100%}#therapy-flow .saved,#therapy-flow .entry{overflow-wrap:anywhere}@media(max-width:800px){.language-bar{position:relative!important;justify-content:flex-end;padding:8px 15px!important;background:#f4f6f0}#therapy-flow header{height:auto!important;min-height:68px;padding:12px 16px!important;flex-wrap:wrap;padding-right:16px!important}#therapy-flow .shell{display:block!important}#therapy-flow .shell>aside{position:static!important;width:auto!important;padding:15px!important;border-right:0;border-bottom:1px solid #dce4db}#therapy-flow #people{display:flex;gap:8px;overflow:auto;max-height:130px}#therapy-flow #people .person{min-width:150px;flex:0 0 auto;width:auto}#therapy-flow #search{width:100%}#therapy-flow #view{display:flex!important;flex-direction:column;gap:12px!important}#therapy-flow #view>nav{position:static!important;display:flex!important;flex-direction:row!important;overflow-x:auto;flex-wrap:nowrap!important;max-width:100%;width:auto!important;padding:8px 0!important;margin:0!important;order:1}#therapy-flow #view>nav button{flex:0 0 auto;width:auto!important;white-space:nowrap;min-height:42px;padding:8px 12px!important}#therapy-flow .nav-profile{display:none}#therapy-flow #content{order:2;min-width:0;width:100%}#therapy-flow .profile-heading{order:0}#therapy-flow .overview-grid{display:block!important}#therapy-flow .overview-context{display:block!important}#therapy-flow main{padding:18px!important}#therapy-flow .box{padding:18px}#therapy-flow .two,#therapy-flow .cols,#therapy-flow .family-grid{grid-template-columns:1fr!important}#therapy-flow .app-statusbar{font-size:10px;flex-wrap:wrap;padding:10px 15px}#therapy-flow input,#therapy-flow textarea,#therapy-flow select{font-size:16px!important}#gate{margin:25px 15px;padding:28px 24px}.alpha-badge{font-size:10px!important}#therapy-flow nav .nav-icon{width:15px;height:15px}#web-help{padding:22px}}@media print{#web-help,.language-bar,#web-conflict{display:none!important}body{background:white}}
#therapy-flow #home-brand{font:26px Georgia,serif;padding:0;border:0;background:transparent;color:var(--ink)}#therapy-flow.global-screen .shell{display:block}#therapy-flow.global-screen .shell>aside{display:none}#therapy-flow.global-screen #view{max-width:1150px;padding:45px 35px;margin:auto}.home-intro{padding:30px 0 35px}.home-intro h1{font:44px/1.25 Georgia,serif;letter-spacing:-1.2px;color:#304c48;margin:15px 0}.home-intro em{font-weight:400;color:#718d7c}.home-intro p{color:#7c8d83;max-width:600px}.home-intro.compact h1{font-size:34px}.eyebrow{font-size:10px;letter-spacing:1.8px;color:#84958b}.home-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.home-card{text-align:left!important;position:relative;padding:28px!important;min-height:245px;border-radius:14px!important;box-shadow:0 4px 25px #31523e05;background:#fff!important}.home-card:hover{border-color:#8ba99b!important;background:#fafcf8!important}.card-number{font:italic 25px Georgia,serif;color:#a3b49f;display:block;margin-bottom:34px}.home-card h2{font-size:20px!important;margin-bottom:14px!important}.home-card p{font-size:12px;color:#839084;line-height:1.9}.card-arrow{position:absolute;right:24px;top:25px;font-size:23px;color:#9aac9a}.home-bottom{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:32px 0}.home-bottom p{font-size:12px;color:#8a9689}.settings-grid,.journey-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.settings-grid button{margin:15px 8px 0 0!important}.settings-grid p{font-size:13px;color:#7b8d80}.bin-card,.connection-title{display:flex;justify-content:space-between;align-items:center;gap:15px}.source-detail{padding:12px 0;border-bottom:1px solid #eaf0e8}.source-detail summary{font-size:13px;cursor:pointer}.source-detail summary small{margin-left:12px;color:#8b998b}.source-detail p{font-size:13px;line-height:1.8;padding:15px 0}.source-detail button{font-size:11px!important}.connection{padding:20px;margin:18px 0;background:#f5f8f2;border-radius:10px}.connection-title h3{margin:0!important}.connection-title button{font-size:10px!important}.source-picker{max-height:350px;overflow:auto;border:1px solid #e1e9de;padding:15px;border-radius:9px}.source-excerpt{display:block;font-size:11px;color:#82917f}.new-connection{padding-top:20px}.reflection-prompts p,.journey-item{padding:8px 0;font-size:13px}.money-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:24px 0}.money-card{padding:22px 18px;border:1px solid #e3e9e1;border-radius:12px;background:white;min-width:0}.money-card>span{font-size:11px;color:#758579;display:block}.money-card strong{font:clamp(22px,2.2vw,35px)/1.4 Georgia,serif;display:block;margin:12px 0;letter-spacing:-1px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.money-card small{font-size:9px;color:#95a08e}.money-card.credit{background:#eaf2e6;border-color:#d3e3cb;color:#426b49}.money-card.due{background:#faf3e9;border-color:#eadfcf;color:#886640}.finance-columns{display:grid;grid-template-columns:1.2fr 1fr;gap:20px}.date-filters{display:flex;gap:15px;max-width:470px}.date-filters .field{flex:1}.entry-pill{font-size:10px;padding:4px 9px;background:#f4eee5;border-radius:15px;white-space:nowrap}.entry-pill.payment{background:#e8f1e2;color:#55734c}.money-cell{font-family:Georgia,serif;font-size:17px;white-space:nowrap}.client-finance-title{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:15px}.balance-label{font-size:12px}.balance-label.credit{color:#4c7c52}.balance-label.due{color:#937143}#therapy-flow .local-mic{padding:3px 7px;font-size:14px;display:block;margin:4px 0 9px auto;background:transparent;border-color:transparent;line-height:1.3}#dictation-menu{position:fixed;z-index:1000;padding:5px;border:1px solid #d8e4d4;border-radius:9px;background:white;box-shadow:0 8px 35px #23453125}#dictation-menu button{background:white;border:0;padding:10px 18px;cursor:pointer;color:#345a49;font:14px Arial,sans-serif}#speech-dialog{width:calc(100% - 30px);max-width:560px;box-sizing:border-box;border:1px solid #dce5d9;border-radius:15px;padding:25px;color:#385242;font:14px/1.7 Arial,sans-serif}#speech-dialog::backdrop{background:#193c3955;backdrop-filter:blur(3px)}.speech-title{display:flex;justify-content:space-between;align-items:center}.speech-title h2{font-size:21px}#speech-dialog button{background:#edf3e8;border:1px solid #d5e1ce;border-radius:7px;padding:10px 15px;cursor:pointer}#speech-dialog textarea{box-sizing:border-box;width:100%;padding:12px;font:16px/1.6 Arial,sans-serif;border:1px solid #d5e1ce;border-radius:8px}#speech-description{font-size:12px;color:#7e907c}#speech-status{font-size:13px;color:#4d7664}#speech-review-label{display:block;margin:20px 0}#speech-cancel{font-size:23px;padding:0 10px!important}#therapy-flow .table-scroll{overflow:auto}#therapy-flow .table-scroll table{min-width:560px}
@media(max-width:1100px){.money-grid{grid-template-columns:repeat(2,1fr)}.home-cards{gap:12px}.home-card{padding:20px!important}}@media(max-width:700px){#therapy-flow.global-screen #view{padding:20px 8px}.home-intro h1{font-size:34px}.home-cards,.settings-grid,.journey-grid,.finance-columns{grid-template-columns:1fr}.home-card{min-height:185px}.card-number{margin-bottom:22px}.home-bottom,.client-finance-title{flex-direction:column;align-items:flex-start}.money-card{padding:18px 12px}.money-card strong{font-size:27px}.connection-title{align-items:flex-start;flex-direction:column}.bin-card{align-items:flex-start;flex-direction:column}.date-filters{gap:10px}}
@media print{.local-mic,#dictation-menu,#speech-dialog{display:none!important}}

/* Web 0.7.1: desktop panels keep a bounded scroll area; mobile scrolls the page. */
@media screen {
  #therapy-flow {min-height:0;}
  #therapy-flow.global-screen .shell {display:flex;flex-direction:column;}
  #therapy-flow.global-screen .shell>main {flex:1;min-height:0;overflow-y:auto;}
}
@media screen and (max-width:800px) {
  html {height:auto;min-height:100%;overflow-y:auto;}
  body {height:auto;min-height:100%;overflow:visible;}
  #gate {max-height:none;overflow:visible;}
  #therapy-flow {height:auto;min-height:calc(100dvh - 34px);overflow:visible;}
  #therapy-flow .shell {flex:1 0 auto;overflow:visible;}
  #therapy-flow .shell>main,
  #therapy-flow .shell>aside {height:auto;max-height:none;overflow:visible;}
  #therapy-flow.global-screen .shell>main {flex:none;overflow:visible;}
  #therapy-flow #view:has(>nav) {min-height:0;}
  #therapy-flow .app-statusbar {position:static;padding-bottom:max(10px,env(safe-area-inset-bottom));}
}

/* Web 0.7.2: clearer file navigation and an accessible manual. */
#therapy-flow .desktop-toolbar .manual-link {display:block;text-align:left;padding:9px 12px;font-size:12px;color:var(--ink);text-decoration:none;border-radius:7px;}
#therapy-flow .desktop-toolbar .manual-link:hover {background:#edf4f6;}
#web-help .manual-callout {margin-top:22px;padding:16px;background:#edf3ec;border-radius:10px;}
#web-help .manual-link {color:#315e52;font-weight:600;text-underline-offset:4px;}
@media screen and (max-width:800px) {
  #therapy-flow header {display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;row-gap:8px;}
  #therapy-flow header>div:first-child {grid-column:1;grid-row:1;display:flex;flex-direction:column;gap:0;align-items:flex-start;min-width:0;}
  #therapy-flow #app-tools {grid-column:2;grid-row:1;justify-self:end;margin:0;}
  #therapy-flow .alpha-badge {grid-column:1;grid-row:2;justify-self:start;margin:0;}
  #therapy-flow .recording-controls:empty {display:none;}
  #therapy-flow .recording-controls:not(:empty) {grid-column:2;grid-row:2;}
  #therapy-flow .desktop-toolbar {max-width:calc(100vw - 32px);}
  #therapy-flow #view>nav {position:sticky!important;top:8px;z-index:10;padding:8px 0!important;gap:5px!important;border:0;border-radius:9px;box-shadow:0 3px 12px #233b4308;background:var(--panel);scroll-padding-inline:8px;scrollbar-width:thin;scrollbar-color:#cbd7dc transparent;}
  #therapy-flow #view>nav::-webkit-scrollbar {height:4px;}
  #therapy-flow #view>nav::-webkit-scrollbar-thumb {background:#cbd7dc;border-radius:4px;}
}

/* Web 0.7.5: equal-height numerals and a quiet return-to-top control. */
#therapy-flow .card-number {font-family:'Inter Variable',sans-serif;font-style:normal;font-weight:300;font-size:25px;line-height:1.2;font-variant-numeric:lining-nums tabular-nums;font-feature-settings:"lnum" 1,"tnum" 1;}
#therapy-flow #back-to-top {position:fixed;right:20px;bottom:calc(65px + env(safe-area-inset-bottom));z-index:20;width:44px;height:44px;min-height:44px;padding:0;border:1px solid #dfe6e9;border-radius:50%;background:var(--panel);color:var(--deep);box-shadow:0 3px 14px #233b4312;font-size:23px;line-height:1;}
#therapy-flow #back-to-top:hover {background:var(--sage);}
#therapy-flow #app-tools .export-hint {line-height:1.6;}
@media(max-width:800px){#therapy-flow #back-to-top{right:16px;bottom:calc(20px + env(safe-area-inset-bottom));}}
@media print{#back-to-top{display:none!important}}
