@layer reset,base,layout,components,motion;@layer reset{*,*:before,*:after{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}body,h1,h2,h3,p,ul{margin:0}button,input,textarea{font:inherit;color:inherit}button{border:0;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:disabled{cursor:default}input,textarea{min-width:0}textarea{resize:none}img{display:block}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}button:focus-visible{outline:2px solid #91501e;outline-offset:4px}input:focus,textarea:focus{outline:none}input:focus-visible,textarea:focus-visible{box-shadow:0 2px #91501e}button{background:none}input,textarea{border-radius:0}button[hidden],input[hidden]{display:none}}@layer base{@font-face{font-family:ColinSong;src:url(/assets/fonts/colin-song.woff2) format("woff2");font-display:swap;font-weight:700}:root{--ink: #352b25;--paper: #eee8df;--accent: #91501e;--muted: #716255;--serif: ColinSong, "Songti SC", "STSong", "Noto Serif CJK SC", "SimSun", serif;--sans: "HarmonyOS Sans SC", "Microsoft YaHei", "PingFang SC", sans-serif;--ease: cubic-bezier(.16, 1, .3, 1)}body{color:var(--ink);font-family:var(--sans);font-size:16px;background:#c8b9a7;overscroll-behavior:none}::selection{background:#b2855d50}h1,h2{font-family:var(--serif);font-weight:700}h1{font-size:36px;line-height:1.45}h2{font-size:24px;line-height:1.45}p{overflow-wrap:anywhere}button{transition:transform .18s var(--ease),background-color .18s,color .18s,filter .18s}button:active:not(:disabled){transform:translateY(1px) scale(.965)}button:disabled{opacity:.45}button:hover:not(:disabled){filter:brightness(.97)}}@layer layout{.desktop-stage{height:100%;width:100%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 30% 10%,#eee5d9a6,transparent 65%)}.phone-frame{position:relative;max-width:100vw;overflow:hidden;box-shadow:0 16px 60px #352b2530;border-radius:5px}.phone{position:relative;transform-origin:top left;background:#e0bb94;overflow:hidden;isolation:isolate;perspective:1400px}.kraft-texture{position:absolute;inset:0;background-image:url(/assets/kraft.png);background-size:538px 100%;background-position:-69px 0;mix-blend-mode:multiply;opacity:.66;pointer-events:none}.folder-system{position:absolute;inset:0;pointer-events:none;z-index:0}.folder-layer{position:absolute;inset:40px 7px 12px 15px;background-size:100% 100%;background-repeat:no-repeat;transform-origin:0 54px}.folder-0{background-image:url(/assets/folder-chat.png);z-index:4}.folder-1{background-image:url(/assets/folder-archive.png);z-index:3}.folder-2{background-image:url(/assets/folder-kitchen.png);z-index:2}.folder-3{background-image:url(/assets/folder-personal.png);z-index:1}.folder-layer.selected{z-index:5}.folder-label{display:none}.tabs{position:absolute;left:15px;right:15px;top:45px;height:45px;display:grid;grid-template-columns:repeat(4,1fr);z-index:20}.tabs button{font-family:var(--serif);font-size:24px;font-weight:700;color:transparent;border-radius:20px 20px 0 0;position:relative}.tabs button:focus-visible{outline-offset:-7px}.tabs button:active{background:#91501e0b;transform:translateY(2px)}.page{position:absolute;inset:90px 15px 15px;z-index:10;border-radius:12px;background-position:left -50px;background-size:calc(100% + 8px) calc(100% + 53px);background-repeat:no-repeat;transform-origin:right center;overflow:hidden;animation:paper-arrive .36s var(--ease) both;backface-visibility:hidden}.page.reverse{transform-origin:left center;animation-name:paper-arrive-reverse}.page-0{background-image:url(/assets/folder-chat.png)}.page-1{background-image:url(/assets/folder-archive.png)}.page-2{background-image:url(/assets/folder-kitchen.png);overflow:visible;clip-path:inset(0 -15px -15px -15px)}.page-3{background-image:url(/assets/folder-personal.png)}.greeting{position:absolute;top:calc(50% - 114px);left:0;right:0;text-align:center;letter-spacing:-1.08px}.greeting h1{font-size:36px;line-height:52px}.greeting h1+h1{margin-top:8px}.primary,.soft{border-radius:14px;padding:8px 22px;line-height:1.45;font-family:var(--serif);font-weight:700}.primary{background:var(--accent);color:var(--paper)}.primary:hover{background:#804418}.soft{background:var(--paper);color:var(--muted)}}@layer components{.composer{position:absolute;left:31px;right:29px;bottom:29px;min-height:87px;z-index:30;border-radius:19px;background:#d8d2c7ee;box-shadow:2px 1px 4px #0000002e;padding:12px 9px 7px}.composer>textarea{display:block;background:none;border:0;width:100%;height:33px;padding:0 7px 4px;line-height:24px;font-size:16px;letter-spacing:-.64px}.composer>textarea::placeholder{color:var(--ink);opacity:1}.composer-tools{display:flex;gap:12px;align-items:center;margin-top:7px}.pill{height:28px;padding:0 9px;display:flex;align-items:center;gap:5px;white-space:nowrap;font-size:13px;letter-spacing:-.52px;color:#e4ded5;background:var(--accent);border-radius:14px}.pill svg{width:14px;height:14px;stroke-width:1.7}.pill:first-child svg{width:14px;stroke-width:2}.pill.community{opacity:1}.composer-spacer{flex:1}.round{width:28px;height:28px;border-radius:50%;padding:5px;display:grid;place-items:center}.round svg{width:18px;height:18px;stroke-width:2}.round.upload{background:var(--paper)}.round.send{background:var(--accent);color:var(--paper);margin-left:-2px}.round.send svg{width:20px;height:20px}.attachment-list{display:flex;gap:6px;overflow:auto;padding:0 5px 10px}.attachment-list>span{display:flex;align-items:center;gap:5px;font-size:12px;white-space:nowrap;background:#eee8dfa6;padding:5px 7px;border-radius:8px}.attachment-list img{height:30px;width:30px;object-fit:cover;border-radius:4px}.attachment-list button{font-size:20px;padding:0 2px}.attachment-list svg{width:16px;height:16px}.chat-scroll{position:absolute;inset:29px 12px 115px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;padding-bottom:16px}.chat-scroll::-webkit-scrollbar{display:none}.message{margin-bottom:34px;animation:message-arrive .28s var(--ease);font-size:16px;line-height:23px;letter-spacing:-.35px}.message.user{background:#ded8cfa3;border:1px solid #cfc7bcaa;border-radius:18px 18px 3px;padding:10px 14px;width:fit-content;max-width:335px;margin-left:auto;margin-top:10px;margin-right:6px}.message.assistant{max-width:315px;margin-left:16px}.message-content{white-space:pre-wrap}.thinking-label{font-size:16px;line-height:23px;color:#716255b3;margin-bottom:10px;letter-spacing:-.5px}.thinking-label.thinking{animation:thinking-pulse 1.5s ease-in-out infinite}.sent-attachment{display:flex;align-items:center;gap:5px;font-size:12px;margin-top:6px}.sent-attachment svg{width:14px;height:14px}.context-label{display:flex;align-items:center;gap:8px;max-width:100%;color:var(--accent);font-size:14px;padding:3px 12px 15px}.context-label svg{width:17px;height:17px}.archive-intro{margin:18px 16px 26px;font-size:16px;line-height:1.7}.message-error{color:var(--accent);line-height:1.6}.message-error button{font-size:14px;text-decoration:underline;padding:8px 0}.suggestion-card{position:relative;margin:48px 8px 12px 12px;padding:18px 18px 9px 36px;background:#f2ece3;box-shadow:1px 2px 4px #352b2530;transform:rotate(1deg);border-radius:2px}.suggestion-card>p{display:flex;align-items:center;font-size:16px;gap:6px}.suggestion-card>p svg{width:17px;height:17px;color:var(--accent)}.card-holes{position:absolute;left:12px;top:22px;width:8px;height:8px;box-shadow:0 65px #d1c8bb;background:#d1c8bb;border-radius:50%}.suggestion-actions{display:flex;gap:10px;margin-top:30px}.suggestion-actions button{font-size:24px;padding:5px 16px;white-space:nowrap}.suggestion-actions .soft{background:#c5bcae;color:var(--paper)}.deepen{display:block;margin:10px auto 0;font-size:14px;color:var(--muted);padding:4px 8px}.archive-view{height:100%;position:relative}.folder-toolbar{position:absolute;top:33px;left:35px;right:27px;display:flex;align-items:center;justify-content:space-between;height:30px}.folder-toolbar button{display:flex;align-items:center;gap:9px;font-size:16px;letter-spacing:-.5px}.folder-toolbar svg{color:var(--accent);width:23px;height:23px}.folder-toolbar button:first-child svg{fill:var(--accent);stroke-width:0}.archive-deck{position:absolute;top:85px;left:27px;right:29px;height:400px;touch-action:pan-y;-webkit-user-select:none;user-select:none;cursor:grab}.archive-deck:active{cursor:grabbing}.recipe-stack,.archive-card-face{position:absolute;inset:0}.recipe-stack{top:10px;height:380px;pointer-events:none}.recipe-paper{position:relative;width:354px;height:380px;margin:0 auto;isolation:isolate}.sheet{position:absolute;border-radius:3px;background:#ede7dd;box-shadow:2px 3px 6px #352b2535}.sheet-back{transform:rotate(1.8deg);inset:4px 0 10px 14px;background:#e8e2d8}.sheet-middle{transform:rotate(.5deg);inset:0 10px 5px 9px}.sheet-front{inset:10px 8px 14px;transform:rotate(-2.15deg);background:#eee8df;z-index:-1}.sheet-front i{position:absolute;left:20px;top:59px;width:16px;height:16px;border-radius:50%;background:radial-gradient(circle at 68% 78%,#eee8df 35%,#d7cfc2 66%,#b4aa9b 95%);box-shadow:inset 1px 2px 2px #5e51453d,0 1px #fff8efb0}.sheet-front i:nth-child(2){top:176px}.sheet-front i:nth-child(3){top:293px}.archive-paperclip{position:absolute;right:-1px;top:-63px;width:108px;height:192px;mix-blend-mode:multiply;pointer-events:none}.recipe-copy{position:absolute;inset:25px 12px 15px 64px;padding-left:28px;overflow-y:auto;scrollbar-width:none}.recipe-copy h1{font-size:36px;line-height:52px;letter-spacing:-1.1px;position:relative;white-space:nowrap}.recipe-copy h1 svg{position:absolute;width:21px;height:21px;left:-29px;top:15px;color:var(--accent)}.recipe-lines{list-style:none;padding:4px 0 0;font-size:15px;line-height:1.45;letter-spacing:-.5px}.recipe-lines>li{margin-top:10px;position:relative}.recipe-lines>li:before{content:"•";position:absolute;left:-23px;color:var(--accent);font-size:19px}.recipe-lines ul{padding-left:13px;font-size:15px;list-style-type:disc}.recipe-lines strong{color:var(--accent);font-weight:700}.recipe-lines ul li::marker{font-size:10px}.archive-photo{position:absolute;top:481px;left:calc(50% + 6px);width:324px;height:247px;transform:translate(-50%)}.archive-print{position:absolute;inset:0;filter:drop-shadow(4px 5px 5px #352b2533)}.archive-print>img{width:100%;height:100%;object-fit:cover}.archive-print>img[src$=".webp"]{border:7px solid #f3ede4;border-bottom-width:10px;transform:rotate(1deg)}.turn-under{animation:reveal-under .32s var(--ease) both}.turn-over{--turn-side: -1;z-index:1;pointer-events:none;animation:lift-paper .32s var(--ease) both}.turn-over.reverse{--turn-side: 1}.archive-print.turn-over{animation-name:lift-print}.memory-photo{width:100%;height:100%;background:#e1d6c4;border:9px solid var(--paper);display:flex;align-items:center;justify-content:center;gap:12px;font:26px var(--serif)}.memory-photo svg{width:29px;height:29px;color:var(--accent)}.archive-pagination{position:absolute;left:84px;right:84px;bottom:103px;height:24px;display:flex;justify-content:space-between;align-items:center}.archive-pagination>button{padding:4px;color:var(--muted)}.archive-pagination svg{width:18px;height:18px}.page-dots{display:flex;gap:11px;align-items:center;max-width:170px;overflow:auto;scrollbar-width:none}.page-dots button{width:7px;height:7px;border-radius:50%;background:#71625555;padding:0;flex-shrink:0}.page-dots button.active{background:var(--accent);transform:scale(1.2)}.archive-cta{position:absolute;bottom:36px;left:50%;transform:translate(-50%);font-size:36px;line-height:52px;padding:2px 32px;border-radius:14px;white-space:nowrap}.archive-cta:active:not(:disabled){transform:translate(-50%) scale(.965)}.attempt-link{position:absolute;bottom:111px;left:50%;transform:translate(-50%);font-size:13px;color:var(--accent);background:#eee8dfd9;padding:5px 10px;border-radius:12px;z-index:2}.archive-view:has(.attempt-link) .archive-pagination{bottom:141px}.kitchen-scene{position:absolute;left:0;right:0;top:-8px;height:393px;display:grid;place-items:center;pointer-events:none;z-index:1}.kitchen-scene>img{width:100%;height:100%;object-fit:contain;animation:scene-arrive .25s ease-out both}.kitchen-paper-stack{position:absolute;inset:388px -45px -180px;z-index:2;pointer-events:none}.kitchen-paper-stack>div{position:absolute;inset:0;background:#eee8df url(/assets/folder-archive.png) center 60% / 110% 130%;box-shadow:0 -4px 5px #71625544;transform:rotate(-1.09deg)}.kitchen-paper-stack>div+div{top:12px;transform:rotate(2.26deg);background-position:center 65%}.binder-clip{position:absolute;left:-38px;top:309px;width:168.281px;height:168.281px;transform:rotate(2.76deg);z-index:5;pointer-events:none;filter:drop-shadow(4px -2px 3px #71625555)}.cooking-panel{position:absolute;inset:414px 13px 24px;z-index:4;display:flex;flex-direction:column}.step-top{position:relative;display:flex;justify-content:center;align-items:center;line-height:40px;font:700 24px/40px var(--serif);height:40px}.step-top button{position:absolute;right:1px;padding:6px;opacity:.55}.step-top .previous-step{left:2px;right:auto}.step-top .previous-step:disabled{visibility:hidden}.step-top button.speaking{opacity:1;color:var(--accent)}.progress-track{height:10px;margin:21px 5px 0;background:#7162556e;border-radius:5px;overflow:hidden;flex-shrink:0}.progress-track>div{width:100%;height:100%;background:var(--accent);transform-origin:left;transition:transform .5s var(--ease);border-radius:5px}.step-copy{padding-top:18px;animation:step-arrive .36s var(--ease)}.step-copy h2{text-align:center;line-height:40px;margin-bottom:26px;font-size:24px;letter-spacing:-.72px}.step-copy p{font-size:24px;line-height:1.23;letter-spacing:-.72px;white-space:pre-wrap}.kitchen-actions{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:auto;padding-bottom:15px}.kitchen-actions>button{font-size:36px;line-height:52px;height:66px;padding:4px;border-radius:14px}.kitchen-timer{display:flex;align-items:center;justify-content:center;gap:8px;font-size:14px;color:var(--muted);padding:16px 0 7px}.kitchen-timer input{width:41px;border:0;border-bottom:1px solid #71625566;background:none;padding:3px 0;text-align:center;font-size:14px}.kitchen-timer button{border:1px solid #71625566;border-radius:20px;padding:4px 10px;white-space:nowrap}.kitchen-timer button:last-child{border-color:transparent}.done-panel{position:absolute;inset:432px 20px 27px;z-index:5;display:flex;align-items:center;flex-direction:column}.done-mark{width:62px;height:62px;border:1.5px solid #91501e88;border-radius:50%;display:grid;place-items:center;margin:0 0 12px;color:var(--accent)}.done-mark svg{width:34px;height:34px}.done-panel h1{font-size:40px}.done-panel>p{font-size:20px;margin-top:9px}.done-panel>.primary{font-size:30px;align-self:stretch;margin-top:auto;padding:10px}.text-action{padding:14px;font-family:var(--serif);font-size:20px;color:var(--muted)}.record-panel{position:absolute;inset:14px 14px 13px;z-index:8;background:#eee8df url(/assets/folder-chat.png) center 60%/110% 130%;box-shadow:1px 2px 8px #352b2526;padding:22px 23px;display:flex;flex-direction:column;overflow:auto;border-radius:4px}.record-panel h1{font-size:32px}.record-title{color:var(--muted);margin:1px 0 25px}.record-panel>label{display:block;font-size:16px;margin:17px 0 7px}.record-panel>input,.record-panel>textarea{border:0;background:#d8d2c759;padding:12px;border-radius:7px;font-size:16px;line-height:1.5;flex-shrink:0}.record-panel>textarea{height:100px}.rating{display:flex;gap:13px}.rating button{font-size:32px;color:#b8ad9f;padding:0}.rating button.filled{color:var(--accent)}.photo-upload{min-height:76px;border:1px dashed #71625577;border-radius:7px;display:flex;align-items:center;justify-content:center;gap:10px;margin-top:24px;color:var(--muted);flex-shrink:0}.photo-upload>img{width:100%;height:140px;object-fit:cover}.record-actions{display:flex;gap:10px;margin-top:auto;padding-top:25px}.record-actions>button{flex:1;font-size:25px;padding-inline:6px}.profile-page{position:absolute;inset:28px 25px 15px;overflow:auto;scrollbar-width:none}.profile-card{position:relative;width:100%;text-align:center;padding:32px 10px 20px}.avatar{display:grid;place-items:center;width:76px;height:76px;margin:0 auto 14px;background:#bda58b;border-radius:50%;font:38px var(--serif);color:var(--paper);box-shadow:inset 0 0 0 5px #f1eadb66}.profile-card h1{font-size:32px}.profile-card p{font-size:15px;color:var(--muted);margin-top:5px}.profile-card>svg{position:absolute;right:8px;top:44px;color:var(--accent)}.personal-menu{border-top:1px solid #71625544;margin-top:30px}.personal-menu button{width:100%;height:76px;border-bottom:1px solid #71625544;display:flex;align-items:center;justify-content:space-between;padding:0 9px;font:700 24px var(--serif)}.personal-menu svg{color:var(--muted);width:18px}.profile-colin{height:224px;width:100%;object-fit:contain;margin-top:37px}.modal-backdrop{position:absolute;inset:0;background:#352b2552;z-index:70;display:flex;align-items:flex-end;padding:92px 20px 24px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:message-arrive .2s ease}.paper-modal{position:relative;width:100%;max-height:100%;overflow-y:auto;background:#eee8df url(/assets/folder-chat.png) center 60%/110% 125%;padding:34px 25px 30px;border-radius:12px;box-shadow:0 12px 40px #352b2544;animation:modal-arrive .38s var(--ease);scrollbar-width:thin}.paper-modal h1{font-size:29px;margin-bottom:24px}.modal-close{position:absolute;right:13px;top:13px;padding:6px;color:var(--muted)}.archive-choices{display:flex;flex-direction:column;gap:2px}.archive-choices>button{display:flex;align-items:center;gap:12px;padding:19px 0;border-bottom:1px solid #71625540;text-align:left;width:100%;font-family:var(--serif);font-size:23px}.archive-choices>button>svg:first-child{color:var(--accent);width:21px}.archive-choices>button>span{flex:1}.archive-choices small{display:block;font:13px/1.5 var(--sans);color:var(--muted);margin-top:6px}.archive-choices>button>svg:last-child{width:16px}.field{display:flex;flex-direction:column;gap:10px;font-size:16px;margin-top:22px}.field input,.field textarea{background:#d8d2c766;border:0;border-radius:6px;padding:12px 11px;line-height:1.5}.field textarea{min-height:95px}.modal-save{width:100%;margin-top:30px;font-size:24px}.tone-options{display:flex;gap:10px;margin:12px 0 25px}.tone-options button{padding:8px 18px;border:1px solid #71625555;border-radius:20px}.tone-options button.selected{background:var(--accent);border-color:var(--accent);color:var(--paper)}.colin-info{text-align:center}.colin-info>img{width:100%;height:270px;object-fit:contain;margin:5px 0 25px}.colin-info h2{font-size:22px}.colin-info p{font-size:16px;line-height:1.8;margin-top:13px}.history-list article{border-top:1px solid #71625544;padding:21px 0}.history-list article:first-child{margin-top:21px}.history-date{font-size:13px;color:var(--muted);margin-bottom:6px}.history-list h2{font-size:21px;margin-bottom:10px}.history-list article>p{line-height:1.7;margin-top:5px}.history-list img{max-width:100%;margin-top:16px;border:6px solid var(--paper)}.toast{position:absolute;z-index:90;bottom:140px;left:50%;transform:translate(-50%);width:max-content;max-width:350px;background:#352b25ed;color:var(--paper);font-size:15px;line-height:1.5;padding:11px 17px;border-radius:12px;text-align:center;box-shadow:0 4px 20px #352b2533;animation:toast-arrive .24s var(--ease);pointer-events:none}@media(max-width:600px){.desktop-stage{display:block}.phone-frame{border-radius:0;box-shadow:none}}@media(max-height:740px)and (max-width:600px){.archive-photo{top:auto;bottom:130px;width:280px;height:180px}.archive-deck{transform:scale(.9);transform-origin:top center}.cooking-panel{inset-block-start:395px}.step-copy h2{margin-bottom:14px}.step-copy p{font-size:22px}.kitchen-actions>button{height:56px;font-size:31px}.kitchen-actions{padding-bottom:0}}}@layer components{.greeting{top:calc(50% - 112px)}.folder-toolbar{left:30px;right:20px}.folder-toolbar button{padding:0}.folder-toolbar svg{width:24px;height:24px}.recipe-copy{top:28px}.archive-cta{left:calc(50% + 5.5px);width:197px;height:66px;padding:4px 0}.step-top>span{translate:0 5px}.step-copy h2{margin-bottom:20px}@media(max-height:740px)and (max-width:600px){.archive-photo{top:auto}.step-copy h2{margin-bottom:14px}}}@layer motion{@keyframes paper-arrive{0%{box-shadow:-5px 2px 11px #50371d28;transform:perspective(1200px) translate(21px) rotateY(-16deg)}to{box-shadow:0 0 #50371d00;transform:perspective(1200px) translate(0) rotateY(0)}}@keyframes paper-arrive-reverse{0%{box-shadow:5px 2px 11px #50371d28;transform:perspective(1200px) translate(-21px) rotateY(16deg)}to{box-shadow:0 0 #50371d00;transform:perspective(1200px) translate(0) rotateY(0)}}@keyframes lift-paper{0%{opacity:1;transform:perspective(800px) translate(0) rotateY(0)}60%{opacity:.85}to{opacity:0;transform:perspective(800px) translate(calc(38px * var(--turn-side)),-16px) rotateY(calc(20deg * var(--turn-side))) rotate(calc(2deg * var(--turn-side)))}}@keyframes lift-print{0%{opacity:1;transform:translate(0) rotate(0)}55%{opacity:.9}to{opacity:0;transform:translate(calc(33px * var(--turn-side)),-11px) rotate(calc(4deg * var(--turn-side)))}}@keyframes reveal-under{0%{transform:translateY(6px) scale(.985)}to{transform:translateY(0) scale(1)}}@keyframes scene-arrive{0%{opacity:0}to{opacity:1}}@keyframes message-arrive{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes step-arrive{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes modal-arrive{0%{opacity:0;transform:translateY(50px) rotate(-1deg)}to{opacity:1;transform:translateY(0) rotate(0)}}@keyframes thinking-pulse{50%{opacity:.5}}@keyframes toast-arrive{0%{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}}
