/* V0.4 — intelligent services and a consistent interaction language. */
input,select,textarea{font:inherit;color:var(--ink);max-width:100%}
button,input,select,summary{min-height:44px}
input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid #936485;outline-offset:3px}
button:disabled{opacity:.58;transform:none!important;cursor:wait}
.btn{font-size:13px}.method-card button:disabled{cursor:not-allowed}
.lounge-header nav button{font-size:13px}.review-label{font-size:11px;line-height:1.5;min-width:80px;color:#685664}
.lounge-header nav [aria-current=page]{color:#684462;box-shadow:inset 0 -2px #8e6881}
h1:focus{outline:none}
.page-head p,.reading-card p,.personal-intro p,.section-title p{font-size:14px}
.intelligence-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:30px;align-items:start}
.context-art{border-radius:140px 140px 24px 24px;overflow:hidden;background:#ebe3dc;position:sticky;top:26px;min-height:570px}
.context-art img{height:570px;width:100%;object-fit:cover;filter:brightness(.75)}
.context-art>div{position:absolute;bottom:32px;left:28px;right:28px;color:white}.context-art .eyebrow{color:#ede0d6}.context-art h2{font-size:32px;line-height:1.5;font-weight:500}.context-art p{font-size:14px;line-height:1.9;color:#f1e7dd}
.form-card{background:#fffcf8;border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:0 12px 32px #49304705}
.form-card h2{font-size:23px;font-weight:550;line-height:1.55}.form-card p{font-size:14px;line-height:1.8;color:#786b77}
.form-card label{display:block;font-size:14px;font-weight:550;margin:16px 0 9px}.form-card label:first-child{margin-top:0}
.form-card input:not([type=checkbox]):not([type=hidden]),.form-card textarea,.form-card select{width:100%;border:1px solid #d6c7d1;border-radius:10px;padding:13px 14px;background:#faf7f3;line-height:1.7;font-size:14px}
.form-card textarea{resize:vertical;min-height:96px}.form-card select{padding-right:28px}.form-card input[type=hidden]{display:none}
.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-card .form-hint,.form-hint{font-size:12px;color:#746672;line-height:1.85;margin:18px 0}
.result-region{margin-top:20px;scroll-margin-top:25px}.ai-result{background:#fffcf8;border:1px solid #d9cbd4;border-radius:20px;padding:28px;box-shadow:0 15px 35px #37203708}
.ai-result>header{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:20px}.ai-result>header small{font-family:Din,system-ui;font-size:12px;color:#7b6978;letter-spacing:.08em}
.ai-badge{color:#65415f;background:#efe6ed;font-size:11px;letter-spacing:.04em;padding:7px 10px;border-radius:20px}
.ai-result h2{font-size:23px;line-height:1.6;font-weight:550;margin:0 0 18px}.ai-reply{font-size:15px;line-height:2;white-space:pre-line;overflow-wrap:anywhere;color:#4f4050}
.understood{border-left:2px solid #b896ac;padding:4px 0 4px 15px;margin:20px 0;background:linear-gradient(90deg,#f5eef2,transparent)}.understood>span{font-size:11px;color:#886c7e;letter-spacing:.06em}.understood p{margin:6px 0 0;font-size:13px;line-height:1.7}
.next-actions>div{display:flex;gap:15px;padding:18px 0;border-top:1px solid #e9e0e5}.next-actions>div>b{font-family:Din,system-ui;font-size:23px;color:#a48298}.next-actions section{min-width:0}.next-actions h3{font-size:15px;margin:0 0 8px;line-height:1.6}.next-actions p{font-size:14px;line-height:1.9;color:#766575;margin:0;overflow-wrap:anywhere}
.recommended{padding:17px;background:#f1ebee;border-radius:12px;margin:20px 0}.recommended small{display:block;line-height:1.7;color:#7a6777;font-size:11px}.recommended .text-link{font-size:14px;border:0}
.follow-ups{display:grid;gap:9px;margin:18px 0}.follow-ups>span{font-size:12px;color:#80677a}.follow-ups button{border:1px solid #e0d3dc;border-radius:12px;padding:11px 14px;text-align:left;font-size:13px;line-height:1.7;background:#fcf8fa}.follow-ups button:hover{background:#f3eaf0}
.source-details{border-top:1px solid #e9e0e5;margin-top:18px;padding-top:8px;font-size:12px;color:#786575}.source-details summary{display:list-item;padding:12px 0;cursor:pointer;line-height:1.6}.source-details p{line-height:1.9;font-size:12px;border-left:2px solid #e1d3dc;padding-left:12px}.source-details small{font-size:11px}
.ai-result footer{font-size:11px;line-height:1.8;color:#7e6c78;margin-top:12px}
.loading-state{background:#efe9ed;border:1px solid #dfd1db;border-radius:18px;padding:24px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}.loading-state strong{font-size:15px}.loading-state p{font-size:12px;line-height:1.8;margin:7px 0 0;color:#776575}.loading-dot{width:10px;height:10px;border-radius:50%;background:#96748c;animation:breathe 1.3s infinite}.loading-state .text-link{margin-left:auto}
@keyframes breathe{50%{opacity:.3;transform:scale(.7)}}
.error-state{background:#f9eee9;border:1px solid #dfc3b8;border-radius:14px;padding:22px;color:#7d4d45;font-size:14px;line-height:1.8}.error-state p{font-size:12px;margin:10px 0}.error-state strong{font-size:14px}
.empty-state{padding:25px;background:#efe9e4;border:1px dashed #d4c3cc;border-radius:15px;font-size:14px;color:#786472;line-height:1.9}.empty-state h3{font-size:17px;margin:0 0 10px}.empty-state p{margin:0}
.button-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:20px 0 0}.chat-tools{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;border-top:1px solid var(--line);padding-top:8px}.chat-messages{max-height:min(64vh,650px)!important;overflow-y:auto!important;overscroll-behavior:contain;padding:4px}.chat-messages .ai-result{margin-bottom:24px}.chat-messages .question-bubble{font-size:15px;line-height:1.8;overflow-wrap:anywhere}.demo-composer textarea{font-size:15px;line-height:1.8}.chat-demo{padding-bottom:20px}
.rest-banner{height:290px;border-radius:20px;overflow:hidden;position:relative;margin-bottom:28px}.rest-banner img{width:100%;height:100%;object-fit:cover;filter:brightness(.72)}.rest-banner span{position:absolute;bottom:25px;left:30px;font-size:24px;color:#fff6ef;line-height:1.6}
.sleep-layout{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}.check-line{display:flex!important;align-items:center;gap:10px;font-weight:400!important;line-height:1.7}.check-line input{width:20px;min-height:20px;accent-color:var(--plum);flex-shrink:0}.record-card{border-bottom:1px solid #dfd2da;padding:22px 8px}.record-card small{font-size:11px;color:#826c7b;line-height:1.8}.record-card h3{font-size:16px;line-height:1.7;margin:9px 0}.record-card p{font-size:13px;line-height:1.9;overflow-wrap:anywhere;color:#766371}.record-list{margin:22px 0}.sleep-layout .text-link{margin-right:18px}.sleep-layout .reading-card{margin-top:0}
.studio-page{max-width:1100px}.studio-dashboard{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1px;background:#6c5267;border:1px solid #51374b;border-radius:18px;overflow:hidden}.studio-dashboard>div{padding:23px;background:#493047;color:#fcf5f1}.studio-dashboard small{display:block;color:#cbb5c4;font-size:11px;margin-bottom:12px}.studio-dashboard strong{font-size:17px;font-weight:500;letter-spacing:.03em}
.studio-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:28px 0;border-bottom:1px solid var(--line);padding-bottom:10px}.studio-tabs button{padding:12px 20px;font-size:13px;border-radius:30px;color:#806c7c}.studio-tabs button.is-selected{background:#e8dde4;color:#55324e;font-weight:600}
.studio-teach-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;align-items:start}.studio-teach-layout .section-title-row h2{font-size:19px}.method-card{border:1px solid #d9ccd4;background:#fffcf8;border-radius:16px;padding:23px;margin-bottom:16px}.method-card header{display:flex;justify-content:space-between;gap:10px;align-items:center}.method-card small{font-size:11px;color:#827080;line-height:1.8}.method-card h3{font-size:17px;line-height:1.7;margin:17px 0 10px}.method-card p{font-size:13px;line-height:1.9;white-space:pre-line;overflow-wrap:anywhere;max-height:220px;overflow:auto}.method-card .btn{font-size:12px;padding:10px 15px}.method-card .status-tag{font-size:11px}
.comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:28px}.comparison-grid>div>h3{font-size:15px;padding-left:10px;color:#806278}.comparison-grid .ai-result{padding:22px}.business-banner{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:center;margin-bottom:26px}.business-banner img{width:100%;height:220px;object-fit:cover;border-radius:16px}.business-banner h2{font-size:26px;font-weight:500;line-height:1.6;margin:12px 0}.business-banner p{font-size:14px;color:#806c7a;line-height:1.8}.studio-audit{margin-top:34px;border-top:1px solid var(--line);padding:18px 0;font-size:12px;color:#826d7a}.studio-audit summary{cursor:pointer;line-height:1.8}.studio-audit p{font-size:11px;line-height:1.9;overflow-wrap:anywhere}
#teachStatus,#recordStatus{font-size:13px;line-height:1.8;color:#6d4461;margin-top:15px}
@media(max-width:700px){.intelligence-layout,.sleep-layout,.studio-teach-layout,.comparison-grid{grid-template-columns:1fr;gap:22px}.context-art{min-height:210px;border-radius:18px}.context-art img{height:210px;object-position:center 65%}.context-art>div{left:22px;bottom:15px;right:22px}.context-art h2{font-size:24px;margin:8px 0}.context-art h2 br{display:none}.context-art p{font-size:12px;margin:0;max-width:270px}.context-art .eyebrow{font-size:9px}.form-card,.ai-result{padding:22px}.form-card h2,.ai-result h2{font-size:21px}.rest-banner{height:220px}.rest-banner span{font-size:20px;left:22px;right:22px}.studio-dashboard>div{padding:16px 11px}.studio-dashboard strong{font-size:12px;letter-spacing:0}.studio-dashboard small{font-size:10px;line-height:1.5}.studio-tabs{gap:4px}.studio-tabs button{font-size:12px;padding:10px 12px}.business-banner{gap:15px}.business-banner img{height:180px}.business-banner h2{font-size:19px}.business-banner p{font-size:12px}.review-label{min-width:0;font-size:10px}.field-pair{gap:12px}.form-card select{font-size:13px}.loading-state{padding:20px}.loading-state .text-link{margin-left:24px}.comparison-grid .ai-result{padding:20px}.chat-tools .text-link{font-size:12px}}
@media(max-width:360px){.field-pair{grid-template-columns:1fr;gap:0}.form-card,.ai-result{padding:18px}.studio-dashboard{grid-template-columns:1fr 1fr}.studio-dashboard>div:last-child{grid-column:1/-1}.business-banner{grid-template-columns:1fr}.business-banner img{height:170px}.studio-tabs button{padding:10px;font-size:11px}.hero-bottom-actions .btn{gap:10px;padding:12px 15px}}
@media(max-width:700px){.context-art{position:relative;top:auto}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
