:root{font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;color:#262523;background:#eeece7;font-synthesis:none;--accent:#ea4149;--muted:#85817b;--line:#eeeae5}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer;color:inherit;border:0;background:none}button:disabled{opacity:.4;cursor:not-allowed}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #b25d68;outline-offset:3px}h1,h2,p{margin-top:0}h1:focus,h2:focus{outline:none}.shell{max-width:1140px;margin:46px auto;display:grid;grid-template-columns:1fr 430px;gap:50px;align-items:start;padding:0 40px}.intro{position:sticky;top:100px;padding:70px 0}.eyebrow{font-size:11px;letter-spacing:1.8px;color:var(--muted)}.intro h2{font-size:54px;letter-spacing:-2px;line-height:1.3;margin:30px 0;font-weight:600}.intro>p{color:#76726c;line-height:1.9;font-size:17px}.journey{display:flex;flex-direction:column;gap:18px;margin:68px 0 38px;font-size:12px;color:#aaa49d}.journey span:before{content:'';display:inline-block;width:22px;height:1px;background:currentColor;vertical-align:middle;margin-right:12px}.journey .active{color:#ae3f4d}.intro .prototype-label{font-size:11px;color:#a39b90}.phone{background:#fff;min-height:810px;border-radius:30px;border:1px solid #e4ded6;box-shadow:0 20px 70px #3930260c;overflow:hidden;padding:24px 18px 90px;position:relative}.search-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.brand{font-weight:800;color:var(--accent);font-size:23px;letter-spacing:-1px}.brand span{display:block;color:#aaa;font-size:10px;letter-spacing:2px;font-weight:400;margin-top:5px}.text-button{padding:10px 3px;font-size:13px}.search-field{display:flex;align-items:center;gap:10px;border-radius:30px;background:#f5f4f2;padding:10px 16px}.search-field span{font-size:23px;line-height:1}.search-field input{border:0;background:none;outline:none;width:100%;font-size:12px}.search-meta{padding:26px 0 18px;display:flex;flex-direction:column;gap:8px}.search-meta h1{font-size:22px;letter-spacing:-.8px;margin:0}.context-label{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:6px}.context-label select{border:0;background:transparent;color:#615b53;font-size:12px;padding:5px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 12px}.art-button{padding:0;display:block;width:100%;text-align:left}.art{height:188px;border-radius:10px;position:relative;overflow:hidden;background:#d9c7ae}.art.olive{background:#aab2a0}.art.clay{background:#c8987e;height:205px}.art.cream{background:#e7d8b7;height:218px}.window-pane{position:absolute;left:12%;top:10%;width:54%;height:61%;border:5px solid #ffffff78;background:linear-gradient(90deg,transparent 48%,#ffffff78 48%,#ffffff78 52%,transparent 52%),linear-gradient(0deg,#ffffff00 48%,#ffffff78 48%,#ffffff78 52%,#ffffff00 52%);box-shadow:14px 14px 0 #ffffff14}.art:after{content:'';position:absolute;left:0;bottom:0;width:100%;height:29%;background:#71564235}.cup{position:absolute;bottom:28%;left:43%;height:35px;width:43px;border-radius:3px 3px 18px 18px;background:#f9f3e9;z-index:1;box-shadow:0 6px 10px #493b3225}.cup:after{content:'';position:absolute;right:-13px;top:5px;width:14px;height:18px;border:4px solid #f9f3e9;border-radius:50%}.plant{position:absolute;right:6%;bottom:28%;font-size:70px;color:#58644c99;line-height:1}.art-name{position:absolute;bottom:12px;left:12px;font-size:12px;color:white;letter-spacing:2px;z-index:2}.card-copy{padding:12px 2px}.card-copy h2{margin:0;font-size:14px}.card-copy h2 button{font-size:14px;font-weight:650;padding:0}.card-copy p{font-size:11px;line-height:1.6;margin:7px 0;color:#706b65}.card-copy small{font-size:10px;color:#a19a91}.risk{background:#fcf1eb;border-radius:8px;padding:10px;margin-top:10px;color:#94583a;font-size:11px;line-height:1.6}.risk p{font-size:10px;color:#9f735d}.info{color:#94583a;font-size:15px;padding:0 3px}.memory-hint{padding:10px 12px;border-radius:8px;background:#f7f0ee;color:#ab5961;font-size:11px;margin-bottom:18px}nav{position:absolute;bottom:0;left:0;right:0;border-top:1px solid var(--line);display:flex;justify-content:space-around;background:#fff;padding:13px 0}nav button{color:#777}.page-top,.flow-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;font-size:12px}.large{height:290px;margin:0 -18px;border-radius:0}.large .cup{width:65px;height:55px}.detail-copy{padding:25px 8px}.detail-copy h1{font-size:32px;margin:12px 0}.detail-copy p{color:#8b847b;font-size:14px}.meta{font-size:12px;color:#81766b}.description{line-height:1.9;margin:24px 0}.primary,.secondary{display:block;width:100%;border-radius:30px;min-height:47px;padding:13px 15px;font-weight:550;font-size:13px;margin:12px 0}.primary{background:var(--accent);color:white}.secondary{background:#f5f3f0;color:#665b50}.inline-note{font-size:12px;background:#f8f5f0;padding:14px;border-radius:10px;line-height:1.8;color:#8a7966}.centered{display:block;text-align:center;width:100%;margin:12px 0}.feed-title{font-size:24px;margin:24px 0}.recall{padding:20px;background:#faf4ef;border:1px solid #f0e5dc;border-radius:17px;margin:24px 0}.recall h2{font-size:18px;line-height:1.6;margin:13px 0 8px}.recall p{font-size:12px;color:#958474}.recall-actions{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.recall-actions .primary,.recall-actions .secondary{width:auto;flex:1;margin:8px 0}.recall-actions .text-button{font-size:11px}.feedback{padding:0 7px}.flow-top{color:#aaa;font-size:10px}.icon-button{font-size:23px;width:32px;height:36px}.progress{height:3px;background:#f2eeea;margin:8px 0 42px;border-radius:5px}.progress i{display:block;background:#eeb7b5;height:100%;transition:width .3s}.feedback-heading h1{font-size:27px;font-weight:600;line-height:1.5;margin:17px 0 12px;letter-spacing:-1px}.feedback-heading>p{font-size:13px;color:#9a9189;line-height:1.8;margin-bottom:35px}.choice{display:flex;align-items:center;width:100%;border:1px solid #ede7df;border-radius:16px;padding:21px 18px;margin:14px 0;font-size:16px;background:#fdfbf8;text-align:left}.choice span:last-child{margin-left:auto;color:#c0b2a4}.face{font-size:25px;width:45px;color:#ac8e70}.choices{margin:40px 0}.chips{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0 30px}.chip{border:1px solid #e9e4de;border-radius:25px;background:#faf9f7;padding:13px 17px;font-size:12px;line-height:1.5}.chip.selected{border-color:#e78e97;background:#fff1f1;color:#bc3547}.feedback h2{font-size:16px;line-height:1.7}.optional{font-size:12px;color:#9d9288}.optional textarea,.summary textarea{width:100%;border:1px solid #ece5dc;padding:15px;border-radius:12px;min-height:90px;resize:vertical;margin:10px 0 20px;background:#fffcf9;line-height:1.8}.summary{background:#faf5ee;border-radius:20px;padding:25px 23px;margin:26px 0;position:relative}.quote{font-size:18px;line-height:1.9;margin:0;color:#655346}.summary label{font-size:13px}.summary textarea{min-height:180px;margin-bottom:0}.subtle,.privacy{font-size:11px;color:#a0988d;line-height:1.8}.privacy{text-align:center;margin-top:28px}.footer-note{margin-top:32px}.loading-orbit{width:70px;height:70px;border:2px solid #f4e4e0;border-top-color:#db8b92;border-radius:50%;margin:100px auto;animation:spin 1.3s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.memory-mark{width:82px;height:82px;display:grid;place-items:center;background:#f6eee6;color:#bda083;border-radius:50%;font-size:33px;margin:30px auto}.confirm-copy{font-size:18px;line-height:1.8;text-align:center;margin:30px 0}.record{padding:20px 8px;border-bottom:1px solid var(--line)}.record small{font-size:11px;color:#a39384}.record p{font-size:14px;line-height:1.8;margin:12px 0}.record button{color:#ac7b72}.demo-toolbar{grid-column:1/-1;display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:11px;color:#948a7e;padding-top:0}.demo-toolbar button{font-size:11px}.demo-toolbar label{display:flex;align-items:center;gap:5px}.modal-backdrop{position:fixed;inset:0;background:#27221e60;display:grid;place-items:center;padding:25px;z-index:5;backdrop-filter:blur(5px)}.explanation{background:white;padding:30px;border-radius:25px;max-width:400px}.explanation h2{font-size:22px}.explanation h3{font-size:13px;margin-top:25px}.explanation p{font-size:12px;line-height:1.9;color:#897e72}.toast{font-size:12px;color:#ab4d5d;padding:12px}.empty{grid-column:1/-1;padding:40px 0;color:#aaa;font-size:13px}@media(max-width:740px){body{background:#fff}.shell{display:block;padding:0;margin:0}.intro{display:none}.phone{min-height:100dvh;border:0;border-radius:0;box-shadow:none;max-width:480px;margin:auto;padding-top:24px}.demo-toolbar{padding:12px 20px;background:#f5f3ef}.flow-mode{padding-top:24px}.art{height:210px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
/* Host chrome follows the user's 14 reference screenshots. */
:root{--accent:#ea4149}.phone{padding:0 8px 78px;border-radius:28px;min-height:850px}.statusbar{height:53px;display:flex;align-items:center;justify-content:space-between;padding:0 28px;font-size:15px;background:white}.statusbar>span{font-size:13px;letter-spacing:1px}.native-search{display:flex;align-items:center;gap:9px;background:#fff;padding:9px 8px 13px}.native-search .icon-button{width:23px;flex-shrink:0}.search-pill{border:1px solid #eee;border-radius:25px;box-shadow:0 3px 15px #00000003;padding:12px 15px;text-align:left;display:flex;align-items:center;justify-content:space-between;flex:1;font-size:14px;color:#393939}.host-tabs{display:flex;justify-content:space-between;align-items:center;padding:9px 8px 15px;font-size:16px;color:#888;gap:9px;background:white}.host-tabs strong{font-size:17px;color:#222;position:relative}.host-tabs strong span{position:absolute;height:3px;width:26px;background:var(--accent);border-radius:4px;bottom:-9px;left:0}.host-tabs button{font-size:16px;color:#888;padding:0}.ask-ai{font-size:14px;color:#555}.filter-row{display:flex;align-items:center;gap:8px;padding:10px 5px;border-top:6px solid #f8f8f8;background:#fff}.filter-row>span,.filter-row>strong{background:#f4f4f4;border-radius:7px;padding:6px 10px;font-size:13px;color:#969696;font-weight:400}.filter-row>strong{color:#333}.filter-row button{margin-left:auto;color:#888}.context-row{padding:0 8px 7px}.context-row .context-label{font-size:10px}.context-row select{font-size:10px}.grid{gap:10px 7px;align-items:start;background:#f7f7f7;padding:5px 0}.place-card{background:#fff;border-radius:5px;overflow:hidden}.art{border-radius:5px 5px 0 0;height:238px}.art.olive{height:261px}.art.clay{height:242px}.art.cream{height:263px}.card-copy{padding:9px}.card-copy .note-title{font-size:14px;font-weight:600;line-height:1.6;text-align:left;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.note-location{display:flex;align-items:center;gap:3px;font-size:10px;color:#898989;padding:7px 0}.author-line{display:flex;gap:5px;align-items:center;color:#939393;font-size:10px;margin-top:4px}.avatar{display:inline-grid;place-items:center;border-radius:50%;width:28px;height:28px;font-size:12px;flex-shrink:0;color:#90765c;background:#eee1d1}.avatar.small{width:19px;height:19px;font-size:8px}.avatar.olive{background:#dfe5d9}.avatar.clay{background:#efdfd2}.avatar.cream{background:#eee8d7}.like-count{margin-left:auto;display:flex;align-items:center;gap:3px}.home-header{padding:10px 10px 15px;display:flex;align-items:center;justify-content:space-between}.home-header>div{display:flex;gap:24px;color:#999;font-size:16px;align-items:center}.home-header strong{color:#333;position:relative;font-size:18px}.home-header strong:after{position:absolute;content:'';height:3px;background:var(--accent);width:28px;bottom:-8px;left:3px;border-radius:3px}nav{align-items:center;padding:12px 14px;font-size:15px;color:#aaa}nav .text-button{font-size:15px;padding:4px 0;color:#333}.nav-plus{background:var(--accent);border-radius:10px;color:white;display:grid;place-items:center;width:43px;height:33px}.recall{margin:14px 7px 18px;background:#fffaf8;border:1px solid #f0e7e3;padding:18px;border-radius:12px}.recall .eyebrow{font-size:10px;letter-spacing:1px}.recall h2{font-size:17px}.feedback{padding:0 21px 25px}.flow-top{margin-top:14px}.progress{margin-top:10px}.memory-hint{margin:0 7px 10px}.note-top{display:flex;align-items:center;gap:10px;padding:8px 8px 16px;font-size:14px}.note-top .icon-button{width:26px}.follow-label{margin-left:auto;border:1px solid #ff6a7c;color:var(--accent);padding:6px 13px;border-radius:20px;font-size:11px}.note-page .large{margin:0 -8px;height:440px;border-radius:0}.note-page .large .window-pane{height:58%}.note-page .large .cup{height:95px;width:105px;bottom:21%;left:34%;border-radius:4px 4px 32px 32px}.note-page .large .cup:after{height:45px;width:30px;right:-25px;border-width:6px;top:14px}.note-page .large .plant{font-size:130px;bottom:21%;right:8%}.carousel-dots{display:flex;justify-content:center;gap:5px;padding:11px}.carousel-dots>*{width:5px;height:5px;border-radius:50%;background:#ddd}.carousel-dots b{background:var(--accent)}.detail-copy{padding:7px 9px 18px}.detail-copy h1{font-size:19px;line-height:1.6;margin:3px 0 12px;letter-spacing:0}.detail-copy p{font-size:14px;line-height:1.9;color:#555}.detail-copy .hashtag{color:#24476c;font-size:13px}.detail-copy .subtle{font-size:10px;color:#999}.location-tag{display:flex;align-items:center;gap:5px;border:1px solid #eaeaea;border-radius:6px;font-size:12px;padding:9px 8px;width:100%;text-align:left}.note-bottom{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;gap:12px;background:white;border-top:1px solid #eee;padding:15px 13px 22px}.comment-placeholder{background:#f5f5f5;border-radius:20px;color:#aaa;padding:9px;font-size:12px;flex:1}.note-action{display:flex;gap:4px;align-items:center;padding:0;font-size:12px;white-space:nowrap}.liked{color:var(--accent)}.liked svg,.collected svg{fill:currentColor}.collected{color:#ffbf53}.map-entry{display:block;background:#f8f8f8;border:1px solid #eee;border-radius:8px;padding:12px;width:100%;margin:10px 0;font-size:13px;text-align:left}.map-entry>span{display:block;text-align:center;background:white;border-radius:20px;padding:8px;margin-top:7px}.mini-map{height:120px;margin-top:10px;overflow:hidden;border-radius:6px}.map-svg{width:100%;height:100%;display:block}.map-filters{display:flex;justify-content:space-around;font-size:12px;color:#999;padding:15px;background:#fff;border-radius:0 0 16px 16px}.map-canvas{height:370px;position:relative;margin:0 -8px}.map-pin{position:absolute;font-size:11px;color:#c87d20;display:flex;flex-direction:column;align-items:center;font-weight:650;text-shadow:0 1px white}.map-pin>span{background:#ee9e20;color:white;border:3px solid white;border-radius:50%;height:35px;width:35px;display:grid;place-items:center;box-shadow:0 3px 6px #0001;font-size:16px}.pin-0{left:35%;top:48%}.pin-1{left:65%;top:22%}.pin-2{left:63%;top:64%}.pin-3{left:15%;top:15%}.map-list{padding:0 7px}.map-list h1{font-size:18px;margin:14px 0}.map-store{display:flex;gap:10px;align-items:center;padding:15px 0}.map-store>div{flex:1}.map-store h2{margin:0}.map-store h2 button{font-weight:600;padding:0;font-size:13px}.map-store p{font-size:10px;margin:7px 0;color:#777}.map-store small{font-size:9px;color:#aaa}.map-thumb{width:74px;height:74px;padding:0;overflow:hidden;border-radius:6px}.map-thumb .art{height:74px}.map-thumb .art-name{display:none}.map-thumb .cup{width:18px;height:16px}.map-thumb .cup:after{display:none}.map-thumb .plant{font-size:25px}.map-thumb .window-pane{border-width:2px}.sheet-scrim{position:absolute;inset:0;background:#0006;z-index:4;display:flex;align-items:flex-end}.place-sheet{padding:10px 18px 24px;background:white;border-radius:22px 22px 0 0;width:100%;max-height:85%;overflow:auto}.sheet-handle{height:4px;width:33px;background:#ddd;border-radius:5px;margin:0 auto 18px}.sheet-heading{display:flex;align-items:center;justify-content:space-between}.sheet-heading h2{font-size:21px;margin:0}.sheet-actions{display:flex;gap:10px;margin-top:13px}.outline-pill{display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid #ddd;padding:9px 15px;border-radius:23px;flex:1;font-size:13px}.store-rating{color:var(--accent);font-size:19px;margin:18px 0 7px}.store-rating span{font-size:11px;color:#999;margin-left:10px}.store-meta{font-size:12px;color:#666}.address{font-size:12px;display:flex;align-items:center;gap:4px}.place-sheet .art{height:165px;border-radius:8px}.toast{background:#303033;color:white;position:absolute;left:18px;right:18px;bottom:92px;z-index:6;border-radius:10px;padding:16px;font-size:12px;pointer-events:none}.native-search form{display:flex;flex:1;gap:8px;border:1px solid #eee;border-radius:25px;padding:10px 12px}.native-search form input{border:0;background:none;min-width:0;width:100%;font-size:14px}.native-search form button{font-size:14px;white-space:nowrap}.search-suggestions{padding:20px 10px}.search-suggestions h1,.search-suggestions h2{font-size:17px}.suggestion-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.suggestion-grid button{text-align:left}.phone>h1,.phone>.record,.phone>.page-top{margin-left:12px;margin-right:12px}.phone>.page-top{margin-top:16px}.footer-note{padding:0 10px}.flow-mode .statusbar{margin:0 -8px}.risk strong{font-weight:500}.risk p{margin-bottom:0}.modal-backdrop .explanation{box-shadow:0 15px 45px #0002}@media(max-width:740px){.phone{border-radius:0;min-height:100dvh;max-width:480px;padding-top:0}.phone .statusbar{height:38px}.flow-mode{padding-top:0}.art{height:246px}.note-page .large{height:430px}.demo-toolbar{font-size:10px}.map-canvas{height:360px}}
.phone{height:850px;min-height:0;padding-bottom:0;overflow:hidden}.phone-scroll{height:calc(100% - 115px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}.phone-scroll::-webkit-scrollbar{display:none}.flow-mode .phone-scroll,.note-page .phone-scroll{height:calc(100% - 53px)}.note-page .detail-copy{padding-bottom:84px}.grid{display:block;column-count:2;column-gap:7px}.place-card{break-inside:avoid;margin-bottom:8px}.empty{padding:20px 10px}.phone-scroll>.page-top,.phone-scroll>h1,.phone-scroll>.record{margin-left:12px;margin-right:12px}.phone-scroll>.page-top{margin-top:16px}.phone-scroll .map-page{padding-bottom:20px}.map-page .map-canvas{height:320px}.phone:has(.map-page) .phone-scroll,.phone:has(.search-suggestions) .phone-scroll{height:calc(100% - 53px)}.phone:has(.map-page) .statusbar{background:#f4f5f5}@media(max-width:740px){.phone{height:100dvh;min-height:0}.phone-scroll{height:calc(100% - 100px)}.flow-mode .phone-scroll,.note-page .phone-scroll,.phone:has(.map-page) .phone-scroll,.phone:has(.search-suggestions) .phone-scroll{height:calc(100% - 38px)}}

/* Recall enters as a bottom sheet, following the user's 2026-09-25 references. */
.recall-scrim{position:absolute;inset:0;z-index:8;display:flex;align-items:flex-end;background:rgba(18,20,24,.42);animation:recall-fade-in .2s ease-out both}
.recall-sheet{position:relative;width:100%;margin:0;padding:10px 22px max(24px,env(safe-area-inset-bottom));border:0;border-radius:24px 24px 0 0;background:#fff;box-shadow:0 -12px 34px rgba(0,0,0,.12);animation:recall-slide-up .32s cubic-bezier(.22,.8,.3,1) both}
.recall-sheet .sheet-handle{width:40px;height:4px;margin:0 auto 18px;background:#dedede}
.recall-heading{display:flex;align-items:center;justify-content:space-between}
.recall-sheet .eyebrow{font-size:11px;letter-spacing:.4px;color:#8c8c8c}
.recall-close{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#f3f3f3;color:#777;font-size:20px}
.recall-sheet h2{font-size:20px;line-height:1.45;margin:12px 0 8px}
.recall-sheet p{font-size:13px;line-height:1.6;color:#888;margin-bottom:20px}
.recall-sheet .recall-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.recall-sheet .recall-actions .primary,.recall-sheet .recall-actions .secondary{width:100%;margin:0;min-height:46px}
.recall-sheet .recall-actions .text-button{grid-column:1/-1;justify-self:center;padding:9px 16px;margin:0;color:#666}
@keyframes recall-fade-in{from{background:rgba(18,20,24,0)}to{background:rgba(18,20,24,.42)}}
@keyframes recall-slide-up{from{transform:translateY(100%)}to{transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.recall-scrim,.recall-sheet{animation:none}}

/* Feedback flow: large outlined tag cards and explicit stepped progress. */
.flow-mode{--flow-ink:#17191f;--flow-blue:#cfe9ff;--flow-blue-strong:#9dd2ff;--flow-lime:#f1f2c8;--flow-navy:#11182f;background:#fff}
.flow-mode .feedback{padding:0 22px 40px}
.flow-mode .flow-top{height:48px;margin:0;color:#8b8f96;font-size:11px}
.flow-mode .flow-top>span{letter-spacing:.4px}
.flow-mode .flow-top .icon-button{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#f4f5f6;color:#575d65;font-size:20px}
.stepper{display:grid;grid-template-columns:repeat(4,1fr);position:relative;margin:7px 2px 34px}
.stepper:before{content:"";position:absolute;top:15px;left:12%;right:12%;height:1px;background:#dfe2e6}
.stepper span{z-index:1;display:flex;flex-direction:column;align-items:center;gap:7px;color:#aaaeb4;font-size:9px}
.stepper b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#eceeef;border:4px solid #fff;font-size:10px}
.stepper .active,.stepper .done{color:var(--flow-ink)}
.stepper .active b{background:var(--flow-ink);color:#fff}
.stepper .done b{background:var(--flow-blue);color:#1c5b87}
.stepper small{font-size:9px}
.flow-mode .feedback-heading{margin-bottom:28px}
.flow-mode .feedback-heading .eyebrow{font-size:10px;color:#7e848a;letter-spacing:1.2px}
.flow-mode .feedback-heading h1{font-size:28px;line-height:1.25;margin:13px 0 10px;color:var(--flow-ink);letter-spacing:-1px}
.flow-mode .feedback-heading>p{font-size:12px;line-height:1.6;color:#838991;margin:0}
.experience-options{display:grid;gap:11px}
.experience-card{display:grid;grid-template-columns:46px 1fr 20px;align-items:center;gap:13px;width:100%;min-height:80px;padding:14px;border:1.5px solid #1d2026;border-radius:18px;text-align:left;background:#fff;transition:transform .18s,background .18s}
.experience-card:hover{transform:translateY(-1px);background:#fbfcfd}
.experience-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:var(--flow-blue);font-size:22px;font-weight:700}
.experience-card:nth-child(2) .experience-icon{background:#f2f2ec}
.experience-card:nth-child(3) .experience-icon{background:var(--flow-lime)}
.experience-card strong,.experience-card small{display:block}
.experience-card strong{font-size:15px;margin-bottom:5px}
.experience-card small{font-size:10px;color:#8a8e94;line-height:1.4}
.experience-card>b{font-size:22px;font-weight:400;color:#7b8087}
.flow-context{display:flex;align-items:center;justify-content:space-between;margin:25px 1px 0;padding:14px 0;border-top:1px solid #eceeef;border-bottom:1px solid #eceeef;font-size:11px;color:#777d84}
.flow-context .context-label{color:var(--flow-ink)}
.flow-context .context-label{font-size:0}
.flow-context select{border:1px solid #d7dade;border-radius:18px!important;padding:7px 10px!important;font-size:11px!important;background:#fff!important;color:var(--flow-ink)!important}
.factor-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 26px}
.factor-card{display:grid;grid-template-columns:34px 1fr 18px;align-items:center;gap:8px;min-height:64px;padding:10px 11px;border:1.5px solid #cfd3d7;border-radius:16px;background:#fff;text-align:left;font-size:12px;line-height:1.35}
.factor-card:nth-child(3n+1) .factor-symbol{background:var(--flow-blue)}
.factor-card:nth-child(3n+2) .factor-symbol{background:var(--flow-lime)}
.factor-card:nth-child(3n) .factor-symbol{background:#eeeef3}
.factor-symbol{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;font-size:16px}
.factor-card>b{display:grid;place-items:center;width:18px;height:18px;border:1px solid #d2d5d8;border-radius:50%;font-size:10px;font-weight:500;color:#8b8e92}
.factor-card.selected{border-color:var(--flow-ink);box-shadow:inset 0 0 0 1px var(--flow-ink);background:#f9fcff}
.factor-card.selected>b{background:var(--flow-ink);border-color:var(--flow-ink);color:#fff}
.feedback-note{display:block;color:#777d84}
.feedback-note>span{display:block;margin-bottom:8px}
.feedback-note textarea,.flow-mode .summary textarea{border:1.5px solid #d7dade;border-radius:16px;background:#fff;min-height:86px;margin:0 0 17px;color:var(--flow-ink)}
.flow-cta{min-height:52px;border-radius:16px;background:var(--flow-navy);margin-top:8px}
.followup-block{display:grid;grid-template-columns:36px 1fr;gap:10px;align-items:start;margin:4px 0 14px}
.followup-block h2{font-size:16px!important;line-height:1.35!important;margin:0 0 4px}
.followup-block p{font-size:10px;color:#92969b;margin:0}
.question-number{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:var(--flow-ink);color:#fff;font-size:9px}
.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:0 0 28px}
.detail-card{display:grid;grid-template-columns:30px 1fr 17px;align-items:center;gap:7px;min-height:58px;padding:9px 10px;border:1.5px solid #d4d7da;border-radius:15px;text-align:left;background:#fff;font-size:11px}
.detail-card>span{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:var(--flow-lime);font-size:14px}
.detail-card>b{display:grid;place-items:center;width:17px;height:17px;border:1px solid #d1d4d7;border-radius:50%;font-size:9px;color:#888}
.detail-card.selected{border-color:var(--flow-ink);box-shadow:inset 0 0 0 1px var(--flow-ink);background:#fafcff}
.detail-card.selected>b{background:var(--flow-ink);border-color:var(--flow-ink);color:#fff}
.factor-grid.compact{margin-bottom:28px}
.flow-mode .summary{border:1px solid #d8dde1;border-radius:20px;background:#f3f9ff;padding:22px;margin:20px 0}
.flow-mode .quote{font-size:16px;line-height:1.85;color:#30353b}
.completion-card{text-align:center;padding:26px 18px 20px;border-radius:24px;background:linear-gradient(145deg,#d9efff,#f5f6d6);margin:15px 0 25px}
.completion-card .memory-mark{background:#fff;color:#172036;margin:0 auto 17px;width:66px;height:66px}
.completion-card h2{font-size:19px;margin-bottom:8px}
.completion-card p{font-size:12px;line-height:1.65;color:#666e76;margin:0}

/* Personal memory dashboard: calm, private and based on the two right-hand reference screens. */
.memory-mode{background:#f8fafb;color:#141821}
.memory-mode .phone-scroll{height:calc(100% - 53px);padding:0 14px 34px}
.memory-top{display:flex;align-items:center;justify-content:space-between;padding:8px 0 14px}
.memory-top>div{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600}
.memory-top .icon-button{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff;border:1px solid #ebedef}
.private-pill{padding:7px 10px;border-radius:18px;background:#fff;color:#747b83;font-size:9px;border:1px solid #ebedef}
.memory-hero{position:relative;overflow:hidden;padding:24px 20px 18px;border-radius:26px;background:linear-gradient(145deg,#c7e7ff 0%,#def1ff 58%,#f1f2c8 100%)}
.memory-hero:after{content:"";position:absolute;width:140px;height:140px;border-radius:50%;right:-58px;top:-58px;border:26px solid #ffffff60}
.memory-hero .eyebrow{color:#4d6c80;font-size:9px}
.memory-hero h1{position:relative;z-index:1;font-size:24px;line-height:1.3;letter-spacing:-1px;margin:14px 0 8px;max-width:280px}
.memory-hero>p{font-size:11px;line-height:1.6;color:#5e7280;max-width:250px}
.memory-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:20px}
.memory-metrics>div{padding:12px 10px;border-radius:16px;background:#ffffffa8;backdrop-filter:blur(6px)}
.memory-metrics strong,.memory-metrics span{display:block}
.memory-metrics strong{font-size:22px;margin-bottom:4px}
.memory-metrics span{font-size:8px;color:#65727b}
.memory-calendar,.memory-patterns,.memory-list{padding:22px 4px 0}
.section-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:15px}
.section-title .eyebrow{font-size:8px;color:#8a9198}
.section-title h2{font-size:17px;margin:5px 0 0}
.section-title>span{font-size:9px;color:#858c93}
.date-capsules{display:flex;gap:8px;overflow:hidden}
.date-capsules>span{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-width:56px;height:78px;border:1.5px solid #b9d9ec;border-radius:28px;background:#fff}
.date-capsules>span.active{border-color:#b8dcf5;background:#cfeaff}
.date-capsules small{font-size:8px;color:#7c848a}
.date-capsules b{font-size:18px}
.memory-patterns{margin-top:4px}
.pattern-chart{height:230px;display:flex;align-items:flex-end;justify-content:space-around;gap:7px;padding:14px 7px 0;border-radius:24px;background:#fff;border:1px solid #eef0f1;overflow:hidden}
.pattern-column{height:100%;display:flex;flex:1;flex-direction:column;align-items:center;justify-content:flex-end;min-width:0}
.pattern-column i{display:block;width:48px;max-height:126px;border-radius:25px 25px 8px 8px;background:#9ed2fb}
.pattern-column:nth-child(2) i{background:#f1f1c7}.pattern-column:nth-child(3) i{background:#171d35}.pattern-column:nth-child(4) i{background:#dbe9f0}
.pattern-bubble{display:grid;place-items:center;width:42px;height:42px;margin-bottom:-30px;border-radius:50%;background:#fff;border:1px solid #d7e1e8;z-index:1;font-size:17px}
.pattern-column strong{width:100%;margin-top:9px;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}
.pattern-column small{font-size:8px;color:#92989d;margin:3px 0 8px}
.memory-rule{display:flex;justify-content:space-between;align-items:center;margin:22px 4px 0;padding:16px;border-radius:22px;background:#161d35;color:#fff}
.memory-rule>div{display:flex;align-items:center;gap:12px}
.memory-rule-icon{display:grid;place-items:center;width:45px;height:45px;border-radius:15px;background:#c9e9ff;color:#1a2736;font-size:20px}
.memory-rule .eyebrow{font-size:8px;color:#a8b4c8}
.memory-rule h2{font-size:14px;margin:4px 0}
.memory-rule p{font-size:9px;color:#adb7c8;margin:0}
.memory-rule button{color:#d6eafd;font-size:10px}
.memory-record{display:grid;grid-template-columns:40px 1fr 28px;gap:10px;align-items:start;padding:16px 0;border-top:1px solid #e6e9eb}
.record-index{display:grid;place-items:center;width:36px;height:36px;border-radius:13px;background:#e3f2fd;font-size:10px;color:#4a6d85}
.memory-record:nth-of-type(3n) .record-index{background:#f2f2cf;color:#73754b}
.memory-record small{font-size:9px;color:#8e9499}
.memory-record p{font-size:12px;line-height:1.65;margin:7px 0 9px;color:#363c42}
.record-context{display:inline-block;padding:5px 8px;border-radius:10px;background:#fff;border:1px solid #e4e7e9;font-size:8px;color:#767d83}
.memory-record .icon-button{width:28px;height:28px;font-size:16px;color:#9da2a7}
.empty-memory{text-align:center;padding:30px 18px;color:#8a9197;background:#fff;border-radius:22px}
.empty-memory>span{font-size:25px}.empty-memory h2{font-size:15px;margin:10px 0 6px}.empty-memory p{font-size:10px;margin:0}
@media(max-width:740px){.memory-mode .phone-scroll{height:calc(100% - 38px)}.flow-mode .feedback{padding-left:20px;padding-right:20px}}

/* Theme refinement: Xiaohongshu red with neutral grays. */
.flow-mode{--flow-blue:#ffe8ec;--flow-blue-strong:#ff9aaa;--flow-lime:#f2f2f3;--flow-navy:#ea4149}
.stepper .active b{background:#ea4149;color:#fff}
.stepper .done{color:#c91f37}
.stepper .done b{background:#ffe4e8;color:#ea4149}
.experience-icon{background:#ffe8ec;color:#d91f38}
.experience-card:nth-child(2) .experience-icon{background:#f1f1f2;color:#555}
.experience-card:nth-child(3) .experience-icon{background:#ffd6dc;color:#b91830}
.factor-symbol{width:40px;height:40px;border:0;background:transparent!important;font-size:25px;line-height:1}
.factor-card{grid-template-columns:40px 1fr 18px}
.factor-card.selected{border-color:#ea4149;box-shadow:inset 0 0 0 1px #ea4149;background:#fff5f6}
.factor-card.selected>b,.detail-card.selected>b{background:#ea4149;border-color:#ea4149;color:#fff}
.detail-card>span{background:transparent;font-size:21px}
.detail-card.selected{border-color:#ea4149;box-shadow:inset 0 0 0 1px #ea4149;background:#fff5f6}
.question-number{background:#ea4149}
.flow-cta{background:#ea4149;border-radius:999px}
.flow-mode .secondary{background:#f3f3f4;color:#565656;border-radius:999px}
.flow-mode .summary{background:#fff6f7;border-color:#f1d9dd}
.flow-mode .loading-orbit{border-color:#ffe2e7;border-top-color:#ea4149}
.flow-mode .memory-mark{background:#ffe6ea;color:#ea4149}
.completion-card{background:#f4f4f5;border-radius:24px}
.completion-card .memory-mark{background:#ea4149;color:#fff}

.memory-mode{background:#f8f8f9}
.memory-hero{min-height:182px;padding:18px 18px 16px;background:linear-gradient(145deg,#f3f3f4 0%,#fafafa 58%,#fff0f2 100%)}
.memory-hero:after{width:125px;height:125px;right:-50px;top:-55px;border-color:#ea41490d}
.memory-hero>p.memory-hero-note{position:relative;z-index:1;max-width:205px;margin:0 0 16px auto;color:#a5a5a8;font-size:10px;line-height:1.55;text-align:right}
.memory-metrics{gap:10px;margin-top:8px}
.memory-metrics>div{min-height:104px;padding:20px 13px;border-radius:19px;background:#fff;border:1px solid #ededee;display:flex;flex-direction:column;justify-content:center}
.memory-metrics strong{font-size:29px;margin-bottom:8px}
.memory-metrics span{font-size:9px;color:#777}
.section-title{align-items:center;margin-bottom:14px}
.section-title h2{font-size:16px;margin:0}
.date-capsules>span{border-color:#dedee0;background:#fff}
.date-capsules>span.active{border-color:#ff9aaa;background:#fff0f2;color:#bd1931}
.pattern-chart{border-color:#ececee;background:#fff}
.pattern-column i{background:#ff9aaa}
.pattern-column:nth-child(2) i{background:#ffd5dc}.pattern-column:nth-child(3) i{background:#353535}.pattern-column:nth-child(4) i{background:#e4e4e6}
.pattern-bubble{border-color:#ededee;font-size:20px}
.memory-rule{background:linear-gradient(135deg,#a91830,#ea4149)}
.memory-rule-icon{background:#fff;color:#ea4149;font-size:21px}
.memory-rule h2{font-size:13px;margin:0 0 5px}
.record-index{background:#ffe9ed;color:#cb1c35}
.memory-record:nth-of-type(3n) .record-index{background:#f0f0f1;color:#666}
.record-context{background:#f4f4f5;border-color:#ededee}

.toast{animation:toast-life 1.7s ease both}
@keyframes toast-life{0%{opacity:0;transform:translateY(7px)}12%,68%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(4px)}}
@media(prefers-reduced-motion:reduce){.toast{animation:none}}

/* 2026-09-26 visual alignment and Public Store Signal presentation. */
.native-search form input:focus,.native-search form input:focus-visible{outline:none!important;box-shadow:none!important}
.search-suggestions{padding-top:16px}
.search-suggestions .chips{gap:8px;margin:12px 0 22px}
.search-suggestions .chip{padding:8px 13px;font-size:14px;line-height:1.2}
.search-suggestions h1,.search-suggestions h2{margin-bottom:8px}
.suggestion-grid{column-gap:18px;row-gap:2px}
.suggestion-grid .text-button{padding:7px 2px;font-size:14px;line-height:1.35}

.art-location{position:absolute;left:10px;bottom:10px;z-index:3;display:inline-flex;align-items:center;gap:4px;max-width:calc(100% - 20px);padding:7px 10px;border-radius:999px;background:#242424a8;color:#fff;font-size:13px;font-weight:600;line-height:1;backdrop-filter:blur(4px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.art-location svg{flex:0 0 auto}
.grid .place-card:nth-child(1) .art{height:auto;aspect-ratio:3/4}
.grid .place-card:nth-child(2) .art{height:auto;aspect-ratio:2/3}
.grid .place-card:nth-child(3) .art{height:auto;aspect-ratio:3/4}
.grid .place-card:nth-child(4) .art{height:auto;aspect-ratio:9/16}
.map-entry{width:calc(50% - 3.5px)}

.matched-signal{padding:11px 10px 10px;background:#fff2f4;color:#66111e;border:1px solid #ffd7dd}
.matched-signal .signal-label,.matched-signal .personal-match>span{display:block;margin-bottom:4px;color:#bd1b33;font-size:9px;font-weight:650;letter-spacing:.2px}
.matched-signal>strong{display:block;font-size:11px;font-weight:700;line-height:1.55}
.matched-signal .personal-match{margin-top:9px;padding-top:8px;border-top:1px solid #f6cdd3}
.matched-signal .personal-match>span{color:#777}
.matched-signal p{margin:0;color:#4c4c4c;font-size:10px;line-height:1.55}
.matched-signal .info{color:#ea4149;font-size:14px;vertical-align:baseline}

.memory-mode,.memory-mode .phone-scroll{background:#fff}
.memory-mode .phone-scroll{padding-left:14px;padding-right:14px}
.memory-top{padding-bottom:12px}
.memory-top>div{font-size:16px}
.private-pill{font-size:10px;padding:7px 11px}
.memory-hero{min-height:211px;padding:16px 16px 15px;background:#ea4149}
.memory-hero:after{width:132px;height:132px;right:-55px;top:-60px;border-color:#ffffff20}
.memory-hero>p.memory-hero-note{max-width:none;margin:0 0 11px;color:#ffffffd9;font-size:11px;line-height:1.4;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.memory-metrics{gap:9px;margin-top:0}
.memory-metrics>div{min-height:145px;padding:20px 13px;border:0;border-radius:19px;background:#fff;box-shadow:0 5px 16px #9f001724}
.memory-metrics strong{font-size:40px;line-height:1;margin-bottom:12px}
.memory-metrics span{font-size:11px;color:#666}
.section-title{margin-bottom:13px}
.section-title h2{font-size:17px}
.section-title>span{font-size:11px}
.date-capsules>span{min-width:57px;height:80px}
.date-capsules small{font-size:10px}
.date-capsules b{font-size:20px}
.date-capsules>span.active{border-color:#ea4149;background:#ea4149;color:#fff}
.date-capsules>span.active small,.date-capsules>span.active b{color:#fff}
.pattern-column strong{font-size:9px}
.pattern-column small{font-size:9px}
.pattern-column i{background:#ea4149}
.memory-rule p{font-size:10px}
.memory-rule button{font-size:11px}
.memory-record{grid-template-columns:58px 1fr 26px;gap:8px;padding:11px 0}
.record-side{display:flex;flex-direction:column;align-items:center;gap:6px}
.record-side .record-index{width:44px;height:40px;border-radius:13px;background:#ffe9ed;color:#c81932;font-size:16px;font-weight:800}
.memory-record:nth-of-type(3n) .record-side .record-index{background:#ffe9ed;color:#c81932}
.record-side .record-context{width:58px;padding:4px 2px;border-color:#ededee;background:#f4f4f5;font-size:9px;line-height:1.2;text-align:center}
.memory-record small{display:block;padding-top:2px;color:#333;font-size:12px;font-weight:650}
.memory-record p{margin:5px 0 0;font-size:12.5px;line-height:1.5}
.memory-record .icon-button{width:26px;height:26px;font-size:16px}

/* Feedback and memory detail refinement. */
.flow-mode .flow-top>span{font-size:12px;letter-spacing:0;color:#666}
.stepper{margin-top:9px}
.stepper:before{top:18px}
.stepper span,.stepper .done,.stepper .active{gap:8px;color:#292929}
.stepper b{width:36px;height:36px;border-width:4px;font-size:12px}
.stepper small{font-size:11px;color:#292929}
.stepper .done{color:#292929}
.stepper .done b{background:#ffe9ed;color:#ea4149}
.flow-mode .feedback-heading h1{margin-top:0}
.experience-icon,.experience-card:nth-child(3) .experience-icon{background:#ffe9ed;color:#ea4149}
.experience-card:nth-child(2) .experience-icon{background:#f2f2f3;color:#555}

.context-picker{position:relative;font-size:11px}
.context-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:92px;padding:7px 10px;border:1px solid #e2e2e4;border-radius:18px;background:#fff;color:#262626;font-size:11px;line-height:1.2}
.context-trigger b{font-size:13px;font-weight:500;color:#777;transform:translateY(-1px)}
.context-trigger:focus-visible,.context-option:focus-visible{outline:1px solid #ea4149;outline-offset:1px}
.context-options{position:absolute;z-index:8;right:0;top:calc(100% + 6px);min-width:116px;padding:5px;border:1px solid #ececef;border-radius:14px;background:#fff;box-shadow:0 8px 24px #00000014}
.context-option{display:flex;align-items:center;justify-content:space-between;width:100%;padding:9px 10px;border-radius:10px;background:#fff;color:#333;font-size:11px;text-align:left}
.context-option:hover,.context-option.selected{background:#fafafa;color:#222}
.context-option b{color:#ea4149;font-size:11px}
.context-row .context-trigger,.context-row .context-option{font-size:10px}

.note-page .art-name{display:none}
.detail-copy .note-body{margin-bottom:8px}
.detail-copy .note-body .hashtag{font-size:13px;color:#24476c}
.location-tag{min-height:32px;padding:6px 8px}
.detail-copy>.subtle{margin:8px 0 0}

.memory-hero{min-height:220px;padding:16px;background:linear-gradient(145deg,#ff7081 0%,#ff8d9a 100%)}
.memory-hero:after{border-color:#ffffff24}
.memory-hero>p.memory-hero-note{margin-bottom:11px;color:#fff}
.memory-metrics>div{min-height:154px;padding:24px 13px 16px;justify-content:space-between}
.memory-metrics strong{font-size:50px;line-height:.95;margin-bottom:0}
.memory-metrics span{font-size:11px;line-height:1.2}
.record-heading{display:flex;align-items:center;gap:7px;min-width:0}
.record-heading small{min-width:0}
.record-outcome{display:inline-flex;align-items:center;white-space:nowrap;padding:3px 6px;border-radius:999px;font-size:8px;font-weight:650;line-height:1.2}
.record-outcome.worse{background:#fff0f2;color:#cf1f38}
.record-outcome.expected{background:#f1f1f2;color:#666}
.record-outcome.better{background:#eef7ef;color:#4d7753}

/* 2026-09-26 logic, icon-grid, font and neutral-surface pass. */
:root{font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;--accent:#ea4149;--accent-soft:#ffe7eb;--accent-pale:#fff1f3;--app-bg:#f4f5f7;--surface:#fff;--surface-muted:#f1f2f4;--line:#e3e5e8;--ink:#1f2228;--muted:#858b93}
button,input,textarea,select{font-family:inherit}
.ph-icon{display:inline-block;width:var(--ph-size,22px);height:var(--ph-size,22px);flex:0 0 var(--ph-size,22px);background:currentColor;-webkit-mask-image:var(--ph-src);mask-image:var(--ph-src);-webkit-mask-size:contain;mask-size:contain;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;vertical-align:-.14em}
.phone{background:var(--app-bg);color:var(--ink)}
.phone-scroll{background:var(--app-bg)}
.flow-mode,.flow-mode .phone-scroll,.note-page,.note-page .phone-scroll{background:#fff}
.statusbar{background:var(--app-bg)!important;color:#17191d}
.flow-mode .statusbar,.note-page .statusbar{background:#fff!important}
.status-icons{display:flex;align-items:center;gap:6px;letter-spacing:0!important}
.icon-button{display:inline-grid;place-items:center;width:40px;height:40px;padding:0;flex:0 0 40px;border-radius:50%;line-height:1}
.flow-top,.note-top,.memory-top,.native-search{min-height:56px}
.flow-top{margin-top:8px;margin-bottom:14px}
.flow-top .icon-button,.note-top>.icon-button,.memory-top .icon-button,.native-search>.icon-button{width:40px;height:40px;flex-basis:40px}
.note-top{padding:8px 0 12px}
.native-search{padding:8px 4px;background:var(--app-bg)}
.native-search .icon-button{width:40px!important}
.search-pill{min-height:42px;background:#fff;border-color:#e2e4e7;box-shadow:none}
.search-sticky{position:sticky;top:0;z-index:7;background:var(--app-bg);box-shadow:0 1px 0 #e7e8ea}
.search-sticky .host-tabs{background:var(--app-bg)}
.host-tabs{min-height:58px;padding:8px 8px 14px}
.ask-ai{display:inline-flex;align-items:center;gap:3px}
.search-mode .phone-scroll,.map-mode .phone-scroll,.phone:has(.search-suggestions) .phone-scroll,.memory-mode .phone-scroll{height:calc(100% - 53px)}
.filter-row{border-top:6px solid #eceef1;background:var(--app-bg)}
.filter-row>span,.filter-row>strong{display:inline-flex;align-items:center;gap:2px;background:#e9ebee;color:#7c828a}
.context-row{background:var(--app-bg);padding-top:2px;padding-bottom:9px}
.grid{background:var(--app-bg)}
.place-card{background:#fff;border:1px solid #eceef0;box-shadow:0 1px 0 #00000003}
.memory-hint{display:flex;align-items:center;gap:6px;margin:0 6px 8px;background:#fff;color:#666d75;border:1px solid #e3e5e8}
.map-entry{background:#fff;border-color:#e3e5e8}
.map-entry>span{display:flex;align-items:center;justify-content:center;gap:3px;background:#f1f2f4}
.footer-note{color:#8d9299}
.search-suggestions{min-height:100%;background:var(--app-bg)}
.search-suggestions .chip{background:#fff;border-color:#dfe2e5;color:#30343a}
.secondary,.inline-note,.comment-placeholder{background:var(--surface-muted);color:#60656c}

.experience-card{border-color:#dedfe2!important;background:#fff}
.experience-card:hover{border-color:#d2d5d9;background:#fafbfc}
.experience-card>.ph-icon{color:#7b8087;justify-self:end}
.experience-icon{color:#ea4149;background:#ffe8ec!important}
.experience-card:nth-child(2) .experience-icon{color:#565b61;background:#f0f1f2!important}
.experience-card:nth-child(3) .experience-icon{color:#ea4149;background:#ffe8ec!important}
.factor-section{margin-bottom:20px}
.factor-section-title{display:block;margin:0 0 10px;color:#7d838b;font-size:11px}
.factor-section .factor-grid{margin-bottom:0}
.secondary-factors{padding-top:2px}
.factor-symbol{color:#33383f}
.factor-card .factor-symbol .ph-icon{width:24px;height:24px}
.factor-card.selected .factor-symbol{color:#ea4149}
.detail-card>span{color:#4c525a}
.flow-mode .summary{background:#fff6f7}

.art .plant{display:grid;place-items:center;width:74px;height:74px;color:#626b5b99;line-height:1}
.art .plant .ph-icon{width:64px;height:64px}
.venue-mark{position:absolute;right:12px;top:12px;z-index:2;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#ffffffb8;color:#59605f}
.art-location .ph-icon{flex:0 0 auto}
.grid .place-card:nth-child(5) .art{height:auto;aspect-ratio:3/4}
.art.mist{background:#b7c3c6}
.avatar.mist{background:#dfe7e9}
.note-action{color:#565b61}
.collected{color:#ea4149}
.location-tag{justify-content:flex-start;min-height:32px;margin-top:7px}
.location-tag .ph-caret-right{margin-left:auto}

.map-mode,.map-mode .phone-scroll{background:var(--app-bg)}
.map-filters{background:var(--app-bg);border-radius:0}
.map-filters span{display:inline-flex;align-items:center;gap:2px}
.map-pin{color:#555b62;text-shadow:0 1px white}
.map-pin>span{background:#5c6269;color:#fff}
.pin-4{left:42%;top:10%}
.map-list{background:#fff;border-radius:18px 18px 0 0;padding:0 10px 22px}
.map-store>button:last-child{display:grid;place-items:center;width:40px;height:40px}
.map-thumb .plant{width:25px;height:25px}
.map-thumb .plant .ph-icon{width:23px;height:23px}
.map-thumb .venue-mark{display:none}

nav{gap:10px}
nav button,nav>span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:48px;color:#868b91}
nav button span,nav small{font-size:11px;font-weight:400}
nav .nav-plus{display:grid;min-width:43px;color:#fff}

.recall-close{width:36px;height:36px;background:#f0f1f2}
.recall-sheet{background:#fff}

.memory-mode,.memory-mode .phone-scroll{background:var(--app-bg)}
.memory-top{padding:4px 0 10px}
.memory-hero{min-height:222px;padding:17px 16px 16px;background:linear-gradient(145deg,#fff0f2 0%,#fff6f7 62%,#f3f4f6 100%)}
.memory-hero:after{border-color:#ea414910}
.demo-data-pill{position:relative;z-index:2;display:inline-flex;padding:4px 8px;border-radius:999px;background:#ffffffc9;color:#9a5b65;font-size:9px;border:1px solid #f0d8dc}
.memory-hero>p.memory-hero-note{color:#8b8f96;margin-top:-16px;margin-bottom:12px}
.memory-metrics{position:relative;z-index:2}
.memory-metrics>div,.memory-metric{min-height:154px;padding:24px 13px 17px;border:1px solid #e7e9ec;border-radius:19px;background:#fff;box-shadow:0 6px 16px #8112240b;display:flex;flex-direction:column;justify-content:space-between;text-align:left}
.memory-metrics strong,.memory-metrics span{display:block}
.memory-metrics strong{font-size:50px;line-height:.95;margin:0}
.memory-metrics span{font-size:11px;color:#666;line-height:1.2}
.memory-metric:disabled{opacity:1;cursor:default}
.memory-metric:not(:disabled):hover{border-color:#ffb7c2}
.memory-patterns .section-title>div small{display:block;margin-top:4px;color:#91969c;font-size:9px}
.pattern-chart{height:238px;display:grid;align-items:stretch;gap:20px;padding:17px 15px 0;border-radius:24px;background:#fff;border:1px solid #e8eaed;overflow:hidden}
.pattern-chart.is-split{grid-template-columns:1fr 1fr}
.pattern-chart.is-single{grid-template-columns:1fr}
.pattern-group{display:flex;min-width:0;flex-direction:column}
.pattern-group-label{font-size:9px;color:#888e95;text-align:center}
.pattern-bars{display:flex;flex:1;align-items:flex-end;justify-content:space-around;gap:6px;min-width:0}
.pattern-column{height:190px;display:flex;flex:1;min-width:0;flex-direction:column;align-items:center;justify-content:flex-end}
.pattern-column i{display:block;width:min(42px,100%);max-height:114px;border-radius:22px 22px 7px 7px;background:#ffabb7!important}
.pattern-group.negative .pattern-column.is-leading i{background:#ea4149!important}
.pattern-group.positive .pattern-column i{background:#d9dce0!important}
.pattern-bubble{width:38px;height:38px;margin-bottom:-27px;background:#fff;border-color:#e4e6e9;color:#464b52}
.pattern-column strong{width:100%;margin-top:8px;font-size:8px;white-space:normal;line-height:1.25;min-height:20px;text-align:center;overflow:hidden}
.pattern-column small{font-size:8px;color:#92989d;margin:2px 0 7px}
.memory-rule{background:#fff;color:#24282e;border:1px solid #e4e6e9;box-shadow:0 5px 18px #00000008}
.memory-rule-icon{background:#ffe8ec;color:#ea4149}
.memory-rule .rule-kicker{font-size:8px;color:#bd1b33}
.memory-rule h2{color:#20242a}
.memory-rule p{color:#7d838a}
.memory-rule button{color:#b21d33}
.empty-memory>.ph-icon{color:#ea4149}

.risk.matched-signal{background:#fff1f3;border-color:#ffd2d9}
.risk .info{display:inline-grid;place-items:center;padding:0;width:18px;height:18px}

@media(max-width:740px){
  .search-mode .phone-scroll,.map-mode .phone-scroll,.phone:has(.search-suggestions) .phone-scroll,.memory-mode .phone-scroll{height:calc(100% - 38px)}
  .search-sticky{top:0}
}

/* Opened posts preserve each source photo's intrinsic aspect ratio. */
.note-page .art.photo.large{height:auto!important;aspect-ratio:auto!important}
.note-page .art.photo.large>img{height:auto!important;object-fit:contain}
.ph-icon{display:inline-block;width:auto;height:auto;flex:0 0 auto;background:none!important;-webkit-mask:none!important;mask:none!important;object-fit:contain;vertical-align:-.14em}
.experience-icon,.factor-card.selected .factor-symbol,.detail-card.selected>span,.memory-rule-icon,.risk .info{filter:sepia(1) saturate(8) hue-rotate(315deg)}
.status-icons .ph-icon{filter:none}
.ph-icon{width:var(--ph-size,22px)!important;height:var(--ph-size,22px)!important;max-width:var(--ph-size,22px);max-height:var(--ph-size,22px)}
.experience-icon,.factor-card.selected .factor-symbol,.detail-card.selected>span,.memory-rule-icon,.risk .info{filter:none!important}
.experience-icon .ph-icon,.factor-card.selected .factor-symbol .ph-icon,.detail-card.selected>span .ph-icon,.memory-rule-icon .ph-icon,.risk .info .ph-icon{filter:invert(24%) sepia(85%) saturate(4687%) hue-rotate(340deg) brightness(106%) contrast(105%)}
.map-thumb .plant{display:none}

/* 2026-09-26 annotation correction pass. */
:root{font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;--app-bg:#fafafa}
.phone,.phone-scroll,.statusbar,.native-search,.search-sticky,.search-sticky .host-tabs,.filter-row,.context-row,.grid,.search-suggestions,.map-mode,.map-mode .phone-scroll,.map-filters,.memory-mode,.memory-mode .phone-scroll{background:#fafafa!important}
.flow-mode,.flow-mode .phone-scroll,.flow-mode .statusbar,.note-page,.note-page .phone-scroll,.note-page .statusbar{background:#fff!important}
.status-reference{display:block;width:115px;height:20px;object-fit:contain}
.status-icons{display:none}
.host-tabs strong span{width:100%;left:0}
.art .plant,.venue-mark{display:none!important}
.social-icon{display:inline-block;flex:0 0 auto;overflow:visible;vertical-align:-.14em}
.liked{color:var(--accent)}
.collected{color:#ffbf53}
.liked .social-icon,.collected .social-icon{fill:currentColor}
.map-pin{color:#c87d20;text-shadow:0 1px #fff}
.map-pin>span{background:#ee9e20;color:#fff}
.map-pin>span .ph-icon{filter:brightness(0) invert(1)}
.memory-hero{min-height:220px;padding:16px;background:linear-gradient(145deg,#ff7081 0%,#ff8d9a 100%)}
.memory-hero:after{border-color:#ffffff24}
.memory-hero>p.memory-hero-note{margin:0 0 11px;color:#fff;font-size:11px}
.memory-metrics>div,.memory-metric{border:0;box-shadow:0 5px 16px #9f001724}
.record-outcome.better{background:#e8f4ff;color:#4d7da1}
.pattern-chart{height:238px;display:flex;flex-direction:column;gap:0;padding:17px 15px 0;background:#fff}
.pattern-heads{display:grid;align-items:center;gap:8px}
.pattern-heads span{color:#888e95;font-size:9px;text-align:center}
.pattern-bars-all{display:grid;flex:1;align-items:end;gap:8px;min-width:0}
.pattern-column{width:100%;height:190px;min-width:0}
.pattern-column i{width:min(42px,100%);background:#ffabb7!important}
.pattern-column.negative.is-leading i{background:#ea4149!important}
.pattern-column.positive i{background:#dcecf8!important}
.pattern-column.positive.is-leading i{background:#9bcff3!important}
.pattern-column strong,.pattern-column small{font-size:9px}
.recall-scrim{animation:recall-fade-in .22s ease-out both;contain:layout paint}
.recall-sheet{animation:recall-slide-up .44s cubic-bezier(.2,.82,.24,1) both;will-change:transform}

/* 2026-09-26 type scale, color and alignment annotation pass. */
:root{--accent:#ea4149;--surface-muted:#f0f0f0}
.statusbar b{font-size:18px;line-height:1}
.status-reference{width:auto!important;height:18px!important;max-width:none}
.filter-row>span,.filter-row>strong,.secondary,.inline-note,.comment-placeholder,.map-entry>span,.experience-card:nth-child(2) .experience-icon,.record-context{background:#f0f0f0!important}
.filter-row>strong{color:#393939!important}
.filter-row>span{color:#b0b0b0!important}
.memory-hint,.context-row .context-label,.context-row .context-trigger,.context-row .context-option,.flow-context,.flow-context .context-trigger,.flow-context .context-option{font-size:12px!important}
.flow-context .context-label>span{font-size:12px}
.art-location{background:rgba(72,72,72,.72)}
.art-location .ph-icon{filter:brightness(0) invert(1)!important}
.matched-signal .signal-label,.matched-signal .personal-match>span,.matched-signal p{font-size:12px}
.matched-signal>strong{font-size:14px;color:#393939}
.map-entry{width:calc(50% - 3.5px);margin-left:calc(50% + 3.5px)}
.search-mode .grid .place-card:nth-child(1) .art{aspect-ratio:2/3}
.search-mode .grid .place-card:nth-child(4) .art{aspect-ratio:3/4}
.art.photo{background:#ece8e2}
.art.photo>img{display:block;width:100%;height:100%;object-fit:cover}
.art.photo:after{display:none}
.art.photo.has-location:after{display:block;background:linear-gradient(0deg,rgba(0,0,0,.22),transparent)}
.art.photo.place-a>img{object-position:50% 52%}
.art.photo.place-b>img{object-position:52% 50%}
.art.photo.place-c>img{object-position:52% 48%}
.art.photo.place-d>img{object-position:50% 56%}
.art.photo.place-e>img{object-position:50% 48%}
.note-page .art.photo.large>img{object-position:50% 50%}
.recall-heading{justify-content:flex-end}
.experience-icon .ph-icon.is-bold,.completion-card .memory-mark .ph-icon.is-bold{filter:none!important}
.experience-card:nth-child(1) .experience-icon{background:#e7f4fd!important;color:#72b8e8}
.experience-card:nth-child(2) .experience-icon{color:#50545a}
.experience-card:nth-child(3) .experience-icon{background:#ffe8eb!important;color:#ea4149}
.completion-card .memory-mark{color:#fff}
.experience-card small,.flow-context>span{font-size:12px}
.stepper span,.stepper .done{color:#b0b0b0}
.stepper .active{color:#292929}
.stepper small{font-size:12px;color:inherit}
.pattern-chart{height:260px}
.pattern-column{height:210px}
.pattern-column strong{display:flex;align-items:flex-start;justify-content:center;width:100%;height:32px;flex:0 0 32px;margin-top:8px;font-size:12px;line-height:16px;white-space:normal;word-break:break-all;text-align:center;overflow:hidden}
.pattern-column small{display:block;height:18px;flex:0 0 18px;margin:2px 0 7px;font-size:12px;line-height:18px}
.pattern-heads span{font-size:12px}
.record-side .record-index,.memory-record:nth-of-type(3n) .record-side .record-index{background:#fff;color:#4d5258;border:1px solid #e1e3e5}

/* No informational copy in the phone UI renders below 12px. */
.phone .eyebrow,.phone .subtle,.phone .privacy,.phone .footer-note,.phone .author-line,.phone .note-location,.phone .recall-actions .text-button,.phone .flow-top,.phone .factor-section-title,.phone .followup-block p,.phone .question-number,.phone .detail-card,.phone .private-pill,.phone .memory-hero>p,.phone .memory-metrics span,.phone .section-title .eyebrow,.phone .section-title>span,.phone .memory-patterns .section-title>div small,.phone .date-capsules small,.phone .pattern-group-label,.phone .memory-rule .eyebrow,.phone .memory-rule .rule-kicker,.phone .memory-rule p,.phone .memory-rule button,.phone .memory-record small,.phone .record-context,.phone .record-outcome,.phone .empty-memory p,.phone .map-pin,.phone .map-store p,.phone .map-store small,.phone .detail-copy .subtle,.phone .follow-label,.phone nav button span,.phone nav small{font-size:12px!important}
.avatar.small{width:22px;height:22px;font-size:12px}

/* 2026-09-26 final annotated detail pass and centered preview shell. */
.shell{display:flex;max-width:none;margin:30px auto 0;padding:0;flex-direction:column;align-items:center;gap:14px}
.phone{width:430px;max-width:100%}
.statusbar>b,.status-reference{transform:translateY(3px)}
.status-reference{height:13px!important}
.filter-row{border-top:0!important}
.art-location{background:rgba(105,105,105,.58)}
.search-mode .grid .map-entry{display:block;width:100%;margin:8px 0 0;break-inside:avoid;background:#fff}
nav{z-index:9;background:#fff}
nav>span:not(.nav-plus),nav .text-button{min-height:32px}
nav .nav-plus{color:#fff}
nav .nav-plus .ph-icon.is-bold{filter:none!important}
.pattern-column strong{color:#363c42}
.memory-rule-icon{color:#ea4149}
.memory-rule-icon .ph-icon,.factor-card.selected .factor-symbol .ph-icon{filter:brightness(0) saturate(100%) invert(35%) sepia(89%) saturate(1465%) hue-rotate(326deg) brightness(94%) contrast(96%)!important}
.factor-card.selected>b .ph-icon{filter:brightness(0) invert(1)!important}
.memory-rule>div>div{display:flex;flex-direction:column;gap:0}
.memory-rule .rule-kicker,.memory-rule h2,.memory-rule p{margin:0;line-height:18px}
.matched-signal p{display:flex;align-items:center;gap:3px}
.matched-signal .info{display:inline-grid;width:16px;height:16px;padding:0;margin:0;color:#4c4c4c}
.matched-signal .info .ph-icon{filter:brightness(0) saturate(100%) invert(29%) sepia(5%) saturate(151%) hue-rotate(314deg) brightness(94%) contrast(87%)!important}
.demo-toolbar{display:flex;width:max-content;max-width:calc(100vw - 24px);grid-column:auto;justify-content:center;gap:12px;padding:0 8px 22px;text-align:center}
.demo-toolbar strong,.demo-toolbar span,.demo-toolbar label,.demo-toolbar button{font-size:12px}
@media(max-width:740px){
  .shell{margin:0;gap:12px}
  .phone{width:100%;max-width:480px}
  html,body,#app,.shell{background:#fff}
  .phone{border:0;border-radius:0;box-shadow:none}
  .demo-toolbar{display:none}
}

/* 2026-09-26 mobile interaction and alignment annotation pass. */
.statusbar>b{font-weight:400;transform:translate(6px,4px)}
.status-reference{height:14px!important;transform:translate(-3px,4px)}
.recall-sheet .sheet-handle{margin-bottom:4px}
.recall-title-row{position:relative;padding-right:44px}
.recall-title-row h2{margin:0 0 8px}
.recall-title-row .recall-close{position:absolute;right:0;top:-3px}
.recall-sheet #recall-description{margin-top:0}
.recall-sheet .recall-actions button{font-size:17px!important}
.memory-rule-icon .ph-icon,.factor-card.selected .factor-symbol .ph-icon{filter:brightness(0) saturate(100%) invert(42%) sepia(36%) saturate(1390%) hue-rotate(314deg) brightness(89%) contrast(91%)!important}

/* 2026-09-26 feed and note chrome refinement. */
.statusbar>b{font-size:17px;font-weight:700;transform:translate(2px,4px)}
.status-reference{transform:translate(1px,4px)}
.phone nav .text-button span,.phone nav>span>small{font-size:16px!important}
.note-page .note-top{position:sticky;top:0;z-index:3;background:#fff}
.comment-placeholder{text-indent:6px}
.note-action{font-weight:500}
.recall-sheet{padding-top:8px}
.recall-sheet .sheet-handle{margin-bottom:32px}
.recall-sheet .recall-actions{margin-bottom:4px}

/* 2026-09-27 demo recording polish. */
.confirm-prompts{display:flex;flex-direction:column;gap:16px;margin:30px 0 16px}
.confirm-prompts .confirm-copy,.confirm-prompts h2,.confirm-prompts .subtle{margin:0}
.phone .modal-backdrop{position:absolute;inset:0;z-index:20;border-radius:inherit;background:rgba(18,20,24,.22);backdrop-filter:blur(4px);padding:22px}
.modal-backdrop .explanation{width:min(287px,calc(100% - 12px));max-width:287px;padding:20px;border-radius:18px}
.explanation h2{margin-bottom:14px}
.explanation h3{margin:15px 0 7px}
.explanation p{line-height:1.65;margin-bottom:0}
.explanation .primary{min-height:40px;padding:10px 12px;margin:10px 0 8px}
.explanation .centered:last-child{margin:6px 0 0}

/* 2026-09-27 recording frame and final memory-copy adjustment. */
.confirm-prompts .confirm-copy{font-size:17px;font-weight:700;line-height:1.65;text-align:left}
.confirm-prompts .confirm-count{color:var(--accent)}
.device-frame{position:relative;width:317.34px;height:688.8px;flex:0 0 auto}
.device-frame .phone{position:relative;z-index:1;width:387px;max-width:none;height:840px;min-height:0;border:0;border-radius:28px;overflow:hidden;transform:scale(.82);transform-origin:top left}
.phone .statusbar{height:53px;margin:0;padding:0 28px}
.shell{margin-top:96px;gap:53.5px}
.demo-toolbar{height:37px;padding:0 8px;align-items:center}
@media(max-width:740px){
  .device-frame{display:contents}
  .device-frame .phone{width:100%;max-width:480px;height:100dvh;min-height:100dvh;border-radius:0;transform:none}
  .phone .statusbar{height:38px;margin:0;padding:0 28px}
}

/* 2026-09-27 端形态分流：桌面端保持原版（介绍栏+手机壳圆角+演示设置+状态栏）；≤740px 手机端纯净版（无演示栏/状态栏/边框，全幅自适应） */
@media(max-width:740px){
  .demo-toolbar{display:none!important}
  .intro{display:none!important}
  .statusbar{display:none!important}
  .device-frame{display:contents}
  .shell{display:block;max-width:none;margin:0;padding:0}
  html,body,#app,.shell{background:#fafafa}
  .device-frame .phone,.phone{width:100%;max-width:480px;margin:0 auto;height:100dvh;min-height:0;border:0;border-radius:0;box-shadow:none;transform:none;overflow:hidden}
  .phone-scroll{height:calc(100% - 62px)}
  .flow-mode .phone-scroll,.note-page .phone-scroll,.memory-mode .phone-scroll,.map-mode .phone-scroll,.search-mode .phone-scroll,.phone:has(.map-page) .phone-scroll,.phone:has(.search-suggestions) .phone-scroll{height:100%}
}
