/* Health journal: quiet surfaces, clear actions, real records. */
:root{--journal-accent:#c6dfa9;--journal-muted:#a2b69f;--journal-border:#b9d1b321;--journal-surface:#12231b;--journal-text:#edf2e8}
[hidden]{display:none!important}
body:is([data-page=app],[data-page=intro]) .guard-world{opacity:.22}
body:is([data-page=app],[data-page=intro]) .card{background:#13241bf7!important;box-shadow:0 10px 38px #0000000e;border-color:var(--journal-border)!important}
body:is([data-page=app],[data-page=intro]) .lead{font-weight:400}
body:is([data-page=app],[data-page=intro]) .hint{color:#aabcaa}
body:is([data-page=app],[data-page=intro]) .top{background:#091710fa!important}
.cloud-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--journal-border);padding:0 0 17px;margin:0 0 23px;color:var(--journal-muted);font-size:13px}
.cloud-toolbar>div{display:flex;align-items:center;gap:9px}.cloud-toolbar #cloudStatus:before{content:'';display:inline-block;width:6px;height:6px;border-radius:50%;background:#bed59c;margin-right:9px}.cloud-toolbar[data-status=error] #cloudStatus:before{background:#e8b47f}.cloud-toolbar .btn.sm{min-height:32px!important;padding:5px 13px!important;font-size:12px!important}
.portal-more{position:relative}.portal-more summary{list-style:none;cursor:pointer;padding:7px 11px;font-size:13px;color:#b4c6ac}.portal-more summary::-webkit-details-marker{display:none}.portal-more>div{position:absolute;right:0;top:100%;padding:10px;display:flex;flex-direction:column;gap:8px;min-width:135px;background:#1b3022;border:1px solid #c1d3b336;border-radius:12px;z-index:70;box-shadow:0 12px 24px #0004}.portal-more:not([open])>div{display:none}
.product-notice{padding:11px 16px;margin:0 0 22px;border-left:2px solid #9aad8355;font-size:12px;line-height:1.9;color:var(--journal-muted);background:#a2b59007}body[data-page=home] :is(.product-notice,.cloud-toolbar){display:none}body[data-page=app][data-journal-mode=daily]:has(#p3.on) .product-notice{display:none}
.journal-modes{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 0 30px}.journal-modes [role=tablist]{display:flex;gap:5px;padding:5px;background:#0a1912;border:1px solid var(--journal-border);border-radius:99px}.journal-modes button{appearance:none;border:0;border-radius:99px;background:none;color:#a5b8a0;cursor:pointer;padding:10px 20px;font:inherit;font-size:14px}.journal-modes button[aria-selected=true]{background:#c5dbab1c;color:#e1edcf;box-shadow:inset 0 0 0 1px #c5dbab38}.journal-modes button span{font-size:9px;letter-spacing:1px;padding:2px 4px;margin-left:4px;background:#8d9e7624;border-radius:4px}.mode-caption{font-size:12px;color:#91a68f}
#p3[data-mode=daily] #simulationArea,#p3[data-mode=simulation] #realJournal{display:none!important}
#realJournal.card{padding:0!important;border:0!important;background:none!important;box-shadow:none!important}.daily-header{display:flex;align-items:center;justify-content:space-between;gap:30px;margin:0 0 30px}.eyebrow{font-size:10px;font-weight:500;letter-spacing:2.3px;color:#a6bc93;line-height:1.8}.daily-header h1{font-family:'Noto Serif SC','Songti SC','SimSun',serif;font-size:clamp(28px,2.8vw,42px);font-weight:400;line-height:1.55;letter-spacing:.5px;margin:9px 0}.daily-header p{font-size:14px;color:var(--journal-muted);margin:0}.date-tools{display:flex;flex-direction:column;align-items:flex-end;gap:7px;flex-shrink:0}.date-tools>label{font-size:11px;letter-spacing:1px;color:#9cb192}.journal-date{font:inherit;font-size:14px;line-height:1.5;background:#182c20;color:#e2ecd8;border:1px solid #b3c6a538;padding:9px 12px;border-radius:10px;max-width:180px;color-scheme:dark}.date-tools>button{border:0;background:none;color:#c3d6ad;font:inherit;font-size:12px;cursor:pointer}
.daily-stats{display:grid;grid-template-columns:1.7fr 1fr 1fr;border:1px solid var(--journal-border);border-radius:18px;background:linear-gradient(110deg,#223a25,#15251c 60%);padding:25px 28px;margin-bottom:30px;gap:25px}.daily-stats>div{display:flex;flex-direction:column;justify-content:center;gap:5px;border-right:1px solid var(--journal-border);padding-right:20px}.daily-stats>div:last-child{border:0;padding:0}.daily-stats span{font-size:12px;color:#afc2a2}.daily-stats strong{font-size:16px;font-weight:500;color:#eaf2de}.daily-stats strong b{font-size:32px;line-height:1.2;font-weight:500;font-variant-numeric:tabular-nums}.daily-stats small{font-size:12px;color:#a6b99f;margin-left:8px}.daily-stats>.today-stat{flex-direction:row;align-items:center;justify-content:flex-start;gap:20px}.today-stat>div:last-child{display:flex;flex-direction:column;gap:7px}.progress-ring{position:relative;width:68px;height:68px;flex-shrink:0}.progress-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.progress-ring circle{fill:none;stroke:var(--journal-accent);stroke-width:3;stroke-linecap:round;transition:stroke-dashoffset .3s}.progress-ring .ring-track{stroke:#c6dfa91c}.progress-ring>b{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:500}.progress-ring>b>span{font-size:24px;color:#eaf3dc}.progress-ring small{font-size:11px;margin-left:3px}
.daily-section{border:1px solid var(--journal-border);border-radius:18px;background:#13241bf5;padding:26px;margin-bottom:22px}.section-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.section-top h2{font-size:20px;font-weight:500;line-height:1.6;letter-spacing:.2px;margin:4px 0 0}.section-note{font-size:12px!important;color:#9fb198;line-height:1.8;margin:0}.journal-actions{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0}.journal-check{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-height:157px;border:1px solid #bdd1af26;border-radius:13px;padding:19px 16px;background:#1b2e20;color:#e3ecd9;font:inherit;cursor:pointer;text-align:left;transition:background .18s,border-color .18s,transform .18s}.journal-check:hover{background:#253b27;border-color:#c4daaa70;transform:translateY(-2px)}.journal-check:disabled{opacity:.5;cursor:wait}.journal-check[aria-pressed=true]{background:#bdd49e;border-color:#c5dbaa;color:#203019}.task-icon{display:block;margin-bottom:18px;color:#c0d9aa}.task-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}.task-label{font-size:14px;font-weight:500;line-height:1.5}.journal-check small{font-size:11px;color:#98af90;margin-top:5px}.task-tick{position:absolute;right:13px;top:14px;display:grid;place-items:center;width:20px;height:20px;border:1px solid #c1d3b239;border-radius:50%;font-size:14px;color:#a1b78e}.journal-check[aria-pressed=true] :is(.task-icon,small,.task-tick){color:#3c532f}.journal-check[aria-pressed=true] .task-tick{border-color:#50683b55}.action-help{margin-top:15px;color:#99ad92;font-size:12px}.action-help summary{cursor:pointer;display:list-item;list-style-position:inside}.action-help p{padding:12px 0 0;line-height:1.9;color:#aabc9e;margin:0}
.journal-columns{display:grid;grid-template-columns:1.05fr 1fr;gap:22px}.journal-columns>.daily-section{min-width:0}.journal-columns .section-top{margin-bottom:13px}.journal-columns h2{font-size:19px}.subtle-badge{font-size:10px;color:#a8bd96;padding:3px 8px;border:1px solid #a8bd9630;border-radius:99px;white-space:nowrap}.journal-measures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 13px;margin:23px 0}.journal-measures label{font-size:12px;color:#c2d1b7}.journal-measures label>span{float:right;color:#83977c;font-size:10px;line-height:2}.journal-measures input{margin-top:6px;border:1px solid #b7cda329!important;background:#1b3022!important;padding:11px 12px!important;border-radius:9px!important;min-width:0;color:#edf3e5!important;font-size:16px!important;font-variant-numeric:tabular-nums;box-shadow:none!important}.journal-measures input:focus{border-color:#c5df9970!important;outline:2px solid #c5df9918!important}.journal-measures input::placeholder{color:#849779;font-size:13px}.measurement-save{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.measurement-save>.btn{background:#c4dba9!important;color:#23331b!important;border:0!important;border-radius:9px!important;padding:11px 17px!important;font-size:13px!important;font-weight:500!important;box-shadow:none!important}.measurement-save>.btn span{margin-left:15px}.measurement-save>span{color:#98ae8c;font-size:11px}.range-controls{display:flex;padding:3px;border:1px solid var(--journal-border);border-radius:8px}.range-controls button{border:0;background:none;font:inherit;font-size:11px;padding:5px 9px;cursor:pointer;color:#9daf91;border-radius:5px}.range-controls button[aria-pressed=true]{color:#e4eedb;background:#b7ce9a20}.week-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin:23px 0}.week-day{display:flex;flex-direction:column;align-items:center;gap:8px;border:0;background:none;font:inherit;color:#8fa285;padding:0;cursor:pointer}.week-day>span{font-size:10px}.week-day>i{position:relative;isolation:isolate;overflow:hidden;display:grid;place-items:center;width:32px;height:39px;background:#233629;font-size:12px;font-style:normal;border:1px solid transparent;border-radius:8px;color:#b6c7aa}.week-day>i:before{content:'';position:absolute;inset:auto 0 0;height:var(--fill);background:#b5d39535;z-index:-1}.week-day.selected>i{border-color:#bacfa582}.week-day.has-record>i{color:#d4e5c2}.week-day>small{font-size:10px}.trend-caption{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:23px;color:#9eb291;font-size:11px}.trend-caption label{display:flex;align-items:center;gap:9px}.trend-caption select{width:auto!important;min-height:30px!important;font-size:11px!important;background:#203524!important;border:1px solid #afc69a24!important;border-radius:7px!important;padding:3px 5px!important;color:#cddcbe!important}.trend-caption>span{font-size:10px;color:#829677}.trend-chart{margin:22px 0 5px}.trend-chart svg{width:100%;display:block}.trend-empty{height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px dashed #acbf9724;border-radius:12px;background:#a3b98803;padding:22px}.trend-empty>span{font-size:32px;line-height:1.2;color:#9fb889}.trend-empty>strong{font-size:14px;font-weight:400;margin:10px 0 5px;color:#c6d5b9}.trend-empty>p{font-size:11px;color:#889f7e;max-width:240px;line-height:1.8;margin:0}
.history-section .section-top{margin-bottom:17px}.text-button,.history-open{border:0;background:none;font:inherit;font-size:12px;color:#bdcfa9;cursor:pointer;padding:6px 0}.journal-history{overflow:auto}.journal-history table{min-width:570px;font-size:12px}.journal-history :is(th,td){padding:14px 12px!important;border-color:#bbd0a915!important;white-space:nowrap}.journal-history th{background:#a0b58b08!important;font-size:11px!important;font-weight:400!important;color:#93aa86!important}.journal-history td{color:#c6d5bd}.history-completion{display:inline-block;background:#b4d08c12;border:1px solid #b4d08c18;padding:1px 8px;border-radius:20px;font-size:11px;color:#bed5a5}.history-empty{border:1px dashed #b1c49925;border-radius:11px;padding:32px 20px;text-align:center;font-size:12px;color:#93a988}.daily-footer{font-size:11px;line-height:1.9;color:#859d7a;text-align:center;padding:6px 0 15px}
.portal-dialog{max-width:580px;width:calc(100% - 32px);max-height:85vh;overflow:auto;padding:30px;border:1px solid #b5c99e42;border-radius:18px;background:#192c20;color:#e1ebd9;line-height:1.9}.portal-dialog::backdrop{background:#020b07aa;backdrop-filter:blur(5px)}.portal-dialog h2{font-size:24px;font-weight:500;margin-bottom:15px}.portal-dialog p{font-size:13px;color:#a9bd9d}.portal-dialog .btn{margin-top:16px}.conflict-item{margin:18px 0;border:1px solid #b5c99e28;border-radius:10px;padding:15px}.conflict-item legend{font-size:13px;color:#c8dbb4;padding:0 7px}.conflict-item label{display:block;font-size:13px;padding:6px 0;color:#b6c9a8}.conflict-item input{margin-right:8px;accent-color:#b5cd93}.conflict-actions{display:flex;justify-content:flex-end;gap:10px}.portal-error{color:#e5b58d!important}.btn:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #c7dfa7;outline-offset:4px}#resumeJourney[hidden]{display:none!important}.aiKey[hidden]{display:none!important}#p3body:before{content:'方案模拟 · 以下推演不会写入真实健康日记';display:block;border:1px solid #a4b18d33;padding:10px 14px;margin-bottom:20px;border-radius:9px;color:#b9c6a8;font-size:12px}
@media(min-width:1450px){.daily-header{margin-bottom:36px}.daily-section{padding:30px}.journal-check{min-height:170px}.journal-columns{grid-template-columns:1fr 1.05fr}.journal-measures{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1100px){.journal-columns{grid-template-columns:1fr}.journal-measures{grid-template-columns:repeat(4,minmax(0,1fr))}.daily-header h1{font-size:32px}.journal-check{padding:17px 12px}.task-label{font-size:13px}.mode-caption{display:none}.daily-stats{gap:15px;padding:20px}.daily-stats>.today-stat{gap:13px}.daily-stats strong{font-size:14px}.trend-chart svg{max-height:230px}.trend-empty{height:170px}}
@media(max-width:640px){.cloud-toolbar{margin-bottom:20px;flex-wrap:wrap;gap:10px}.cloud-toolbar #cloudStatus{font-size:11px;flex:1 1 200px}.cloud-toolbar>div{gap:5px}.cloud-toolbar .btn.sm{font-size:11px!important;min-height:29px!important;padding:4px 10px!important}.portal-more summary{font-size:11px;padding:5px 8px}.journal-modes{margin-bottom:24px}.journal-modes [role=tablist]{width:100%;padding:4px}.journal-modes button{flex:1;font-size:12px;padding:9px 10px;min-height:36px}.journal-modes button span{font-size:8px}.daily-header{flex-direction:column;align-items:flex-start;gap:19px;margin-bottom:22px}.daily-header h1{font-size:28px;letter-spacing:0;line-height:1.5;margin:8px 0}.daily-header p{font-size:12px}.eyebrow{font-size:9px;letter-spacing:1.7px}.date-tools{flex-direction:row;align-items:center;gap:11px;flex-wrap:wrap}.journal-date{font-size:12px;min-height:37px!important;padding:6px 10px!important;max-width:165px}.date-tools>label{font-size:11px}.daily-stats{grid-template-columns:1fr 1fr;gap:18px 12px;padding:20px;margin-bottom:20px;border-radius:14px}.daily-stats>.today-stat{grid-column:1/-1;border:0;padding:0 0 17px;border-bottom:1px solid var(--journal-border);gap:18px}.daily-stats>div:nth-child(2){border-right:1px solid var(--journal-border)}.daily-stats>div:nth-child(3){border:0}.daily-stats strong b{font-size:27px}.daily-stats strong{font-size:14px}.daily-stats small{font-size:11px}.daily-stats span{font-size:11px}.progress-ring{width:60px;height:60px}.daily-section{padding:20px 17px;border-radius:14px;margin-bottom:18px}.section-top{align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:18px}.section-top h2,.journal-columns h2{font-size:19px}.section-top>.section-note{font-size:10px!important}.journal-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.journal-check{min-height:138px;padding:16px}.task-icon{margin-bottom:14px}.task-label{font-size:14px}.journal-check small{font-size:11px}.journal-check:last-child{grid-column:1/-1;min-height:80px;display:grid;grid-template-columns:35px 1fr;grid-template-rows:auto auto;column-gap:12px;align-content:center;align-items:center}.journal-check:last-child .task-icon{grid-column:1;grid-row:1/3;margin:0}.journal-check:last-child .task-label{grid-column:2}.journal-check:last-child small{grid-column:2;margin:1px 0 0}.journal-check:last-child .task-tick{top:28px}.action-help{font-size:11px}.journal-measures{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px;margin-top:20px}.journal-measures label{font-size:12px}.journal-measures input{min-height:44px!important}.measurement-save{gap:10px}.measurement-save>span{font-size:10px}.range-controls button{font-size:10px;padding:4px 8px}.trend-caption{flex-wrap:wrap}.trend-caption label{font-size:11px}.trend-caption>span{font-size:9px}.trend-caption select{min-height:30px!important;font-size:11px!important}.trend-chart{margin-top:18px}.history-section .section-top{gap:10px}.text-button{font-size:11px}.daily-footer{font-size:10px;text-align:left}.portal-dialog{padding:24px}.cloud-toolbar:has(#reviewChanges:not([hidden]))>div{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
