*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;background:#04050e;color:#eef2ff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow:hidden;-webkit-tap-highlight-color:transparent;--ok-chrome-offset: 0px}body.env-ok{--ok-chrome-offset: 150px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:16px;padding-top:calc(16px + var(--ok-chrome-offset));padding-bottom:calc(16px + env(safe-area-inset-bottom));z-index:10;pointer-events:none}.overlay>*{pointer-events:auto}.overlay-bottom{align-items:flex-end}.no-pointer{pointer-events:none}@keyframes fadeUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.card{animation:fadeUp .7s cubic-bezier(.22,.8,.36,1) both;width:100%;max-width:420px;background:#0d1026a8;border:1px solid rgba(143,199,255,.18);border-radius:20px;padding:28px 24px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);text-align:center;box-shadow:0 12px 48px #0000008c}.card-symbol{font-size:30px;color:#ffe9b0;margin-bottom:8px}h1{font-size:24px;font-weight:700;letter-spacing:.02em;margin-bottom:8px}h2{font-size:22px;font-weight:700;text-align:left}.muted{color:#eef2ff9e;font-size:14px;line-height:1.45}.small{font-size:12.5px;text-align:left}.date-row{display:flex;gap:10px;margin:22px 0}select{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#8fc7ff14;border:1px solid rgba(143,199,255,.25);border-radius:12px;color:#eef2ff;font-size:17px;padding:13px 14px;text-align:center;outline:none}select:focus{border-color:#8fc7ff99}option{background:#0d1026}.btn-primary{width:100%;background:linear-gradient(135deg,#6d8bff,#9d6bff);border:none;border-radius:14px;color:#fff;font-size:16px;font-weight:600;padding:15px 18px;cursor:pointer;transition:transform .12s ease,filter .12s ease}.btn-primary:active{transform:scale(.97);filter:brightness(1.15)}.btn-ghost{width:100%;background:transparent;border:1px solid rgba(143,199,255,.3);border-radius:14px;color:#eef2ffd9;font-size:15px;padding:13px 18px;cursor:pointer}.loading-text{color:#eef2ffcc;font-size:15px;letter-spacing:.06em;text-align:center;text-shadow:0 2px 12px rgba(0,0,0,.8);animation:fadeIn 1.2s ease both,pulse 2s ease-in-out 1.2s infinite}@keyframes pulse{50%{opacity:.45}}.greet-text{margin-bottom:6px}.fact-text{max-width:320px;margin:0 auto;letter-spacing:normal;line-height:1.5}.skip-flight-btn{display:block;margin:14px auto 0;background:#0d10268c;border:1px solid rgba(143,199,255,.3);border-radius:20px;color:#eef2ffcc;font-size:13px;padding:8px 18px;cursor:pointer}.skip-flight-btn:active{border-color:#8fc7ff99;color:#eef2ff}.card-horoscope{text-align:left;max-height:calc(100dvh - 32px - var(--ok-chrome-offset));overflow-y:auto}.sign-header{display:flex;align-items:center;gap:14px;margin-bottom:14px;cursor:pointer;user-select:none;-webkit-user-select:none;transition:margin-bottom .5s cubic-bezier(.22,.8,.36,1)}.card-horoscope.collapsed .sign-header{margin-bottom:0}.chevron{flex-shrink:0;margin-left:auto;width:11px;height:11px;border-right:2px solid rgba(238,242,255,.55);border-bottom:2px solid rgba(238,242,255,.55);transform:translateY(-3px) rotate(45deg);transition:transform .5s cubic-bezier(.22,.8,.36,1)}.chevron.up{transform:translateY(3px) rotate(225deg)}.card-body{display:grid;grid-template-rows:1fr;opacity:1;transition:grid-template-rows .5s cubic-bezier(.22,.8,.36,1),opacity .4s ease}.card-horoscope.collapsed .card-body{grid-template-rows:0fr;opacity:0}.card-body>div{overflow:hidden;min-height:0}.sign-symbol{font-size:38px;color:#ffe9b0;line-height:1}.mood{font-size:15.5px;line-height:1.55;margin-bottom:14px}.section{display:flex;gap:10px;align-items:flex-start;margin-bottom:10px;font-size:14.5px;line-height:1.5;color:#eef2ffe0}.section-icon{flex-shrink:0;font-size:16px}.advice{font-size:14px;font-style:italic;color:#ffe9b0;margin:14px 0;line-height:1.5}.lucky-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.lucky{flex:1 1 45%;background:#8fc7ff14;border:1px solid rgba(143,199,255,.16);border-radius:12px;padding:10px 6px;text-align:center;font-size:11px;color:#eef2ff99;display:flex;flex-direction:column;gap:3px}.lucky span{font-size:14.5px;font-weight:600;color:#eef2ff}.btn-row{display:flex;flex-direction:column;gap:10px}.info-btn{position:fixed;top:calc(12px + env(safe-area-inset-top) + var(--ok-chrome-offset));right:14px;z-index:20;width:34px;height:34px;border-radius:50%;border:1px solid rgba(143,199,255,.3);background:#0d10268c;color:#eef2ffcc;font-size:17px;font-style:italic;font-family:Georgia,Times New Roman,serif;line-height:1;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:pointer;transition:border-color .2s ease,color .2s ease}.info-btn:active{border-color:#8fc7ff99;color:#eef2ff}.info-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#02030a80;display:flex;align-items:flex-end;justify-content:center;padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom));animation:fadeIn .25s ease both}.info-card{text-align:left;max-height:calc(100dvh - 32px);overflow-y:auto}.info-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.info-head h2{font-size:20px}.info-close{background:none;border:none;color:#eef2ff99;font-size:18px;cursor:pointer;padding:4px 8px}.info-card h3{font-size:14px;color:#ffe9b0;margin:16px 0 6px}.small-block{font-size:13.5px}.info-card a{color:#8fc7ff}.info-card .btn-ghost{margin-top:14px}.disclaimer{margin-top:16px;font-size:12.5px;color:#eef2ff73;font-style:italic}.cosmo-menu{text-align:left;animation:fadeUp .35s cubic-bezier(.22,.8,.36,1) both}.cosmo-menu-title{font-size:17px;margin-bottom:12px;text-align:center}.cosmo-menu-item{display:flex;align-items:center;gap:12px;width:100%;background:#8fc7ff12;border:1px solid rgba(143,199,255,.18);border-radius:12px;color:#eef2ff;font-size:15.5px;padding:14px 16px;margin-bottom:8px;cursor:pointer;text-align:left;transition:background .15s ease,border-color .15s ease}.cosmo-menu-item:active{background:#8fc7ff29;border-color:#8fc7ff66}.cosmo-menu-item span{font-size:18px;line-height:1}.profile-btn{top:calc(56px + env(safe-area-inset-top) + var(--ok-chrome-offset));font-size:15px;font-style:normal;font-family:inherit}.earth-btn{top:calc(100px + env(safe-area-inset-top) + var(--ok-chrome-offset));font-size:15px;font-style:normal;font-family:inherit;animation:fadeUp .3s ease both}.profile-sign{margin-top:8px;text-align:center}.chip-grid{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 4px}.chip{display:inline-flex;align-items:center;gap:6px;background:#8fc7ff12;border:1px solid rgba(143,199,255,.18);border-radius:999px;color:#eef2ffd9;font-size:13px;padding:8px 13px;cursor:pointer;transition:background .25s ease,border-color .25s ease,color .25s ease}.chip span{font-size:15px;line-height:1}.chip-on{background:#8fc7ff38;border-color:#8fc7ffa6;color:#fff}.profile-save{margin-top:16px}.profile-save:disabled{opacity:.5;cursor:default}.profile-delete{margin-top:10px;color:#ff9d9d;border-color:#ff9d9d59}.text-input{width:100%;background:#8fc7ff14;border:1px solid rgba(143,199,255,.25);border-radius:12px;color:#eef2ff;font-size:15px;padding:12px 14px;outline:none;margin:4px 0 2px;box-sizing:border-box}.text-input:focus{border-color:#8fc7ff99}.people-list{display:flex;flex-direction:column;gap:8px;margin:10px 0 12px}.person-row{display:flex;align-items:stretch;gap:8px}.person-row-main{flex:1;display:flex;align-items:center;gap:12px;background:#8fc7ff12;border:1px solid rgba(143,199,255,.18);border-radius:12px;color:#eef2ff;padding:10px 14px;cursor:pointer;text-align:left;transition:background .15s ease,border-color .15s ease}.person-row-active .person-row-main{background:#8fc7ff33;border-color:#8fc7ff99}.person-row-symbol{font-size:22px;color:#ffe9b0;line-height:1}.person-row-label{display:flex;flex-direction:column;gap:2px;font-size:15px}.icon-btn{flex-shrink:0;width:42px;background:#8fc7ff12;border:1px solid rgba(143,199,255,.18);border-radius:12px;color:#eef2ffbf;font-size:15px;cursor:pointer}.add-person-btn{margin-top:4px}
