/* FIBISE Android design system. Shared tokens govern every mobile surface. */
:root{font-family:var(--font-family);line-height:1.375}
body{overscroll-behavior-y:none}strong{font-weight:600}h1{font-size:var(--font-page);letter-spacing:-.5px}h2{font-size:var(--font-subtitle);font-weight:600;margin:20px 0 10px}h3{font-size:var(--font-body)}small,.small,.fine{font-size:var(--font-meta);line-height:1.4}.eyebrow{font-size:var(--font-meta)}.icon-button{min-width:var(--touch);min-height:var(--touch);height:var(--touch);border-radius:50%;background:transparent}.ui-icon{width:24px;height:24px}.primary,.secondary,.danger{min-height:48px;padding:10px 16px;border-radius:12px;font-size:var(--font-secondary)}
.page{padding:16px}.top-bar{gap:8px;margin-bottom:16px}.brand-lockup strong{font-size:var(--font-title);font-weight:650}.brand-lockup img{width:27px;height:32px}.search-field{border-radius:14px;padding:0 12px}.search-field input{font-size:var(--font-body);padding:10px 0;min-height:46px}.avatar{width:52px;height:52px;font-size:var(--font-subtitle)}
.conversation-row{min-height:72px;padding:10px 16px;gap:12px;border:0;border-radius:0;background:transparent;position:relative}.conversation-row::after{content:"";position:absolute;bottom:0;left:80px;right:16px;height:1px;background:var(--line)}.conversation-row .avatar{width:52px;height:52px}.row-copy{gap:3px}.row-copy strong{font-size:var(--font-name);font-weight:600;line-height:21px}.preview,.directory-row .row-copy>span{font-size:var(--font-secondary);line-height:19px}.row-meta{font-size:var(--font-meta)}.row-end{gap:6px}.row-end time{font-size:var(--font-caption)}.unread{min-width:19px;height:19px;font-size:var(--font-caption);border-radius:12px}.inbox .top-bar{padding:12px 12px 0;margin-bottom:8px}.inbox-header-actions{display:flex;gap:0}.inbox-header-actions .icon-button,#inbox-menu{min-width:var(--touch);width:40px}.workspace{padding:0 16px 12px}.workspace:has(select option:only-child)>label[for=workspace],.workspace:has(select option:only-child)>select{display:none}.filter-row{display:flex;gap:6px;padding:0 16px 8px;overflow:auto}.filter-row button{flex:1;min-height:44px;border-radius:12px;font-size:var(--font-secondary);padding:8px;white-space:nowrap}.inbox-tools{padding:0 16px 8px}.connection{padding:4px 16px;font-size:var(--font-meta)}
.chat-heading{padding:4px;gap:2px;min-height:64px}.chat-heading>#back-inbox{width:44px;min-width:44px}.chat-heading>.avatar,.chat-heading>.avatar-stack{display:inline-flex;width:36px;height:36px;font-size:14px;margin-right:6px}.chat-heading .chat-title h1{font-size:var(--font-name);font-weight:600;letter-spacing:0;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-title{padding:8px 0}.chat-subtitle{font-size:var(--font-meta);line-height:16px;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-tools{gap:0}.chat-tools .icon-button{width:44px;min-width:44px;height:48px}.chat-tools .ui-icon{width:23px;height:23px}.messages{padding:8px 12px;scrollbar-width:thin}.message{max-width:84%;margin:4px 0}.message.mine{margin-left:auto}.message .bubble{padding:7px 10px;border-radius:14px;background:#f0f2f6}.message.mine .bubble{background:#e8f0ff;color:var(--ink);border-bottom-right-radius:5px}.message:not(.mine) .bubble{border-bottom-left-radius:5px}.message .bubble p{font-size:var(--font-body);line-height:var(--message-leading)}.mine .bubble a{color:var(--blue)}.message time{display:flex;align-items:center;justify-content:flex-end;gap:4px;font-size:var(--font-caption);line-height:14px;margin-top:2px;padding:0 3px}.message-status{display:inline-flex;align-items:center;margin:0;color:#6c7890}.message-status.read{color:var(--blue)}.delivery-icon{flex:none;vertical-align:middle}.delivery-icon.failed{color:var(--danger)}.sender{font-size:var(--font-meta);margin-bottom:2px}.message-reply span{font-size:var(--font-secondary)}.message-reactions{margin-top:3px}.reaction-pill{min-height:32px;font-size:var(--font-secondary)}.history-label{font-size:var(--font-meta)}
.composer{padding:6px 8px calc(6px + var(--safe-bottom));border-top:1px solid var(--line)}.compose-row{gap:4px}.compose-row textarea{font-size:var(--font-body);line-height:21px;min-height:48px;padding:13px 12px;border-radius:24px}.compose-row #send-button{width:48px;min-width:48px;height:48px}.composer-tools{padding:0;margin:0;justify-content:flex-start;gap:0;overflow:auto}.composer-tools .icon-button{min-width:44px;height:44px;min-height:44px}.lifetime-button{font-size:var(--font-meta);min-height:36px;padding:4px 8px}.reply-preview{font-size:var(--font-secondary)}.compose-footer:has(#send-state:not(:empty)){display:flex}.compose-footer small{display:none}.composer .form-error{font-size:var(--font-secondary)}
.home-actions{gap:8px;margin:16px 0}.home-actions button{padding:10px 6px;min-height:48px;border-radius:12px;font-size:var(--font-secondary)}.recent-contacts{gap:12px;padding:4px 0 8px}.recent-contacts button{width:68px;font-size:var(--font-meta)}.feature-grid,.help-grid{gap:12px;margin-top:16px}.panel-card,.feature-grid article{padding:12px;border-radius:12px;box-shadow:none}.directory-row{padding:10px 0;min-height:72px}.section-heading h2{margin:18px 0 8px}.call-history article{min-height:76px;padding:10px 0;gap:12px;border-radius:0;box-shadow:none}.call-history strong{font-size:var(--font-name)}.call-history small{font-size:var(--font-secondary);line-height:19px}.call-history small:last-child{font-size:var(--font-meta)}.call-quick-actions{gap:8px;margin:16px 0}.call-quick-actions button{min-height:64px;padding:8px;font-size:var(--font-meta)}
.settings-overview>p.muted{display:none}.settings-overview>h1{margin:8px 0 16px}.settings-profile{padding:12px 0;gap:12px;border-radius:0;background:transparent;min-height:76px}.settings-profile strong{font-size:var(--font-subtitle)}.settings-profile small{font-size:var(--font-secondary)}.settings-profile small:last-child{display:none}.settings-row{min-height:64px;padding:10px 0;gap:12px;border-radius:0}.settings-row strong{font-size:var(--font-body);font-weight:500}.settings-row small{font-size:var(--font-meta);line-height:17px;margin-top:2px}.setting-icon{width:40px;height:40px;border-radius:12px}.settings-category{font-size:var(--font-meta);color:var(--muted);letter-spacing:.4px;font-weight:600;margin:20px 0 4px}.subpage-header h1{font-size:var(--font-title)}.settings-content-section{padding:12px 0!important}.settings-content-section h2{font-size:var(--font-subtitle)}
dialog{padding:16px;border-radius:24px 24px 0 0;max-height:calc(var(--viewport-height) - var(--safe-top) - var(--safe-bottom))}dialog>header h2{font-size:var(--font-title)}.message-actions button,.message-actions a{min-height:48px;font-size:var(--font-body)}.message-info{font-size:var(--font-secondary)}.participants-list .participant-row{min-height:64px;gap:10px;flex-wrap:wrap}.participant-row select{width:auto;max-width:100%;font-size:var(--font-secondary)}.saved-message-row,.saved-message-card{border:0;border-bottom:1px solid var(--line);border-radius:0;padding:12px 0}.content-card{padding:12px}.selection-toolbar{box-shadow:0 -8px 32px #10164315}
@media(max-width:900px){
 .layout,body[data-section=messages] .layout{height:var(--viewport-height);padding-top:var(--safe-top)}.rail{display:none}.mobile-nav{height:calc(var(--nav-height) + var(--safe-bottom));padding:4px 4px calc(4px + var(--safe-bottom));gap:0}.mobile-nav button{min-height:56px;font-size:var(--font-caption);line-height:14px;gap:3px;border-radius:14px}.mobile-nav .ui-icon{width:24px;height:24px}.mobile-nav .active{background:transparent;font-weight:600}.mobile-nav .active .ui-icon{background:var(--tint);outline:5px solid var(--tint);border-radius:8px}.mobile-nav .active span{margin-top:2px}body:has(.chat) .mobile-nav,.keyboard-open .mobile-nav{display:none}
 .page{padding:16px}.chat-heading{padding:4px;gap:2px}.chat-heading>.avatar{display:inline-flex;width:36px;height:36px}.chat-heading .chat-title h1{font-size:var(--font-name)}.chat-tools .icon-button{width:44px;min-width:44px}.message{max-width:84%}.messages{padding:8px 12px}.compose-row textarea{font-size:var(--font-body)}.content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 dialog{width:100%;max-width:100%;margin:auto var(--safe-right) var(--safe-bottom) var(--safe-left);padding:var(--space-4);border:0}.image-viewer{border-radius:0}.selection-toolbar{position:absolute;top:auto;bottom:0;left:0;right:0;z-index:30;background:var(--bg);padding:16px 12px calc(12px + var(--safe-bottom));border:1px solid var(--line);border-radius:24px 24px 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));max-height:80dvh;overflow:auto}.selection-toolbar>strong{display:none}.selection-toolbar>button,.selection-toolbar>a{min-height:56px;display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:var(--font-meta);gap:4px}.selection-toolbar>#selection-close{grid-column:1/-1;min-height:32px;align-items:flex-end}.selection-toolbar .reaction-picker{grid-column:1/-1;order:-1;display:flex;justify-content:space-between}.reaction-picker button{min-width:44px;min-height:48px}.chat:has(.selection-toolbar)::after{content:"";position:absolute;inset:0;background:#14244920;pointer-events:none;z-index:20}
}
.android-app .layout,.android-app body[data-section=messages] .layout{display:flex;flex-direction:column;height:var(--viewport-height)}.android-app .rail{display:none}.android-app main{flex:1}.android-app .mobile-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));height:64px}.android-app body[data-section=messages]:not(.mobile-detail) main{display:none}.android-app body.mobile-detail .inbox{display:none}.android-app .inbox{flex:1}.android-app body:has(.chat) .mobile-nav{display:none}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.composer-tools{display:flex}.contacts-page .directory-row .row-copy strong{font-size:var(--font-name)}.contacts-page .directory-row .row-copy>span{font-size:var(--font-secondary)}.contacts-page .directory-row .avatar,.call-history .avatar{width:52px;height:52px}.call-history{border:0;border-radius:0;padding:0}.settings-menu .settings-row{min-height:64px;padding:10px 0;margin:0}.settings-menu .settings-row .setting-icon{background:var(--tint);color:var(--blue);flex-basis:40px!important;height:40px}

:root[data-theme=dark]{color-scheme:dark;background:var(--bg)}
[data-theme=dark] body,[data-theme=dark] .mobile-nav,[data-theme=dark] .chat-heading,[data-theme=dark] .composer,[data-theme=dark] .page,[data-theme=dark] dialog,[data-theme=dark] .call-quick-actions button,[data-theme=dark] .panel-card,[data-theme=dark] .settings-row,[data-theme=dark] .file{background:var(--bg);color:var(--ink)}
[data-theme=dark] input,[data-theme=dark] textarea,[data-theme=dark] select,[data-theme=dark] .message .bubble,[data-theme=dark] .reaction-pill{background:var(--soft);color:var(--ink);border-color:var(--line)}[data-theme=dark] .message.mine .bubble,[data-theme=dark] .message-reply{background:var(--tint);color:var(--ink)}[data-theme=dark] .conversation-row:hover,[data-theme=dark] .conversation-row.current{background:var(--soft)}[data-theme=dark] .primary{background:#0758ed;color:white}

.conversation-row .avatar-stack .avatar{width:30px;height:30px;font-size:12px}.row-avatar{width:52px;min-width:52px}.inbox #inbox-menu,.inbox-header-actions #inbox-compose{display:inline-flex}.inbox .top-bar{gap:0}.inbox-header-actions{gap:0}.home-actions button{min-height:56px}.composer-tools{justify-content:space-between}.composer-tools .lifetime-button{min-height:44px;width:44px;padding:8px}.filter-row button.selected{background:var(--tint);color:var(--blue)}
.android-app .layout{padding-top:var(--safe-top);padding-left:var(--safe-left);padding-right:var(--safe-right)}.android-app .mobile-nav{height:calc(64px + var(--safe-bottom));padding-bottom:calc(4px + var(--safe-bottom))}.android-app .composer{padding-bottom:calc(6px + var(--safe-bottom))}

.icon-button.primary{background:#0758ed;color:white}

/* Indigo Aura — tokens, reusable controls, then screen-specific compositions. */
:root,:root[data-theme=dark]{
 
 
 
 
 
 color-scheme:dark;color:var(--ink);background:var(--bg);font-family:var(--font-family);
}
html,body,#app{min-height:100%;background:var(--bg)}
body{font-size:var(--font-body);line-height:1.45}button,input,textarea,select{font:inherit}button:disabled{opacity:.45}
h1{font-size:var(--font-page);letter-spacing:-.5px;line-height:1.25}h2{font-size:var(--font-section);letter-spacing:-.2px}h3{font-size:var(--font-body)}
p{line-height:1.5}.page>p.muted{margin-bottom:var(--space-4)}small,.fine{font-size:var(--font-meta)}
.rail,.inbox,.shared-screen,.selection-toolbar,.rtc-screen,[data-theme=dark] .page,[data-theme=dark] dialog{background:var(--bg);color:var(--ink)}
[data-theme=dark] .mobile-nav{background:var(--bg-deep);border-top:1px solid #28344a}
[data-theme=dark] input,[data-theme=dark] textarea,[data-theme=dark] select{background:var(--surface-2);color:var(--ink);border:1px solid #ffffff0c;border-radius:var(--radius-sm)}
input::placeholder,textarea::placeholder{color:#929fb9}input:focus,textarea:focus,select:focus{border-color:var(--indigo)}
label{font-size:var(--font-secondary);font-weight:500}button:focus-visible,a:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}
.search-field,[data-theme=dark] .search-field{background:var(--surface-2);border:1px solid #ffffff08;border-radius:var(--radius-sm);color:var(--text-secondary)}
.search-field input,[data-theme=dark] .search-field input{background:transparent;border:0;font-size:var(--font-secondary)}
.primary,[data-theme=dark] .primary,.icon-button.primary{background:linear-gradient(110deg,#386bf2,#6356ed 72%,#7850eb);color:#fff;box-shadow:0 3px 12px #3843d526}
.secondary{background:var(--surface-2);border:1px solid #7585df30;color:var(--text-primary)}.danger{color:var(--danger);background:#ff4d6710}
.icon-button{color:var(--text-secondary);background:transparent}.icon-button.primary{border-radius:50%}.text-button{color:#a9b5ff;font-size:var(--font-meta)}.text-button .ui-icon{width:14px;height:14px}
.top-bar{margin-bottom:var(--space-4);gap:var(--space-2)}.top-actions{display:flex;align-items:center;gap:2px}.top-actions .icon-button{min-width:var(--touch);width:40px;min-height:var(--touch);height:var(--touch)}
.brand-lockup strong{font-size:var(--font-section);letter-spacing:.5px}.brand-lockup img{width:26px;height:30px}
.avatar{color:#ced6ff;background:linear-gradient(140deg,#253a65,#3b3772);border:1px solid #a9beff30}.avatar.business{color:#8fe2f0;background:#143142}.avatar-stack .avatar{border-color:var(--bg)}
.profile-button .avatar{width:34px;height:34px;font-size:var(--font-meta)}.profile-button{padding:4px}
.aura-chips{display:flex;gap:6px;margin:var(--space-4) 0;overflow-x:auto;scrollbar-width:none}.aura-chips button,.filter-row button{min-height:40px;padding:8px 12px;border-radius:var(--radius-sm);background:var(--surface-1);color:var(--text-secondary);font-size:var(--font-meta);white-space:nowrap;border:1px solid #ffffff06}
.aura-chips .selected,.filter-row button.selected{color:#fff;background:linear-gradient(110deg,#25417a,#34306c);border-color:#667cf05c}
.inbox-title{padding:0 16px 12px}.inbox .top-bar{padding:10px 12px 0}.inbox-header-actions .icon-button,#inbox-menu{min-width:var(--touch);width:36px}.inbox .workspace .search-field{min-height:42px}.inbox .workspace .search-field input{min-height:40px}
.conversation-row{min-height:76px}.conversation-row .avatar{width:48px;height:48px}.row-avatar{width:48px;min-width:48px}.conversation-row::after{left:76px;background:#ffffff08}.conversation-row .preview{font-size:var(--font-secondary);color:#a0acc5}
[data-theme=dark] .conversation-row:hover,[data-theme=dark] .conversation-row.current{background:#14233b}.conversation-row.current:before{content:"";position:absolute;left:0;top:16px;bottom:16px;width:3px;background:var(--cyan);border-radius:2px}
.unread{background:var(--indigo);color:#fff}.connection{border:0;color:var(--text-muted);font-size:var(--font-caption)}.row-end time{color:var(--text-muted)}
.mobile-nav button{color:#a7b3ce}.mobile-nav button.active{color:#e2e8ff}.mobile-nav .active .ui-icon{background:linear-gradient(140deg,#365bdb,#694de6);outline:5px solid #3144aa;border-radius:7px;color:#fff}
.section-heading h2{margin:18px 0 10px}.home-greeting{color:var(--text-secondary);margin:4px 0 16px;font-size:var(--font-secondary)}
.aura-hero{position:relative;isolation:isolate;overflow:hidden;width:100%;min-height:136px;padding:20px;text-align:left;border:1px solid #7585f044;border-radius:var(--radius-md);background:radial-gradient(ellipse at 90% 12%,#6351b94a,transparent 52%),linear-gradient(130deg,#13294a,#111a35 65%,#122c43);color:#e4eafe}
.aura-hero:before{content:"";position:absolute;z-index:-1;width:80%;height:140%;right:-16%;top:-38%;border-radius:50%;border-bottom:1px solid #6adeec;transform:rotate(-28deg);box-shadow:0 5px 14px #318bd530,0 15px 22px #4c40db25}
.aura-hero:after{content:"";position:absolute;inset:auto 0 0 35%;height:48%;z-index:-1;clip-path:polygon(0 100%,22% 52%,31% 65%,53% 12%,65% 50%,82% 25%,100% 70%,100% 100%);background:linear-gradient(150deg,#324a71,#091328 72%)}
.aura-hero>span{font-size:var(--font-body);line-height:1.45}.aura-hero strong{color:#fff}.aura-hero i{position:absolute;right:12px;bottom:12px;width:32px;height:32px;display:grid;place-items:center;border:1px solid #b4baff4a;border-radius:10px}.aura-hero .ui-icon{width:18px;height:18px}
.home-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:8px 0 4px}.home-actions button{flex-direction:column;gap:10px;min-height:88px;padding:12px 4px;background:linear-gradient(150deg,#112841,#101c30);border:1px solid #648cf21a;border-radius:12px;color:var(--cyan)}.home-actions button:nth-child(3){color:#91a3ff;background:#141d39}.home-actions button:nth-child(4){color:#b8a0ff;background:#1b1a36}.home-actions span{font-size:var(--font-meta);line-height:1.25;color:var(--text-primary);max-width:65px}
.saved-shortcut{display:flex;align-items:center;gap:12px;padding:8px 0;text-align:left;width:100%}.saved-shortcut>span:nth-child(2){display:flex;flex:1;flex-direction:column;gap:4px}.saved-shortcut strong{font-size:var(--font-secondary)}.saved-shortcut small{font-size:var(--font-meta);color:var(--text-secondary)}.saved-shortcut>.ui-icon{width:16px}.saved-shortcut .setting-icon{background:#222341;color:#c1a8ff}
.aura-empty{padding:24px 12px;display:flex;flex-direction:column;align-items:center;text-align:center;color:var(--muted);gap:10px}.aura-empty>.ui-icon{width:32px;height:32px;color:#91a3e5}.aura-empty strong{font-size:var(--font-body);color:var(--ink)}.aura-empty p{font-size:var(--font-secondary);margin:0;max-width:290px}
.aura-error{padding:20px 12px;text-align:center;color:var(--text-secondary)}.aura-error>.ui-icon{color:var(--danger)}.aura-error p{font-size:var(--font-secondary)}
.skeleton-row{display:flex;gap:12px;align-items:center;min-height:76px}.skeleton-row>i{width:48px;height:48px;border-radius:50%;background:var(--surface-2)}.skeleton-row>span{flex:1;display:grid;gap:8px}.skeleton-row b{height:12px;border-radius:4px;background:var(--surface-2);width:72%}.skeleton-row b:last-child{width:48%;height:9px}.skeleton-list{animation:aura-pulse 1.5s ease-in-out infinite alternate}@keyframes aura-pulse{to{opacity:.5}}
.unauthenticated .rail,.unauthenticated .mobile-nav{display:none!important}.unauthenticated .layout{display:flex!important}.unauthenticated main{width:100%}.auth-panel{padding:20px;max-width:440px;margin:0 auto;min-height:100%;background:radial-gradient(ellipse at 100% 0,#35388a16,transparent 50%)}
.auth-panel>.top-bar{margin-bottom:32px}.auth-panel>p.muted{font-size:var(--font-secondary);margin:8px 0 24px}.auth-panel label{margin-top:16px}.auth-panel .auth-links{display:grid;grid-template-columns:1fr;gap:0;margin:16px 0}.auth-links button{font-size:var(--font-secondary);min-height:40px}.auth-privacy{color:var(--text-muted)}
.password-field{display:flex;background:var(--surface-2);border:1px solid #ffffff0c;border-radius:var(--radius-sm);overflow:hidden}.password-field input,[data-theme=dark] .password-field input{border:0;background:transparent;margin:0;flex:1}.password-field button{width:48px;flex:none;color:var(--text-secondary)}.password-field:focus-within{outline:1px solid var(--indigo)}.password-strength{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:8px}.password-strength i{height:3px;border-radius:4px;background:#29364a}.password-strength span{grid-column:1/-1;font-size:var(--font-meta);color:var(--text-secondary);margin-top:2px}.password-strength[data-level="1"] i:first-child,.password-strength[data-level="2"] i:not(:nth-child(3)){background:var(--cyan)}.password-strength[data-level="3"] i{background:var(--success)}
.auth-confirmation>.ui-icon{width:48px;height:48px;color:var(--cyan)}
.onboarding{max-width:440px;display:flex;flex-direction:column;padding:16px 20px 24px;min-height:100%}.onboarding>.top-bar{margin-bottom:8px}.onboarding .eyebrow{font-size:var(--font-caption);letter-spacing:2px;color:#b2bcd6}.onboarding-heading h1{font-size:var(--font-display);line-height:1.15}.onboarding-heading h1 span{background:linear-gradient(105deg,#b9baff,#d3afff,#88e4f4);background-clip:text;color:transparent}.onboarding-heading p{font-size:var(--font-secondary);color:var(--text-secondary);margin:12px 0}.aura-emblem{height:110px;display:grid;place-items:center;position:relative;background:radial-gradient(ellipse at center,#283f9833,transparent 60%)}.aura-emblem:before{content:"";position:absolute;width:90px;height:90px;border:1px solid #6674ec44;border-radius:50%;box-shadow:0 0 30px #454acd15}.aura-emblem img{height:60px;width:60px}.onboarding-features{display:grid;gap:8px;margin:12px 0 20px}.onboarding-features article{display:flex;gap:14px;padding:12px;border-radius:12px;background:linear-gradient(110deg,#0f2038,#111a2e);border:1px solid #ffffff08}.onboarding-features article>span{width:40px;flex:none;height:40px;display:grid;place-items:center;color:var(--cyan);background:#10314a;border-radius:12px}.onboarding-features article:nth-child(3)>span{color:#bc98ff;background:#292044}.onboarding-features h2{font-size:var(--font-secondary);margin:0 0 4px}.onboarding-features p{font-size:var(--font-meta);color:var(--text-secondary);margin:0}.onboarding>.primary{margin-top:auto;justify-content:space-between;padding:12px 18px}
.app-splash{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;background:radial-gradient(ellipse at 50% 42%,#23318155,transparent 38%),var(--bg-deep)}.app-splash img{width:72px;height:72px}.app-splash strong{font-size:var(--font-display);letter-spacing:2px}.app-splash span{font-size:var(--font-secondary);color:var(--muted)}
.contacts-page .search-form{margin:16px 0;flex-wrap:wrap}.contacts-page .search-field{flex:1;min-width:170px}.contacts-page .search-form>.primary{font-size:var(--font-meta)}.alphabet-heading{margin:16px 0 0;color:var(--cyan);font-size:var(--font-meta);font-weight:600}.directory-row .row-copy strong{font-size:var(--font-name);line-height:1.35}.directory-row>.ui-icon{width:16px;height:16px;color:var(--text-muted)}
.profile-heading{flex-direction:column;align-items:center;text-align:center;padding:20px 0;background:radial-gradient(ellipse at center,#31499c30,transparent 65%)}.profile-heading>.avatar{width:104px;height:104px;font-size:var(--font-display);box-shadow:0 0 0 4px #7882ff12}.profile-heading h1{margin:12px 0 6px}.profile-description{font-size:var(--font-body);color:var(--text-secondary)}.hours,.contact-section,.share-line{background:var(--surface-1);border-color:var(--line);border-radius:var(--radius-md)}
.call-history article{display:flex;align-items:center;border-bottom:1px solid var(--line);background:none}.call-detail{min-width:0;flex:1;display:flex;flex-direction:column;text-align:left;gap:3px;padding:0}.call-detail strong{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:100%}.call-detail small{color:var(--muted)}.call-missed .call-detail small:first-of-type{color:var(--danger)}.call-history .icon-button{color:#849bff}.call-profile{text-align:center;margin:16px 0}.call-profile .avatar{width:80px;height:80px}.detail-list{display:grid;grid-template-columns:auto 1fr;gap:16px;padding:16px;background:var(--surface-1);border-radius:16px;font-size:var(--font-secondary)}.detail-list dt{color:var(--muted)}.detail-list dd{margin:0;text-align:right}.call-detail-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.call-detail-actions .secondary{flex-direction:column;font-size:var(--font-meta);padding:12px 4px}
.settings-profile{background:linear-gradient(120deg,#172543,#141d36);border:1px solid #7585f025;border-radius:14px;padding:16px;min-height:92px}.settings-profile>.avatar{width:56px;height:56px}.settings-profile small:last-child{display:block;color:#a2b0ff;font-size:var(--font-meta)}.settings-menu .settings-row{padding:12px 0;border-bottom:1px solid var(--line)}.settings-menu .settings-row .setting-icon{background:#182b51;color:#829eff;border:1px solid #5c77df24}.settings-menu .settings-row:nth-of-type(3n) .setting-icon{background:#261f43;color:#b09aff}.settings-menu .settings-row:nth-of-type(4n) .setting-icon{background:#113040;color:#6fdbeb}.settings-category{color:var(--text-muted);font-size:var(--font-meta);letter-spacing:.5px}.settings-row>span:nth-child(2){min-width:0}.settings-row small{color:var(--text-secondary)}
[data-theme=dark] .chat-heading{background:var(--bg-deep);border-bottom:1px solid var(--line)}.chat-heading .chat-title h1{font-size:var(--font-name)}.chat-subtitle{color:var(--text-secondary)}.chat-tools .icon-button{color:#8cb9ec}.messages{background-color:var(--bg-main)}
[data-theme=dark] .message .bubble{background:linear-gradient(130deg,#19263b,#182137);border:1px solid #ffffff06;border-radius:14px 14px 14px 6px;color:var(--ink);padding:8px 11px}
[data-theme=dark] .message.mine .bubble{background:linear-gradient(115deg,#263973,#343268);border:1px solid #8c91ee30;border-radius:14px 14px 6px 14px;color:var(--ink)}.message time{color:#a6b3cf}.message-status{color:#b2bfdb}.message-status.read{color:var(--cyan)}.message .bubble p{font-size:var(--font-body);line-height:1.4}.message-forwarded,.message-edited{font-size:var(--font-caption);color:#adbada}.message .file,[data-theme=dark] .message .file{background:#0a142638;border:1px solid #8994be1f;color:var(--ink)}.message .file small{color:var(--text-secondary)}.message-reply,[data-theme=dark] .message-reply{background:#09142970;border-left:2px solid #8a90ff;border-radius:8px}.message-reply strong{color:#b1bbff}.message-reply span{color:var(--text-secondary)}.history-label{color:var(--text-muted)}
[data-theme=dark] .composer{background:var(--bg-deep);border-color:#ffffff0a}.compose-row textarea,[data-theme=dark] .compose-row textarea{background:var(--surface-2);border-radius:24px;border:1px solid #ffffff0b;line-height:1.4}.compose-row #send-button{border-radius:50%;padding:12px}.composer-tools{max-height:44px}.composer-tools .ui-icon{width:21px;height:21px}.composer-tools #record-voice{color:#bda8ff}.compose-row>.attach{background:var(--surface-2);color:#b8c4e3;border-radius:50%;width:40px;min-width:40px;height:44px;margin:2px 0;cursor:pointer}
.attachment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}.attachment-grid button{min-height:96px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:var(--surface-2);border-radius:16px;color:#b8a6ff}.attachment-grid button:nth-child(2n){color:var(--cyan)}.attachment-grid span{font-size:var(--font-secondary);color:var(--ink)}
dialog{border:1px solid #52648c55;box-shadow:0 -10px 60px #0005}dialog::backdrop{background:#020610b3;backdrop-filter:blur(3px)}dialog>header{border-bottom:1px solid var(--line);padding-bottom:12px}.selection-toolbar{background:var(--surface-1);border-color:#66749f66}.reaction-picker{background:none}.reaction-pill,[data-theme=dark] .reaction-pill{background:#152943;border:1px solid #6d80af36}.reaction-pill.active{border-color:#8b85f2}.message-actions button{border-bottom:1px solid var(--line);color:var(--ink)}#delete-for-me,#delete-for-everyone{color:var(--danger)}
.voice-recorder{padding:16px 0;text-align:center}.voice-recorder #voice-state{color:var(--text-secondary)}#voice-wave{width:100%;height:80px;background:radial-gradient(ellipse,#38428e24,transparent);border-radius:16px}.voice-controls{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:20px 0}.voice-controls button{padding:12px;min-height:48px;border-radius:12px;background:var(--surface-2)}.voice-controls .primary{background:var(--indigo)}.audio-card{background:none}.waveform i{background:#9b93eb}.audio-meta{font-size:var(--font-meta)}audio{width:100%;min-width:0;height:42px}
.shared-heading{background:var(--bg);padding:8px;gap:8px}.shared-heading h2{font-size:var(--font-section)}.shared-tabs{display:flex;overflow:auto;gap:6px;padding:8px}.shared-tabs button{flex:1;min-width:65px;font-size:var(--font-meta);padding:10px 8px;background:var(--surface-1);border-radius:10px}.shared-tabs [aria-selected=true]{background:#2c3765;color:#fff}.shared-tabs .ui-icon{display:none}.content-card{background:var(--surface-1);border:1px solid var(--line);border-radius:12px;min-width:0}.content-card h3,.content-card a{overflow-wrap:anywhere;font-size:var(--font-secondary)}.content-card img{aspect-ratio:1;object-fit:cover}.content-card video{width:100%}.image-viewer{background:var(--bg-deep)!important}.image-stage{background:#020711}.file-full-preview{max-width:100%}.image-viewer .button-row{justify-content:center}
.rtc-screen{background:radial-gradient(ellipse at 50% 34%,#27398577,transparent 42%),radial-gradient(ellipse at 85% 62%,#462b6630,transparent 50%),var(--bg-deep);padding:calc(20px + var(--safe-top)) 20px calc(24px + var(--safe-bottom));overflow:auto}.rtc-screen>header{color:var(--text-secondary);letter-spacing:1px}.rtc-screen h1{font-size:var(--font-page)}.rtc-screen #rtc-state{color:#c1cee8;font-size:var(--font-body)}.rtc-screen #rtc-person .avatar{width:148px;height:148px;font-size:42px;border:2px solid #afbaff;box-shadow:0 0 0 8px #7484ee0b,0 0 40px #474de32b}.rtc-controls{gap:18px;flex-wrap:wrap;justify-content:center}.rtc-controls button{background:#192743;border:1px solid #66719a2b;border-radius:20px;min-width:74px;min-height:74px;color:var(--ink);font-size:var(--font-meta)}.rtc-controls .rtc-accept{background:#138b88}.rtc-controls .rtc-end{background:#e43f59}.rtc-controls button[aria-pressed=true]{background:#5148ab}.rtc-screen #rtc-hint:empty{display:none}.rtc-screen #rtc-hint{font-size:var(--font-meta);max-width:360px}.rtc-screen #rtc-local{border:1px solid #9ba6d98a;border-radius:14px}.rtc-screen #rtc-remote{border-radius:20px}
.group-heading{text-align:center;display:flex;align-items:center;flex-direction:column}.group-heading>.avatar{width:88px;height:88px}.participant-row{border-bottom:1px solid var(--line)}.group-preview #create-group{padding:12px 0 24px}.group-preview #join-group{border-top:1px solid var(--line);padding-top:8px}.group-preview .primary{width:100%}.support-panel,.request-bar,.group-pinned{background:var(--surface-1);border-color:var(--line)}
.saved-message-card{gap:12px;min-width:0}.saved-message-copy{min-width:0;flex:1}.saved-message-copy p{overflow-wrap:anywhere;font-size:var(--font-secondary);color:var(--text-secondary)}.message-search-page form{display:flex;gap:8px;flex-wrap:wrap}.message-search-page form .search-field{flex:1;min-width:160px}.message-search-page h1,.saved-messages-page h1{font-size:var(--font-title)}
@media(max-width:900px){
 .page{padding:16px;max-width:600px}.mobile-nav{flex-shrink:0}.mobile-nav button{font-size:var(--font-caption)}.inbox{background:var(--bg)}.layout{background:var(--bg)}.chat{background:var(--bg);min-width:0}.chat-heading{padding:6px 2px}.chat-tools .icon-button{width:40px;min-width:var(--touch)}.chat-heading>.avatar{width:34px;height:34px}.messages{padding:12px}.message{max-width:84%}.message .image-message{max-height:320px;object-fit:cover}.settings-grid{display:block}.feature-grid,.help-grid{grid-template-columns:1fr}.profile-heading{margin-top:8px}.content-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px}.rtc-screen .rtc-stage{min-height:150px}.image-viewer{height:var(--viewport-height);max-height:var(--viewport-height)}.search-form{gap:8px}.inbox-title{font-size:var(--font-page)}
}
@media(max-height:650px){.aura-emblem{height:70px}.aura-emblem:before{width:60px;height:60px}.aura-emblem img{width:42px;height:42px}.onboarding-features{gap:6px}.onboarding-features article{padding:9px}.onboarding>.top-bar{margin-bottom:0}.rtc-screen{padding-top:12px;padding-bottom:12px}.rtc-screen .rtc-stage{min-height:110px}.rtc-screen #rtc-person .avatar{width:96px;height:96px;font-size:var(--font-display)}.rtc-screen h1{margin:8px 0}.rtc-controls{gap:8px}.rtc-controls button{min-height:60px;min-width:66px}.rtc-screen #rtc-state{margin:6px 0}dialog{max-height:92dvh}.auth-panel>.top-bar{margin-bottom:20px}}
@media(prefers-reduced-motion:reduce){.skeleton-list{animation:none}*,*::before,*::after{scroll-behavior:auto!important}}

/* Resets for legacy light-theme decorations; the tokens above own all colors. */
.home-page h1,.contacts-page h1,.settings-overview h1,.calls-page h1{font-size:var(--font-page)}
.home-actions button .ui-icon{background:transparent;border-radius:0;padding:0;box-sizing:border-box;width:26px;height:26px}.home-actions #home-calls{order:0}.home-actions button{min-height:88px}
.home-page .compact-list,.contacts-page .directory{border:0;border-radius:0;padding:0}.home-page .compact-list .conversation-row{min-height:72px}.home-page .section-heading{margin-top:12px}
.message:not(.mine){margin-left:0;max-width:84%}.message:has(.message-avatar):not(.mine){margin-left:32px;max-width:calc(84% - 32px)}.message time{background:transparent;padding:2px 2px;color:#a6b3cf}.date-separator span{background:#142138;color:#aebad4;font-size:var(--font-caption);padding:4px 10px;border-radius:8px}.date-separator{margin:8px 0 14px}
.contacts-page .search-form .primary{position:static;flex:none;min-height:44px}.contacts-page .search-form{flex-wrap:nowrap}.contacts-page .search-field{min-width:0}.contacts-page .search-form input{padding-right:0}
.call-history .icon-button{background:transparent}.conversation-card>button{background:var(--surface-2);color:var(--ink);border-color:var(--line)}.conversation-card{background:var(--surface-1);color:var(--ink)}
.profile-call-actions{display:inline-flex;margin:0 8px}.profile-call-actions .icon-button{background:var(--surface-2);color:var(--cyan)}.profile-page .contact-section{padding:16px}.about-aura{padding:24px 0}.status.new{background:#493b20;color:#f4c875}.status.resolved{background:#123d36;color:#70dfb9}
.top-bar .brand-lockup strong{font-size:var(--font-section)}

.settings-menu .settings-row{border:0;border-bottom:1px solid var(--line);border-radius:0}.settings-menu .settings-row:nth-child(n) .setting-icon{background:#182b51;color:#829eff}.settings-menu .settings-row:nth-child(3n) .setting-icon{background:#261f43;color:#b09aff}.settings-menu .settings-row:nth-child(4n) .setting-icon{background:#113040;color:#6fdbeb}
.legal-links{display:flex;flex-wrap:wrap;gap:4px 16px;margin:16px 0}.legal-links a{font-size:var(--font-meta);min-height:36px;display:inline-flex;align-items:center}.legal-page{max-width:640px}.legal-page>h1{margin:16px 0 24px}.legal-page section{margin:24px 0}.legal-page p{font-size:var(--font-body);color:var(--text-secondary)}.legal-draft{padding:20px;background:var(--surface-1);border:1px solid #f4b94235;border-radius:16px}.legal-draft-label{font-size:var(--font-caption);letter-spacing:1px;color:var(--warning)}.legal-draft h2{margin-top:16px}

.group-photo-picker{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;position:relative;margin:12px 0 24px}.group-photo-picker>.avatar{width:88px;height:88px;overflow:hidden}.group-photo-picker>.avatar img{width:100%;height:100%;object-fit:cover}.group-photo-picker>input{max-width:100%;font-size:var(--font-meta)}.group-photo-picker small{font-size:var(--font-caption);color:var(--muted)}.group-invite-picker{margin:20px 0}.group-invite-picker summary{min-height:44px;color:#afbaff;cursor:pointer}.group-select-contact{display:flex;align-items:center;gap:12px;margin:0;padding:8px 0;border-bottom:1px solid var(--line)}.group-select-contact>span:nth-child(2){flex:1}.group-select-contact>input{width:20px;min-height:20px;margin:0}.group-select-contact>.avatar{width:40px;height:40px;font-size:var(--font-secondary)}

.settings-page[data-setting=privacy] .profile-photo-editor,.settings-page[data-setting=notifications] .profile-photo-editor,.settings-page[data-setting=privacy] #profile-form>label:has([name=name]),.settings-page[data-setting=privacy] #profile-form>label:has([name=handle]),.settings-page[data-setting=privacy] #profile-form>label:has([name=notifications]),.settings-page[data-setting=notifications] #profile-form>label:not(:has([name=notifications])),.settings-page[data-setting=privacy] #profile-form>.fine,.settings-page[data-setting=notifications] #profile-form>.fine{display:none}
.settings-page[data-setting=privacy] .settings-content-section>label,.settings-page[data-setting=notifications] .settings-content-section>label,.settings-page[data-setting=privacy] .settings-content-section>.button-row,.settings-page[data-setting=notifications] .settings-content-section>.button-row,.settings-page[data-setting=privacy] #enable-notifications{display:none}
.settings-page[data-setting=profile] #profile-form>.check{display:none}.settings-page[data-setting=privacy] .settings-content-section>h2,.settings-page[data-setting=notifications] .settings-content-section>h2{display:none}
