/* Shared visual system, September 24. Natural-width type, pastel light and stable navigation. */
:root{--ink:#181e27;--muted:#717779;--blue:#e4f2f8;--sage:#e7efe7;--surface:#faf9f6;--accent:#537888;--line:#e2e8e6}
html{color-scheme:light}body{background:#f6f6f1;color:var(--ink);font-family:Arial,system-ui,sans-serif;font-stretch:normal;letter-spacing:normal}h1,h2,h3,strong,button,input,textarea,select{font-stretch:normal;letter-spacing:normal;color:var(--ink)}h1{font-size:30px;line-height:1.18}h2{font-size:22px}h3{font-size:18px}.shell{max-width:960px;padding:0 22px 135px}header{background:transparent;border:0;padding:20px 0;height:76px}.brand{color:var(--ink)}.brand span{display:none}.header-right{font-size:10px;gap:5px}.live-dot{width:4px;height:4px}.profile-shortcut{width:38px;height:38px}.muted,.eyebrow,.footnote,small{color:var(--muted)}.eyebrow{letter-spacing:.04em;font-size:11px}.card,.note,.model-card,.more-tile,dialog{border:1px solid transparent;background:linear-gradient(130deg,#fffefa,#f8faf7) padding-box,linear-gradient(125deg,#fff,#d7e6ed,#e3eadc) border-box;border-radius:24px;box-shadow:0 8px 24px #35444509,0 2px 5px #35444505}.card{padding:22px}.card .card{box-shadow:0 4px 14px #35444507}.lower{margin-top:18px}.grid{gap:18px}button,.primary,.round,.text-button{border:1px solid transparent;background:linear-gradient(135deg,#fffefa,#e8f2f6) padding-box,linear-gradient(120deg,#fff,#c8dce4,#e1eadb) border-box;color:var(--ink);border-radius:16px;box-shadow:0 4px 10px #3749500b;transition:background .18s,box-shadow .18s,transform .18s}button:hover{filter:brightness(1.025)}button:active{transform:translateY(1px);box-shadow:inset 0 2px 5px #45647013;filter:brightness(1.04)}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #82b6ca;outline-offset:3px}button:disabled{opacity:.48;cursor:default}input,textarea,select{background:#fffefa;border:1px solid #dce5e6;border-radius:14px;font-size:16px}input[type=range]{accent-color:#8fb8c6}.primary{background:linear-gradient(130deg,#e3f1f9,#ebf2e6) padding-box,linear-gradient(120deg,#fff,#bed6e2) border-box}.selected,button[aria-pressed=true]{background:linear-gradient(130deg,#dceef7,#e7f0e6)!important;color:var(--ink)!important}.line-icon{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#today .hero{min-height:240px;height:260px;display:block;overflow:visible;border-radius:25px;margin:8px 0 18px;padding:28px;background:linear-gradient(90deg,#f4f5eee3,transparent 80%),url('/assets/nature-morning.webp') center 59%/cover;box-shadow:0 8px 25px #3c505814}#today .greeting{position:relative;z-index:1;max-width:70%;padding:0}#today .greeting .lead,#today .orbit-stage,.orbit-ritual,.orbit-caption,#today .greeting .accent{display:none}#today #date{font-size:12px;color:#404d50;margin:5px 0 13px}#today #greeting{font-size:29px;margin:0 0 12px;line-height:1.2}#today .pearl-state-open{font-size:13px;padding:8px 12px;background:#ffffff95}.pearl-avatar{position:absolute;right:12px;top:-28px;width:90px;height:90px;border-radius:50%;overflow:hidden;padding:0;background:#fafbf7;border:4px solid #f6f6f1;box-shadow:0 5px 18px #66777922}.pearl-avatar img{width:100%;height:100%;object-fit:cover}.home-grid{display:flex;flex-direction:column}.home-side{display:contents}.compact-state{margin-bottom:18px}.compact-state>h2,.compact-state>.eyebrow,.live-compass,.compact-state>summary{display:none}.compact-state:not([open]){display:none}.compact-state #stateForm{margin:0}.daily-cycle{order:3}.focus-card{order:1}.focus-card h2{font-size:22px}.focus-card .section-title{display:none}.focus-card form{margin-bottom:14px}.orbit-next{background:linear-gradient(120deg,#fffefa,#eaf3f6);border:1px solid #e0e8e7;border-radius:22px;padding:18px;margin:16px 0;box-shadow:0 5px 15px #3c505807}.orbit-next h2{font-size:18px}.orbit-next .eyebrow{font-size:20px;color:var(--ink);text-transform:none;margin:0 0 10px}.task{border:0;border-bottom:1px solid #e8edeb;border-radius:0;padding:14px 0;align-items:center}.task p{font-size:16px}.task button{min-width:38px}.pearl-quick{display:flex;gap:8px;align-items:center;margin-bottom:16px}.pearl-quick input{flex:1;min-width:0}.pearl-quick button{width:42px;height:44px;display:grid;place-items:center;padding:9px}.pearl-quick .line-icon{width:21px}
.bottom-nav{position:fixed;left:50%;bottom:0;transform:translateX(-50%);width:min(100%,700px);height:100px;padding:12px 8px max(10px,env(safe-area-inset-bottom));display:grid;grid-template-columns:1fr 1fr 1fr 1.15fr 1fr 1fr;gap:2px;border-radius:26px 26px 0 0;border:1px solid #fff;background:#fafaf4ef;backdrop-filter:blur(20px);box-shadow:0 -6px 24px #40505b0b;z-index:50}.bottom-nav>button{display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:11px;gap:6px;padding:8px 2px;border:0;box-shadow:none;background:transparent;border-radius:18px;min-width:0}.bottom-nav .line-icon{width:24px;height:24px}.pearl-dock{position:relative;display:flex;align-items:center;flex-direction:column}.pearl-dock #globalVoice{position:relative;inset:auto;transform:none;width:59px;height:59px;min-height:59px;margin-top:-30px;padding:16px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(140deg,#f9ffff,#b6d9ec);color:#557b8a;box-shadow:0 8px 15px #7ea6b24a,inset 0 2px 3px #fff;z-index:1}.pearl-dock:before{content:'';position:absolute;width:78px;height:62px;top:-27px;border-radius:50%;background:radial-gradient(ellipse,#b8def3bb,transparent 70%);filter:blur(6px);animation:pearl-glow 2.6s ease-in-out infinite}.pearl-dialog-toggle{margin-top:6px;padding:3px 12px!important;min-height:28px;background:transparent!important;box-shadow:none}.pearl-dialog-toggle .line-icon{height:18px}#globalVoice.recording{background:linear-gradient(130deg,#e7f4ff,#add9d3)}#globalVoice.busy{animation:pearl-glow 1s infinite}.pearl-dialog{position:fixed!important;inset:auto 0 102px;margin:auto;width:min(700px,100%);max-height:77dvh;overflow:auto;z-index:49;padding:0 8px;animation:pearl-rise .3s ease-out;filter:drop-shadow(0 -15px 40px #3d4e5124)}.pearl-dialog>.card{border-radius:28px 28px 8px 8px;background:#fbfcf7}.pearl-dialog-close{float:right}.orbit-assistant-intro{display:none}.message,.message.user,.message.assistant{border:1px solid #e4e9e6;border-radius:20px;background:linear-gradient(125deg,#fffefa,#f7f7f0);color:var(--ink)}.message.user{background:linear-gradient(125deg,#edf7fc,#e2f1fa)}
.pearl-field{position:relative;width:100%;height:200px;border-radius:23px;overflow:hidden;background:linear-gradient(0deg,#faf7ee80,transparent),linear-gradient(110deg,#bbdcec,#e8e9e0 51%,#f3d9c5);user-select:none;-webkit-user-select:none;touch-action:none;cursor:crosshair;box-shadow:inset 0 1px 10px #fff8}.pearl-field *{user-select:none;-webkit-user-select:none}.pearl-number{position:absolute;inset:0;display:grid;place-items:center;font-size:96px;font-weight:500;color:#ffffffeb;pointer-events:none;text-shadow:0 1px 1px #8881}.pearl-lens{position:absolute;width:41px;height:41px;border-radius:50%;border:1.5px solid #fff;transform:translate(-50%,-50%);box-shadow:0 0 18px #ffffffc9,inset 0 3px 6px #fff,inset 0 -3px 8px #ffffff90,0 4px 10px #59727c25;backdrop-filter:blur(1px) brightness(1.16);pointer-events:none}.pearl-lens:before{content:'';position:absolute;top:5px;left:8px;width:17px;height:8px;border-radius:50%;background:#ffffffbf}.pearl-axis{position:absolute;font-size:11px;color:#45565d;pointer-events:none}.pearl-axis.top{top:10px;left:50%;transform:translateX(-50%)}.pearl-axis.left{left:12px;bottom:12px}.pearl-axis.right{right:12px;bottom:12px}.pearl-emotions{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}.pearl-emotions button{font-size:13px;padding:10px 12px}.pearl-shades{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.pearl-shades button{font-size:13px;padding:7px 10px}.pearl-selected{background:linear-gradient(130deg,#dcedf6,#e5efdf)!important}.pearl-selected-list{font-size:13px;color:#617575;min-height:20px}.pearl-ranges{display:grid;gap:8px;width:100%}.pearl-ranges label{display:grid;grid-template-columns:110px 1fr 24px;gap:10px;align-items:center;font-size:14px}.pearl-ranges input{width:100%;padding:0}.balance-layout{grid-template-columns:1fr}.balance-wheel{max-width:340px;margin:auto;touch-action:none}.balance-wheel svg{display:block;width:100%}.pearl-balance-history{margin-top:14px}.avatar-stage{position:relative;min-height:330px;background:radial-gradient(ellipse at 70% 40%,#dceef6,transparent 60%);margin-top:18px}.avatar-edit{display:none}.pearl-profile-metrics{position:absolute;bottom:24px;left:15px;display:flex;gap:6px;z-index:2}.pearl-profile-metrics span{font-size:11px;padding:4px 7px;border-radius:20px;background:#ffffffe0}.avatar-caption{font-size:11px}.pearl-settings{width:38px;height:38px;padding:8px}.note{margin-top:14px}.note-image{width:100%;height:155px;object-fit:cover;mask-image:linear-gradient(#000 70%,transparent);border-radius:20px}.note h3{margin-top:16px}.model-card{padding:20px}.more-grid{gap:12px}.orbit-week-strip button{background:linear-gradient(120deg,#fffefa,#f0f5f0)}dialog{color:var(--ink);max-height:90dvh}dialog::backdrop{background:#3f535133;backdrop-filter:blur(4px)}.dialog-error,#notice:not(:empty){background:#faf0ed;color:#855e56;border-radius:14px;padding:12px}.empty{color:#727b7d;padding:20px 0}.card:empty{display:none}footer{display:none}@keyframes pearl-glow{0%,100%{opacity:.55}50%{opacity:1}}@keyframes pearl-rise{from{transform:translateY(22px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:600px){.shell{padding:0 16px 130px}header{height:68px;padding:12px 0}.card{padding:18px}#today .hero{height:224px;min-height:224px;padding:22px 18px}#today #greeting{font-size:26px}.pearl-avatar{width:80px;height:80px}.pearl-field{height:184px}.grid{grid-template-columns:1fr}.pearl-ranges label{grid-template-columns:96px 1fr 22px;gap:8px;font-size:13px}.bottom-nav{height:92px}.pearl-dialog{bottom:94px}.balance-layout{display:block}.home-grid{display:flex}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

#messages .message{background:none;border:0;box-shadow:none;padding:0}#messages .question{margin:8px 0 8px 22px;padding:14px 16px;background:linear-gradient(125deg,#edf7fc,#e2f1fa);border:1px solid #e0edf2;border-radius:20px 20px 6px 20px}#messages .answer{margin:8px 22px 14px 0;padding:14px 16px;background:linear-gradient(125deg,#fffefa,#f6f7f1);border:1px solid #e6eae4;border-radius:20px 20px 20px 6px;color:var(--ink)}.pearl-field .pearl-lens{max-width:42px}.home-side .daily-cycle{margin-top:16px}
