:root{--paper:#faf8f5;--ink:#302b2c;--muted:#8c8385;--rose:#a9546a;--line:#eae4e1;--serif:Georgia,'Times New Roman',serif;--sans:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.6 var(--sans)}button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}a:hover{color:var(--rose)}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,a:focus-visible{outline:3px solid #be7b91;outline-offset:4px}input:focus,textarea:focus{outline:2px solid #c58c9e}[hidden]{display:none!important}.shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{background:#f3efeb;border-right:1px solid var(--line);padding:32px 22px 20px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;gap:12px;align-items:center;font-weight:600;font-size:17px;line-height:1.5}.brand-mark{height:42px;width:42px;background:var(--rose);color:white;border-radius:14px;display:grid;place-items:center;font:italic 23px var(--serif)}.brand-sub{display:block;font-size:8px;color:var(--muted);letter-spacing:2px;margin-top:3px}.sidebar-body{flex:1;padding-top:48px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2px;color:var(--muted)}nav{margin-top:16px;display:grid;gap:8px}.nav-item{padding:12px 10px;display:flex;align-items:center;gap:11px;font-size:12px;color:#746a6c;border-radius:9px}.nav-item>span{font-size:21px;line-height:1}.nav-item.active{background:#eadddf;color:#8f455b;font-weight:600}.sidebar-note{margin:58px 13px;color:#8f7f80}.tiny-star{font-size:25px;color:#b47a8b}.sidebar-note p{font:italic 20px/1.5 var(--serif)}.sidebar-note>span:last-child{font-size:10px}.balance-card{background:#faf8f5;border:1px solid #e3dad6;border-radius:12px;display:flex;justify-content:space-between;align-items:center;padding:16px}.balance-card div>span{font-size:9px;letter-spacing:1.4px;color:var(--muted)}.balance-card strong{display:block;font-size:23px;font-weight:500}.balance-card small{font-size:11px;color:var(--muted);font-weight:400}.balance-card>a{width:30px;height:30px;border:1px solid #dfd1d3;border-radius:50%;text-align:center;color:var(--rose);font-size:20px;line-height:27px}.account-button{border:0;background:none;display:flex;align-items:center;gap:9px;text-align:left;padding:20px 0 16px;width:100%;font-size:11px}.account-avatar{border:1px solid #dcd1cd;border-radius:50%;width:29px;height:29px;display:grid;place-items:center;flex-shrink:0}#account-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-bottom{font-size:8px;letter-spacing:1px;color:#9b8d8e;border-top:1px solid var(--line);padding-top:16px}.main{min-width:0}.topbar{height:78px;border-bottom:1px solid var(--line);padding:0 40px;display:flex;align-items:center;justify-content:space-between;font-size:11px;color:var(--muted)}.top-tag{font-size:10px}#view{max-width:1370px;margin:0 auto;padding:34px 40px 20px}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:26px;gap:16px}h1{font:normal 38px/1.2 var(--serif);letter-spacing:-1.2px;margin:8px 0 10px}h1 em{font-weight:400;color:var(--rose)}.page-heading p{margin:0;color:var(--muted);font-size:12px}.pill{border:1px solid #dfd6d2;color:#8f7e80;padding:5px 10px;border-radius:20px;font-size:9px;white-space:nowrap}.chat-layout{display:grid;grid-template-columns:minmax(320px,1fr) 245px;gap:22px}.chat-card{background:white;border:1px solid var(--line);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;min-height:570px}.chat-header{height:79px;padding:16px 24px;display:flex;align-items:center;border-bottom:1px solid #f0eae7;gap:11px}.avatar{width:43px;height:43px;background:linear-gradient(135deg,#efd7d7,#d9c5d5);border:3px solid #fff;outline:1px solid #eadcdf;border-radius:50%;display:grid;place-items:center;color:#966679;font:24px var(--serif);flex-shrink:0}.chat-header strong{font-size:14px;font-weight:600;display:block}.online{font-size:9px;color:#8d8986}.online i{display:inline-block;width:5px;height:5px;background:#7e9585;border-radius:50%;margin-right:8px}.chat-header .text-button{margin-left:auto;font-size:10px}.chat-messages{flex:1;min-height:320px;max-height:460px;overflow:auto;padding:28px 24px;scroll-behavior:smooth}.day-label{text-align:center;font-size:8px;letter-spacing:1.5px;color:#aaa0a0;margin:0 0 24px}.message{display:flex;gap:9px;margin:0 0 18px;align-items:flex-end}.message .avatar{width:26px;height:26px;font-size:15px;border:0;outline:0}.bubble{background:#f6f2f0;border-radius:14px 14px 14px 3px;padding:14px 17px;max-width:85%;font-size:12px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.message.user{justify-content:flex-end}.user .bubble{background:#a95c70;color:white;border-radius:14px 14px 3px 14px}.message-caption{font-size:9px;color:#aa969b;margin-left:36px;margin-top:-10px}.suggestions{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 5px 35px}.suggestion{background:white;border:1px solid #e8dedb;border-radius:18px;padding:7px 12px;color:#8e777f;font-size:10px}.suggestion:hover{background:#f5e8eb}.composer-area{padding:18px 22px 13px;border-top:1px solid #f0eae7}.composer{display:flex;align-items:flex-end;background:#faf8f6;border:1px solid #e7ded9;border-radius:12px;padding:10px;gap:8px}.composer textarea{resize:none;border:0;background:none;width:100%;height:42px;min-height:42px;padding:10px 4px;font-size:12px;color:var(--ink)}.composer textarea:focus{outline:none}.composer:focus-within{outline:2px solid #c58c9e}.send-button{height:38px;width:38px;flex-shrink:0;background:var(--rose);color:white;border:0;border-radius:9px;font-size:20px}.composer-meta{display:flex;justify-content:space-between;font-size:8px;color:#9a8b8d;margin-top:9px;gap:10px}.profile-card{background:#eee4e5;border-radius:15px;overflow:hidden;border:1px solid #e5d9db}.portrait{height:225px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 25% 20%,#f6e7d9 0%,transparent 50%),linear-gradient(145deg,#dfc3cd,#b68d9f);display:grid;place-items:center}.portrait:before,.portrait:after{content:'';position:absolute;border:1px solid #ffffff60;border-radius:50%;width:220px;height:270px;transform:rotate(-25deg);top:65px;left:-25px}.portrait:after{top:30px;left:70px;transform:rotate(25deg)}.moon{width:95px;height:95px;box-shadow:-23px 9px 0 1px #fff6e8;border-radius:50%;transform:rotate(-25deg) translate(12px,-5px);filter:drop-shadow(0 10px 20px #87657340)}.portrait .spark{position:absolute;font-size:26px;color:#fff5e7;right:39px;top:39px}.portrait .spark2{position:absolute;font-size:14px;color:#fff5e7;left:43px;bottom:48px}.portrait-label{position:absolute;bottom:15px;left:17px;font-size:8px;letter-spacing:2px;color:#fff}.profile-info{padding:19px}.profile-info h2{font:27px var(--serif);margin:0 0 2px}.profile-info .eyebrow{font-size:8px;letter-spacing:1.4px;color:#967781}.profile-info p{font-size:11px;line-height:1.9;color:#8a727b}.tags{display:flex;gap:6px;flex-wrap:wrap}.tags span{font-size:8px;padding:3px 8px;background:#ffffff6b;border-radius:20px;color:#967380}.care-note{padding:22px 9px}.care-note h3{font-size:11px;font-weight:500}.care-note p{font-size:10px;color:#96858a;line-height:1.9}.care-note a{font-size:10px;color:var(--rose)}.inline-status{font-size:11px;color:var(--rose);padding:6px 0;margin:0;min-height:16px}.notice{padding:12px 16px;background:#f3e9e5;color:#8e6665;border-radius:10px;font-size:11px;margin:0 0 22px;border:1px solid #e7d9d3}.primary{background:var(--rose);color:white;border:1px solid var(--rose);border-radius:8px;padding:11px 18px;font-size:12px}.primary:hover{background:#91435a}.secondary{border:1px solid #e1d4d7;background:white;color:var(--rose);border-radius:8px;padding:10px 16px;font-size:12px}.text-button{background:none;border:0;color:var(--rose);padding:5px 0;font-size:12px}.full{width:100%}.credits-hero{border:1px solid #eadfe0;background:linear-gradient(120deg,#f3e6e8,#f5ede6);border-radius:15px;display:flex;justify-content:space-between;padding:30px;align-items:center;margin-bottom:26px}.credits-hero strong{font:43px var(--serif);display:block;margin-top:8px}.credits-hero strong span{font:12px var(--sans);color:#9a7a85}.credits-hero p{margin:0;font-size:11px;color:#957e85}.credit-symbol{font:64px var(--serif);color:#c59aaa}.packs{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.pack{background:white;border:1px solid var(--line);border-radius:13px;padding:25px 22px;position:relative}.pack.featured{border-color:#b77a8c}.pack .popular{position:absolute;right:16px;top:-10px;background:var(--rose);color:white;font-size:8px;letter-spacing:1px;padding:3px 10px;border-radius:20px}.pack h2{font:23px var(--serif);margin:8px 0 18px}.price{font:38px var(--serif)}.price small{font:10px var(--sans);color:var(--muted);margin-left:5px}.pack p{font-size:11px;color:var(--muted);margin:10px 0 25px}.pack .secondary,.pack .primary{width:100%}.purchase-info{margin-top:22px}.check{display:flex!important;align-items:flex-start;gap:9px;font-size:11px!important;color:#84767b;margin:10px 0!important;font-weight:400!important}.check input{width:15px!important;height:15px!important;flex-shrink:0;margin:2px 0 0!important;accent-color:var(--rose)}.check a,.prose a{color:var(--rose);text-decoration:underline}.fine{font-size:10px;color:#97898e;line-height:1.8}.section-title{font:22px var(--serif);margin:32px 0 14px}.ledger{width:100%;border-collapse:collapse;font-size:11px}.ledger th,.ledger td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line)}.ledger th{font-size:9px;letter-spacing:1px;color:var(--muted);font-weight:500}.ledger td:last-child{text-align:right}.empty-ledger{border:1px dashed #decfd1;border-radius:10px;padding:25px;text-align:center;color:var(--muted);font-size:12px}.prose{max-width:740px;background:white;border:1px solid var(--line);border-radius:15px;padding:30px}.prose h2{font:23px var(--serif);margin:25px 0 8px}.prose h2:first-child{margin-top:0}.prose p,.prose li{font-size:13px;color:#807477;line-height:1.9}.prose .updated{font-size:10px}.about-hero{padding:45px 35px;background:#f0e4e6;border-radius:15px;max-width:740px;margin-bottom:20px}.about-hero h2{font:37px/1.3 var(--serif);margin:10px 0}.about-hero p{max-width:460px;font-size:13px;color:#8a747b}footer{display:flex;justify-content:space-between;gap:15px;padding:24px 40px;font-size:9px;color:#a09294}footer div{display:flex;gap:16px;flex-wrap:wrap}dialog{padding:32px;border:1px solid #e8dadd;border-radius:18px;max-width:420px;width:calc(100% - 30px);color:var(--ink);background:var(--paper);box-shadow:0 20px 100px #38232d30}dialog::backdrop{background:#35272d66;backdrop-filter:blur(3px)}dialog h2{font:32px var(--serif);margin:14px 0 8px}dialog>p{font-size:12px;color:var(--muted)}.close-dialog{position:absolute;top:12px;right:15px;border:0;background:none;font-size:24px;color:#937f86}form label{display:block;font-size:11px;font-weight:500;margin:16px 0 0}form input:not([type=checkbox]){display:block;border:1px solid #ddcfd3;border-radius:7px;background:white;padding:11px;width:100%;margin-top:6px;font-size:12px}.form-error{font-size:11px;color:#ae445c;min-height:16px}#auth-switch{margin-top:15px}#toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);padding:13px 20px;border-radius:10px;background:#3d3035;color:white;box-shadow:0 4px 20px #38232d30;max-width:90vw;z-index:10;font-size:12px}
@media(min-width:1500px){#view{padding-top:48px}.chat-card{min-height:640px}.chat-messages{max-height:540px}.portrait{height:270px}.chat-layout{grid-template-columns:minmax(320px,1fr) 280px}}
@media(max-width:1100px){.shell{grid-template-columns:210px 1fr}.sidebar{padding:26px 16px}.brand{font-size:14px}.topbar{padding:0 25px}#view{padding:28px 25px 10px}.chat-layout{grid-template-columns:minmax(300px,1fr) 200px;gap:15px}.profile-info{padding:16px}.portrait{height:200px}h1{font-size:33px}.top-tag{display:none}footer{padding:22px 25px}.pack{padding:23px 16px}}
@media(max-width:900px){.chat-layout{grid-template-columns:1fr}.companion-panel{display:none}.packs{gap:10px}.pack h2{font-size:20px}.pack{padding:22px 12px}.page-heading .pill{display:none}}
@media(max-width:650px){.shell{display:block}.sidebar{position:relative;height:auto;width:100%;padding:16px 18px 10px;border-right:0;border-bottom:1px solid var(--line);display:block}.brand{font-size:15px}.brand-mark{width:36px;height:36px}.sidebar-body{padding-top:14px}.sidebar-body>.eyebrow,.sidebar-note,.balance-card,.sidebar-bottom{display:none}nav{display:flex;gap:5px;margin:0}.nav-item{font-size:10px;padding:8px;gap:6px}.nav-item>span{font-size:17px}.account-button{position:absolute;right:16px;top:18px;width:35px;padding:0}#account-label{display:none}.topbar{height:45px;padding:0 20px;font-size:10px}#view{padding:22px 16px 5px}h1{font-size:32px}.page-heading{margin-bottom:20px}.page-heading p{font-size:11px}.eyebrow{font-size:8px}.chat-card{min-height:540px}.chat-header{padding:14px 17px}.chat-messages{padding:24px 16px;max-height:420px}.composer-area{padding:14px 13px}.suggestions{margin-left:0}.bubble{max-width:90%}footer{padding:24px 18px;flex-direction:column}.packs{grid-template-columns:1fr}.pack{padding:22px;display:grid;grid-template-columns:1fr auto;gap:0 20px;align-items:center}.pack .eyebrow{grid-column:1}.pack h2{margin:3px 0;font-size:23px}.pack .price{grid-column:2;grid-row:1/3}.pack p{margin:8px 0 16px;grid-column:1/3}.pack button{grid-column:1/3}.credits-hero{padding:22px}.prose{padding:23px}.about-hero{padding:25px}.about-hero h2{font-size:30px}.ledger th,.ledger td{padding:10px 4px;font-size:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
