/* 0.35: безопасный поиск, личная медиатека и стабильная геометрия записи */

.global-search-hero { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:24px; color:#fff; background:radial-gradient(circle at 85% 0,rgba(81,220,209,.32),transparent 34%),linear-gradient(135deg,#17234a,#5643c9); }
.global-search-hero h2 { margin:5px 0 8px; }
.global-search-hero p { max-width:760px; margin:0; color:rgba(255,255,255,.8); }
.global-search-hero > .ui-icon { flex:0 0 70px; width:70px; height:70px; opacity:.86; }
.global-search-form { display:grid; gap:15px; margin-top:15px; padding:18px; }
.global-search-input { display:grid; grid-template-columns:24px minmax(0,1fr) auto; align-items:center; gap:10px; margin:0; }
.global-search-input input { min-width:0; margin:0; }
.global-search-input .button { min-height:44px; }
.search-type-fieldset { min-width:0; margin:0; padding:0; border:0; }
.search-type-fieldset legend { margin-bottom:8px; color:var(--muted); font-size:10px; font-weight:850; }
.search-type-options { display:flex; flex-wrap:wrap; gap:7px; }
.search-type-options label { margin:0; cursor:pointer; }
.search-type-options input { position:absolute; opacity:0; pointer-events:none; }
.search-type-options span { display:block; padding:8px 11px; border:1px solid var(--modern-line); border-radius:999px; color:var(--muted); background:var(--surface-alt); font-size:9px; font-weight:850; }
.search-type-options input:checked + span { border-color:var(--primary); color:var(--primary); background:var(--primary-soft); }
.search-filters { border-top:1px solid var(--modern-line); padding-top:11px; }
.search-filters summary { color:var(--primary); cursor:pointer; font-size:10px; font-weight:850; }
.search-filters .form-grid { margin-top:12px; }
.search-history { margin-top:16px; }
.search-history .section-heading { margin-bottom:8px; }
.search-history > div:last-child { display:flex; gap:7px; overflow-x:auto; padding:2px 2px 8px; scrollbar-width:thin; }
.search-history > div:last-child button { flex:0 0 auto; display:flex; align-items:center; gap:7px; max-width:280px; padding:8px 11px; border:1px solid var(--modern-line); border-radius:999px; color:var(--ink); background:var(--white); }
.search-history button span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.global-search-results { display:grid; gap:9px; margin-top:15px; }
.search-results-heading { display:flex; align-items:baseline; justify-content:space-between; gap:12px; padding:0 3px; }
.search-results-heading span { color:var(--muted); font-size:9px; }
.global-search-result { width:100%; display:grid; grid-template-columns:44px minmax(0,1fr) 22px; align-items:center; gap:12px; padding:14px; border:1px solid var(--modern-line); color:var(--ink); text-align:left; cursor:pointer; }
.global-search-result > .ui-icon { color:var(--muted); }
.search-result-icon { width:44px; height:44px; display:grid; place-items:center; border-radius:14px; color:var(--primary); background:var(--primary-soft); }
.global-search-result small,.global-search-result time { display:block; color:var(--muted); font-size:8px; }
.global-search-result b { display:block; margin:2px 0; }
.global-search-result p { margin:3px 0; color:var(--muted); line-height:1.42; }

.chat-list-filters { display:flex; gap:5px; overflow-x:auto; padding:8px 10px 3px; scrollbar-width:none; }
.chat-list-filters::-webkit-scrollbar { display:none; }
.chat-list-filters button { flex:0 0 auto; padding:7px 9px; border:1px solid var(--modern-line); border-radius:999px; color:var(--muted); background:var(--surface-alt); font-size:8px; font-weight:850; }
.chat-list-filters button.active { border-color:var(--primary); color:#fff; background:var(--primary); }

.saved-summary { display:grid; grid-template-columns:48px auto minmax(180px,1fr); align-items:center; gap:14px; margin-bottom:15px; padding:17px; }
.saved-summary > .ui-icon { width:42px; height:42px; color:var(--primary); }
.saved-summary div { display:grid; }
.saved-summary div b { font-size:25px; }
.saved-summary div small,.saved-summary p { color:var(--muted); }
.saved-summary p { margin:0; text-align:right; }
.saved-list { display:grid; gap:10px; }
.saved-item { overflow:hidden; padding:0; }
.saved-item.completed { opacity:.68; }
.saved-item-main { width:100%; display:grid; grid-template-columns:38px minmax(0,1fr) 22px; align-items:center; gap:11px; padding:15px; border:0; color:var(--ink); background:transparent; text-align:left; }
.saved-item-main > span:first-child { width:38px; height:38px; display:grid; place-items:center; border-radius:12px; color:var(--primary); background:var(--primary-soft); }
.saved-item-main small,.saved-item-main em { display:block; color:var(--muted); font-size:8px; font-style:normal; }
.saved-item-main b { display:block; margin:4px 0 6px; line-height:1.4; }
.saved-item-main em { display:flex; align-items:center; gap:5px; }
.saved-item-main em.due { color:var(--red); font-weight:850; }
.saved-item-main em .ui-icon { width:14px; height:14px; }
.saved-item-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:7px; padding:10px 15px; border-top:1px solid var(--modern-line); background:var(--surface-alt); }
.saved-completed { margin-top:18px; }
.saved-completed summary { margin-bottom:10px; color:var(--muted); cursor:pointer; font-weight:850; }

.media-scope-tabs { margin-bottom:12px; }
.storage-card.warning { border-color:color-mix(in srgb,var(--red) 48%,var(--modern-line)); }
.storage-overview-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.storage-overview-grid .card { display:grid; gap:5px; padding:16px; }
.storage-overview-grid small,.storage-overview-grid span { color:var(--muted); }
.storage-overview-grid b { font-size:21px; }
.storage-gauges { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin:12px 0 20px; padding:16px; }
.storage-gauges > div { display:grid; grid-template-columns:1fr auto; gap:7px; }
.storage-gauges span { color:var(--muted); }
.storage-gauges i,.storage-user-row i { grid-column:1/-1; height:7px; overflow:hidden; border-radius:999px; background:var(--surface-alt); }
.storage-gauges em,.storage-user-row em { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--primary),var(--cyan)); }
.storage-user-list,.storage-file-list { display:grid; gap:8px; margin-bottom:20px; }
.storage-user-row { display:grid; grid-template-columns:42px minmax(0,1fr) auto; align-items:center; gap:11px; padding:12px; }
.storage-user-row div { min-width:0; display:grid; gap:5px; }
.storage-user-row small { color:var(--muted); }
.storage-file-row { display:grid; grid-template-columns:38px minmax(0,1fr) auto; align-items:center; gap:11px; padding:12px; }
.storage-file-row > span { width:38px; height:38px; display:grid; place-items:center; border-radius:12px; color:var(--primary); background:var(--primary-soft); }
.storage-file-row small { display:block; overflow:hidden; color:var(--muted); text-overflow:ellipsis; white-space:nowrap; }
.storage-cleanup { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:16px; }
.storage-cleanup span { display:block; margin-top:4px; color:var(--muted); }
.storage-cleanup > div:last-child { display:flex; gap:7px; }

/* Не даём flex/grid и мобильному Safari/Chrome сжимать круг в овал. */
.composer-voice.is-recording,
.recording-preview-toggle,
.voice-play,
.circle-play {
  inline-size:var(--recording-control-size,54px);
  block-size:var(--recording-control-size,54px);
  min-inline-size:var(--recording-control-size,54px);
  min-block-size:var(--recording-control-size,54px);
  max-inline-size:var(--recording-control-size,54px);
  max-block-size:var(--recording-control-size,54px);
  aspect-ratio:1 / 1;
  flex:0 0 var(--recording-control-size,54px);
  border-radius:50%;
}
.composer-voice.is-recording { --recording-control-size:56px; }
.recording-circle,
.recording-preview-circle,
.recording-button-preview,
.recording-preview-circle .recording-result {
  aspect-ratio:1 / 1 !important;
  flex:none;
  border-radius:50% !important;
}
.recording-circle {
  inline-size:min(260px,65vw,42svh);
  block-size:min(260px,65vw,42svh);
  min-inline-size:min(260px,65vw,42svh);
  min-block-size:min(260px,65vw,42svh);
  max-inline-size:min(260px,65vw,42svh);
  max-block-size:min(260px,65vw,42svh);
  overflow:hidden;
}
.recording-preview-circle {
  --recording-circle-size:min(300px,74vw,48svh);
  inline-size:var(--recording-circle-size);
  block-size:var(--recording-circle-size);
  min-inline-size:var(--recording-circle-size);
  min-block-size:var(--recording-circle-size);
  max-inline-size:var(--recording-circle-size);
  max-block-size:var(--recording-circle-size);
  overflow:hidden;
}
.recording-button-preview { inline-size:calc(100% - 4px); block-size:calc(100% - 4px); min-inline-size:calc(100% - 4px); min-block-size:calc(100% - 4px); }
.recording-circle,.recording-button-preview,.recording-preview-circle .recording-result { object-fit:cover; object-position:center; }

@media (max-width:760px) {
  .global-search-hero { padding:18px; }
  .global-search-hero > .ui-icon { flex-basis:48px; width:48px; height:48px; }
  .global-search-input { grid-template-columns:22px minmax(0,1fr); }
  .global-search-input .button { grid-column:1/-1; width:100%; }
  .search-results-heading { display:grid; }
  .saved-summary { grid-template-columns:44px 1fr; }
  .saved-summary p { grid-column:1/-1; text-align:left; }
  .storage-overview-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .storage-gauges { grid-template-columns:1fr; }
  .storage-user-row { grid-template-columns:38px minmax(0,1fr); }
  .storage-user-row .button { grid-column:1/-1; width:100%; }
  .storage-file-row { grid-template-columns:34px minmax(0,1fr); }
  .storage-file-row .button { grid-column:1/-1; width:100%; }
  .storage-cleanup { display:grid; }
  .storage-cleanup > div:last-child { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .recording-preview-circle { --recording-circle-size:min(238px,68vw,34svh); }
}
