:root{--paper:#f7f4ef;--white:#fffefa;--ink:#302c32;--muted:#7a747b;--plum:#70465f;--rose:#e9d9df;--line:#e5dfd8;--green:#466a58;--serif:"Songti SC","Noto Serif CJK SC",Georgia,serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.65 -apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft Yahei",sans-serif}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #b98b9d;outline-offset:4px}.demo-bar{text-align:center;padding:9px 16px;font-size:11px;letter-spacing:.08em;color:#66575e;background:#eae2dc}.layout{max-width:1260px;margin:auto;display:grid;grid-template-columns:1fr 510px;gap:100px;padding:46px 60px 36px}.intro{position:sticky;top:40px;height:calc(100vh - 130px);min-height:590px;display:flex;flex-direction:column}.wordmark{font:32px var(--serif);letter-spacing:.12em;display:flex;align-items:center;gap:18px}.wordmark span{font:9px sans-serif;letter-spacing:.2em;color:var(--muted)}.intro-copy{margin-top:100px}.eyebrow{font-size:11px;letter-spacing:.17em;color:var(--plum)}h1{font:48px/1.45 var(--serif);letter-spacing:.02em;margin:19px 0 23px}.intro-copy>p:last-child{color:var(--muted);line-height:2}.intro-footer{margin-top:auto;display:flex;justify-content:space-between;gap:12px;font-size:11px;color:var(--muted);padding-top:24px}.text-button{border:0;background:transparent;color:var(--plum);padding:0;font-size:12px}.orbit{height:155px;position:relative;margin-top:30px;width:270px}.orbit i,.orbit b{display:block;width:95px;height:115px;border-radius:50%;position:absolute;transform:rotate(-30deg);left:38px;top:15px;border:1px solid #c9a9b4;background:linear-gradient(150deg,#e8d4da55,transparent)}.orbit b{left:105px;top:25px;transform:rotate(25deg);border-color:#b8c4b0;background:linear-gradient(150deg,#dbe1cf55,transparent)}.orbit em{position:absolute;width:6px;height:6px;background:var(--plum);border-radius:50%;left:134px;top:73px}.app-shell{background:var(--white);border:1px solid var(--line);border-radius:26px;min-height:760px;position:relative;overflow:hidden;box-shadow:0 18px 60px #44343c08;display:flex;flex-direction:column}.app-header{padding:23px 27px 17px;border-bottom:1px solid #efebe6;display:flex;justify-content:space-between;align-items:center}.small-wordmark{font:23px var(--serif);letter-spacing:.08em}.small-wordmark span{font:10px sans-serif;letter-spacing:.03em;margin-left:12px;color:var(--muted)}.edition{font-size:10px;color:var(--muted)}#view{padding:29px 27px 34px;flex:1;min-height:610px;outline:none}.bottom-nav{border-top:1px solid var(--line);padding:17px 12px;display:flex;justify-content:space-around;background:var(--white);position:sticky;bottom:0;z-index:5}.bottom-nav a{font-size:12px;color:var(--muted)}.bottom-nav a.active{color:var(--plum);font-weight:600}h2{font:30px/1.45 var(--serif);margin:12px 0}h3{font:21px/1.5 var(--serif);margin:0 0 9px}p{margin:0 0 12px}.muted{color:var(--muted);font-size:13px}.tiny{font-size:11px;color:var(--muted)}.section-label{font-size:10px;letter-spacing:.16em;color:var(--plum);text-transform:uppercase}.hero{padding:0 0 25px}.hero h2{font-size:34px}.card{padding:22px;border:1px solid var(--line);border-radius:16px;margin-bottom:16px}.card.rose{background:#f4eaf0;border-color:#f0e2e8}.card.sage{background:#f1f3ec;border-color:#e5e9dc}.card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.pill{font-size:10px;padding:4px 9px;border:1px solid #d9c7ce;color:var(--plum);border-radius:100px;display:inline-block}.pill.human{color:var(--green);border-color:#c1d3c5;background:#eef5ef}.primary,.secondary{border-radius:9px;min-height:45px;padding:10px 17px;width:100%;border:1px solid var(--plum);background:var(--plum);color:white;font-size:13px;margin-top:9px}.secondary{background:transparent;color:var(--plum);border-color:#cfbdc5}.inline-actions{display:flex;gap:9px}.inline-actions>*{flex:1}.step{display:flex;gap:15px;padding:16px 0;border-bottom:1px solid #eee9e2}.step:last-child{border-bottom:0}.step>span{font:18px var(--serif);color:#b7a0a8}.step strong{font-weight:500;font-size:13px}.step p{font-size:12px;color:var(--muted);margin:3px 0 0}.back{font-size:12px;color:var(--plum);display:inline-block;margin-bottom:16px}.avatar{width:49px;height:49px;display:grid;place-items:center;border-radius:50%;background:#eadce2;color:#7a5366;font:21px var(--serif);flex-shrink:0}.avatar.sage{background:#e1e7d8;color:#647556}.person{display:flex;gap:12px;align-items:center}.person h3{font-size:20px;margin:0}.person p{font-size:11px;color:var(--muted);margin:2px 0 0}.tags{display:flex;gap:7px;flex-wrap:wrap;margin:13px 0}.tag{padding:3px 8px;background:#f1eee8;color:#756c6d;font-size:11px;border-radius:4px}.quote{border-left:2px solid #ccb2be;padding:3px 0 3px 12px;font:16px/1.9 var(--serif);margin:16px 0}.rule{height:1px;background:var(--line);margin:23px 0}.message{margin-bottom:18px;max-width:91%}.message.self{margin-left:auto}.message-meta{font-size:10px;color:var(--muted);margin-bottom:5px;display:flex;align-items:center;gap:7px}.message.self .message-meta{justify-content:flex-end}.bubble{background:#f2efe9;border-radius:3px 14px 14px 14px;padding:12px 14px;font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere}.message.self .bubble{background:#eee1e8;border-radius:14px 3px 14px 14px}.message.real .bubble{background:#edf3ed;border:1px solid #d9e6d8}.conversation{margin:22px 0}.notice{padding:12px 14px;font-size:11px;line-height:1.8;color:#75666c;background:#f6f0f3;border-radius:9px;margin:14px 0}.notice.success{color:var(--green);background:#edf3ec}.composer{border-top:1px solid var(--line);padding-top:16px}.composer label{font-size:12px;color:var(--plum)}textarea,input,select{background:white;border:1px solid #dcd4d6;border-radius:8px;width:100%;padding:11px 12px;color:var(--ink)}textarea{resize:vertical;min-height:88px}.composer textarea{margin-top:8px}.field{display:block;font-size:12px;margin-top:15px}.field input,.field textarea,.field select{margin-top:6px}.check{display:flex;align-items:flex-start;gap:9px;font-size:12px;margin:16px 0}.check input{width:16px;margin-top:4px;flex-shrink:0}.progress{height:3px;background:#ece4e8;margin:20px 0}.progress span{height:100%;display:block;background:#a8758e}.review-item{margin:17px 0}.review-item label{font-size:10px;letter-spacing:.06em;color:var(--muted)}.review-item p{margin:5px 0;font-size:13px}.empty{text-align:center;padding:40px 20px}.stamp{font:42px var(--serif);color:#b499a7;padding:15px}#toast{position:fixed;left:50%;bottom:90px;transform:translateX(-50%);background:#46323f;color:white;border-radius:9px;padding:11px 18px;font-size:12px;max-width:90vw;z-index:20;display:none}.status-line{display:flex;justify-content:space-between;font-size:12px;padding:10px 0;border-bottom:1px solid var(--line)}.status-line:last-child{border:0}.status-line span:last-child{color:var(--muted)}.split-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.route-error{color:#965050;font-size:12px}hr{border:0;border-top:1px solid var(--line);margin:24px 0}
.modal-backdrop{position:fixed;inset:0;background:#30232c66;z-index:40;display:grid;place-items:center;padding:24px}.modal{width:min(380px,100%);background:var(--white);padding:26px;border-radius:16px;box-shadow:0 20px 80px #30232c22}
@media(max-width:1000px){.layout{gap:35px;padding:30px}.intro-copy{margin-top:85px}h1{font-size:40px}.app-shell{min-height:700px}.layout{grid-template-columns:1fr 470px}}
@media(max-width:760px){.demo-bar{font-size:10px;letter-spacing:0;padding:7px 10px}.layout{display:block;padding:0}.intro{display:none}.app-shell{border:0;border-radius:0;min-height:calc(100dvh - 30px);box-shadow:none;overflow:visible}.app-header{padding:19px 22px 16px}#view{padding:25px 22px 30px;min-height:0}.bottom-nav{padding:16px 8px max(16px,env(safe-area-inset-bottom));position:sticky;bottom:0}.hero h2{font-size:32px}.card{padding:20px}.app-shell #toast{bottom:85px}.edition{font-size:9px}}
@media(prefers-reduced-motion:no-preference){button,a{transition:background .18s,color .18s}button:hover{filter:brightness(.97)}}
