/* Shell design tokens and system font fallback. */ :root { font-family: -apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI Variable","Segoe UI",system-ui,sans-serif; --chrome-height: 104px; --sidebar-width: 240px; --page-tint: #b8c8df; --accent: #0969da; --accent-text: #0969da; --text: #25272c; --muted: #767b85; --line: #171b2412; --surface: #ffffffa8; --glass: #f0f1f6b8; --base: #f5f6fa; --hover: #2428310a; --panel: #fafbfde8; --shadow: 0 12px 36px #29314c16; color: var(--text); background: transparent; } * { box-sizing: border-box; } html,body { margin: 0; width: 100%; height: 100%; overflow: hidden; } body { background: var(--base); border-radius: 20px; box-shadow: 0 20px 80px #101a3440; --chrome-height: 104px; color: var(--text); } body[data-tab-mode=compact] { --chrome-height: 64px; } body.window-maximized { border-radius: 0; } button,input,textarea,select { font: inherit; } button { border: 0; border-radius: 10px; background: var(--accent); color: white; padding: 10px 15px; font-size: 12px; font-weight: 600; cursor: pointer; -webkit-app-region: no-drag; } button:disabled { opacity: .35; cursor: default; } button:hover:not(:disabled) { filter: brightness(.98); } img { width: 18px; height: 18px; display: block; pointer-events: none; } .icon-button { display: inline-flex; justify-content: center; align-items: center; width: 32px; height: 32px; padding: 7px; background: transparent; color: var(--muted); border-radius: 10px; } .icon-button:hover:not(:disabled) { background: var(--hover); } .icon-button[aria-expanded=true] { background: color-mix(in srgb,var(--accent) 9%,transparent); } .icon-button img { opacity: .68; } .secondary { background: var(--hover); color: var(--text); } /* Glass chrome: CSS blur/tint approximation; no refraction of native website pixels. */ #chrome { position: relative; height: var(--chrome-height); background: color-mix(in srgb,var(--page-tint) 14%,var(--glass)); backdrop-filter: blur(35px) saturate(1.5); border-bottom: 1px solid var(--line); border-radius: 20px 20px 0 0; z-index: 30; -webkit-app-region: drag; padding: 0 12px; box-shadow: inset 0 1px 0 #ffffffc0; } .toolbar { height: 64px; display: grid; grid-template-columns: 190px minmax(180px,600px) 170px; justify-content: space-between; align-items: center; gap: 18px; } .toolbar-leading,.toolbar-trailing { display: flex; align-items: center; gap: 3px; } .toolbar-trailing { justify-content: flex-end; gap: 5px; } /* Real window controls. The toolbar is draggable; every interactive control is no-drag. */ .traffic-lights { display: flex; gap: 8px; align-items: center; padding-right: 10px; flex-shrink: 0; } .traffic { width: 12px; height: 12px; border-radius: 50%; padding: 0; border: 1px solid #00000012; display: grid; place-items: center; } .traffic img { width: 8px; height: 8px; opacity: 0; filter: none!important; } .traffic-lights:hover .traffic img { opacity: .65; } .traffic.close { background: #ff605a; } .traffic.minimize { background: #ffbd2e; } .traffic.maximize { background: #28c840; } #address-form { display: flex; align-items: center; height: 36px; padding: 0 5px 0 12px; border-radius: 12px; background: var(--surface); border: 1px solid #ffffffb0; box-shadow: 0 1px 2px #1e284410,inset 0 0 0 1px #0e20350b; min-width: 0; -webkit-app-region: no-drag; backdrop-filter: blur(16px); } .address-lock { width: 12px; height: 12px; opacity: .5; } #address { border: 0; background: transparent; flex: 1; min-width: 0; text-align: center; font-size: 12px; color: var(--text); padding: 8px; outline: none; } #address::placeholder { color: var(--muted); } #address:focus { text-align: left; } #address-form:focus-within { box-shadow: 0 0 0 3px color-mix(in srgb,var(--accent) 10%,transparent),inset 0 0 0 1px color-mix(in srgb,var(--accent) 33%,transparent); } #address-form .icon-button { width: 25px; height: 25px; } #address-form .icon-button img { width: 13px; height: 13px; } /* Separate tabs use 104px chrome; compact tabs stay visible within 64px. */ .tab-row { height: 40px; display: flex; align-items: center; gap: 12px; justify-content: space-between; } #tab-strip { display: flex; align-items: center; gap: 5px; overflow: auto; scrollbar-width: none; flex: 1; min-width: 0; -webkit-app-region: no-drag; } .browser-tab { position: relative; background: transparent; color: var(--muted); font-size: 11px; font-weight: 400; height: 29px; min-width: 120px; max-width: 240px; flex: 1; padding: 6px 12px; text-align: center; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; border-radius: 11px; } .browser-tab.active,.browser-tab[aria-selected=true] { background: var(--surface); color: var(--text); box-shadow: 0 1px 2px #263a4e08,inset 0 1px 0 #ffffffa0; } .browser-tab:hover { background: var(--hover); } .tab-close { padding: 0; width: 18px; height: 18px; margin-left: 7px; background: transparent; color: var(--muted); font-size: 14px; position: absolute; right: 5px; top: 5px; } .security-state { display: flex; align-items: center; gap: 5px; color: var(--muted); background: #ffffff35; border: 1px solid var(--line); border-radius: 18px; padding: 3px 8px; max-width: 30%; height: 22px; font-size: 9px; flex-shrink: 0; -webkit-app-region: no-drag; } .security-state img { width: 11px; height: 11px; opacity: .5; } #managed { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .security-state.paused { color: #a76a2b; background: #eab75b12; } body[data-tab-mode=compact] .tab-row { height: 0; } body[data-tab-mode=compact] #tab-strip { position: absolute; top: 6px; left: 220px; right: 200px; height: 23px; } body[data-tab-mode=compact] .browser-tab { height: 22px; font-size: 10px; padding: 4px 9px; min-width: 70px; border-radius: 9px; } body[data-tab-mode=compact] .tab-close { top: 2px; height: 17px; } body[data-tab-mode=compact] #address-form { margin-top: 24px; height: 27px; border-radius: 9px; } body[data-tab-mode=compact] .security-state { display: none; } /* Trusted tools menu. Native layout hides website pixels while this overlay is open. */ .glass-popover { position: fixed; right: 12px; top: 58px; width: 258px; z-index: 80; background: var(--panel); border: 1px solid #ffffff90; box-shadow: var(--shadow); backdrop-filter: blur(35px) saturate(1.4); padding: 10px; border-radius: 18px; -webkit-app-region: no-drag; } .menu-caption { font-size: 9px; letter-spacing: 1px; color: var(--muted); padding: 2px 9px; margin: 5px 0 7px; } .menu-item { display: flex; align-items: center; gap: 10px; width: 100%; padding: 9px 10px; font-size: 12px; font-weight: 400; background: transparent; color: var(--text); text-align: left; border-radius: 9px; } .menu-item img { width: 16px; height: 16px; opacity: .7; } .menu-item:hover { background: var(--hover); } .menu-divider { height: 1px; background: var(--line); margin: 8px; } #settings { display: grid; grid-template-columns: 1fr 112px; gap: 9px; align-items: center; padding: 4px 8px; } #settings label { margin: 0; font-size: 12px; font-weight: 400; } #settings select { background: var(--surface); color: var(--text); border: 1px solid var(--line); border-radius: 7px; padding: 5px 7px; font-size: 12px; -webkit-app-region: no-drag; } .appearance-status { margin: 10px 8px 2px; color: var(--muted); font-size: 11px; line-height: 1.5; } /* Right sidebars: 360px; left library: 240px. */ aside { position: fixed; right: 0; top: var(--chrome-height); bottom: 0; width: 360px; background: var(--panel); border-left: 1px solid var(--line); padding: 20px; display: flex; flex-direction: column; overflow: auto; z-index: 35; backdrop-filter: blur(24px); } #library { left: 0; right: auto; width: var(--sidebar-width); padding: 17px 12px; border-left: 0; border-right: 1px solid var(--line); background: color-mix(in srgb,var(--page-tint) 9%,var(--glass)); z-index: 34; } .library-brand { display: flex; gap: 11px; align-items: center; padding: 7px 8px 24px; } .brand-monogram { width: 30px; height: 30px; border-radius: 10px; display: grid; place-items: center; background: #ffffff85; box-shadow: 0 1px 6px #0000000b; font-size: 18px; font-weight: 600; color: #657087; } .library-brand strong { display: block; font-size: 13px; font-weight: 600; } .library-brand span { display: block; font-size: 9px; color: var(--muted); margin-top: 3px; } .library-item { display: flex; align-items: center; gap: 11px; background: transparent; color: var(--text); width: 100%; text-align: left; font-size: 12px; font-weight: 400; padding: 9px 11px; border-radius: 9px; } .library-item img { width: 16px; height: 16px; opacity: .65; } .library-item:hover,.library-item.active { background: var(--hover); } .library-heading { display: flex; align-items: center; justify-content: space-between; font-size: 8px; font-weight: 600; letter-spacing: 1px; color: var(--muted); padding: 22px 11px 7px; } .library-heading .icon-button { width: 22px; height: 22px; padding: 4px; } .library-heading .icon-button img { width: 12px; height: 12px; } .library-footer { margin-top: auto; display: flex; gap: 7px; align-items: center; padding: 18px 10px 3px; color: var(--muted); font-size: 9px; } .library-footer img { width: 13px; height: 13px; opacity: .5; } #library-tabs,#library-groups { display: flex; flex-direction: column; gap: 3px; } #library-tabs button,#library-groups button { width: 100%; background: transparent; color: var(--text); text-align: left; font-size: 11px; font-weight: 400; padding: 8px 10px; border-radius: 8px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } #library-tabs button.active,#library-groups button.active { background: color-mix(in srgb,var(--accent) 7%,transparent); color: var(--accent-text); } /* Enrollment and policy-paused state. */ #welcome { position: fixed; left: 0; right: 0; top: var(--chrome-height); bottom: 0; display: flex; align-items: center; justify-content: center; background: radial-gradient(ellipse at 50% 5%,color-mix(in srgb,var(--page-tint) 28%,transparent),transparent 70%),var(--base); z-index: 20; } .card { width: 490px; max-width: 90vw; background: var(--surface); border: 1px solid #ffffff75; border-radius: 25px; padding: 32px 36px; box-shadow: var(--shadow); backdrop-filter: blur(30px); } .welcome-mark { display: grid; place-items: center; background: color-mix(in srgb,var(--accent) 5%,transparent); border-radius: 14px; width: 48px; height: 48px; } .welcome-mark img { width: 25px; height: 25px; opacity: .7; } .eyebrow { font-size: 9px; font-weight: 600; letter-spacing: 1.4px; color: var(--muted); margin: 20px 0 7px; } h1 { font-size: 30px; letter-spacing: -1px; margin: 10px 0; font-weight: 600; } p { font-size: 12px; line-height: 1.65; color: var(--muted); } label { display: grid; gap: 7px; font-size: 11px; font-weight: 600; margin: 16px 0 7px; color: var(--muted); } input,textarea { width: 100%; border: 1px solid var(--line); border-radius: 10px; padding: 10px 11px; background: var(--surface); color: var(--text); font-size: 12px; -webkit-app-region: no-drag; } .actions { display: flex; gap: 9px; margin: 18px 0; } .actions button { flex: 1; } small { display: block; color: var(--muted); font-size: 10px; line-height: 1.6; } #error,#vault-error { color: #c95e55; font-size: 12px; } #error:empty,#vault-error:empty { display: none; } /* AI and vault panels preserve existing security controls. */ .panel-title { display: flex; align-items: center; justify-content: space-between; } .panel-title .eyebrow { font-size: 8px; margin: 0 0 6px; letter-spacing: 1.1px; } h2 { font-size: 20px; font-weight: 600; letter-spacing: -.5px; margin: 0; } .panel-description { font-size: 11px; margin: 13px 0 20px; color: var(--muted); } .panel-title .icon-button { width: 28px; height: 28px; } #conversation { flex: 1; overflow: auto; min-height: 90px; white-space: pre-wrap; font-size: 12px; line-height: 1.7; } .entry { padding: 12px; background: var(--hover); border-radius: 13px; margin-bottom: 12px; overflow-wrap: anywhere; } .empty-chat { text-align: center; margin: 65px 12px 20px; white-space: normal; } .empty-chat img { margin: auto; width: 30px; height: 30px; opacity: .4; } .empty-chat h3 { font-size: 15px; font-weight: 500; letter-spacing: -.3px; color: var(--muted); } .empty-chat p { font-size: 12px; color: var(--muted); } #ai-form { border: 1px solid var(--line); border-radius: 16px; background: var(--surface); padding: 8px; margin-top: 15px; } #prompt { height: 95px; resize: vertical; border: 0; max-height: 200px; background: transparent; font-size: 12px; padding: 6px; outline: none; } .composer-footer { display: flex; align-items: center; justify-content: space-between; font-size: 9px; color: var(--muted); padding: 4px; } .composer-footer button { display: flex; gap: 6px; align-items: center; padding: 7px 10px; border-radius: 8px; } .composer-footer img { width: 14px; height: 14px; filter: invert(1); } #vault-access-submit { width: 100%; margin: 14px 0; } #vault-access-note { margin-top: 4px; } #vault-open { display: flex; flex-direction: column; gap: 15px; } .vault-actions { display: flex; align-items: center; justify-content: space-between; font-size: 11px; color: var(--muted); } .vault-actions button { padding: 6px 10px; } .login-card { padding: 13px; border: 1px solid var(--line); border-radius: 13px; background: var(--surface); margin-bottom: 9px; } .login-card strong { display: block; font-size: 12px; font-weight: 600; overflow-wrap: anywhere; } .login-card p { font-size: 10px; margin: 5px 0; overflow-wrap: anywhere; } .login-buttons { display: flex; gap: 7px; margin-top: 10px; } .login-buttons button { padding: 6px 10px; font-size: 10px; } .empty-vault { text-align: center; padding: 25px 8px; color: var(--muted); font-size: 12px; } details { border-top: 1px solid var(--line); padding-top: 15px; } summary { font-size: 12px; font-weight: 600; cursor: pointer; color: var(--accent-text); } #vault-save label { font-size: 10px; } #vault-save input { font-size: 11px; } /* Local start page and navigation-record overview. */ #start-page { position: fixed; inset: var(--chrome-height) 0 0; overflow: auto; background: radial-gradient(ellipse at 65% 0%,color-mix(in srgb,var(--page-tint) 32%,transparent),transparent 65%),var(--base); z-index: 19; display: block; } body.sidebar-open #start-page,body.sidebar-open #overview { left: var(--sidebar-width); } body.ai-open #start-page,body.vault-open #start-page { right: 360px; } .start-content { max-width: 830px; margin: 70px auto 40px; padding: 0 35px; } .start-eyebrow { font-size: 9px; letter-spacing: 2px; color: var(--muted); margin: 0 0 9px; } .start-content>h1 { font-size: 36px; letter-spacing: -1.4px; margin: 0 0 45px; } .start-section { margin: 0 0 35px; } .section-title { display: flex; align-items: center; justify-content: space-between; margin: 0 0 17px; } .section-title h2 { font-size: 17px; letter-spacing: -.4px; } .section-title span { font-size: 10px; color: var(--muted); } .favorites-grid { display: grid; grid-template-columns: repeat(auto-fill,minmax(86px,1fr)); gap: 18px; } .favorite-tile { display: flex; flex-direction: column; align-items: center; gap: 9px; padding: 0; background: transparent; color: var(--text); font-weight: 400; } .favorite-icon { display: grid; place-items: center; width: 64px; height: 64px; border-radius: 17px; background: var(--surface); box-shadow: 0 4px 14px #242e4610,inset 0 1px 0 #ffffffc0; font-size: 25px; font-weight: 500; color: var(--accent-text); } .favorite-tile img { width: 27px; height: 27px; opacity: .6; } .favorite-tile span { font-size: 10px; max-width: 86px; text-align: center; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .recent-list { display: grid; gap: 8px; } .recent-item { display: flex; align-items: center; gap: 12px; width: 100%; text-align: left; padding: 13px 16px; border-radius: 14px; background: var(--surface); color: var(--text); border: 1px solid #ffffff60; font-size: 12px; font-weight: 400; } .recent-item img { width: 18px; height: 18px; opacity: .5; } .recent-item small { font-size: 9px; margin-top: 3px; } .privacy-card { display: flex; align-items: center; gap: 15px; padding: 20px; border-radius: 18px; background: var(--surface); border: 1px solid #ffffff65; box-shadow: 0 2px 12px #26304c05; } .privacy-icon { width: 38px; height: 38px; border-radius: 12px; background: color-mix(in srgb,var(--accent) 4%,transparent); display: grid; place-items: center; } .privacy-icon img { width: 23px; height: 23px; opacity: .6; } .privacy-card strong { font-size: 12px; font-weight: 500; } .privacy-card p { font-size: 10px; margin: 5px 0 0; } .session-note { font-size: 9px; text-align: center; color: var(--muted); opacity: .7; margin: 25px 0; } #overview { position: fixed; inset: var(--chrome-height) 0 0; overflow: auto; background: color-mix(in srgb,var(--page-tint) 18%,var(--base)); backdrop-filter: blur(35px); z-index: 40; padding: 40px; } .overview-heading { display: flex; justify-content: space-between; align-items: center; max-width: 1000px; margin: auto; } .overview-heading h1 { font-size: 30px; } .overview-note { max-width: 1000px; margin: 0 auto 30px; } #overview-grid { max-width: 1000px; margin: auto; display: grid; grid-template-columns: repeat(auto-fill,minmax(210px,1fr)); gap: 22px; } .overview-card { border: 1px solid #ffffff70; background: var(--surface); color: var(--text); border-radius: 20px; padding: 23px; text-align: left; min-height: 150px; box-shadow: 0 6px 18px #15254008; } .overview-card strong { display: block; font-size: 15px; font-weight: 500; margin: 15px 0 7px; } .overview-card small { font-size: 10px; overflow-wrap: anywhere; } .overview-card img { width: 24px; height: 24px; opacity: .6; } /* Explicit dark mode, followed by automatic OS theme selection. */ body[data-theme=dark] { --text: #eceef5; --muted: #989cac; --line: #ffffff10; --surface: #ffffff0e; --glass: #242733dc; --base: #181b24; --hover: #ffffff09; --panel: #20242eef; --shadow: 0 12px 40px #00000035; } body[data-theme=dark] img:not(.traffic img) { filter: invert(.86); } body[data-theme=dark] #address-form,body[data-theme=dark] .card,body[data-theme=dark] .glass-popover { border-color: #ffffff12; } body[data-theme=dark] #chrome { box-shadow: inset 0 1px 0 #ffffff15; } body[data-theme=dark] .brand-monogram { background: #ffffff10; color: #b7c3d8; } @media(prefers-color-scheme:dark) { body[data-theme=auto] { --text: #eceef5; --muted: #989cac; --line: #ffffff10; --surface: #ffffff0e; --glass: #242733dc; --base: #181b24; --hover: #ffffff09; --panel: #20242eef; --shadow: 0 12px 40px #00000035; } body[data-theme=auto] img:not(.traffic img) { filter: invert(.86); } body[data-theme=auto] #address-form,body[data-theme=auto] .card,body[data-theme=auto] .glass-popover { border-color: #ffffff12; } body[data-theme=auto] #chrome { box-shadow: inset 0 1px 0 #ffffff15; } } :focus-visible { outline: 3px solid #72b1f070; outline-offset: 2px; } [hidden] { display: none!important; } .visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; } @media(max-width:900px) { .toolbar { grid-template-columns: 185px minmax(160px,1fr) 148px; gap: 8px; } .toolbar-trailing { gap: 1px; } .start-content { margin-top: 45px; padding: 0 25px; } .start-content>h1 { font-size: 29px; } body[data-tab-mode=compact] #tab-strip { left: 208px; right: 168px; } .section-title span { display: none; } } @media(prefers-reduced-motion:no-preference) { button { transition: background .15s,opacity .15s; } .glass-popover { animation: appear .13s ease-out; } @keyframes appear { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: translateY(0); } } } /* Dynamic renderer component hooks and compact sidebar links. */ .group-controls { display: flex; align-items: center; gap: 5px; margin: 4px 7px 10px; } .group-controls input { padding: 6px 8px; font-size: 10px; min-width: 0; background: var(--surface); border-radius: 8px; } .group-controls button { flex-shrink: 0; width: 25px; height: 25px; padding: 5px; } .group-controls img { width: 13px; height: 13px; } .favorite-card { display: flex; flex-direction: column; align-items: center; gap: 9px; padding: 0; background: transparent; color: var(--text); font-weight: 400; } .favorite-card img { width: 27px; height: 27px; opacity: .6; } .favorite-card span:not(.favorite-icon) { font-size: 10px; max-width: 86px; text-align: center; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .favorite-icon { flex-shrink: 0; } .tab-label { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; padding-right: 8px; } .group-item { display: flex; align-items: center; gap: 8px; } .group-item img { width: 14px; height: 14px; opacity: .5; } #favorites-empty { font-size: 11px; color: var(--muted); padding: 15px 0; } .library-tab { display: flex; align-items: center; gap: 8px; } .library-tab.active { background: color-mix(in srgb,var(--accent) 7%,transparent)!important; color: var(--accent-text)!important; } .favorite-card strong { font-size: 10px; font-weight: 400; max-width: 90px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .favorite-card small { font-size: 9px; text-align: center; } .favorite-icon span { font-size: 25px; font-weight: 500; } .browser-tab .tab-label { display: block; } .browser-tab .tab-close { background: transparent; color: var(--muted); border-radius: 5px; } .browser-tab .tab-close:hover { background: var(--hover); } .browser-tab { display: flex; align-items: center; justify-content: center; padding: 0 28px 0 7px; } .browser-tab .tab-label { border: 0; flex: 1; min-width: 0; height: 100%; padding: 6px 8px; font-size: 11px; font-weight: 400; color: inherit; background: transparent; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; border-radius: 8px; } .browser-tab .tab-close { display: grid; place-items: center; font-size: 13px; font-weight: 400; padding: 0; } .browser-tab.active .tab-close { opacity: .6; } .browser-tab:not(.active) .tab-close { opacity: 0; } .browser-tab:hover .tab-close { opacity: .6; } body[data-tab-mode=compact] .browser-tab .tab-label { font-size: 10px; padding: 3px 5px; } .overview-card span { display: block; overflow-wrap: anywhere; } .library-section { border: 0; padding: 0; margin: 2px 0; } .library-section summary { list-style: none; font-weight: 400; color: var(--text); } .library-section summary::-webkit-details-marker { display: none; } .library-links .favorite-card { width: 100%; flex-direction: row; justify-content: flex-start; gap: 9px; padding: 6px 10px; border-radius: 8px; margin-top: 2px; } .library-links .favorite-card:hover { background: var(--hover); } .library-links .favorite-icon { width: 23px; height: 23px; border-radius: 7px; box-shadow: none; font-size: 12px; } .library-links .favorite-card strong { font-size: 10px; max-width: 160px; } .recent-list .favorite-card { flex-direction: row; gap: 12px; background: var(--surface); padding: 12px 15px; border-radius: 14px; align-items: center; } .recent-list .favorite-icon { width: 34px; height: 34px; font-size: 17px; border-radius: 10px; } .recent-list .favorite-card strong { font-size: 12px; max-width: none; text-align: left; } body:has(#ai:not([hidden])) #start-page,body:has(#vault:not([hidden])) #start-page { right: 360px; } .library-item { color: var(--text); } body[data-theme=dark] .glass-popover,body[data-theme=dark] .privacy-card,body[data-theme=dark] .overview-card { border-color: #ffffff12; } body[data-theme=dark] .browser-tab.active { box-shadow: inset 0 1px 0 #ffffff08; } body[data-theme=dark] .favorite-icon { box-shadow: 0 4px 14px #00000018,inset 0 1px 0 #ffffff10; } /* Glass fallback: these styles affect only the trusted shell, never website content. */ @supports not (background: color-mix(in srgb, red, blue)) { #chrome { background: var(--glass); } #library { background: var(--glass); } #overview { background: var(--base); } #welcome, #start-page { background: var(--base); } } /* Older renderers and reduced-transparency preferences use opaque surfaces. */ @supports not (backdrop-filter: blur(1px)) { #chrome, #library, .glass-popover, aside, .card { background: var(--base); } #address-form { background: var(--base); } } @media (prefers-reduced-transparency: reduce) { #chrome, #library, .glass-popover, aside, .card, #overview, #address-form { backdrop-filter: none; background: var(--base); } } /* Accessibility polish: preserve the small traffic-light visual with 24px hit targets. */ .traffic-lights { gap: 0; padding-right: 8px; } .traffic { position: relative; width: 24px; height: 24px; border: 0; background: transparent; } .traffic::before { content: ""; position: absolute; inset: 6px; border-radius: 50%; background: var(--traffic-color); border: 1px solid #00000012; } .traffic.close { --traffic-color: #ff605a; background: transparent; } .traffic.minimize { --traffic-color: #ffbd2e; background: transparent; } .traffic.maximize { --traffic-color: #28c840; background: transparent; } .traffic img { position: relative; z-index: 1; } .traffic:focus-visible img { opacity: .75; } :root { --muted: #69707d; } :focus-visible { outline: 3px solid var(--accent); outline-offset: 2px; } .session-note { opacity: 1; } /* The trusted start page can become narrow when both managed sidebars are open. */ #start-page { container-type: inline-size; } @container (max-width: 400px) { .start-content { margin-top: 35px; padding: 0 20px; } .start-content > h1 { font-size: 27px; margin-bottom: 30px; overflow-wrap: anywhere; } .privacy-card { display: block; } .privacy-icon { margin-bottom: 12px; } .privacy-card p, .recent-list .favorite-card strong { white-space: normal; overflow-wrap: anywhere; } .section-title h2 { font-size: 15px; } .favorites-grid { grid-template-columns: repeat(auto-fill, minmax(70px, 1fr)); gap: 14px; } } /* Shell-only scrollbars stay unobtrusive at the 800px minimum window width. */ #library, #start-page, #overview, #ai, #vault { scrollbar-width: thin; scrollbar-color: color-mix(in srgb, var(--muted) 45%, transparent) transparent; } @media (forced-colors: active) { #library, #start-page, #overview, #ai, #vault { scrollbar-color: auto; } } /* Company links remain readable when the library is locked; mutation controls disappear. */ .bookmark-row{display:flex;align-items:center;gap:4px;margin:4px 0}.bookmark-link{flex:1;min-width:0;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bookmark-action{font-size:10px;padding:5px}.bookmark-section-label{font-size:11px;font-weight:600;opacity:.7;margin:12px 0 6px} #bookmark-editor{color:var(--text,#202632);background:var(--surface,#edf1f6);border:1px solid #8885;border-radius:22px;padding:24px;width:min(420px,80vw);box-shadow:0 24px 80px #0005}#bookmark-editor::backdrop{background:#17233b55;backdrop-filter:blur(8px)}#bookmark-editor label{display:block;margin:12px 0}#bookmark-editor input{display:block;width:100%;box-sizing:border-box;margin-top:5px}#bookmark-editor-error{color:#d53939;font-size:12px}.bookmark-notice{font-size:12px;opacity:.75}