#aas-root, #aas-root * { box-sizing: border-box; }
#aas-root {
  position: fixed;
  z-index: 2147481640;
  width: 244px;
  max-width: calc(100vw - 12px);
  max-height: calc(100vh - 20px);
  pointer-events: none;
  transition: opacity .22s ease, transform .22s ease;
}
#aas-root.aas-left { left: max(8px, env(safe-area-inset-left)); right: auto; }
#aas-root.aas-right { right: max(8px, env(safe-area-inset-right)); left: auto; }
#aas-root.aas-soft-hidden { opacity: .06; transform: scale(.98); }
#aas-panel, .aas-orb { pointer-events: auto; }
.aas-panel {
  background: linear-gradient(180deg, rgba(32,16,55,.94), rgba(54,22,88,.92));
  color: #f4edff;
  border: 1px solid rgba(174, 124, 255, .22);
  border-radius: 17px;
  box-shadow: 0 12px 24px rgba(22, 8, 41, .28), 0 3px 8px rgba(98, 35, 171, .10);
  backdrop-filter: blur(12px);
  overflow: hidden;
  display:flex;
  flex-direction:column;
  max-height: var(--aas-panel-max, calc(100vh - 24px));
}
.aas-orb {
  display: none;
  width: 40px;
  height: 40px;
  border-radius: 999px;
  border: 1px solid rgba(177, 107, 255, .30);
  background: linear-gradient(180deg, rgba(41,18,69,.96), rgba(80,34,128,.94));
  color: #f8f4ff;
  box-shadow: 0 8px 18px rgba(22, 8, 41, .28);
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
}
.aas-header { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:10px 11px 8px; }
.aas-kicker { font-size:8px; line-height:1; letter-spacing:.12em; color:#d5b9ff; font-weight:800; }
.aas-title { font-size:13px; line-height:1.16; font-weight:800; color:#f7f1ff; }
.aas-header-actions { display:flex; gap:6px; }
.aas-icon-btn, .aas-control-btn, .aas-open-btn { border:none; cursor:pointer; text-decoration:none; }
.aas-icon-btn {
  width: 24px; height: 24px; border-radius: 999px; background: rgba(255,255,255,.10); color:#f4edff; font-weight:800;
  box-shadow:0 4px 10px rgba(10,6,18,.18);
}
.aas-card { padding: 0 11px 11px; overflow:auto; scrollbar-width: thin; max-height: var(--aas-scroll-max, calc(100vh - 132px)); }
.aas-thumb-link { position:relative; display:block; border-radius:13px; overflow:hidden; background:#170927; aspect-ratio: 16 / 10; }
.aas-thumb { width:100%; height:100%; display:block; object-fit:cover; }
.aas-badge { position:absolute; top:8px; left:8px; padding:4px 8px; border-radius:999px; font-size:9px; font-weight:800; background:rgba(255,255,255,.14); color:#efe6ff; max-width: calc(100% - 16px); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.aas-meta-row { display:flex; align-items:center; gap:6px; margin-top:8px; font-size:10px; color:#c7a6f3; font-weight:700; }
.aas-title-link { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; margin-top:8px; color:#f4edff; font-size:14px; line-height:1.28; font-weight:800; text-decoration:none; }
.aas-title-link:hover { color:#d9b9ff; }
.aas-date { margin-top:6px; font-size:12px; color:#c3abdf; }
.aas-excerpt { margin:7px 0 0; color:#e7dcf8; font-size:12px; line-height:1.45; display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; overflow:hidden; min-height:0; }
.aas-progress { margin-top:10px; height:5px; background:rgba(154,92,255,.20); border-radius:999px; overflow:hidden; }
#aas-progress-fill { display:block; height:100%; width:0%; background:linear-gradient(90deg, #ff5ca8, #8f6bff); }
.aas-controls { display:grid; grid-template-columns: 38px 44px 38px; gap:6px; align-items:center; margin-top:8px; justify-content:start; }
.aas-control-btn { width:38px; height:38px; border-radius:999px; background:rgba(255,255,255,.95); color:#d9b9ff; box-shadow:0 6px 12px rgba(90,23,159,.15); font-weight:800; font-size:14px; }
.aas-control-btn-main { width:44px; height:44px; background:linear-gradient(180deg, #b56eff, #7b4bff); color:#fff; }
.aas-actions-row { display:grid; grid-template-columns:1fr 1fr; gap:7px; align-items:center; margin-top:10px; }
.aas-open-btn { display:inline-flex; align-items:center; justify-content:center; min-height:36px; border-radius:999px; padding:0 10px; background:rgba(255,255,255,.12); color:#f8f4ff; font-weight:800; box-shadow:0 6px 12px rgba(10,6,18,.18); font-size:12px; }
.aas-listen-btn.is-speaking { background: linear-gradient(180deg, rgba(255,255,255,.18), rgba(180,110,255,.20)); color:#ffd7ef; }
#aas-root.aas-minimized .aas-panel,
#aas-root.aas-closed .aas-panel { display:none; }
#aas-root.aas-minimized .aas-orb,
#aas-root.aas-closed .aas-orb { display:inline-flex; align-items:center; justify-content:center; }
@media (max-width: 640px) {
  #aas-root { width: 198px; max-width: calc(100vw - 12px); max-height: calc(100vh - 16px); }
  #aas-root.aas-left { left: max(6px, env(safe-area-inset-left)); }
  #aas-root.aas-right { right: max(6px, env(safe-area-inset-right)); }
  .aas-header { padding:7px 7px 6px; }
  .aas-card { padding:0 7px 7px; }
  .aas-title { font-size:11px; }
  .aas-title-link { font-size:12px; -webkit-line-clamp:3; }
  .aas-excerpt { font-size:11px; -webkit-line-clamp:4; }
  .aas-actions-row { grid-template-columns: 1fr; }
  .aas-open-btn { min-height:32px; font-size:11px; }
  #aas-root.aas-mobile-compact .aas-panel { border-radius:14px; }
}

.aas-sep { opacity:.6; }
.aas-status, .aas-index, .aas-total { opacity:.92; }
#aas-root .aas-card > *:last-child { margin-bottom: 0; }

.aas-panel{width:100%;}

#aas-root.aas-minimized,
#aas-root.aas-closed {
  width: 0;
  max-height: 0;
  pointer-events: none;
}
#aas-root.aas-minimized .aas-orb,
#aas-root.aas-closed .aas-orb {
  position: fixed;
  top: var(--aas-orb-top, 42vh);
  left: var(--aas-orb-left, max(10px, env(safe-area-inset-left)));
  right: auto;
  pointer-events: auto;
}
#aas-root.aas-right.aas-minimized .aas-orb,
#aas-root.aas-right.aas-closed .aas-orb {
  right: var(--aas-orb-right, max(10px, env(safe-area-inset-right)));
  left: auto;
}
@media (max-width: 640px) {
  #aas-root.aas-minimized .aas-orb,
  #aas-root.aas-closed .aas-orb { top: var(--aas-orb-top, 46vh); }
}

@media (min-width: 641px) {
  .aas-card { padding-bottom: 12px; }
  .aas-open-btn { padding: 0 12px; }
}
