/* Hamrah Group 11.4 Dev3 — unified theme studio and real responsive layouts */
:root{--g114d3-fast:150ms;--g114d3-normal:220ms;--g114d3-ease:cubic-bezier(.2,.8,.2,1)}
body.g114d3-open{overflow:hidden}
.g114d3-entry{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px;border:1px solid color-mix(in srgb,var(--primary) 25%,var(--line));border-radius:24px;background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 12%,var(--surface)),var(--surface));box-shadow:var(--shadow-sm)}.g114d3-entry span{color:var(--primary);font:900 .54rem/1.2 system-ui;letter-spacing:.1em}.g114d3-entry h3{margin:5px 0 4px}.g114d3-entry p{margin:0;color:var(--muted);font-size:.6rem;line-height:1.75}.g114d3-entry>button{flex:0 0 auto;min-height:44px;padding:0 15px;border:0;border-radius:15px;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;font:inherit;font-size:.61rem;font-weight:900}.g114d3-entry>button b{margin-inline-start:8px}
.g114d3-studio{position:fixed;inset:0;z-index:130000;display:grid;place-items:center;padding:14px;background:rgba(2,7,13,.72);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.g114d3-studio.hidden{display:none}.g114d3-shell{width:min(1480px,100%);height:min(940px,100%);min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;border:1px solid color-mix(in srgb,var(--primary) 22%,var(--line));border-radius:28px;background:var(--bg);box-shadow:0 32px 100px rgba(0,0,0,.44);direction:rtl}.g114d3-topbar{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:14px;padding:15px 18px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 95%,transparent)}.g114d3-topbar>div>span{color:var(--primary);font:900 .54rem/1.2 system-ui;letter-spacing:.12em}.g114d3-topbar h2{margin:4px 0 2px;font-size:1.08rem}.g114d3-topbar p{margin:0;color:var(--muted);font-size:.57rem}.g114d3-icon-btn{width:42px;height:42px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--text);font-size:24px}
.g114d3-workspace{min-height:0;min-width:0;display:grid;grid-template-columns:190px minmax(360px,1fr) minmax(350px,500px);grid-template-areas:"nav panel preview";overflow:hidden}.g114d3-nav{grid-area:nav;min-width:0;overflow:auto;padding:12px 9px;border-left:1px solid var(--line);background:var(--surface)}.g114d3-nav button{width:100%;min-width:0;display:flex;align-items:center;gap:9px;min-height:48px;padding:7px 9px;border:0;border-radius:14px;background:transparent;color:var(--muted);font:inherit;text-align:right}.g114d3-nav button span{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;border-radius:10px;background:color-mix(in srgb,currentColor 9%,transparent)}.g114d3-nav button b{font-size:.66rem}.g114d3-nav button:hover,.g114d3-nav button.active{background:color-mix(in srgb,var(--primary) 11%,var(--surface));color:var(--primary)}
.g114d3-panel{grid-area:panel;min-width:0;min-height:0;overflow:auto;padding:18px;overscroll-behavior:contain}.g114d3-panel-title{margin-bottom:16px}.g114d3-panel-title span{color:var(--primary);font:900 .52rem/1.2 system-ui;letter-spacing:.12em}.g114d3-panel-title h3{margin:5px 0 3px;font-size:1.1rem}.g114d3-panel-title p{margin:0;color:var(--muted);font-size:.62rem;line-height:1.8}.g114d3-card{margin-bottom:14px;padding:15px;border:1px solid var(--line);border-radius:21px;background:var(--surface);box-shadow:var(--shadow-sm)}.g114d3-card h4{margin:0 0 11px;font-size:.76rem}.g114d3-card>p{margin:-3px 0 11px;color:var(--muted);font-size:.55rem;line-height:1.7}.g114d3-variant-card{background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 7%,var(--surface)),var(--surface));border-color:color-mix(in srgb,var(--primary) 22%,var(--line))}
.g114d3-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.g114d3-options.theme-family{grid-template-columns:repeat(3,minmax(0,1fr))}.g114d3-options button{position:relative;min-width:0;min-height:62px;display:flex;align-items:center;gap:9px;padding:9px 10px;border:1px solid var(--line);border-radius:15px;background:var(--surface-2);color:var(--text);font:inherit;text-align:right}.g114d3-options button>i{width:29px;height:29px;flex:0 0 29px;border-radius:10px;background:var(--swatch);box-shadow:0 5px 15px color-mix(in srgb,var(--primary) 22%,transparent)}.g114d3-options button>span{min-width:0}.g114d3-options b,.g114d3-options small{display:block;overflow-wrap:anywhere}.g114d3-options b{font-size:.66rem}.g114d3-options small{margin-top:3px;color:var(--muted);font-size:.5rem;line-height:1.45}.g114d3-options em{position:absolute;top:7px;left:7px;display:none;width:20px;height:20px;border-radius:50%;place-items:center;background:var(--primary);color:#fff;font-style:normal;font-size:11px}.g114d3-options button.active{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 10%,var(--surface))}.g114d3-options button.active em{display:grid}.g114d3-options.interface-styles button{min-height:82px;align-items:flex-start;padding-top:35px}.g114d3-options.interface-styles button:before{content:"";position:absolute;top:9px;right:10px;left:10px;height:18px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:inset 0 -5px 0 color-mix(in srgb,var(--primary) 10%,transparent)}.g114d3-options.interface-styles [data-d3-value="soft"]:before{border-radius:14px;box-shadow:0 4px 12px rgba(0,0,0,.1)}.g114d3-options.interface-styles [data-d3-value="glass"]:before{background:linear-gradient(120deg,color-mix(in srgb,var(--primary) 28%,transparent),color-mix(in srgb,var(--surface) 45%,transparent));backdrop-filter:blur(8px)}.g114d3-options.interface-styles [data-d3-value="minimal"]:before{border-inline:0;border-radius:0;background:transparent}.g114d3-options.interface-styles [data-d3-value="classic"]:before{border-radius:3px;box-shadow:inset 0 -1px 0 var(--line)}
.g114d3-featured{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.g114d3-featured button{min-width:0;display:grid;grid-template-columns:58px minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:center;gap:3px 9px;min-height:78px;padding:9px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2);color:var(--text);font:inherit;text-align:right}.g114d3-feature-art{grid-row:1/3;width:58px;height:58px;border-radius:15px;background:linear-gradient(135deg,var(--primary),var(--primary-2))}.g114d3-featured b{font-size:.63rem}.g114d3-featured small{color:var(--muted);font-size:.48rem}.g114d3-featured em{grid-row:1/3;grid-column:3;font-style:normal;color:var(--primary);font-size:.49rem}.g114d3-featured button.active{border-color:var(--primary);background:var(--primary-soft)}
.g114d3-range{display:block;padding:11px 0;border-bottom:1px solid var(--line)}.g114d3-range:last-child{border-bottom:0}.g114d3-range>span{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px}.g114d3-range b{font-size:.65rem}.g114d3-range output{color:var(--primary);font-size:.56rem;font-weight:900}.g114d3-range input{width:100%;accent-color:var(--primary)}.g114d3-toggle{position:relative;display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:58px;padding:8px 0;border-bottom:1px solid var(--line)}.g114d3-toggle:last-child{border-bottom:0}.g114d3-toggle b,.g114d3-toggle small{display:block}.g114d3-toggle b{font-size:.66rem}.g114d3-toggle small{margin-top:4px;color:var(--muted);font-size:.5rem}.g114d3-toggle input{position:absolute;opacity:0}.g114d3-toggle>i{width:45px;height:25px;flex:0 0 45px;border-radius:999px;background:var(--line);position:relative}.g114d3-toggle>i:after{content:"";position:absolute;top:3px;right:3px;width:19px;height:19px;border-radius:50%;background:#fff;transition:transform .18s}.g114d3-toggle input:checked+i{background:var(--primary)}.g114d3-toggle input:checked+i:after{transform:translateX(-20px)}
.g114d3-preview-wrap{grid-area:preview;min-width:0;min-height:0;display:flex;flex-direction:column;gap:9px;padding:14px;border-right:1px solid var(--line);background:color-mix(in srgb,var(--surface-2) 68%,var(--bg));overflow:hidden}.g114d3-preview-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.g114d3-preview-head b,.g114d3-preview-head small{display:block}.g114d3-preview-head b{font-size:.68rem}.g114d3-preview-head small{margin-top:2px;color:var(--muted);font-size:.5rem}.g114d3-chip{padding:6px 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--text);font:inherit;font-size:.52rem}.g114d3-preview{min-height:0;flex:1;display:grid;place-items:center;overflow:hidden;border-radius:23px;pointer-events:none}.g114d3-preview.collapsed{flex:0 0 54px}.g114d3-preview-collapsed{pointer-events:auto;width:100%;height:54px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--text);font:inherit}.g114d3-phone{position:relative;width:min(360px,100%);height:min(690px,100%);min-height:510px;display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto auto;overflow:hidden;border:6px solid color-mix(in srgb,var(--d3-line) 80%,#071019);border-radius:34px;background:var(--d3-bg);color:var(--d3-text);font-family:var(--g114-interface-font);box-shadow:0 22px 58px rgba(0,0,0,.34)}.g114d3-phone:before{content:"";position:absolute;inset:0;z-index:0;background:radial-gradient(circle at 15% 10%,color-mix(in srgb,var(--d3-p) 28%,transparent),transparent 34%),radial-gradient(circle at 90% 80%,color-mix(in srgb,var(--d3-p2) 23%,transparent),transparent 42%);pointer-events:none}.g114d3-phone>*{position:relative;z-index:1}.g114d3-phone header{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px;background:var(--d3-s);border-bottom:1px solid var(--d3-line)}.g114d3-phone header .avatar,.g114d3-phone .list article>span{width:38px;height:38px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(135deg,var(--d3-p),var(--d3-p2));color:#fff;font-weight:900}.g114d3-phone header b,.g114d3-phone header small{display:block}.g114d3-phone header small{color:var(--d3-muted);font-size:.52rem}.g114d3-phone header em{font-style:normal;color:var(--d3-muted)}.g114d3-phone .search{margin:8px 10px;padding:8px 10px;border:1px solid var(--d3-line);border-radius:12px;background:var(--d3-s2);color:var(--d3-muted);font-size:.56rem}.g114d3-phone .list article{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--d3-line);background:color-mix(in srgb,var(--d3-s) 86%,transparent)}.g114d3-phone .list b,.g114d3-phone .list small{display:block}.g114d3-phone .list b{font-size:.62rem}.g114d3-phone .list small{color:var(--d3-muted);font-size:.49rem}.g114d3-phone time{color:var(--d3-muted);font-size:.46rem}.g114d3-phone .chat{display:flex;flex-direction:column;gap:7px;padding:12px;overflow:hidden;background-image:linear-gradient(color-mix(in srgb,var(--d3-p) 8%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--d3-p2) 8%,transparent) 1px,transparent 1px);background-size:26px 26px}.g114d3-phone .chat>i{align-self:center;color:var(--d3-muted);font-size:.47rem}.g114d3-phone .chat p{max-width:79%;margin:0;padding:8px 10px;border:1px solid var(--d3-line);border-radius:var(--g114-bubble-radius,18px);background:var(--d3-bubble);font-family:var(--g114-message-font);font-size:.57rem}.g114d3-phone .chat p.out{align-self:flex-end;background:var(--d3-mine)}.g114d3-phone .chat small{display:block;margin-top:4px;color:var(--d3-muted);font-size:.43rem;text-align:left}.g114d3-phone .composer{display:grid;grid-template-columns:25px minmax(0,1fr) 34px;align-items:center;gap:5px;padding:7px 9px;background:var(--d3-s);border-top:1px solid var(--d3-line)}.g114d3-phone .composer span{padding:8px;border-radius:12px;background:var(--d3-s2);color:var(--d3-muted);font-size:.53rem}.g114d3-phone .composer button{width:34px;height:34px;border:0;border-radius:50%;background:linear-gradient(135deg,var(--d3-p),var(--d3-p2));color:#fff}.g114d3-phone nav{display:grid;grid-template-columns:repeat(4,1fr);min-height:48px;padding:4px;border-top:1px solid var(--d3-line);background:var(--d3-s)}.g114d3-phone nav button{display:grid;place-items:center;gap:1px;border:0;border-radius:9px;background:transparent;color:var(--d3-muted)}.g114d3-phone nav button.active{background:color-mix(in srgb,var(--d3-p) 10%,transparent);color:var(--d3-p)}.g114d3-phone nav small{font-size:6px}.g114d3-phone .fab{position:absolute;left:12px;bottom:57px;width:43px;height:43px;border:0;border-radius:16px;background:linear-gradient(135deg,var(--d3-p),var(--d3-p2));color:#fff;font-size:20px;box-shadow:0 9px 24px color-mix(in srgb,var(--d3-p) 34%,transparent)}
.g114d3-preview[data-header="hero"] .g114d3-phone header{min-height:72px;background:linear-gradient(135deg,color-mix(in srgb,var(--d3-p) 75%,var(--d3-s)),color-mix(in srgb,var(--d3-p2) 52%,var(--d3-s)))}.g114d3-preview[data-header="compact"] .g114d3-phone header{min-height:50px;padding-block:6px}.g114d3-preview[data-header="glass"] .g114d3-phone header{background:color-mix(in srgb,var(--d3-s) 55%,transparent);backdrop-filter:blur(16px) saturate(145%)}
.g114d3-preview[data-style="soft"] .g114d3-phone{border-radius:42px}.g114d3-preview[data-style="soft"] .g114d3-phone .list article,.g114d3-preview[data-style="soft"] .g114d3-phone .composer,.g114d3-preview[data-style="soft"] .g114d3-phone nav{margin:4px 7px;border:0;border-radius:17px;box-shadow:0 6px 18px rgba(0,0,0,.12)}.g114d3-preview[data-style="glass"] .g114d3-phone .list article,.g114d3-preview[data-style="glass"] .g114d3-phone header,.g114d3-preview[data-style="glass"] .g114d3-phone .composer,.g114d3-preview[data-style="glass"] .g114d3-phone nav{background:color-mix(in srgb,var(--d3-s) 48%,transparent);backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%);border-color:rgba(255,255,255,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.11),0 10px 28px rgba(0,0,0,.22)}.g114d3-preview[data-style="minimal"] .g114d3-phone .list article,.g114d3-preview[data-style="minimal"] .g114d3-phone .composer,.g114d3-preview[data-style="minimal"] .g114d3-phone nav{background:transparent;box-shadow:none;border-radius:0}.g114d3-preview[data-style="classic"] .g114d3-phone,.g114d3-preview[data-style="classic"] .g114d3-phone header,.g114d3-preview[data-style="classic"] .g114d3-phone .search,.g114d3-preview[data-style="classic"] .g114d3-phone .chat p{border-radius:4px}.g114d3-preview[data-style="classic"] .g114d3-phone .list article{background:var(--d3-s);border-bottom:1px solid var(--d3-line)}
.g114d3-footer{display:none;align-items:center;justify-content:space-between;gap:12px;padding:11px 16px;padding-block-end:max(11px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface) 96%,transparent)}.g114d3-shell.has-dirty .g114d3-footer{display:flex}.g114d3-footer>span{color:#df8b15;font-size:.58rem;font-weight:900}.g114d3-footer>div{display:flex;gap:8px}.g114d3-footer button{min-width:105px;min-height:40px}.g114d3-footer button:disabled{opacity:.45}.g114d3-style-explainer,.g114d3-native-state,.g114d3-note{display:flex;align-items:center;gap:11px;padding:14px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.g114d3-style-explainer>span,.g114d3-native-state>span{width:46px;height:46px;flex:0 0 46px;border-radius:15px;background:linear-gradient(135deg,var(--primary),var(--primary-2));box-shadow:0 8px 24px color-mix(in srgb,var(--primary) 24%,transparent)}.g114d3-style-explainer b,.g114d3-style-explainer small,.g114d3-native-state b,.g114d3-native-state small{display:block}.g114d3-style-explainer small,.g114d3-native-state small{margin-top:4px;color:var(--muted);font-size:.52rem;line-height:1.6}.g114d3-note{display:block;color:var(--muted);font-size:.57rem;line-height:1.8}.g114d3-icon-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.g114d3-icon-grid button{min-height:104px;display:grid;place-items:center;gap:5px;padding:10px;border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--text);font:inherit}.g114d3-icon-grid button>span{width:54px;height:54px;display:grid;place-items:center;border-radius:17px;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;font-weight:900}.g114d3-icon-grid button b{font-size:.58rem}.g114d3-icon-grid button em{height:15px;color:var(--primary);font-style:normal}.g114d3-icon-grid button.active{border-color:var(--primary);background:var(--primary-soft)}.g114d3-wide{width:100%;margin-top:10px}.g114d3-quality{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.g114d3-quality>div{padding:14px;border:1px solid var(--line);border-radius:17px;background:var(--surface);text-align:center}.g114d3-quality b,.g114d3-quality small{display:block}.g114d3-quality b{color:var(--primary);font-size:.74rem}.g114d3-quality small{margin-top:4px;color:var(--muted);font-size:.49rem}
/* Real interface differences in the actual app */
body[data-g114-style="glass"]:before{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(circle at 12% 8%,color-mix(in srgb,var(--primary) 25%,transparent),transparent 35%),radial-gradient(circle at 88% 82%,color-mix(in srgb,var(--primary-2) 22%,transparent),transparent 42%),var(--bg);pointer-events:none}body[data-g114-style="glass"] :is(.topbar,.chat-header,.bottom-nav,.settings-group,.g8-settings-section,.card,.sheet,.modal,.composer,.g8-category-card){background:color-mix(in srgb,var(--surface) 52%,transparent)!important;backdrop-filter:blur(max(14px,var(--g114-style-blur))) saturate(150%);-webkit-backdrop-filter:blur(max(14px,var(--g114-style-blur))) saturate(150%);border-color:color-mix(in srgb,#fff 13%,var(--line))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 12px 36px rgba(0,0,0,.22)!important}body[data-g114-style="soft"] :is(.g8-settings-section,.g8-category-card,.card,.sheet,.modal,.composer){border-radius:calc(26px*var(--g114-radius-scale))!important;padding-block:calc(1em*var(--g114-density));box-shadow:0 10px 30px rgba(0,0,0,.12)!important}body[data-g114-style="minimal"] :is(.g8-settings-section,.g8-category-card,.card,.settings-group){border-inline:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}body[data-g114-style="minimal"] .g8-category-grid{gap:0}body[data-g114-style="classic"] :is(.g8-settings-section,.g8-category-card,.card,.sheet,.modal,.composer){border-radius:5px!important;box-shadow:none!important}body[data-g114-style="classic"] .g8-category-grid{gap:0}body[data-g114-style="classic"] .g8-category-card{border-width:0 0 1px!important}
/* Windows settings is a real two-panel workspace */
@media(min-width:920px){html[data-hamrah-desktop="windows"] #settingsView .g8-settings-shell{display:grid!important;grid-template-columns:minmax(270px,320px) minmax(0,1fr)!important;gap:18px!important;align-items:start!important;max-inline-size:1380px!important;margin-inline:auto!important;padding:0 18px 90px!important}html[data-hamrah-desktop="windows"] #settingsView .g8-settings-home,html[data-hamrah-desktop="windows"] #settingsView .g8-settings-home.hidden{display:block!important;position:sticky;top:10px;max-height:calc(100dvh - 90px);overflow:auto;padding:12px;border:1px solid var(--line);border-radius:23px;background:var(--surface)}html[data-hamrah-desktop="windows"] #settingsView .g8-settings-hero{padding:13px;margin-bottom:8px;border-radius:16px}html[data-hamrah-desktop="windows"] #settingsView .g8-settings-hero p{display:none}html[data-hamrah-desktop="windows"] #settingsView .g8-settings-search{margin-bottom:9px}html[data-hamrah-desktop="windows"] #settingsView .g8-category-grid{grid-template-columns:1fr!important;gap:4px!important;padding:0!important;border:0!important}html[data-hamrah-desktop="windows"] #settingsView .g8-category-card{min-height:64px!important;padding:8px 9px!important;grid-template-columns:40px minmax(0,1fr) 17px!important;border-radius:13px!important;box-shadow:none!important}html[data-hamrah-desktop="windows"] #settingsView .g8-category-card.g114d3-selected{border-color:var(--primary)!important;background:var(--primary-soft)!important}html[data-hamrah-desktop="windows"] #settingsView .g8-settings-pages{display:block;min-width:0;inline-size:100%;max-inline-size:1120px}html[data-hamrah-desktop="windows"] #settingsView .g8-settings-home.hidden~.g8-settings-pages{grid-column:auto!important;inline-size:100%!important;justify-self:stretch!important}html[data-hamrah-desktop="windows"] #settingsView .g8-page-header{padding:3px 0 13px}html[data-hamrah-desktop="windows"] #settingsView .g8-page-back{display:none}html[data-hamrah-desktop="windows"] #settingsView .g8-page-content{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}html[data-hamrah-desktop="windows"] #settingsView [data-g8-page="appearance"] .g8-page-content,html[data-hamrah-desktop="windows"] #settingsView [data-g8-page="privacy"] .g8-page-content{grid-template-columns:1fr}html[data-hamrah-desktop="windows"] #settingsView .g8-chat-preview,html[data-hamrah-desktop="windows"] #settingsView .g114d3-entry{grid-column:1/-1}.g114d3-desktop-welcome{min-height:380px;display:grid;place-content:center;justify-items:center;padding:38px;border:1px dashed var(--line);border-radius:26px;background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 8%,var(--surface)),var(--surface));text-align:center}.g114d3-desktop-welcome span{color:var(--primary);font:900 .55rem/1.2 system-ui;letter-spacing:.12em}.g114d3-desktop-welcome h2{margin:8px 0 5px}.g114d3-desktop-welcome p{max-width:590px;margin:0;color:var(--muted);font-size:.64rem;line-height:1.9}.g114d3-desktop-welcome button{margin-top:17px;min-height:42px;padding:0 16px;border:0;border-radius:14px;background:var(--primary);color:#fff;font:inherit;font-weight:900}html[data-hamrah-desktop="windows"] #g8SettingsShell[data-desktop-page]:not([data-desktop-page="home"]) .g114d3-desktop-welcome{display:none}}
@media(max-width:1100px) and (min-width:861px){.g114d3-workspace{grid-template-columns:145px minmax(330px,1fr) 360px}.g114d3-options.theme-family{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:860px){.g114d3-studio{padding:0}.g114d3-shell{width:100%;height:100%;border:0;border-radius:0}.g114d3-topbar{grid-template-columns:42px minmax(0,1fr);padding-top:max(12px,env(safe-area-inset-top))}.g114d3-topbar>button:last-child{display:none}.g114d3-topbar p{display:none}.g114d3-workspace{display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding-bottom:16px}.g114d3-nav{order:0;position:sticky;top:0;z-index:8;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;min-height:auto;overflow:visible;padding:7px 8px;border:0;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 96%,transparent);backdrop-filter:blur(14px)}.g114d3-nav button{width:100%;min-width:0;min-height:48px;display:flex;flex-direction:column;justify-content:center;gap:3px;padding:4px 2px;text-align:center}.g114d3-nav button span{width:24px;height:24px;flex:0 0 24px}.g114d3-nav button b{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.49rem}.g114d3-preview-wrap{order:1;flex:0 0 auto;min-height:0;padding:10px 12px;border:0;border-bottom:1px solid var(--line);overflow:hidden}.g114d3-preview{height:300px;min-height:300px;flex:0 0 300px;overflow:hidden;contain:layout paint}.g114d3-preview.collapsed{height:54px;min-height:54px;flex-basis:54px}.g114d3-phone{width:330px;height:590px;min-height:590px;transform:scale(.48);transform-origin:top center;margin-bottom:-307px;pointer-events:none}.g114d3-panel{order:2;overflow:visible;min-height:auto;padding:13px 12px 24px}.g114d3-footer{position:relative;z-index:10;flex:0 0 auto}.g114d3-shell.has-dirty .g114d3-workspace{padding-bottom:20px}.g114d3-footer>div{display:flex;flex:1}.g114d3-footer button{flex:1}.g114d3-footer>span{display:none}.g114d3-options.theme-family{grid-template-columns:repeat(2,minmax(0,1fr))}.g114d3-featured{grid-template-columns:1fr}}
@media(max-width:560px){.g114d3-entry{flex-direction:column;align-items:stretch}.g114d3-entry>button{width:100%}.g114d3-options,.g114d3-options.theme-family{grid-template-columns:1fr 1fr}.g114d3-options.fonts{grid-template-columns:1fr}.g114d3-card{padding:13px;border-radius:18px}.g114d3-preview{height:270px;min-height:270px;flex-basis:270px}.g114d3-phone{transform:scale(.44);margin-bottom:-330px}.g114d3-icon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.g114d3-quality{grid-template-columns:1fr}.g114d3-footer{padding:8px 10px;padding-block-end:max(8px,env(safe-area-inset-bottom))}}
@media(max-width:350px){.g114d3-options,.g114d3-options.theme-family{grid-template-columns:1fr}.g114d3-nav{grid-template-columns:repeat(4,minmax(0,1fr))}.g114d3-nav button{min-height:42px}.g114d3-nav button b{display:none}.g114d3-preview{height:250px;min-height:250px;flex-basis:250px}.g114d3-phone{transform:scale(.4);margin-bottom:-354px}}
@media(prefers-reduced-motion:reduce){.g114d3-studio,.g114d3-options button,.g114d3-toggle>i:after{animation:none!important;transition:none!important}}
/* Launcher icon selection: applied state is native-confirmed; pending is only a draft. */
.g114d3-icon-grid button.pending{border-style:dashed;border-color:color-mix(in srgb,var(--primary) 65%,var(--line));background:color-mix(in srgb,var(--primary) 7%,var(--surface))}.g114d3-icon-grid button.pending em{color:var(--warning,#e5a52f);font-size:.46rem;font-weight:900}.g114d3-icon-grid button.active:not(.pending){box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 20%,transparent)}


/* ==========================================================================
 * E3 Theme Studio & Color System R1
 * Rich theme cards, live theme overview, semantic selection and calmer motion.
 * ========================================================================== */

.g114d3-theme-overview{
  --ov-p:var(--primary);
  --ov-p2:var(--primary-2);
  --ov-bg:var(--bg);
  --ov-s:var(--surface);
  --ov-s2:var(--surface-2);
  --ov-text:var(--text);
  --ov-mine:var(--mine);
  --ov-bubble:var(--bubble);
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(180px,260px);
  gap:18px;
  align-items:center;
  margin:0 0 14px;
  padding:18px;
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--ov-p) 28%,var(--line));
  border-radius:24px;
  background:
    radial-gradient(circle at 12% 15%,color-mix(in srgb,var(--ov-p) 16%,transparent),transparent 34%),
    radial-gradient(circle at 92% 88%,color-mix(in srgb,var(--ov-p2) 13%,transparent),transparent 38%),
    color-mix(in srgb,var(--surface) 94%,var(--ov-bg));
  box-shadow:0 14px 38px rgba(0,0,0,.13),inset 0 1px rgba(255,255,255,.025);
}
.g114d3-theme-overview:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(115deg,transparent 0 52%,rgba(255,255,255,.025) 53%,transparent 54%);
}
.g114d3-theme-overview-copy{position:relative;z-index:1;min-width:0}
.g114d3-theme-overview-copy>span{
  display:block;
  color:var(--ov-p);
  font:900 .5rem/1.2 system-ui;
  letter-spacing:.13em;
}
.g114d3-theme-overview-copy h4{
  margin:6px 0 4px;
  color:var(--text);
  font-size:.95rem;
  letter-spacing:-.02em;
}
.g114d3-theme-overview-copy p{
  margin:0;
  color:var(--muted);
  font-size:.56rem;
  line-height:1.65;
}
.g114d3-theme-token-row{display:flex;gap:7px;margin-top:13px}
.g114d3-theme-token-row i{
  width:25px;
  height:25px;
  border:2px solid color-mix(in srgb,#fff 38%,var(--line));
  border-radius:9px;
  background:var(--token);
  box-shadow:0 4px 12px rgba(0,0,0,.15);
}
.g114d3-theme-overview-ui{
  position:relative;
  z-index:1;
  height:128px;
  display:grid;
  grid-template-rows:30px minmax(0,1fr) 27px;
  overflow:hidden;
  border:4px solid color-mix(in srgb,var(--ov-text) 12%,var(--ov-bg));
  border-radius:19px;
  background:var(--ov-bg);
  box-shadow:0 16px 34px rgba(0,0,0,.28);
}
.g114d3-theme-overview-ui header{
  display:grid;
  grid-template-columns:18px 1fr 20px;
  align-items:center;
  gap:6px;
  padding:5px 7px;
  background:var(--ov-s);
  border-bottom:1px solid color-mix(in srgb,var(--ov-text) 9%,transparent);
}
.g114d3-theme-overview-ui header i{
  width:18px;height:18px;border-radius:7px;
  background:linear-gradient(135deg,var(--ov-p),var(--ov-p2));
}
.g114d3-theme-overview-ui header b{
  width:48%;height:5px;border-radius:999px;
  background:color-mix(in srgb,var(--ov-text) 78%,transparent);
}
.g114d3-theme-overview-ui header em{
  width:17px;height:17px;border-radius:7px;
  background:color-mix(in srgb,var(--ov-p) 12%,var(--ov-s2));
}
.g114d3-theme-overview-ui main{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:8px;
  padding:8px;
  background:
    radial-gradient(circle at 12% 12%,color-mix(in srgb,var(--ov-p) 10%,transparent),transparent 36%),
    var(--ov-bg);
}
.g114d3-theme-overview-ui main p{
  width:67%;
  height:18px;
  margin:0;
  border-radius:8px 8px 3px 8px;
  background:var(--ov-bubble);
  border:1px solid color-mix(in srgb,var(--ov-text) 7%,transparent);
}
.g114d3-theme-overview-ui main p:last-child{
  align-self:flex-end;
  width:74%;
  border-radius:8px 8px 8px 3px;
  background:var(--ov-mine);
}
.g114d3-theme-overview-ui nav{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  align-items:center;
  gap:5px;
  padding:5px 9px;
  background:var(--ov-s);
  border-top:1px solid color-mix(in srgb,var(--ov-text) 8%,transparent);
}
.g114d3-theme-overview-ui nav i{
  justify-self:center;
  width:13px;height:5px;border-radius:999px;
  background:color-mix(in srgb,var(--ov-text) 28%,transparent);
}
.g114d3-theme-overview-ui nav i:first-child{
  width:22px;
  background:var(--ov-p);
}

.g114d3-featured-card{padding-bottom:17px}
.g114d3-feature-group{margin-top:16px}
.g114d3-feature-group:first-of-type{margin-top:4px}
.g114d3-feature-group>header{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:12px;
  margin:0 2px 8px;
}
.g114d3-feature-group h5{
  margin:0;
  color:var(--text);
  font-size:.66rem;
}
.g114d3-feature-group header small{
  display:block;
  margin-top:2px;
  color:var(--muted);
  font-size:.48rem;
  line-height:1.5;
}
.g114d3-featured{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
}
.g114d3-featured button{
  grid-template-columns:86px minmax(0,1fr) auto;
  grid-template-rows:1fr;
  min-height:102px;
  gap:10px;
  padding:10px;
  overflow:hidden;
  border-radius:18px;
  background:
    linear-gradient(145deg,color-mix(in srgb,var(--surface-2) 94%,transparent),var(--surface));
  box-shadow:0 6px 18px rgba(0,0,0,.06);
  transition:
    transform calc(190ms * var(--g114-motion,1)) cubic-bezier(.2,.8,.2,1),
    border-color calc(180ms * var(--g114-motion,1)) ease,
    background calc(180ms * var(--g114-motion,1)) ease,
    box-shadow calc(180ms * var(--g114-motion,1)) ease;
}
.g114d3-featured button:hover{
  transform:translateY(-1px);
  border-color:color-mix(in srgb,var(--primary) 38%,var(--line));
}
.g114d3-featured button:active{transform:scale(.992)}
.g114d3-featured button.active{
  border-color:color-mix(in srgb,var(--primary) 76%,var(--line));
  background:
    radial-gradient(circle at 12% 10%,color-mix(in srgb,var(--primary) 12%,transparent),transparent 38%),
    color-mix(in srgb,var(--primary) 7%,var(--surface));
  box-shadow:
    0 11px 28px color-mix(in srgb,var(--primary) 11%,transparent),
    inset 0 0 0 1px color-mix(in srgb,var(--primary) 16%,transparent);
}
.g114d3-feature-art{
  grid-row:auto;
  position:relative;
  width:86px;
  height:72px;
  display:grid;
  grid-template-rows:17px minmax(0,1fr) 16px;
  overflow:hidden;
  border:3px solid color-mix(in srgb,var(--ft) 11%,var(--fbg));
  border-radius:17px;
  background:var(--fbg);
  box-shadow:0 10px 24px rgba(0,0,0,.22);
}
.g114d3-feature-art .mini-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:4px;
  padding:3px 5px;
  background:var(--fs);
  border-bottom:1px solid color-mix(in srgb,var(--ft) 8%,transparent);
}
.g114d3-feature-art .mini-head u:first-child{
  width:9px;height:9px;border-radius:4px;
  background:linear-gradient(135deg,var(--fp),var(--fp2));
}
.g114d3-feature-art .mini-head u:last-child{
  width:28px;height:3px;border-radius:999px;
  background:color-mix(in srgb,var(--ft) 62%,transparent);
}
.g114d3-feature-art .mini-chat{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:4px;
  padding:4px 6px;
  background:
    radial-gradient(circle at 15% 10%,color-mix(in srgb,var(--fp) 8%,transparent),transparent 38%),
    var(--fbg);
}
.g114d3-feature-art .mini-chat u{
  width:58%;
  height:8px;
  border-radius:5px 5px 2px 5px;
  background:var(--fbubble);
}
.g114d3-feature-art .mini-chat u:last-child{
  align-self:flex-end;
  width:68%;
  border-radius:5px 5px 5px 2px;
  background:var(--fmine);
}
.g114d3-feature-art .mini-nav{
  display:flex;
  align-items:center;
  justify-content:space-around;
  padding:3px 7px;
  background:var(--fs);
  border-top:1px solid color-mix(in srgb,var(--ft) 8%,transparent);
}
.g114d3-feature-art .mini-nav u{
  width:8px;height:3px;border-radius:999px;
  background:color-mix(in srgb,var(--ft) 25%,transparent);
}
.g114d3-feature-art .mini-nav u:first-child{
  width:14px;
  background:var(--fp);
}
.g114d3-feature-copy{
  min-width:0;
  display:block;
  align-self:center;
}
.g114d3-feature-copy>b{
  display:block;
  margin:0;
  color:var(--text);
  font-size:.66rem;
  line-height:1.4;
}
.g114d3-feature-copy>small{
  display:-webkit-box;
  margin-top:4px;
  overflow:hidden;
  color:var(--muted);
  font-size:.49rem;
  line-height:1.55;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}
.g114d3-theme-tags{
  display:flex;
  flex-wrap:wrap;
  gap:4px;
  margin-top:7px;
}
.g114d3-theme-tags i{
  display:inline-flex;
  align-items:center;
  min-height:19px;
  padding:2px 6px;
  border:1px solid color-mix(in srgb,var(--primary) 14%,var(--line));
  border-radius:999px;
  background:color-mix(in srgb,var(--primary) 5%,var(--surface));
  color:var(--muted);
  font-style:normal;
  font-size:.43rem;
  white-space:nowrap;
}
.g114d3-featured button>em{
  grid-row:auto;
  grid-column:auto;
  align-self:start;
  min-width:37px;
  padding:4px 7px;
  border:1px solid color-mix(in srgb,var(--primary) 18%,var(--line));
  border-radius:999px;
  background:color-mix(in srgb,var(--primary) 6%,var(--surface));
  color:var(--primary);
  text-align:center;
  font-size:.44rem;
  font-style:normal;
}
.g114d3-featured button.active>em{
  border-color:color-mix(in srgb,var(--primary) 36%,var(--line));
  background:var(--primary);
  color:var(--accent-contrast,#fff);
}

.g114d3-options button{
  transition:
    transform calc(170ms * var(--g114-motion,1)) cubic-bezier(.2,.8,.2,1),
    border-color calc(170ms * var(--g114-motion,1)) ease,
    background calc(170ms * var(--g114-motion,1)) ease,
    box-shadow calc(170ms * var(--g114-motion,1)) ease;
}
.g114d3-options button:hover{
  border-color:color-mix(in srgb,var(--primary) 34%,var(--line));
}
.g114d3-options button:active{transform:scale(.988)}
.g114d3-options button.active{
  border-color:color-mix(in srgb,var(--primary) 72%,var(--line));
  background:
    linear-gradient(145deg,color-mix(in srgb,var(--primary) 9%,var(--surface)),var(--surface-2));
  box-shadow:0 8px 22px color-mix(in srgb,var(--primary) 8%,transparent);
}
.g114d3-options button.active em{
  background:var(--primary);
  color:var(--accent-contrast,#fff);
  box-shadow:0 5px 13px color-mix(in srgb,var(--primary) 25%,transparent);
}
.g114d3-options.theme-family button>i{
  position:relative;
  width:35px;
  height:35px;
  flex-basis:35px;
  overflow:hidden;
  border:1px solid color-mix(in srgb,#fff 22%,var(--line));
  border-radius:11px;
}
.g114d3-options.theme-family button>i:before,
.g114d3-options.theme-family button>i:after{
  content:"";
  position:absolute;
  right:5px;
  left:5px;
  height:4px;
  border-radius:999px;
  background:rgba(255,255,255,.72);
}
.g114d3-options.theme-family button>i:before{top:9px;width:55%}
.g114d3-options.theme-family button>i:after{bottom:8px;width:72%;opacity:.62}

.g114d3-contrast-state{
  margin-top:10px;
  padding:13px 14px;
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--surface);
}
.g114d3-contrast-state b,.g114d3-contrast-state span{display:block}
.g114d3-contrast-state b{font-size:.63rem}
.g114d3-contrast-state span{margin-top:3px;color:var(--muted);font-size:.5rem;line-height:1.6}
.g114d3-contrast-state.success{
  border-color:color-mix(in srgb,var(--success,#3bcf91) 28%,var(--line));
  background:color-mix(in srgb,var(--success,#3bcf91) 5%,var(--surface));
}
.g114d3-contrast-state.success b{color:var(--success,#3bcf91)}
.g114d3-contrast-state.warning{
  border-color:color-mix(in srgb,var(--warning,#f2b84b) 30%,var(--line));
  background:color-mix(in srgb,var(--warning,#f2b84b) 5%,var(--surface));
}
.g114d3-contrast-state.warning b{color:var(--warning,#f2b84b)}

.g114d3-preview.reduced *,
body[data-g114-motion="reduced"] .g114d3-studio *,
body[data-g114-motion="reduced"] .g114d3-studio *:before,
body[data-g114-motion="reduced"] .g114d3-studio *:after{
  animation-duration:.001ms!important;
  animation-iteration-count:1!important;
  transition-duration:.001ms!important;
  scroll-behavior:auto!important;
}

@media(prefers-reduced-motion:reduce){
  .g114d3-featured button,
  .g114d3-options button{
    transition:none!important;
  }
  .g114d3-featured button:hover,
  .g114d3-options button:active{
    transform:none!important;
  }
}

/* E3 Adaptive Dark — live preview palette morph. */
@property --d3-p{syntax:"<color>";inherits:true;initial-value:#168fd0}
@property --d3-p2{syntax:"<color>";inherits:true;initial-value:#15b8b0}
@property --d3-bg{syntax:"<color>";inherits:true;initial-value:#0b1016}
@property --d3-s{syntax:"<color>";inherits:true;initial-value:#111920}
@property --d3-s2{syntax:"<color>";inherits:true;initial-value:#17222b}
@property --d3-text{syntax:"<color>";inherits:true;initial-value:#eef3f5}
@property --d3-muted{syntax:"<color>";inherits:true;initial-value:#96a4ad}
@property --d3-line{syntax:"<color>";inherits:true;initial-value:#2b3944}
@property --d3-mine{syntax:"<color>";inherits:true;initial-value:#163a51}
@property --d3-bubble{syntax:"<color>";inherits:true;initial-value:#151f27}

.g114d3-preview:not(.reduced){
  transition:
    --d3-p 280ms cubic-bezier(.2,.8,.2,1),
    --d3-p2 280ms cubic-bezier(.2,.8,.2,1),
    --d3-bg 300ms cubic-bezier(.2,.8,.2,1),
    --d3-s 300ms cubic-bezier(.2,.8,.2,1),
    --d3-s2 300ms cubic-bezier(.2,.8,.2,1),
    --d3-text 260ms cubic-bezier(.2,.8,.2,1),
    --d3-muted 260ms cubic-bezier(.2,.8,.2,1),
    --d3-line 300ms cubic-bezier(.2,.8,.2,1),
    --d3-mine 300ms cubic-bezier(.2,.8,.2,1),
    --d3-bubble 300ms cubic-bezier(.2,.8,.2,1);
}
.g114d3-preview.reduced{transition:none!important}
@media(prefers-reduced-motion:reduce){.g114d3-preview{transition:none!important}}



/* ==========================================================================
 * E3 Android Theme Studio Interaction Hotfix
 * Prevent transient WebView grid/compositor stretch while selecting a theme.
 * ========================================================================== */
.g114d3-options{
  align-content:start;
  grid-auto-rows:max-content;
}
.g114d3-options button,
.g114d3-featured button{
  align-self:start;
  height:auto;
  overflow-anchor:none;
}
@media(max-width:860px){
  .g114d3-panel,
  .g114d3-card,
  .g114d3-options,
  .g114d3-featured{
    overflow-anchor:none;
  }
  .g114d3-options{
    align-content:start;
    grid-auto-flow:row;
    grid-auto-rows:max-content;
  }
  .g114d3-options button{
    min-height:62px;
    max-height:none;
  }
}
/* Touch WebViews do not need transform-based press feedback. Keeping the
   pressed card on the same compositor geometry avoids the one-frame stretch.
   Desktop mouse hover/press motion remains unchanged. */
@media(hover:none) and (pointer:coarse){
  .g114d3-options button:active,
  .g114d3-featured button:active{
    transform:none!important;
    filter:brightness(1.045);
  }
}

/* ==========================================================================
 * E3 Android Theme Studio Stretch Hotfix2 — ROOT FIX
 * Android WebView can transiently mis-size CSS Grid implicit row tracks when
 * an option changes active paint inside the scrollable Theme Studio. The first
 * hotfix removed full-panel rebuilds; physical QA proved the remaining defect
 * is the WebView Grid paint/layout path itself. On Android only, Theme selector
 * groups now use a deterministic wrapping flex layout with fixed card block size.
 * ========================================================================== */
.g114d3-studio.g114d3-android .g114d3-options.theme-family,
.g114d3-studio.g114d3-android .g114d3-options.theme-variants,
.g114d3-studio.g114d3-android .g114d3-options.base-mode{
  display:flex!important;
  flex-flow:row wrap!important;
  align-items:flex-start!important;
  align-content:flex-start!important;
  justify-content:flex-start!important;
  gap:8px!important;
  block-size:auto!important;
  min-block-size:0!important;
  max-block-size:none!important;
  contain:layout;
}
.g114d3-studio.g114d3-android .g114d3-options.theme-family>button,
.g114d3-studio.g114d3-android .g114d3-options.theme-variants>button,
.g114d3-studio.g114d3-android .g114d3-options.base-mode>button{
  flex:0 0 calc(50% - 4px)!important;
  inline-size:calc(50% - 4px)!important;
  min-inline-size:0!important;
  max-inline-size:calc(50% - 4px)!important;
  block-size:64px!important;
  min-block-size:64px!important;
  max-block-size:64px!important;
  align-self:flex-start!important;
  contain:layout style;
  transform:none!important;
}
/* The color identity still morphs through Theme/preview tokens. Avoid a second
   per-card compositor transition on Android while the active state is changing. */
.g114d3-studio.g114d3-android .g114d3-options.theme-family>button,
.g114d3-studio.g114d3-android .g114d3-options.theme-variants>button,
.g114d3-studio.g114d3-android .g114d3-options.base-mode>button{
  transition:border-color 160ms ease,box-shadow 160ms ease!important;
}
@media(max-width:350px){
  .g114d3-studio.g114d3-android .g114d3-options.theme-family>button,
  .g114d3-studio.g114d3-android .g114d3-options.theme-variants>button,
  .g114d3-studio.g114d3-android .g114d3-options.base-mode>button{
    flex-basis:100%!important;
    inline-size:100%!important;
    max-inline-size:100%!important;
  }
}


/* E4 UI Consistency — Appearance has one canonical owner: Dev3 Studio.
   The old quick controls duplicated typography/chat/background and could write
   stale legacy state over the Studio choice. Keep only the Studio entry. */
[data-g8-page="appearance"].g114d3-canonical-appearance .g8-page-content > #g8AppearancePreview,
[data-g8-page="appearance"].g114d3-canonical-appearance .g8-page-content > .g8-settings-section{
  display:none!important;
}
[data-g8-page="appearance"].g114d3-canonical-appearance .g8-page-content{
  align-content:start;
}
.g114d3-options.fonts{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.g114d3-options.fonts [data-d3-value="peyda"]{font-family:"Peyda","Vazirmatn",sans-serif}
.g114d3-options.fonts [data-d3-value="ravi"]{font-family:"Ravi","Vazirmatn",sans-serif}
.g114d3-options.fonts [data-d3-value="yekanbakh"]{font-family:"Yekan Bakh","Vazirmatn",sans-serif}
@media(max-width:560px){
  .g114d3-options.fonts{grid-template-columns:1fr 1fr}
}


/* E4 Physical QA Hotfix — fully draft-driven live preview.
   Every visual control in Appearance is previewed before Apply. */
.g114d3-phone{
  font-family:var(--d3-ifont,"Vazirmatn",sans-serif);
  font-size:var(--d3-font-size,100%);
}
.g114d3-phone header b{font-size:.66em}
.g114d3-phone header small{font-size:.52em}
.g114d3-phone .search{font-size:.56em}
.g114d3-phone .list b{font-size:.62em}
.g114d3-phone .list small{font-size:.49em}
.g114d3-phone time{font-size:.46em}
.g114d3-phone .chat>i{font-size:.47em}
.g114d3-phone .chat p{
  position:relative;
  font-family:var(--d3-mfont,"Vazirmatn",sans-serif);
  font-size:.57em;
  border-radius:var(--d3-br,18px);
}
.g114d3-phone .chat small{font-size:.43em}
.g114d3-phone .composer span{font-size:.53em}
.g114d3-phone .list article{padding-block:var(--d3-row-pad,8px)}
.g114d3-phone .chat{gap:var(--d3-chat-gap,7px);padding:var(--d3-chat-pad,12px)}
.g114d3-phone .composer{padding-block:var(--d3-composer-pad,7px)}

.g114d3-phone .chat{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:var(--d3-bg);
  background-image:none!important;
}
.g114d3-phone .chat::before,
.g114d3-phone .chat::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
}
.g114d3-phone .chat::before{
  z-index:0;
  background-position:center;
  background-repeat:repeat;
  filter:blur(var(--d3-wallpaper-blur,0px));
  transform:scale(1.025);
  transform-origin:center;
}
.g114d3-phone .chat::after{
  z-index:0;
  background:rgb(0 0 0 / var(--d3-wallpaper-dim,.16));
}
.g114d3-phone .chat>*{
  position:relative;
  z-index:1;
}
.g114d3-preview[data-wallpaper="plain"] .g114d3-phone .chat::before{
  background-image:
    radial-gradient(circle at 18% 16%,color-mix(in srgb,var(--d3-p) 8%,transparent) 0 1px,transparent 1.35px),
    radial-gradient(circle at 76% 72%,color-mix(in srgb,var(--d3-p2) 6%,transparent) 0 1px,transparent 1.3px);
  background-size:46px 46px,56px 56px;
  background-position:0 0,19px 17px;
}
.g114d3-preview[data-wallpaper="dots"] .g114d3-phone .chat::before{
  background-image:radial-gradient(circle at 2px 2px,color-mix(in srgb,var(--d3-p) 14%,transparent) 1px,transparent 1.5px);
  background-size:20px 20px;
}
.g114d3-preview[data-wallpaper="aurora"] .g114d3-phone .chat::before{
  background-image:
    radial-gradient(circle at 10% 20%,color-mix(in srgb,var(--d3-p) 28%,transparent),transparent 38%),
    radial-gradient(circle at 90% 80%,color-mix(in srgb,var(--d3-p2) 24%,transparent),transparent 42%);
  background-size:cover;
  background-repeat:no-repeat;
}
.g114d3-preview[data-wallpaper="flow"] .g114d3-phone .chat::before{
  background-image:
    linear-gradient(135deg,color-mix(in srgb,var(--d3-p) 16%,transparent),transparent 45%),
    linear-gradient(315deg,color-mix(in srgb,var(--d3-p2) 18%,transparent),transparent 52%);
  background-size:cover;
  background-repeat:no-repeat;
}
.g114d3-preview[data-wallpaper="grid"] .g114d3-phone .chat::before{
  background-image:
    linear-gradient(color-mix(in srgb,var(--d3-p) 10%,transparent) 1px,transparent 1px),
    linear-gradient(90deg,color-mix(in srgb,var(--d3-p2) 10%,transparent) 1px,transparent 1px);
  background-size:26px 26px;
}
.g114d3-preview[data-wallpaper="personal"] .g114d3-phone .chat::before{
  background-image:var(--d3-personal-wallpaper);
  background-size:cover;
  background-repeat:no-repeat;
}

.g114d3-preview[data-bubble="soft"] .g114d3-phone .chat p{
  padding:9px 11px;
  box-shadow:0 7px 20px rgba(0,0,0,.12);
}
.g114d3-preview[data-bubble="compact"] .g114d3-phone .chat p{
  padding:5px 8px;
}
.g114d3-preview[data-bubble="classic"] .g114d3-phone .chat p{
  border-radius:10px;
  box-shadow:0 2px 7px rgba(0,0,0,.1);
}
.g114d3-preview[data-bubble="minimal"] .g114d3-phone .chat p{
  padding:6px 8px;
  border:1px solid var(--d3-line);
  background:color-mix(in srgb,var(--d3-s) 72%,transparent);
  box-shadow:none;
}
.g114d3-preview[data-tails="on"] .g114d3-phone .chat p::after{
  content:"";
  position:absolute;
  inset-block-end:2px;
  inline-size:7px;
  block-size:7px;
  background:inherit;
  transform:rotate(45deg);
}
.g114d3-preview[data-tails="on"] .g114d3-phone .chat p.in::after{inset-inline-start:-3px}
.g114d3-preview[data-tails="on"] .g114d3-phone .chat p.out::after{inset-inline-end:-3px}
.g114d3-preview[data-tails="off"] .g114d3-phone .chat p::after{content:none}

.g114d3-phone .list time i{
  display:inline-grid;
  place-items:center;
  min-width:14px;
  height:14px;
  margin-inline-start:3px;
  padding-inline:4px;
  border-radius:999px;
  background:var(--d3-p);
  color:#fff;
  font-style:normal;
  font-size:.9em;
}

/* ==========================================================================
 * E5 Windows Theme Selection Geometry + Performance Hotfix
 * Video QA showed the same transient CSS Grid track stretch previously fixed
 * on Android. Windows theme rows now use deterministic fixed-height flex cards.
 * ========================================================================== */
@media(min-width:861px){
  html[data-hamrah-desktop="windows"] .g114d3-options.theme-family,
  html[data-hamrah-desktop="windows"] .g114d3-options.theme-variants,
  html[data-hamrah-desktop="windows"] .g114d3-options.base-mode{
    display:flex!important;
    flex-flow:row wrap!important;
    align-items:flex-start!important;
    align-content:flex-start!important;
    justify-content:flex-start!important;
    gap:8px!important;
    grid-auto-rows:unset!important;
    contain:layout style;
  }

  html[data-hamrah-desktop="windows"] .g114d3-options.theme-family>button,
  html[data-hamrah-desktop="windows"] .g114d3-options.theme-variants>button,
  html[data-hamrah-desktop="windows"] .g114d3-options.base-mode>button{
    flex:0 0 calc((100% - 16px)/3)!important;
    inline-size:calc((100% - 16px)/3)!important;
    min-inline-size:0!important;
    max-inline-size:calc((100% - 16px)/3)!important;
    block-size:64px!important;
    min-block-size:64px!important;
    max-block-size:64px!important;
    align-self:flex-start!important;
    contain:layout style;
    transform:none!important;
    transition:border-color 120ms ease,color 120ms ease,box-shadow 120ms ease!important;
  }

  html[data-hamrah-desktop="windows"] .g114d3-featured{
    grid-auto-rows:102px;
    align-content:start;
  }
  html[data-hamrah-desktop="windows"] .g114d3-featured>button{
    block-size:102px!important;
    min-block-size:102px!important;
    max-block-size:102px!important;
    align-self:start!important;
    transform:none!important;
    contain:layout style;
  }

  html[data-hamrah-desktop="windows"] .g114d3-preview{
    contain:layout paint style;
  }
}

/* Profile/Settings Hotfix2 - stable route-local Theme Studio mount. */
#g114d3EntryMount {
  display:block;
  min-inline-size:0;
  inline-size:100%;
  grid-column:1/-1;
}
#g114d3EntryMount > .g114d3-entry {
  box-sizing:border-box;
  inline-size:100%;
  margin:0;
}
