:root{--ink:#343344;--muted:#777389;--page:#efeff6;--white:#ffffffd9;--line:#dcdce9;--accent:#7765a3;--soft:#eeebf5;--rose:#cd8da5;--sea:#79aab4;--alert:#a24750;--shadow:0 16px 44px -30px #40334e70;font-family:"PingFang SC","Noto Sans SC",system-ui,sans-serif;color:var(--ink);background:var(--page);line-height:1.6;font-size:14px}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 0 15%,#eee0eb 0,transparent 45%),radial-gradient(ellipse at 100% 80%,#dcecf3 0,transparent 45%),#f2f2f8;min-height:100dvh}button,input,textarea,select{font:inherit;color:inherit}button{min-height:44px;padding:9px 18px;border:1px solid transparent;border-radius:14px;background:var(--accent);color:#fff;cursor:pointer;transition:background .15s,box-shadow .15s}button:hover{box-shadow:0 4px 16px #7765a32b}button:disabled{opacity:.5;cursor:wait}.secondary{background:#ffffffa8;color:var(--accent);border-color:var(--line)}.text-button{background:transparent;color:var(--accent);padding:7px 0;border-radius:8px;font-size:12px;min-height:44px}.text-button:hover{box-shadow:none;text-decoration:underline}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #9586bb;outline-offset:3px}input,textarea,select{width:100%;padding:11px 13px;border:1px solid var(--line);border-radius:12px;background:#ffffffe0;min-height:44px}textarea{resize:vertical;line-height:1.65}label{display:block;font-size:12px;font-weight:600;margin:13px 0 6px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:600}h1{font-family:"Songti SC","Noto Serif CJK SC",serif;font-size:23px;letter-spacing:.08em;margin:0;line-height:1.3}h2{font-size:21px;letter-spacing:.02em;line-height:1.4;margin-bottom:8px}h3{font-size:15px;margin-bottom:10px}p{margin-bottom:12px}.eyebrow{font-size:10px;letter-spacing:.12em;color:var(--muted);margin:0 0 5px}.masthead{max-width:1500px;margin:auto;padding:22px 32px 18px;display:flex;justify-content:space-between;align-items:center;gap:16px}.brand{display:flex;align-items:center;gap:12px}.rain-mark{width:43px;height:43px;display:grid;place-items:center;font-family:"Songti SC",serif;font-size:24px;color:var(--accent);border:1px solid #fff;border-radius:16px;background:#ffffffa0;box-shadow:var(--shadow)}.header-status{display:flex;align-items:center;gap:15px}.local-label{font-size:11px;color:var(--muted)}.status-pill,.count-badge{background:#ffffffa8;color:var(--accent);padding:5px 12px;border:1px solid #fff;border-radius:30px;font-size:11px;white-space:nowrap}main{max-width:1500px;padding:0 32px;margin:auto}#workspace{display:grid;grid-template-columns:132px minmax(0,1fr);gap:24px}.panels{min-width:0}.tabs{display:flex;flex-direction:column;gap:8px;padding-top:16px;position:sticky;top:20px;align-self:start}.rail-label{font-size:11px;color:var(--muted);margin:0 0 8px 14px}.tabs button{background:transparent;color:var(--muted);text-align:left;display:flex;align-items:center;gap:12px;padding:10px 14px;min-height:52px}.tabs button>span{font-family:"Songti SC",serif;width:29px;height:29px;display:grid;place-items:center;border:1px solid #ffffffce;border-radius:11px;background:#ffffff61;font-size:14px}.tabs button.active{background:#ffffffe0;color:var(--accent);box-shadow:var(--shadow);border-color:#fff}.tabs small{font-size:10px}.rail-foot{border-top:1px solid var(--line);padding:20px 14px;margin-top:22px;color:var(--muted);font-family:"Songti SC",serif;font-size:12px;letter-spacing:.1em;line-height:1.9}.panel{background:var(--white);border:1px solid #fff;border-radius:24px;padding:28px;box-shadow:var(--shadow);min-height:600px}.chat-panel{border:0;background:transparent;padding:0;box-shadow:none}.two-columns{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px}.conversation-column{display:flex;flex-direction:column;min-width:0;height:calc(100dvh - 160px);min-height:650px;max-height:1080px;border:1px solid #fff;border-radius:24px;background:#ffffffd0;box-shadow:var(--shadow);overflow:hidden}.chat-heading{display:flex;align-items:center;gap:12px;padding:22px 24px 18px;border-bottom:1px solid #efedf4}.chat-heading h2{font-size:17px;margin:0}.chat-heading p{font-size:11px;color:var(--muted);margin:4px 0 0}.avatar{width:42px;height:42px;flex:0 0 auto;display:grid;place-items:center;border-radius:15px;background:linear-gradient(140deg,#ddd7ef,#eee9f4);color:var(--accent);font-family:Georgia,serif;font-size:23px}.chat-heading .quiet-label{margin-left:auto;white-space:nowrap}.quiet-label,.small{font-size:11px;color:var(--muted);line-height:1.65}.messages{flex:1;min-height:190px;overflow:auto;padding:20px 24px;scrollbar-width:thin;scrollbar-color:#d6cfe4 transparent}.message{width:fit-content;max-width:91%;margin:0 0 22px auto;padding:14px 17px;background:#eeeaf6;border:1px solid #e6dff2;border-radius:18px 18px 5px 18px;white-space:pre-wrap;overflow-wrap:anywhere}.message.assistant{margin-left:0;margin-right:auto;background:#fff;border-color:#e9e7ef;border-radius:18px 18px 18px 5px;box-shadow:0 5px 16px #36304406}.message .meta{font-size:10px;color:var(--muted);margin-bottom:6px}.message button{display:block;margin-top:9px;min-height:36px;padding:4px 10px;font-size:11px;background:#ffffff90}.message-receipt{margin-top:10px;font-size:10px;color:var(--muted);border-top:1px solid #e5dfed;padding-top:8px}.composer{padding:14px 22px 16px;background:#fffffff0;border-top:1px solid #ebe8f0}.interaction-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.interaction-row>span{font-size:10px;color:var(--muted);margin-right:3px}.interaction-chip{min-height:34px;padding:5px 11px;font-size:11px;color:var(--muted);background:#f7f6fa;border-radius:20px;border:1px solid #eeebf3}.interaction-chip.active{background:var(--soft);color:var(--accent);border-color:#cbbfdf}.composer .small{margin:7px 0 10px}.composer textarea{border:0;background:#f6f5f9;min-height:72px;max-height:170px}.composer-bottom{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:10px}.subject-picker{display:flex;align-items:center;gap:7px;min-width:0}.subject-picker label{white-space:nowrap;font-size:10px;color:var(--muted);margin:0;font-weight:400}.subject-picker select{font-size:11px;width:170px;max-width:100%;min-height:38px;padding:6px 8px;border-color:transparent;background:#f7f6fa}.composer-tip{font-size:10px;color:var(--muted);margin:8px 0 0}.side-note{display:flex;flex-direction:column;gap:16px;min-width:0}.mini-heart,.context-card,.review-card{padding:20px;border-radius:24px;border:1px solid #fff;background:#ffffffab;box-shadow:var(--shadow)}.mini-heart{background:radial-gradient(ellipse at 30% 20%,#f2e7f0,transparent 60%),#ffffffad}.mini-heart .section-heading{margin-bottom:0}.mini-heart h3{font-family:"Songti SC",serif;font-size:23px;font-weight:500;margin:0}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.section-heading h3{margin-bottom:0}.state-mini-text{white-space:pre-wrap;font-size:11px;color:var(--muted);max-height:95px;overflow:auto;margin:0}.mini-heart svg{display:block;width:100%;max-height:238px}.heart-flower{display:block;max-width:440px;margin:auto;width:100%}.heart-label{font-size:10px;fill:var(--muted)}.heart-emotion{font-family:"Songti SC",serif;font-size:20px;fill:var(--ink)}.heart-caption{font-size:8px;fill:var(--muted)}.context-card p,.review-card p{font-size:12px;color:var(--muted)}.context-card .source-link{width:100%;text-align:left;margin-top:8px;font-size:12px;border-radius:12px;padding:9px 12px;min-height:42px}.receipt-status{color:var(--accent);font-size:12px;margin:0 0 8px}.review-card .section-heading{margin-bottom:10px}.actions{display:flex;gap:8px;flex-wrap:wrap}.review-card .actions{justify-content:space-between;align-items:center}.review-card .secondary{font-size:11px;padding:7px 11px}.review-card .small{font-size:10px;margin:12px 0 0}.lead{color:var(--muted);font-size:12px;margin-bottom:22px}.search{padding:16px 20px;background:#f5f3f9;border:1px solid #e9e5f0;border-radius:16px;margin:20px 0 26px}.search label{margin-top:0}.search>div{display:flex;gap:10px}.search p{margin:8px 0 0}.memory-counts{display:flex;gap:10px;flex-wrap:wrap}.memory-counts>span{font-size:11px;padding:6px 12px;background:var(--soft);border-radius:20px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:14px;margin-bottom:28px}.card{border:1px solid var(--line);border-radius:18px;padding:20px;background:#ffffffa6;overflow-wrap:anywhere}.card h3{margin-bottom:8px}.card p{white-space:pre-wrap;font-size:13px}.card .tag{font-size:10px;color:var(--accent);margin-bottom:7px}.card button{font-size:12px}.form-card{max-width:760px;border:1px solid var(--line);border-radius:20px;padding:24px;margin:20px 0;background:#ffffffa0}.form-card button{margin-top:14px}.form-card ol{padding-left:20px;font-size:13px;color:var(--muted)}.filter-label{margin:0;display:flex;align-items:center;gap:8px;color:var(--muted);font-weight:400}.filter-label select{width:125px;min-height:38px;font-size:11px;padding:6px 10px}.empty{padding:28px 20px;color:var(--muted);border:1px dashed var(--line);border-radius:16px;font-size:12px;margin:10px 0}.messages>.empty{max-width:380px;margin:40px auto;background:#ffffff90;text-align:center;line-height:2}.notice{margin:14px 0 8px 156px;min-height:24px;color:var(--accent);font-size:12px;white-space:pre-wrap}.notice.error{color:var(--alert)}#pending-actions{margin-left:156px}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,monospace;font-size:11px;max-height:500px;overflow:auto}.summary,.source-text{padding:18px;background:#f2f0f7;border-radius:14px}.detail-source{margin-top:20px;border-top:1px solid var(--line);padding-top:16px}.heart-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,1fr);gap:24px}.flower-card{border:1px solid #e8e3ef;border-radius:22px;background:radial-gradient(ellipse at 40% 30%,#f0e7f3,transparent 70%),#fbfafc;padding:18px;text-align:center}.drive-card{padding:12px 4px}.drive-row{display:grid;grid-template-columns:57px minmax(0,1fr) 30px;align-items:center;gap:10px;font-size:11px;margin-bottom:14px}.drive-row>span:last-child{color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}.drive-bar{height:7px;width:100%;display:block}.drive-description{grid-column:1/-1;color:var(--muted);font-size:10px;margin-top:-6px;display:none}.drive-row:hover .drive-description,.drive-row:focus-within .drive-description{display:block}.runtime-pills{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:4px}.runtime-pills span{padding:4px 10px;background:#fff;border-radius:20px;font-size:10px;color:var(--muted)}.axes{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.axis{background:#ffffff9c;border-radius:12px;padding:10px 4px;font-size:10px;color:var(--muted)}.axis strong{display:block;font-size:17px;font-weight:500;color:var(--ink);font-variant-numeric:tabular-nums}.tide-card{padding:22px;border:1px solid var(--line);border-radius:20px;margin:24px 0}.chart-legend{display:flex;gap:12px;font-size:10px}.chart-legend span:first-child{color:var(--sea)}.chart-legend span:last-child{color:var(--accent)}.tide-svg{width:100%;display:block}.chart-times{display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}.technical{padding:5px 20px;border:1px solid var(--line);border-radius:16px}.deferred-note{margin-top:22px;color:var(--muted);font-size:11px}.deferred-note p{margin:5px 0 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.signin{max-width:560px;background:#ffffffc7;border:1px solid #fff;border-radius:28px;padding:38px;margin:55px auto 90px;box-shadow:var(--shadow)}.signin h2{font-family:"Songti SC",serif;font-size:28px;margin-top:12px}.signin p{color:var(--muted);font-size:13px}.signin button{margin-top:18px;width:100%}dialog{width:min(720px,calc(100% - 24px));max-height:90dvh;overflow:auto;border:1px solid #fff;border-radius:24px;padding:28px;color:var(--ink);background:#faf9fc;box-shadow:0 24px 80px #30283e33}dialog::backdrop{background:#34314455;backdrop-filter:blur(5px)}dialog form>button{margin-top:18px}summary{cursor:pointer;padding:14px 0;min-height:44px;font-size:12px}footer{max-width:1500px;margin:10px auto;padding:0 32px 20px;font-size:10px;color:var(--muted);text-align:right}[hidden]{display:none!important}
@media(max-width:1150px){.masthead{padding:20px 22px 16px}main{padding:0 22px}#workspace{grid-template-columns:94px minmax(0,1fr);gap:16px}.tabs button{padding:8px;gap:8px;font-size:12px}.rail-label{margin-left:8px}.rail-foot{padding-left:8px}.two-columns{grid-template-columns:minmax(0,1fr) 260px;gap:16px}.mini-heart,.context-card,.review-card{padding:16px}.chat-heading{padding:18px}.messages{padding:18px}.composer{padding:14px 18px}.notice,#pending-actions{margin-left:110px}.chat-heading h2{font-size:16px}.chat-heading .quiet-label{font-size:10px}.heart-layout{gap:16px}}
@media(max-width:900px){.two-columns{grid-template-columns:1fr}.side-note{display:grid;grid-template-columns:1fr 1fr;margin-top:4px}.mini-heart{display:none}.context-card,.review-card{border-radius:20px}.conversation-column{min-height:590px;height:calc(100dvh - 160px)}.heart-layout{grid-template-columns:1fr}.drive-card{padding:14px}.drive-row{margin-bottom:15px}.drive-description{display:block}.local-label{display:none}}
@media(max-width:600px){.masthead{padding:15px 16px 14px;gap:10px}.rain-mark{width:35px;height:35px;font-size:21px;border-radius:12px}.brand{gap:9px}h1{font-size:19px}.brand .eyebrow{font-size:8px}.status-pill{font-size:9px;padding:5px 8px}main{padding:0 12px}#workspace{display:block}.tabs{position:fixed;bottom:0;left:0;right:0;top:auto;z-index:10;padding:8px 8px max(8px,env(safe-area-inset-bottom));background:#f8f7fcf2;backdrop-filter:blur(15px);display:grid;grid-template-columns:repeat(5,1fr);gap:3px;border-top:1px solid #fff}.tabs button{min-height:52px;padding:4px 0;flex-direction:column;gap:2px;font-size:10px;text-align:center;border-radius:14px;position:relative}.tabs button>span{width:24px;height:23px;border:0;font-size:14px;background:transparent}.tabs small{position:absolute;right:14px;top:2px;font-size:9px}.tabs .active{background:#eee9f5!important;box-shadow:none!important}.rail-label,.rail-foot{display:none}.panel{padding:21px 17px;border-radius:20px;min-height:0}.chat-panel{padding:0}.conversation-column{height:calc(100dvh - 170px);min-height:550px;max-height:none;border-radius:21px}.chat-heading{padding:14px;gap:9px}.chat-heading h2{font-size:15px}.chat-heading p{font-size:10px}.avatar{width:34px;height:34px;border-radius:12px;font-size:20px}.chat-heading .quiet-label{font-size:9px}.messages{padding:17px 13px;min-height:145px}.message{max-width:94%;font-size:13px;padding:12px 13px;margin-bottom:18px}.message .meta{font-size:9px}.composer{padding:12px 13px}.interaction-row{gap:5px}.interaction-row>span{display:none}.interaction-chip{min-height:32px;font-size:10px;padding:5px 9px}.composer .small{font-size:9px;margin:6px 0 8px}.composer textarea{font-size:13px;min-height:65px;max-height:140px}.subject-picker{gap:5px}.subject-picker select{width:155px;min-height:36px;font-size:10px}.subject-picker label{font-size:9px}.composer-bottom button{min-height:40px;padding:8px 15px;font-size:12px}.composer-tip{font-size:9px}.side-note{grid-template-columns:1fr;gap:12px;margin-top:14px}.context-card,.review-card{padding:18px}.section-heading{align-items:flex-start;flex-wrap:wrap;gap:10px;margin-bottom:18px}.section-heading h2{font-size:20px}.cards{grid-template-columns:1fr}.search{padding:16px;margin:18px 0 24px}.search>div{gap:8px}.search button{white-space:nowrap;padding:8px 12px;font-size:12px}.filter-label select{width:115px}.memory-counts{gap:7px}.memory-counts>span{font-size:10px}.notice,#pending-actions{margin-left:0}.notice{font-size:11px;margin-top:12px}.tide-card{padding:16px}.flower-card{padding:12px}.chart-legend{font-size:9px;gap:8px}.form-card{padding:20px}.signin{padding:28px 24px;margin-top:35px}dialog{padding:23px 20px;border-radius:21px}.runtime-pills{gap:6px}.runtime-pills span{font-size:9px}footer{padding:8px 18px 95px;font-size:9px;text-align:center}body{padding-bottom:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.chat-heading,.composer{flex-shrink:0}.drive-bar{accent-color:var(--accent)}.drive-bar::-webkit-meter-bar{background:#efecf5;border:0;border-radius:8px}.drive-bar::-webkit-meter-optimum-value{background:#a395bb;border-radius:8px}.drive-bar::-moz-meter-bar{background:#a395bb;border-radius:8px}
@media(max-width:600px) and (max-height:760px){.conversation-column{min-height:0}.messages{min-height:90px}.composer textarea{min-height:60px}.composer-tip{margin-bottom:0}}
.composer-notice{font-size:10px;line-height:1.5;margin:7px 0 0;color:var(--accent)}.composer-notice:empty{display:none}.composer-notice.error{color:var(--alert)}
@media(max-width:600px){input,select,textarea,.composer textarea,.subject-picker select{font-size:16px}.subject-picker select{width:150px}.subject-picker label{display:none}.composer textarea{height:66px}}
.composer #interaction-hint:empty{display:none}.quiet-details{margin-top:9px;white-space:normal}.quiet-details summary{padding:2px 0;min-height:24px;font-size:11px;color:var(--accent)}.quiet-details p{margin:8px 0}.message-subject{font-size:10px;color:var(--muted);margin-top:7px}.message-receipt{font-size:10px}.message.assistant{margin-bottom:16px}.context-card h3{margin-bottom:8px}.context-card .quiet-details{margin-top:13px}.context-card .quiet-details summary{font-size:10px;color:var(--muted)}.mini-heart svg{max-height:205px}.mini-heart .state-mini-text{font-size:10px;margin-top:3px}.chat-heading{padding-bottom:16px}.composer-tip{color:#8c8499}

#account-access,#local-access{display:grid;gap:12px}#account-access[hidden],#local-access[hidden],#logout[hidden]{display:none!important}.header-status{flex-wrap:wrap}#logout{padding:8px 12px;min-height:44px}
