:root{
  color-scheme:light;
  --black:#000;
  --white:#fff;
  --line:#dedede;
  --muted:#666;
  --chat-height:100dvh;
}
*{box-sizing:border-box}
html,body{margin:0;width:100%;min-height:100%;background:#fff;color:#000}
html{height:100%;direction:rtl!important}
body{min-height:100dvh;direction:rtl!important;font-family:Arial,Tahoma,sans-serif;-webkit-text-size-adjust:100%}
button,input,textarea,select{font:inherit;color:#000;background:#fff}
button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
button:disabled{opacity:.34;cursor:default}
a{color:#000;text-underline-offset:3px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Home — mobile first */
.home-page{overflow-x:hidden}
.home-screen{
  position:relative;min-height:100dvh;display:grid;place-items:center;
  padding:24px 16px calc(24px + env(safe-area-inset-bottom));
  isolation:isolate;overflow:hidden;background:#fff;
}
.home-screen::before{
  content:"";position:absolute;inset:0;z-index:-3;opacity:.62;
  background-image:
    radial-gradient(circle at 1px 1px,rgba(0,0,0,.12) 1px,transparent 1.2px),
    linear-gradient(135deg,transparent 46%,rgba(0,0,0,.035) 47%,rgba(0,0,0,.035) 53%,transparent 54%);
  background-size:23px 23px,76px 76px;
}
.home-screen::after{
  content:"";position:absolute;inset:0;z-index:-2;
  background:radial-gradient(circle at 50% 48%,rgba(255,255,255,.60) 0,#fff 76%);
}
.pattern{position:absolute;z-index:-1;border:1px solid rgba(0,0,0,.08);pointer-events:none}
.pattern-a{width:250px;height:250px;border-radius:50%;top:-118px;left:-96px;box-shadow:0 0 0 30px rgba(0,0,0,.018),0 0 0 58px rgba(0,0,0,.012)}
.pattern-b{width:185px;height:185px;right:-90px;bottom:-86px;transform:rotate(28deg);box-shadow:0 0 0 26px rgba(0,0,0,.018)}
.home-card{
  width:100%;max-width:430px;padding:26px 20px 22px;
  border:1px solid rgba(0,0,0,.72);border-radius:22px;background:rgba(255,255,255,.96);
  box-shadow:0 18px 50px rgba(0,0,0,.08);backdrop-filter:blur(2px);
}
.site-title{margin:0 0 22px;text-align:center;font-size:25px;line-height:1.2;letter-spacing:-.4px;font-weight:800}
.site-title-logo{display:flex;justify-content:center;align-items:center}
.home-intro{margin:-10px auto 18px;max-width:360px;text-align:center;font-size:13.5px;line-height:1.75;color:#555}
.site-logo{display:block;width:min(400px,100%);height:auto;max-width:100%;max-height:175px;object-fit:contain;transition:filter .22s ease,transform .22s ease}
html[data-theme="dark"] .site-logo{filter:brightness(0) invert(1)}
@media(max-width:430px){.site-logo{width:100%;max-width:100%;max-height:160px}}
@media(max-width:360px){.site-logo{max-height:145px}}
.home-form{display:grid;gap:15px}
.field-label{font-size:14px;font-weight:800;margin-bottom:-6px}
.interest-tags-field{
  width:100%;min-height:58px;padding:8px 10px;display:flex;align-items:center;flex-wrap:wrap;gap:7px;
  border:1px solid #000;border-radius:13px;background:#fff;cursor:text;transition:box-shadow .15s ease;
}
.interest-tags-field:focus-within{box-shadow:0 0 0 2px rgba(0,0,0,.12)}
.interest-tags{display:contents}
.interest-chip{
  min-height:32px;max-width:100%;display:inline-flex;align-items:center;gap:5px;padding:4px 8px 4px 5px;
  border:1px solid #c8c8c8;border-radius:9px;background:#fafafa;font-size:14px;line-height:1.2;
}
.interest-chip>span{max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.interest-chip-remove{width:23px;height:23px;padding:0;border:0;border-radius:6px;background:transparent;color:#555;font-size:19px;line-height:21px;cursor:pointer}
.interest-entry{flex:1 1 110px;min-width:80px;height:34px;padding:2px 3px;border:0;outline:0;background:transparent;font-size:16px}
.interest-entry::placeholder{color:#888}
.age-check{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.55;cursor:pointer}
.age-check input{width:20px;height:20px;margin:0;flex:0 0 auto;accent-color:#000}
.legal-line{margin:0;font-size:12.5px;line-height:1.75;color:#555}
.start-button,.main-button,.outline-button{min-height:52px;border:1px solid #000;border-radius:13px;padding:11px 16px;font-weight:800;cursor:pointer}
.start-button,.main-button{background:#000;color:#fff}
.outline-button{background:#fff;color:#000}

/* Chat */
.chat-page{height:100%;overflow:hidden;background:#fff;direction:rtl!important}
.chat-screen{
  direction:rtl!important;
  position:fixed;inset:0 0 auto 0;width:100%;height:var(--chat-height,100dvh);
  display:flex;flex-direction:column;overflow:hidden;background:#fff;
}
.chat-topbar{
  position:relative;flex:0 0 auto;min-height:52px;
  padding:calc(8px + env(safe-area-inset-top)) 12px 8px;
  border-bottom:1px solid var(--line);background:#fff;
}
.top-action{position:absolute;right:12px;bottom:8px;border:0;background:#fff;padding:8px 5px;font-size:13px;font-weight:700;cursor:pointer}
.connection-wrap{position:absolute;left:14px;bottom:16px;display:flex;align-items:center;gap:7px;direction:rtl;max-width:62%}
.status-dot{display:block;flex:0 0 auto;width:12px;height:12px;border-radius:50%;transition:background-color .15s ease,box-shadow .15s ease}
.status-dot.online{background:#13a14a;box-shadow:0 0 0 3px rgba(19,161,74,.12),0 0 12px rgba(19,161,74,.82)}
.status-dot.offline{background:#d01818;box-shadow:0 0 0 3px rgba(208,24,24,.10),0 0 12px rgba(208,24,24,.72)}
.connection-text{font-size:12px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#444}
.connection-text[hidden]{display:none}
.messages{
  flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;
  padding:12px 10px 14px;display:flex;flex-direction:column;gap:7px;scroll-behavior:smooth;background:#fff;
}
.message-wrap{display:flex;flex-direction:column;max-width:88%;gap:2px;touch-action:pan-y;will-change:transform;transition:transform .16s ease}
.message-wrap.swiping{transition:none}
.message-wrap.mine{align-self:flex-start;align-items:flex-start}
.message-wrap.other{align-self:flex-end;align-items:flex-end}
.bubble{width:fit-content;max-width:100%;padding:9px 11px;border-radius:14px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;font-size:16px}
.message-wrap.mine .bubble{background:#000;color:#fff;border:1px solid #000;border-bottom-left-radius:4px}
.message-wrap.other .bubble{background:#fff;color:#000;border:1px solid #000;border-bottom-right-radius:4px}
.message-reply-context{width:fit-content;min-width:130px;max-width:96%;margin-bottom:5px;padding:7px 9px;border:1px solid #c8c8c8;border-radius:10px;background:#f4f4f4;color:#333;font-size:12px;line-height:1.4;box-shadow:0 1px 3px rgba(0,0,0,.04)}
.message-reply-context strong{display:block;margin-bottom:3px;font-size:10px;color:#666}
.message-reply-context .message-reply-preview{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px}
.message-wrap.mine .message-reply-context{align-self:flex-start;border-left:3px solid #000}
.message-wrap.other .message-reply-context{align-self:flex-end;border-right:3px solid #000}
.reply-reference{margin:-2px -2px 7px;padding:6px 8px;border-right:3px solid currentColor;border-radius:7px;font-size:12px;line-height:1.35;opacity:.78;overflow:hidden}
.reply-reference strong{display:block;font-size:11px;margin-bottom:2px}
.reply-reference span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:240px}
.reply-action{border:0;background:transparent;color:#666;padding:2px 4px;font-size:11px;cursor:pointer}
.message-wrap.mine .reply-action{align-self:flex-start}
.message-wrap.other .reply-action{align-self:flex-end}
.composer{flex:0 0 auto;border-top:1px solid var(--line);background:#fff;padding:0 8px calc(7px + env(safe-area-inset-bottom))}
.typing-zone{height:30px;display:flex;align-items:center;justify-content:center;text-align:center}
.typing-indicator{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:800;color:#555;line-height:1}
.typing-indicator[hidden]{display:none}
.typing-dots{display:inline-flex;align-items:flex-end;gap:3px;height:12px;direction:ltr}
.typing-dots i{display:block;width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.38;animation:typingBounce .72s infinite ease-in-out}
.typing-dots i:nth-child(2){animation-delay:.11s}
.typing-dots i:nth-child(3){animation-delay:.22s}
@keyframes typingBounce{0%,60%,100%{transform:translateY(0);opacity:.35}30%{transform:translateY(-5px);opacity:1}}
.reply-bar{min-height:42px;margin:0 2px 7px;padding:6px 9px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-right:3px solid #000;background:#f7f7f7;border-radius:8px}
.reply-bar[hidden]{display:none}
.reply-bar-text{min-width:0;display:grid;gap:2px}
.reply-bar-text strong{font-size:11px}
.reply-bar-text span{font-size:12px;color:#555;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.reply-close{width:30px;height:30px;border:0;background:transparent;font-size:24px;line-height:1;cursor:pointer}
.composer-row{direction:ltr!important;display:grid;grid-template-columns:84px minmax(0,1fr) 64px;align-items:end;gap:7px}
.composer textarea{grid-column:2;direction:rtl!important;text-align:right;width:100%;min-width:0;height:62px;min-height:62px;max-height:176px;resize:none;padding:11px 13px;border:1px solid #000;border-radius:14px;outline:none;font-size:16px;line-height:22px;background:#fff;color:#000}
.composer textarea:focus{box-shadow:0 0 0 1px #000 inset}
.send-button,.next-button{height:62px;min-height:62px;padding:8px 10px;border:1px solid #000;border-radius:13px;font-size:14px;font-weight:800;cursor:pointer}
.send-button{grid-column:3;background:#fff;color:#000}
.next-button{grid-column:1;background:#000;color:#fff;height:62px;min-height:62px;font-size:16px;padding-inline:14px}
.next-button[hidden]{display:none}

/* Report modal */
.modal-backdrop{position:fixed;inset:0;z-index:100;display:none;align-items:flex-end;justify-content:center;background:rgba(0,0,0,.42)}
.modal-backdrop.show{display:flex}
.modal{width:100%;display:grid;gap:10px;padding:14px 12px calc(14px + env(safe-area-inset-bottom));background:#fff;border-radius:16px 16px 0 0}
.modal select,.modal textarea{width:100%;padding:11px 12px;border:1px solid #000;border-radius:10px;outline:none;background:#fff;color:#000;font-size:16px}
.modal textarea{min-height:88px;resize:vertical}
.modal-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.flash-wrap{position:fixed;left:12px;right:12px;bottom:12px;z-index:150;display:grid;gap:6px}
.flash{padding:10px 12px;border:1px solid #000;border-radius:10px;background:#fff;color:#000;box-shadow:0 8px 24px rgba(0,0,0,.08)}

/* Terms/privacy/status pages */
.container{width:min(720px,calc(100% - 24px));margin:auto}
.card{padding:20px;border:1px solid #000;border-radius:16px;background:#fff;color:#000;line-height:1.75}
.hero{min-height:100dvh;display:grid;place-items:center;padding:18px 0}
.small{font-size:12px;color:#555}
.badge{display:inline-block;padding:4px 8px;border:1px solid #000;border-radius:8px}
.ban-card{text-align:center;max-width:620px;margin:auto}
.ban-reason-label{margin:18px 0 6px;font-size:12px;font-weight:800;color:#666}
.ban-reason{font-size:15px;font-weight:900}
.ban-remaining{margin:16px 0 0;font-size:14px}
@media(min-width:700px){
  .home-card{padding:34px 30px 28px}
  .chat-screen{left:50%;right:auto;transform:translateX(-50%);width:min(720px,100%);border-left:1px solid var(--line);border-right:1px solid var(--line)}
  .message-wrap{max-width:72%}
  .modal-backdrop{align-items:center;padding:20px}
  .modal{width:min(420px,100%);border-radius:14px;border:1px solid #000;padding:18px}
}
.lower-status-row{position:relative;min-height:30px;display:flex;align-items:center;justify-content:center}
.lower-status-row .typing-zone{height:30px;min-width:0;display:flex;align-items:center;justify-content:center;text-align:center}
.partner-country{position:absolute;left:4px;top:50%;transform:translateY(-50%);height:28px;min-width:32px;display:flex;align-items:center;justify-content:flex-start;line-height:1}
.partner-country[hidden]{display:none}
.partner-flag{font-size:24px;line-height:1;filter:saturate(.95)}
.system-notice{align-self:center;max-width:94%;padding:6px 10px;font-size:13px;font-weight:800;text-align:center;border-radius:9px}
.system-notice-danger{color:#c91515;background:#fff;border:1px solid rgba(201,21,21,.34)}
.reply-reference.reply-source-mine{margin-left:0;margin-right:auto;border-left:3px solid currentColor;border-right:0;text-align:left}
.reply-reference.reply-source-other{margin-left:auto;margin-right:0;border-right:3px solid currentColor;border-left:0;text-align:right}
.reply-bar.reply-source-mine{border-left:3px solid #000;border-right:0}
.reply-bar.reply-source-other{border-right:3px solid #000;border-left:0}
.captcha-block{display:grid;gap:8px}
.captcha-row{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:8px;align-items:center;direction:ltr}
.captcha-image{width:100%;height:58px;object-fit:cover;border-radius:10px;background:#fff;user-select:none;-webkit-user-drag:none}
.captcha-input{width:100%;height:58px;border:1px solid #000;border-radius:10px;padding:0 10px;text-align:center;text-transform:uppercase;letter-spacing:4px;font-size:18px;font-weight:800;outline:0;background:#fff;color:#000}
.captcha-input:focus{box-shadow:0 0 0 2px rgba(0,0,0,.12)}
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.country-header{position:absolute;left:50%;bottom:11px;transform:translateX(-50%);display:flex;align-items:center;gap:6px;max-width:46%;font-size:12px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#111}
.country-header[hidden]{display:none}
.country-flag-img,.country-intro-flag{display:block;object-fit:cover;border:1px solid rgba(0,0,0,.18);border-radius:3px;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.08)}
.country-header .country-flag-img{width:24px;height:18px;flex:0 0 24px}
.country-header span{overflow:hidden;text-overflow:ellipsis}
.country-intro{align-self:center;display:flex;align-items:center;justify-content:center;gap:8px;max-width:92%;padding:8px 11px;border:1px solid #d4d4d4;border-radius:10px;background:#fff;color:#111;font-size:13px;font-weight:800;box-shadow:0 3px 12px rgba(0,0,0,.035)}
.country-intro-flag{width:26px;height:19px;flex:0 0 26px}
.country-intro-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.system-notice-info{color:#333;background:#fafafa;border:1px solid #dedede}
.reply-reference{width:fit-content;min-width:110px;max-width:94%}
.reply-reference.reply-source-mine{margin-left:0!important;margin-right:auto!important;border-left:3px solid currentColor!important;border-right:0!important;text-align:left!important}
.reply-reference.reply-source-other{margin-left:auto!important;margin-right:0!important;border-right:3px solid currentColor!important;border-left:0!important;text-align:right!important}
.reply-bar.reply-source-mine{margin-left:0;margin-right:auto;border-left:3px solid #000!important;border-right:0!important;text-align:left}
.reply-bar.reply-source-other{margin-left:auto;margin-right:0;border-right:3px solid #000!important;border-left:0!important;text-align:right}
@media(max-width:380px){
  .captcha-row{grid-template-columns:1fr}
  .captcha-image{width:100%}
  .captcha-input{height:48px}
  .country-header{max-width:42%}
}
.verify-page{min-height:100dvh;background:#fff;color:#000}
.verify-screen{position:relative;min-height:100dvh;display:grid;place-items:center;padding:20px;overflow:hidden}
.verify-card{position:relative;z-index:2;width:min(420px,100%);padding:24px 18px;border:1px solid #d8d8d8;border-radius:18px;background:rgba(255,255,255,.96);box-shadow:0 14px 38px rgba(0,0,0,.07)}
.verify-title{margin:0 0 6px;text-align:center;font-size:24px;line-height:1.25}
.verify-note{margin:0 0 18px;text-align:center;color:#666;font-size:13px}
.verify-form{display:grid;gap:14px}
@media(max-width:380px){.verify-card{padding:20px 14px}}
.install-app-button{width:100%;min-height:46px;border:1px solid #000;border-radius:12px;background:#fff;color:#000;font-size:15px;font-weight:800;cursor:pointer}
.install-app-button[hidden]{display:none}
.install-app-hint{margin-top:8px;padding:8px 10px;border-radius:9px;background:#f4f4f4;color:#333;font-size:12px;line-height:1.6;text-align:center}
.install-app-hint[hidden]{display:none}
.theme-toggle{
  position:fixed;z-index:220;top:calc(9px + env(safe-area-inset-top));left:10px;
  width:34px;height:34px;display:grid;place-items:center;padding:0;border:1px solid rgba(0,0,0,.16);
  border-radius:50%;background:rgba(255,255,255,.88);color:#000;box-shadow:0 4px 16px rgba(0,0,0,.07);
  backdrop-filter:blur(8px);font-size:17px;line-height:1;cursor:pointer;
}

/* Circular reveal. JavaScript animates ::view-transition-new(root) directly
   for consistent behavior on desktop and mobile Chromium. */
::view-transition-old(root),
::view-transition-new(root){animation:none;mix-blend-mode:normal}
::view-transition-old(root){z-index:1}
::view-transition-new(root){z-index:2}
.theme-toggle.theme-switching{transform:rotate(180deg) scale(.92);transition:transform .56s cubic-bezier(.22,.84,.28,1)}
@media(prefers-reduced-motion:reduce){
  ::view-transition-old(root),
  ::view-transition-new(root){animation:none!important}
  .theme-toggle.theme-switching{transform:none;transition:none}
}
.legal-page{display:block;min-height:100dvh;padding:18px 0 44px;overflow:visible}
.legal-page .container{margin:0 auto}
.legal-card{height:auto;max-height:none;overflow:visible}
.legal-text{display:block;white-space:pre-wrap;line-height:1.9;font-size:15px;overflow:visible;max-height:none;overflow-wrap:anywhere}
.legal-card h1{margin-top:0}

html[data-theme="dark"]{
  color-scheme:dark;
  --black:#f4f4f4;
  --white:#0b0b0b;
  --line:#303030;
  --muted:#aaa;
}
html[data-theme="dark"],html[data-theme="dark"] body{background:#0b0b0b;color:#f4f4f4}
html[data-theme="dark"] body,
html[data-theme="dark"] .home-screen,
html[data-theme="dark"] .chat-page,
html[data-theme="dark"] .chat-screen,
html[data-theme="dark"] .messages,
html[data-theme="dark"] .chat-topbar,
html[data-theme="dark"] .composer,
html[data-theme="dark"] .verify-page,
html[data-theme="dark"] .verify-screen{background:#0b0b0b;color:#f4f4f4}
html[data-theme="dark"] .home-screen::before{
  opacity:.92;
  background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.18) 1.15px,transparent 1.35px),linear-gradient(135deg,transparent 45%,rgba(255,255,255,.055) 46%,rgba(255,255,255,.055) 54%,transparent 55%);
  background-size:23px 23px,76px 76px;
}
html[data-theme="dark"] .home-screen::after{background:radial-gradient(circle at 50% 48%,rgba(11,11,11,.28) 0,rgba(11,11,11,.88) 78%)}
html[data-theme="dark"] .pattern{border-color:rgba(255,255,255,.19)}
html[data-theme="dark"] .pattern-a{box-shadow:0 0 0 30px rgba(255,255,255,.045),0 0 0 58px rgba(255,255,255,.028)}
html[data-theme="dark"] .pattern-b{box-shadow:0 0 0 26px rgba(255,255,255,.045)}
html[data-theme="dark"] .home-card,
html[data-theme="dark"] .verify-card,
html[data-theme="dark"] .card,
html[data-theme="dark"] .modal,
html[data-theme="dark"] .flash{background:rgba(16,16,16,.97);color:#f4f4f4;border-color:#4a4a4a;box-shadow:0 18px 50px rgba(0,0,0,.28)}
html[data-theme="dark"] button,
html[data-theme="dark"] input,
html[data-theme="dark"] textarea,
html[data-theme="dark"] select{color:#f4f4f4;background:#0f0f0f}
html[data-theme="dark"] a{color:#f4f4f4}
html[data-theme="dark"] .interest-tags-field,
html[data-theme="dark"] .interest-chip,
html[data-theme="dark"] .composer textarea,
html[data-theme="dark"] .modal select,
html[data-theme="dark"] .modal textarea,
html[data-theme="dark"] .captcha-input{background:#111;color:#f4f4f4;border-color:#e7e7e7}
html[data-theme="dark"] .interest-chip{border-color:#474747;background:#171717}
html[data-theme="dark"] .interest-chip-remove,
html[data-theme="dark"] .legal-line,
html[data-theme="dark"] .small,
html[data-theme="dark"] .typing-indicator,
html[data-theme="dark"] .reply-bar-text span,
html[data-theme="dark"] .connection-text{color:#aaa}
html[data-theme="dark"] .age-check input{accent-color:#fff}
html[data-theme="dark"] .start-button,
html[data-theme="dark"] .main-button,
html[data-theme="dark"] .next-button{background:#f4f4f4;color:#090909;border-color:#f4f4f4}
html[data-theme="dark"] .outline-button,
html[data-theme="dark"] .send-button,
html[data-theme="dark"] .install-app-button{background:#0b0b0b;color:#f4f4f4;border-color:#f4f4f4}
html[data-theme="dark"] .install-app-hint{background:#1d1d1d;color:#d8d8d8}
html[data-theme="dark"] .message-wrap.mine .bubble{background:#f4f4f4;color:#090909;border-color:#f4f4f4}
html[data-theme="dark"] .message-wrap.other .bubble{background:#111;color:#f4f4f4;border-color:#dadada}
html[data-theme="dark"] .message-reply-context{background:#1b1b1b;color:#e8e8e8;border-color:#555}
html[data-theme="dark"] .message-reply-context strong{color:#aaa}
html[data-theme="dark"] .message-wrap.mine .message-reply-context,html[data-theme="dark"] .message-wrap.other .message-reply-context{border-color:#888}
html[data-theme="dark"] .reply-action{color:#aaa}
html[data-theme="dark"] .reply-bar{background:#151515;border-color:#f4f4f4}
html[data-theme="dark"] .country-intro,
html[data-theme="dark"] .system-notice-info{background:#111;color:#ddd;border-color:#3a3a3a}
html[data-theme="dark"] .country-header{color:#eee}
html[data-theme="dark"] .country-flag-img,
html[data-theme="dark"] .country-intro-flag{border-color:#555}
html[data-theme="dark"] .theme-toggle{background:rgba(20,20,20,.9);color:#f4f4f4;border-color:#4a4a4a}
.suggestion-trigger{display:block;margin:14px auto 0;padding:4px 8px;border:0;background:transparent;color:#666;font-size:12px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.suggestion-panel{margin-top:10px;display:grid;gap:8px}
.suggestion-panel[hidden]{display:none}
.suggestion-panel textarea{width:100%;min-height:92px;max-height:180px;resize:vertical;padding:10px 11px;border:1px solid #bdbdbd;border-radius:11px;outline:0;background:#fff;color:#000;font-size:15px;line-height:1.55}
.suggestion-panel textarea:focus{border-color:#000;box-shadow:0 0 0 1px #000}
.suggestion-send{justify-self:start;min-width:74px;min-height:36px;padding:7px 14px;border:1px solid #000;border-radius:9px;background:#000;color:#fff;font-weight:800;cursor:pointer}
.suggestion-status{min-height:18px;color:#555;font-size:12px}
html[data-theme="dark"] .suggestion-trigger{color:#aaa}
html[data-theme="dark"] .suggestion-panel textarea{background:#111;color:#f4f4f4;border-color:#555}
html[data-theme="dark"] .suggestion-panel textarea:focus{border-color:#f4f4f4;box-shadow:0 0 0 1px #f4f4f4}
html[data-theme="dark"] .suggestion-send{background:#f4f4f4;color:#090909;border-color:#f4f4f4}
html[data-theme="dark"] .suggestion-status{color:#aaa}
.install-guide-backdrop{position:fixed;inset:0;z-index:1000;display:none;align-items:flex-end;justify-content:center;padding:16px;background:rgba(0,0,0,.45)}
.install-guide-backdrop.show{display:flex}
.install-guide{position:relative;width:min(480px,100%);background:#fff;color:#111;border:1px solid #d8d8d8;border-radius:18px;padding:22px 20px 20px;box-shadow:0 24px 70px rgba(0,0,0,.24)}
.install-guide h2{margin:0 0 14px;font-size:20px}
.install-guide ol{margin:0;padding-inline-start:24px;line-height:1.9;color:#333}
.install-guide-close{position:absolute;left:12px;top:10px;width:34px;height:34px;border:0;background:transparent;font-size:28px;line-height:1;cursor:pointer}
html[data-theme="dark"] .install-guide{background:#141414;color:#f4f4f4;border-color:#444}
html[data-theme="dark"] .install-guide ol{color:#ccc}
html[data-theme="dark"] .install-guide-close{color:#f4f4f4;background:transparent}
html:has(body.legal-body){height:auto!important;min-height:100%!important;overflow-y:auto!important}
body.legal-body{height:auto!important;min-height:100dvh!important;overflow-x:hidden!important;overflow-y:auto!important}
body.legal-body .legal-page{display:block!important;position:static!important;width:100%!important;height:auto!important;min-height:100dvh!important;max-height:none!important;padding:18px 0 calc(44px + env(safe-area-inset-bottom))!important;overflow:visible!important}
body.legal-body .legal-container{width:min(850px,calc(100% - 24px))!important;height:auto!important;max-height:none!important;margin:0 auto!important;overflow:visible!important}
body.legal-body .legal-card{position:static!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;overflow:visible!important;contain:none!important}
body.legal-body .legal-text{display:block!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;white-space:pre-wrap!important;overflow:visible!important;overflow-wrap:anywhere!important;line-height:1.9!important;font-size:15px!important}
.bubble-text a,.message-reply-preview a,.reply-bar a,.plain-url-text{
  color:inherit!important;
  text-decoration:none!important;
  cursor:text!important;
}
.bubble-text a,.message-reply-preview a,.reply-bar a{pointer-events:none!important}
.plain-url-text{-webkit-text-fill-color:currentColor}
.start-button{position:relative;overflow:hidden;isolation:isolate}
.start-button::after{content:"";position:absolute;top:-55%;bottom:-55%;left:-38%;width:30%;pointer-events:none;opacity:0;transform:skewX(-22deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);animation:start-button-shine 3s ease-in-out infinite;will-change:left,opacity}
@keyframes start-button-shine{0%,58%{left:-38%;opacity:0}62%{left:-38%;opacity:1}96%{left:108%;opacity:1}100%{left:108%;opacity:0}}
html[data-theme="dark"] .start-button::after{background:linear-gradient(90deg,transparent,rgba(0,0,0,.22),transparent)}

.maintenance-card{max-width:620px;margin:auto;text-align:center}

html[data-theme="dark"] .home-intro{color:#bdbdbd}
