.q-appearance{min-width:0;text-align:start}.q-appearance h3{margin:0 0 8px}.q-appearance-note{color:var(--text-2);font-size:13px;margin:8px 0 14px;overflow-wrap:anywhere}.q-appearance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}.q-appearance .q-appearance-preset{min-width:0;min-height:92px;border:1px solid var(--border);border-radius:14px;padding:8px;background:var(--bg-2);color:var(--text-0);display:grid;gap:8px;text-align:center;font:inherit;font-size:13px;overflow-wrap:anywhere}.q-appearance-preset[aria-pressed=true],.q-appearance-system[aria-pressed=true]{outline:2px solid var(--accent);outline-offset:1px}.q-appearance .q-appearance-swatch{width:100%;display:block;position:relative;height:45px;background:var(--preview-background);border-radius:9px;padding:7px}.q-appearance-swatch i{display:block;height:22px;border-radius:4px;background:var(--preview-surface);border-inline-start:3px solid var(--preview-text)}.q-appearance-swatch em{position:absolute;inset-inline-end:7px;bottom:5px;width:22px;height:8px;background:linear-gradient(135deg,var(--preview-accent),var(--preview-accent2),var(--preview-accent3));border-radius:4px}.q-appearance-custom{border-top:1px solid var(--border);padding-top:12px}.q-appearance-custom summary{min-height:44px;cursor:pointer;padding:10px 0;color:var(--text-0)}.q-appearance-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0}.q-appearance-fields label{display:flex!important;flex-direction:column;align-items:stretch;gap:7px;font-size:13px;color:var(--text-1);min-width:0}.q-appearance-fields input[type=color]{width:100%;height:44px;padding:4px;background:var(--bg-2);border:1px solid var(--border);border-radius:10px}.q-appearance-fields select{height:44px;width:100%;font:inherit;border:1px solid var(--border);border-radius:10px;background:var(--bg-2);color:var(--text-0);padding:6px}.q-appearance-preview{padding:14px;background:var(--preview-background);border-radius:14px;margin:14px 0;color:var(--preview-text)}.q-appearance-preview>div{background:var(--preview-surface);padding:14px;border-radius:10px}.q-appearance-preview p{font-size:13px;margin:8px 0}.q-appearance-preview span{display:inline-block;padding:8px 14px;border-radius:10px;background:linear-gradient(135deg,var(--preview-accent),var(--preview-accent2),var(--preview-accent3));color:var(--preview-action-text)}.q-appearance .btn{min-height:44px;white-space:normal}.q-appearance .btn:disabled{opacity:.5}.q-appearance-preset:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(min-width:900px){[data-appearance-settings] .q-appearance-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}

:root[data-appearance-palette=true] .btn--primary,:root[data-appearance-palette=true] .btn-primary{color:var(--appearance-action-text)!important}

.q-appearance .btn--primary{background:var(--gradient)!important;border-color:transparent}

.q-appearance-mine{border-top:1px solid var(--border);padding-top:18px;margin-top:20px}.q-appearance-saved{display:grid;gap:10px;margin:12px 0 18px}.q-appearance-saved-row{display:flex;align-items:center;gap:4px;padding:6px;border:1px solid var(--border);border-radius:14px;background:var(--bg-1);min-width:0}.q-appearance .q-appearance-saved-apply{flex:1;display:grid;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:12px;text-align:start;min-width:0;min-height:52px;border:0;background:transparent;color:var(--text-0);border-radius:10px;padding:4px}.q-appearance-saved-apply>span:last-child{overflow-wrap:anywhere}.q-appearance-saved-apply[aria-pressed=true]{outline:2px solid var(--accent);outline-offset:0}.q-appearance .q-appearance-theme-action{display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:var(--bg-2);color:var(--text-0)}.q-appearance .q-appearance-name{grid-column:1/-1}.q-appearance .q-appearance-name input{width:100%;min-width:0;height:44px;padding:9px 12px;border:1px solid var(--border);border-radius:10px;background:var(--bg-2);color:var(--text-0);font:inherit}.q-appearance-save-actions{display:flex;flex-wrap:wrap;gap:8px}.q-appearance button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

.qm .qm-send,.qm-count,.qm-tool-count,.qm-list-drawer .ql-send{color:var(--appearance-action-text,#fff)}

/* Frosted dock: 20% transparent tint and a small theme-colored light pool beneath the central button. */
.native-dock-glass,.app-dock{--dock-glow-strength:calc(.48 * var(--dock-glow-scale,1));background:color-mix(in srgb,var(--bg-1) var(--dock-panel-opacity,80%),transparent);backdrop-filter:blur(18px) saturate(1.15);-webkit-backdrop-filter:blur(18px) saturate(1.15);isolation:isolate}
.native-dock-glass{position:fixed;inset-inline:6px;bottom:5px;height:74px;border:1px solid var(--border);border-radius:22px;overflow:hidden;pointer-events:none;z-index:1000;box-sizing:border-box;box-shadow:inset 0 1px 0 #ffffff0a,0 6px 20px #00000014}
.native-dock-glass[hidden]{display:none!important}
.native-dock-glass::before,.app-dock::before{content:"";position:absolute;left:var(--dock-light-center,50%);top:16px;width:190px;height:74px;border-radius:50%;background:linear-gradient(115deg,var(--accent),var(--accent-2),var(--accent-3));mask-image:radial-gradient(ellipse at 50% 50%,#000 0%,#0008 35%,transparent 70%);-webkit-mask-image:radial-gradient(ellipse at 50% 50%,#000 0%,#0008 35%,transparent 70%);filter:blur(11px);opacity:var(--dock-glow-strength);transform:translateX(-50%);animation:q-dock-light 8s ease-in-out infinite alternate;will-change:transform,opacity;pointer-events:none;z-index:0}
.native-dock-glass::after,.app-dock::after{content:"";position:absolute;left:var(--dock-light-center,50%);top:39px;width:126px;height:53px;border-radius:50%;background:linear-gradient(90deg,var(--accent-3),var(--accent),var(--accent-2));filter:blur(17px);opacity:calc(var(--dock-glow-strength) * .6);transform:translateX(-50%);animation:q-dock-light 11s ease-in-out infinite alternate-reverse;will-change:transform,opacity;pointer-events:none;z-index:0}
.app-dock::before,.app-dock::after{clip-path:inset(0 round 22px)}.app-dock>.app-dock__item{z-index:1}
:root[data-theme=light] .native-dock-glass,:root[data-theme=light] .app-dock{--dock-glow-strength:calc(.28 * var(--dock-glow-scale,1))}
.native-dock-glass.is-paused::before,.native-dock-glass.is-paused::after{animation-play-state:paused}
@keyframes q-dock-light{from{transform:translateX(calc(-50% - 7px)) translateY(0) scaleX(.95);opacity:calc(var(--dock-glow-strength) * .7)}to{transform:translateX(calc(-50% + 7px)) translateY(4px) scaleX(1.08);opacity:var(--dock-glow-strength)}}
@media(prefers-reduced-motion:reduce){.native-dock-glass::before,.native-dock-glass::after,.app-dock::before,.app-dock::after{animation:none;will-change:auto}}
@supports not (backdrop-filter:blur(1px)){.native-dock-glass,.app-dock{background:color-mix(in srgb,var(--bg-1) var(--dock-panel-opacity,80%),transparent)}}

.app-dock{grid-template-columns:var(--dock-columns,minmax(0,1fr) minmax(0,1fr) 72px minmax(0,1fr) minmax(0,1fr))}.app-dock .app-dock__item--messenger{width:var(--dock-size,72px);min-height:var(--dock-size,72px);margin-top:calc(50px - var(--dock-size,72px))}

.app-dock .app-dock__item{color:var(--dock-text,var(--text-0))}.app-dock .app-dock__item .material-symbol{color:var(--dock-icon,currentColor)}
.app-dock .app-dock__item:not(.app-dock__item--messenger) .material-symbol{background:color-mix(in srgb,var(--bg-2) calc(var(--dock-button-opacity,1) * 100%),transparent)}
.q-appearance-dock-settings{border-top:1px solid var(--border);margin-top:16px;padding-top:8px;min-width:0}.q-appearance-dock-settings h4{margin:14px 0 10px}
.q-appearance .q-appearance-dock-slider{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:10px 0;font-size:13px}.q-appearance-dock-slider input[type=range]{grid-column:1/-1;width:100%;min-height:44px;padding:0;accent-color:var(--accent)}.q-appearance-dock-slider output{font-variant-numeric:tabular-nums}.q-appearance .q-appearance-dock-colour{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;font-size:13px}.q-appearance-dock-colour input{width:64px;height:44px;border:1px solid var(--border);border-radius:10px;background:var(--bg-2)}
.q-appearance-dock-order{display:grid;gap:6px}.q-appearance-dock-order>div{display:flex;align-items:center;gap:6px;background:var(--bg-1);border:1px solid var(--border);padding:5px 8px;border-radius:12px}.q-appearance-dock-order>div>span{flex:1}.q-appearance-theme-action:disabled{opacity:.35}
.q-appearance-dock-preview{display:grid;grid-template-columns:var(--dock-columns);align-items:end;position:relative;isolation:isolate;min-height:110px;margin:12px 0;padding:14px 4px 8px;gap:0;color:var(--dock-text);border-radius:20px;background:color-mix(in srgb,var(--preview-surface) var(--dock-panel-opacity),transparent);border:1px solid var(--border);overflow:hidden}
.q-appearance-dock-preview::before{content:'';position:absolute;inset:40% 0 0;z-index:-1;background:radial-gradient(ellipse at var(--dock-light-center) 65%,var(--preview-accent2),transparent 55%);opacity:var(--dock-glow-scale)}
.q-dock-demo-item{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0}.q-dock-demo-item i{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;color:var(--dock-icon);font-size:24px;font-style:normal;background:color-mix(in srgb,var(--preview-surface) calc(var(--dock-button-opacity) * 100%),transparent)}.q-dock-demo-item small{font-size:9px;max-width:100%;overflow:hidden}.q-dock-demo-primary i{width:var(--dock-size);height:var(--dock-size);border-radius:50%;font-size:calc(var(--dock-size) * .43);background:linear-gradient(135deg,var(--preview-accent),var(--preview-accent2),var(--preview-accent3))}

.q-appearance .q-appearance-dock-colour input[type=color]{width:64px!important;min-width:64px;flex:0 0 64px;height:44px!important;padding:4px}.app-dock .app-dock__item--messenger .material-symbol,.q-dock-demo-primary i{color:var(--dock-primary-icon,var(--appearance-action-text,#fff))}

.q-appearance-dock-preview{--dock-auto-icon:var(--preview-action-text)}
