:root{--canvas:#eeeeee;--paper:#ffffff;--header:#f1f1f1;--composer:#efefef;--field:#f0f0f0;--ink:#111111;--quiet:#8f8f8f;--mint:#d5e6da;--ai:#e8e8e8;--ai-inner:#f8f8f8;--action-pink:#f0d0d0;--done:#faeaea;--done-text:#a0a0a0}*{box-sizing:border-box}body,html{min-height:100%;margin:0;background:var(--canvas);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Heiti SC,PingFang SC,STHeiti,Microsoft YaHei UI,Microsoft YaHei,sans-serif;letter-spacing:0}button,input,textarea{font:inherit}button{border:0;padding:0;background:transparent;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled{cursor:default}.app-shell{width:100%;max-width:402px;min-height:100svh;margin:0 auto;background:var(--paper);overflow:hidden}.chat-shell{height:100svh;display:flex;flex-direction:column}.plain-icon{width:54px;height:54px;place-items:center}.back-icon-wrap,.plain-icon{position:relative;display:grid}.back-icon-wrap{width:18px;height:18px;place-items:center}.notification-dot{position:absolute;top:-3px;right:-4px;width:7px;height:7px;border:1px solid var(--header);border-radius:50%;background:#d76d6d}.plain-icon svg{stroke-width:2.2}.chat-header{flex:0 0 auto;padding-top:env(safe-area-inset-top);background:var(--header)}.chat-toolbar{height:54px;display:grid;grid-template-columns:56px 1fr 56px;align-items:center}.chat-title,.chat-toolbar h1{margin:0;justify-self:center;font-size:17px;font-weight:500;line-height:1}.chat-title{width:auto;height:54px}.chat-toolbar .plain-icon svg{width:18px;height:18px;stroke-width:1.7}.chat-toolbar .menu-button svg{width:24px;height:24px}.menu-button{justify-self:end}.survey-content{flex:1 1;display:grid;place-items:center;background:var(--paper)}.survey-content a{color:var(--ink);font-size:14px;line-height:1;text-decoration:underline}.chat-list{flex:1 1;min-height:0;padding:14px 14px 24px;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:none}.chat-list::-webkit-scrollbar{width:0;height:0}.chat-item-group+.chat-item-group{margin-top:20px}.date-divider{width:max-content;margin:8px auto 17px;color:#747474;font-size:12px;font-weight:400;line-height:1}.chat-item-group:first-of-type .date-divider{margin-top:4px}.system-pill{width:-moz-fit-content;width:fit-content;max-width:260px;margin:10px auto;padding:7px 12px;border-radius:999px;background:#f3f3f3;font-size:13px;line-height:1.3;text-align:center}.system-pill,.system-pill.is-error{color:#626262}.thread{width:100%}.message-row{position:relative;display:flex;justify-content:flex-end;align-items:flex-end;min-height:50px;padding-left:58px}.message-row.is-done{justify-content:flex-start;padding-left:0;padding-right:58px}.message-row.is-receipt{justify-content:flex-end;padding-left:58px;padding-right:0}.user-bubble-wrap{position:relative;display:flex;justify-content:flex-end;max-width:100%}.chat-item-delete-menu{position:absolute;z-index:8;top:100%;right:0;min-width:68px;padding:3px;border:1px solid #dedede;border-radius:6px;background:var(--paper);box-shadow:0 4px 14px rgba(0,0,0,.12)}.message-row.is-done .chat-item-delete-menu{right:auto;left:0}.chat-item-delete-menu button{width:100%;min-height:34px;padding:6px 12px;border:0;border-radius:4px;background:transparent;color:var(--ink);font:inherit;font-size:14px;text-align:center}.chat-item-delete-menu button:active{background:#eeeeee}.message-row.is-done .user-bubble-wrap{justify-content:flex-start}.user-bubble{position:relative;max-width:min(304px,calc(100vw - 98px));min-height:45px;padding:10px 19px 9px;border-radius:34px;background:var(--mint);font-size:14px;font-weight:400;line-height:1.42;text-align:left;white-space:pre-wrap;word-break:break-word;touch-action:manipulation;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.bubble-text{position:relative;z-index:1}.bubble-meta{position:absolute;right:calc(100% + 4px);bottom:3px;display:block;min-width:37px;color:#747474;font-size:12px;font-weight:400;line-height:1.12;text-align:right;white-space:nowrap;pointer-events:none}.message-row.is-done .message-time{right:auto;left:calc(100% + 4px);text-align:left}.user-bubble.is-todo{padding-left:59px}.user-bubble.is-completed-todo{background:var(--done)}.user-bubble.is-receipt{padding-left:59px;background:var(--done)}.todo-check{position:absolute;z-index:1;left:20px;top:10px;width:24px;height:24px;display:grid;place-items:center;border:1.5px solid var(--ink);border-radius:50%;background:var(--paper)}.user-bubble.is-receipt .bubble-text{color:var(--done-text);text-decoration:line-through;-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink);text-decoration-thickness:1px}.todo-check svg{width:20px;height:20px;stroke:var(--ink);stroke-width:1.5}.ai-comment-wrap{position:relative;display:flex;flex-direction:column;align-items:flex-end;margin-top:-3px;padding-left:58px}.ai-comment{position:relative;width:min(303px,calc(100vw - 90px));margin-right:0;padding:10px;border-radius:25px;background:var(--ai)}.ai-comment.is-failed,.ai-comment.is-generating{color:#626262}.ai-comment-inner{min-height:32px;padding:6px 7px;border-radius:24px;background:var(--ai-inner);font-size:14px;line-height:1.3;white-space:pre-wrap;word-break:break-word}.ai-comment.is-failed .ai-comment-inner,.ai-comment.is-generating .ai-comment-inner{display:grid;place-items:center;min-height:45px;color:#626262}.comment-actions{display:flex;align-items:center;gap:3px;min-height:30px;margin:1px 0 0}.comment-actions button{width:27px;height:27px;display:grid;place-items:center;border-radius:7px;color:#333333;transition:background-color .14s ease,color .14s ease}.comment-actions button svg{display:block}.comment-actions button.is-active{background:#2d2d2d;color:var(--paper)}.comment-actions button:disabled:not(.is-active){opacity:.38}.comment-actions button:focus-visible,.interview-action:focus-visible,.mode-button:focus-visible,.plain-icon:focus-visible,.send-button:focus-visible{outline:2px solid #6b6b6b;outline-offset:2px}.composer{flex:0 0 auto;min-height:49px;display:grid;grid-template-columns:27px minmax(0,1fr) 34px;align-items:center;grid-gap:7px;gap:7px;padding:7px 12px calc(7px + env(safe-area-inset-bottom)) 10px;background:var(--composer)}.mode-button{width:27px;height:35px;display:grid;place-items:center;justify-self:center;color:#666666}.mode-button svg{stroke-width:1}.mode-ai_off,.mode-ai_on{color:#777777}.mode-todo{color:var(--ink)}.composer textarea{width:calc(100% - 4px);min-width:0;min-height:35px;max-height:112px;margin-left:4px;padding:7px 11px;overflow-y:hidden;border:0;border-radius:18px;outline:0;resize:none;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.3}.composer textarea::placeholder{color:#b3b3b3}.composer textarea:disabled{background:#f8f8f8}.send-button{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--action-pink);color:var(--ink)}.send-button:disabled{opacity:.55}.send-button svg{stroke-width:2.15}.interview-shell{display:flex}.interview-screen{position:relative;width:100%;min-height:100svh;padding:max(78px,calc(env(safe-area-inset-top) + 58px)) 35px calc(48px + env(safe-area-inset-bottom));display:flex;flex-direction:column}.interview-back{position:absolute;left:0;top:max(32px,env(safe-area-inset-top))}.interview-copy{display:flex;flex-direction:column;gap:34px;font-size:15px;line-height:1.35}.interview-copy p{margin:0}.answer-card{position:relative;width:100%;height:min(45svh,386px);min-height:330px;margin-top:43px;overflow:hidden;border-radius:33px;background:var(--field)}.answer-card textarea{width:100%;height:100%;padding:24px 25px 46px;border:0;outline:0;resize:none;background:transparent;color:var(--ink);font-size:16px;line-height:1.48}.answer-card span{position:absolute;right:25px;bottom:13px;color:var(--ink);font-size:13px}.interview-action{align-self:center;min-width:123px;height:37px;margin-top:46px;padding:0 24px;border-radius:19px;background:#efcfd0;font-size:16px;font-weight:400}.interview-action:disabled{opacity:.6}.interview-screen .system-pill{margin-top:18px}.interview-generating{align-self:center}.onboarding-shell{display:flex}.onboarding-screen{width:100%;min-height:100svh;padding:max(88px,calc(env(safe-area-inset-top) + 66px)) 35px calc(48px + env(safe-area-inset-bottom));display:flex;flex-direction:column;justify-content:space-between;align-items:center}.onboarding-screen.is-install{justify-content:flex-start;padding:max(14svh,calc(env(safe-area-inset-top) + 54px)) 24px calc(42px + env(safe-area-inset-bottom));text-align:center}.onboarding-install-content{width:100%;display:flex;flex-direction:column;align-items:center}.onboarding-avatar{width:100px;height:100px;margin-top:27px;object-fit:contain}.onboarding-install-copy{margin-top:51px}.onboarding-install-copy h1{margin:0;font-size:20px;font-weight:500;line-height:1.3}.onboarding-install-copy p{margin:0;font-size:14px;line-height:1.35}.onboarding-install-instruction{margin-top:18px!important;font-size:15px!important}.onboarding-install-actions{width:100%;min-height:190px;margin-top:135px;display:flex;flex-direction:column;align-items:center;gap:31px}.onboarding-screen.is-install .interview-action{min-width:114px;margin:0}.onboarding-install-note{max-width:290px;margin:-12px 0 0;color:#686868;font-size:13px;line-height:1.45}.onboarding-copy{width:100%;margin-top:15vh}.onboarding-copy h1{margin:0;font-size:16px;font-weight:500;line-height:1.4}.onboarding-copy p{margin:2px 0 0;font-size:13px;line-height:1.45}.onboarding-screen.is-intro{position:relative;justify-content:flex-start;padding:0 18px calc(42px + env(safe-area-inset-bottom));text-align:center}.onboarding-intro{margin-top:clamp(150px,25svh,195px);text-align:center}.onboarding-intro h1{max-width:290px;margin-inline:auto;font-size:18px;line-height:1.32}.onboarding-intro-art{width:112px;height:86px;margin-top:45px;object-fit:contain}.onboarding-intro-description{max-width:282px;margin:35px auto 0!important;color:var(--ink);font-size:13px!important;line-height:1.35!important}.onboarding-note{position:absolute;right:18px;bottom:calc(30px + env(safe-area-inset-bottom));left:18px;max-width:none;margin:0;color:#8d8d8d;font-size:12px;line-height:1.4;text-align:center}.onboarding-screen.is-intro>.interview-action{position:absolute;bottom:calc(105px + env(safe-area-inset-bottom))}.onboarding-screen.is-intro>.system-pill{position:absolute;bottom:calc(68px + env(safe-area-inset-bottom));margin:0}.onboarding-screen:not(.is-install) .interview-action{margin:auto 0 62px}.onboarding-screen.is-intro>.interview-action{margin:0}.interview-chat-batch{display:grid;grid-gap:14px;gap:14px;margin-bottom:13px}.chat-introduction{display:grid;justify-items:center;grid-gap:7px;gap:7px;margin:3px auto 20px}.chat-introduction .system-pill{margin:0}.chat-instructions,.chat-instructions-pill{box-sizing:border-box;width:min(320px,calc(100% - 28px));max-width:none;min-width:0;margin:0;padding-right:14px;padding-left:14px;color:#626262;font-size:13px;line-height:1.5;text-align:center;white-space:pre-line;overflow-wrap:anywhere;word-break:break-word}.interview-art{flex:0 0 auto;align-self:center;width:112px;height:86px;object-fit:contain}.interview-art-step-2{width:52px;height:86px}.interview-screen{padding:max(42px,calc(env(safe-area-inset-top) + 38px)) 31px calc(48px + env(safe-area-inset-bottom))}.interview-screen .interview-copy{margin-top:24px;gap:0;font-size:14px;line-height:1.35}.interview-screen .answer-card{height:min(42svh,318px);min-height:292px;margin-top:46px;border-radius:31px}.interview-screen .answer-card textarea{padding:20px 22px 43px;font-size:16px;line-height:1.45}.interview-screen .answer-card span{right:23px;bottom:11px;font-size:12px}.interview-screen .interview-action{margin-top:38px;height:34px;min-width:112px;font-size:15px}.interview-screen .interview-back{top:max(21px,env(safe-area-inset-top))}@media (min-width:520px){body{display:grid;place-items:start center}.app-shell{min-height:874px;margin:18px auto;box-shadow:0 24px 80px rgba(0,0,0,.12)}.chat-shell{height:874px}.interview-screen{min-height:874px}}@media (max-width:360px){.chat-list{padding-inline:10px}.user-bubble{max-width:calc(100vw - 98px);font-size:14px}.ai-comment{max-width:calc(100vw - 78px);font-size:14px}.ai-comment-wrap,.message-row{padding-left:50px}}