:root {
  color-scheme: dark;
  --accent: #8d7cff;
  --accent-hover: #a293ff;
  --canvas: #050a31;
  --workspace: transparent;
  --surface: rgba(15, 25, 82, .78);
  --surface-2: rgba(20, 31, 94, .78);
  --surface-3: rgba(37, 47, 115, .72);
  --hover: rgba(255,255,255,.052);
  --text: #f4f5f7;
  --text-soft: #d5d8de;
  --muted: #8f97a4;
  --muted-2: #626b78;
  --line: rgba(255,255,255,.075);
  --line-strong: rgba(255,255,255,.125);
  --success: #63d4a1;
  --warning: #e7bf67;
  --danger: #ff7079;
  --sidebar: 216px;
  --radius: 8px;
  --radius-lg: 12px;
  --shadow-float: 0 28px 90px rgba(0,0,0,.52), 0 4px 18px rgba(0,0,0,.24);
  font-family: Inter, Geist, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html { min-height: 100%; background: var(--canvas); }
body { margin: 0; min-height: 100vh; background: var(--workspace); color: var(--text); font-size: 14px; line-height: 1.45; -webkit-font-smoothing: antialiased; overflow-x: hidden; }
button, input, textarea, select { font: inherit; }
button, input, textarea, select, summary, a { outline: none; }
a { color: inherit; text-decoration: none; }
a:hover { color: inherit; }
[hidden] { display: none !important; }
::selection { background: rgba(141,124,255,.23); color: #fff; }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
code { font: .92em ui-monospace, SFMono-Regular, Consolas, monospace; color: #c0c6cf; }
.visually-hidden { position: fixed !important; width: 1px !important; height: 1px !important; opacity: 0 !important; pointer-events: none !important; }
.icon { width: 19px; height: 19px; fill: currentColor; flex: 0 0 auto; }

/* Shell ------------------------------------------------------------------- */
.app-shell { min-height: 100vh; display: grid; grid-template-columns: var(--sidebar) minmax(0,1fr); }
.sidebar { position: sticky; top: 0; z-index: 30; height: 100vh; display: flex; flex-direction: column; padding: 17px 10px 11px; background: #0a0c10; border-right: 1px solid rgba(255,255,255,.055); }
.brand { min-height: 42px; display: flex; align-items: center; gap: 10px; padding: 0 8px; color: var(--text); font-size: 15px; font-weight: 760; letter-spacing: -.025em; }
.brand-mark { width: 29px; height: 29px; display: grid; place-items: center; border-radius: 8px; background: var(--accent); color: #080b2b; font-weight: 900; box-shadow: 0 10px 28px rgba(141,124,255,.12); }
.brand-word { transform: translateY(-.5px); }
.nav-list { display: grid; gap: 3px; margin-top: 20px; }
.nav-item { min-height: 39px; display: flex; align-items: center; gap: 10px; padding: 8px 10px; border-radius: 7px; color: #9da5b1; font-weight: 570; transition: background-color .16s ease, color .16s ease; }
.nav-item .icon { color: #737c89; transition: color .16s ease; }
.nav-item:hover { background: rgba(255,255,255,.035); color: #dfe2e7; }
.nav-item:hover .icon { color: #aab1ba; }
/* One selected-state indicator: neutral tonal row. Accent is only a small icon cue. */
.nav-item.active { background: rgba(255,255,255,.065); color: #f5f6f8; }
.nav-item.active .icon { color: var(--accent); }
.sidebar-footer { margin-top: auto; }
.account-row { min-height: 54px; display: grid; grid-template-columns: 34px minmax(0,1fr) 20px; gap: 9px; align-items: center; padding: 8px; border-radius: 8px; color: var(--text-soft); transition: background-color .16s ease; }
.account-row:hover, .account-row.active { background: rgba(255,255,255,.04); }
.account-row.active .account-arrow { color: var(--accent); }
.avatar { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; background: #20242b; color: #c8c0ff; font-weight: 800; text-transform: uppercase; }
.account-copy { min-width: 0; display: grid; }
.account-copy strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; font-weight: 660; }
.account-copy small { color: var(--muted); font-size: 11px; }
.account-arrow { color: #616a77; }
.workspace { min-width: 0; min-height: 100vh; background: var(--workspace); }
.mobile-bar { display: none; }
.main-content { min-width: 0; padding: 34px clamp(24px,3vw,56px) 64px; }
.page-view { width: min(1780px,100%); margin: 0 auto; }
.page-view h1, .account-page h1, .admin-title h1 { margin: 0; font-size: clamp(27px,2.1vw,32px); line-height: 1.08; font-weight: 710; letter-spacing: -.045em; }

/* Controls ---------------------------------------------------------------- */
.btn, .icon-btn { appearance: none; border: 0; cursor: pointer; color: var(--text); transition: background-color .14s ease, color .14s ease, opacity .14s ease, transform .08s ease; }
.btn { min-height: 38px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; padding: 8px 13px; border-radius: 8px; background: var(--surface-3); color: #eef0f3; font-weight: 640; }
.btn:hover { background: #242a34; }
.btn:active { transform: translateY(1px); }
.btn.primary { background: var(--accent); color: #080b2b; }
.btn.primary:hover { background: var(--accent-hover); }
.btn.quiet-btn { background: transparent; color: #c0c5cc; }
.btn.quiet-btn:hover { background: var(--hover); color: var(--text); }
.btn.danger, .btn.danger-solid { color: #ff9aa2; background: transparent; }
.btn.danger:hover { background: rgba(255,112,121,.08); }
.btn.danger-solid { background: #a93741; color: #fff; }
.btn.danger-solid:hover { background: #be404b; }
.btn.compact { min-height: 34px; padding: 6px 10px; font-size: 13px; }
.btn:disabled, .icon-btn:disabled { opacity: .38; cursor: not-allowed; transform: none; }
.icon-btn { width: 38px; height: 38px; display: inline-grid; place-items: center; padding: 0; border-radius: 8px; background: var(--surface-3); }
.icon-btn:hover { background: #252b35; }
.icon-btn.quiet { background: transparent; color: var(--muted); }
.icon-btn.quiet:hover { background: var(--hover); color: var(--text); }
.icon-btn.small { width: 32px; height: 32px; }

.search-field { width: min(310px,34vw); height: 39px; display: flex; align-items: center; gap: 8px; padding: 0 11px; border-radius: 8px; background: rgba(255,255,255,.04); color: var(--muted); transition: background-color .14s ease, box-shadow .14s ease; }
.search-field:hover { background: rgba(255,255,255,.055); }
.search-field:focus-within { background: rgba(255,255,255,.06); box-shadow: 0 0 0 2px rgba(141,124,255,.45); }
.search-field input, .search-field input:hover, .search-field input:focus { min-height: 0 !important; width: 100%; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; color: var(--text); }
.form-stack { display: grid; gap: 14px; }
.form-grid { display: grid; gap: 14px; }
.form-grid.two { grid-template-columns: repeat(2,minmax(0,1fr)); }
.field { min-width: 0; display: grid; gap: 6px; }
.field label { color: #d3d7dd; font-size: 13px; font-weight: 600; }
.field small, .check-row small { color: var(--muted); font-size: 12px; }
input:not([type="checkbox"]):not([type="radio"]), textarea, select { width: 100%; min-height: 41px; padding: 9px 11px; border: 1px solid rgba(255,255,255,.08); border-radius: 8px; background: rgba(255,255,255,.035); color: var(--text); transition: background-color .14s ease, border-color .14s ease, box-shadow .14s ease; }
textarea { resize: vertical; min-height: 84px; }
input:not([type="checkbox"]):not([type="radio"]):hover, textarea:hover, select:hover { background: rgba(255,255,255,.05); }
input:not([type="checkbox"]):not([type="radio"]):focus, textarea:focus, select:focus { background: rgba(255,255,255,.052); border-color: rgba(141,124,255,.58); box-shadow: 0 0 0 3px rgba(141,124,255,.08); }
input::placeholder, textarea::placeholder { color: #646d78; }
input[type="number"] { appearance: textfield; -moz-appearance: textfield; }
input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button { appearance: none; margin: 0; }
.password-field { position: relative; }
.password-field input { padding-right: 44px !important; }
.password-field .input-action { position: absolute; right: 2px; top: 2px; width: 37px; height: 37px; background: transparent; color: var(--muted); }
.check-row { display: flex; align-items: flex-start; gap: 10px; padding: 7px 0; }
.check-row input { margin: 3px 0 0; accent-color: #c1c7cf; }
.check-row span { display: grid; gap: 1px; }
.check-row strong { font-weight: 600; }
.form-error { padding: 9px 11px; border-radius: 8px; background: rgba(255,112,121,.08); color: #ffabb1; font-size: 12px; }
.optional { color: var(--muted-2); font-weight: 500; }
.copy-field { display: grid; grid-template-columns: minmax(0,1fr) 40px; gap: 7px; }

/* Media ------------------------------------------------------------------- */
.media-view { min-height: calc(100vh - 98px); }
.media-toolbar { min-height: 44px; display: flex; justify-content: space-between; align-items: center; gap: 24px; margin-bottom: 24px; }
.media-toolbar-actions { display: flex; align-items: center; gap: 8px; }
.media-canvas { position: relative; min-height: calc(100vh - 170px); }
.media-grid { columns: 5 225px; column-gap: clamp(10px,1vw,16px); }
.media-card { position: relative; break-inside: avoid; margin: 0 0 clamp(10px,1vw,16px); }
.media-thumb { position: relative; width: 100%; aspect-ratio: var(--media-ratio, 4/3); display: block; overflow: hidden; padding: 0; border: 0; border-radius: 10px; background: #12151a; color: var(--text); cursor: zoom-in; }
.media-thumb img { width: 100%; height: 100%; display: block; object-fit: cover; transform: scale(1.001); transition: transform .23s ease, filter .18s ease; }
.media-card:hover .media-thumb img, .media-card:focus-within .media-thumb img { transform: scale(1.022); }
.media-tile-shade { position: absolute; inset: 0; background: linear-gradient(to top, rgba(4,5,7,.82), transparent 47%); opacity: 0; transition: opacity .18s ease; }
.media-tile-copy { position: absolute; left: 13px; right: 13px; bottom: 11px; display: grid; gap: 1px; opacity: 0; transform: translateY(5px); transition: opacity .18s ease, transform .18s ease; text-align: left; }
.media-tile-copy strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; }
.media-tile-copy small { color: rgba(245,246,248,.68); font-size: 11px; }
.media-card:hover .media-tile-shade, .media-card:focus-within .media-tile-shade, .media-card:hover .media-tile-copy, .media-card:focus-within .media-tile-copy { opacity: 1; transform: none; }
.media-count, .media-type { position: absolute; top: 9px; min-height: 23px; display: inline-flex; align-items: center; padding: 3px 7px; border-radius: 6px; background: rgba(8,9,12,.69); color: #f4f5f6; font-size: 10px; backdrop-filter: blur(8px); }
.media-count { right: 9px; }
.media-type { left: 9px; }
.media-no-results { column-span: all; padding: 60px 0; color: var(--muted); text-align: center; }
.media-empty-stage { min-height: calc(100vh - 175px); display: grid; place-items: center; transition: background-color .16s ease, box-shadow .16s ease; border-radius: 12px; }
.media-canvas.drop-active .media-empty-stage { background: rgba(255,255,255,.018); box-shadow: inset 0 0 0 1px rgba(141,124,255,.38); }
.media-empty-picker { appearance: none; width: min(680px,92%); min-height: 320px; display: grid; place-items: center; align-content: center; gap: 19px; padding: 40px; border: 0; background: transparent; color: #a5acb7; cursor: pointer; text-align: center; font-size: 15px; }
.media-empty-picker strong { color: var(--text); font-weight: 620; }
.media-empty-art { position: relative; width: 126px; height: 100px; display: grid; place-items: center; color: #b5bbc4; }
.media-empty-art::before { content: ""; position: absolute; width: 150px; height: 100px; border-radius: 50%; background: radial-gradient(circle, rgba(141,124,255,.11), rgba(92,83,129,.04) 48%, transparent 72%); filter: blur(10px); }
.media-empty-art svg { position: relative; width: 66px; height: 66px; fill: currentColor; opacity: .92; }
.media-empty-picker:hover .media-empty-art { color: #d2d6dc; }

/* Upload ------------------------------------------------------------------ */
dialog { color: var(--text); }
.dialog, .sheet, .media-viewer { border: 0; padding: 0; background: transparent; }
.dialog::backdrop, .sheet::backdrop { background: rgba(2,3,5,.7); backdrop-filter: blur(5px); }
.dialog-frame { width: min(590px,calc(100vw - 32px)); max-height: min(800px,calc(100dvh - 32px)); display: flex; flex-direction: column; overflow: hidden; border-radius: 12px; background: #12151a; border: 1px solid rgba(255,255,255,.095); box-shadow: var(--shadow-float); }
.compact-dialog .dialog-frame, .compact-form-dialog { width: min(470px,calc(100vw - 32px)); }
.dialog[open] .dialog-frame { animation: dialog-in .18s cubic-bezier(.2,.8,.2,1); }
.dialog-header, .sheet-header { display: flex; justify-content: space-between; align-items: flex-start; gap: 18px; }
.dialog-header { padding: 20px 20px 14px; }
.dialog-header.simple-header h2 { margin: 0; font-size: 19px; font-weight: 680; letter-spacing: -.025em; }
.dialog-header p, .sheet-header p { margin: 4px 0 0; color: var(--muted); font-size: 12px; }
.dialog-body { min-width: 0; overflow-y: auto; overflow-x: hidden; padding: 8px 20px 22px; }
.dialog-footer { min-height: 62px; display: flex; justify-content: flex-end; align-items: center; gap: 7px; padding: 10px 14px; border-top: 1px solid var(--line); background: rgba(8,10,13,.45); }
.media-upload-frame { width: min(570px,calc(100vw - 32px)); }
.media-upload-body { padding-top: 4px; }
.upload-drop { appearance: none; width: 100%; min-height: 250px; display: grid; place-items: center; align-content: center; gap: 9px; padding: 28px; border: 1px dashed rgba(255,255,255,.19); border-radius: 10px; background: rgba(255,255,255,.012); color: var(--muted); cursor: pointer; transition: background-color .16s ease, border-color .16s ease; }
.upload-drop:hover, .upload-drop.dragover { background: rgba(255,255,255,.028); border-color: rgba(141,124,255,.48); }
.upload-drop strong { color: var(--text-soft); font-weight: 620; }
.upload-drop-icon { width: 30px; height: 30px; fill: #a9b0ba; margin-bottom: 8px; }
.upload-selection { display: grid; gap: 12px; }
.upload-file-list { display: grid; gap: 2px; }
.upload-file-row { min-height: 64px; display: grid; grid-template-columns: 56px minmax(0,1fr) 34px; gap: 11px; align-items: center; padding: 6px 0; }
.upload-file-thumb { width: 56px; height: 50px; object-fit: cover; border-radius: 7px; background: #090b0e; }
.upload-file-copy { min-width: 0; display: grid; gap: 2px; }
.upload-file-copy strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; font-weight: 610; }
.upload-file-copy small { color: var(--muted); font-size: 11px; }

/* Immersive media viewer --------------------------------------------------- */
.media-viewer { position: fixed; inset: 0; width: 100vw; height: 100dvh; max-width: none; max-height: none; margin: 0; background: #050609; color: var(--text); }
.media-viewer::backdrop { background: #050609; }
.viewer-shell { --viewer-ambient: 54,48,62; position: relative; width: 100%; height: 100%; display: grid; grid-template-rows: 58px minmax(0,1fr) auto; overflow: hidden; isolation: isolate; }
.viewer-shell::before { content: ""; position: absolute; z-index: -1; inset: 8% 12% 12%; background: radial-gradient(circle at center, rgba(var(--viewer-ambient),.23), rgba(var(--viewer-ambient),.07) 38%, transparent 70%); filter: blur(36px); transition: background .35s ease; }
.viewer-topbar { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 9px 14px; background: linear-gradient(to bottom, rgba(4,5,7,.72), rgba(4,5,7,.18), transparent); }
.viewer-leading, .viewer-actions { display: flex; align-items: center; gap: 7px; }
.viewer-title-wrap { min-width: 0; display: grid; gap: 1px; margin-left: 4px; }
.viewer-title-wrap strong { max-width: min(48vw,650px); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; font-weight: 610; }
.viewer-title-wrap small { color: #858d98; font-size: 10px; }
.viewer-control { background: rgba(23,26,32,.66); color: #d9dde3; backdrop-filter: blur(12px); }
.viewer-control:hover { background: rgba(39,44,53,.82); }
.viewer-main { position: relative; min-width: 0; min-height: 0; display: grid; }
.viewer-stage { position: relative; min-width: 0; min-height: 0; display: grid; place-items: center; padding: 18px 70px 24px; }
.viewer-stage img { max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; filter: drop-shadow(0 18px 38px rgba(0,0,0,.28)); user-select: none; }
.viewer-nav { appearance: none; position: absolute; top: 50%; width: 42px; height: 48px; display: grid; place-items: center; transform: translateY(-50%); border: 0; border-radius: 9px; background: rgba(20,23,29,.52); color: #d7dbe1; cursor: pointer; opacity: .42; backdrop-filter: blur(10px); transition: opacity .15s ease, background-color .15s ease; }
.viewer-nav:hover { opacity: 1; background: rgba(35,40,48,.78); }
.viewer-prev { left: 14px; } .viewer-next { right: 14px; }
.viewer-menu-wrap { position: relative; }
.menu { position: absolute; z-index: 80; min-width: 196px; padding: 5px; border-radius: 9px; background: #171b21; border: 1px solid var(--line-strong); box-shadow: var(--shadow-float); }
.menu a, .menu button { width: 100%; min-height: 38px; display: flex; align-items: center; gap: 9px; padding: 7px 9px; border: 0; border-radius: 7px; background: transparent; color: var(--text-soft); text-align: left; cursor: pointer; }
.menu a:hover, .menu button:hover { background: rgba(255,255,255,.055); color: var(--text); }
.menu .danger-menu { color: #ff9ca4; }
.viewer-menu { right: 0; top: calc(100% + 6px); }
.viewer-inspector { position: absolute; z-index: 10; top: 0; right: 0; width: min(330px,88vw); height: 100%; overflow-y: auto; padding: 18px; background: rgba(13,15,19,.94); border-left: 1px solid rgba(255,255,255,.08); box-shadow: -18px 0 60px rgba(0,0,0,.25); backdrop-filter: blur(20px); animation: inspector-in .18s ease-out; }
.viewer-inspector-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 19px; }
.viewer-inspector-head strong { font-size: 15px; }
.viewer-facts { margin: 0; }
.viewer-facts > div { display: grid; grid-template-columns: 104px minmax(0,1fr); gap: 13px; padding: 9px 0; }
.viewer-facts dt { color: var(--muted); }
.viewer-facts dd { min-width: 0; margin: 0; color: var(--text-soft); overflow-wrap: anywhere; }
.viewer-advanced { margin-top: 20px; }
.viewer-filmstrip { justify-self: center; max-width: min(82vw,920px); display: flex; gap: 6px; overflow-x: auto; padding: 8px 10px 12px; }
.viewer-film-thumb { appearance: none; width: 52px; height: 42px; flex: 0 0 auto; overflow: hidden; padding: 0; border: 0; border-radius: 6px; background: #171a1f; opacity: .52; cursor: pointer; transition: opacity .15s ease, transform .15s ease; }
.viewer-film-thumb img { width: 100%; height: 100%; object-fit: cover; }
.viewer-film-thumb.active { opacity: 1; box-shadow: 0 0 0 2px var(--accent); }
.viewer-film-thumb:hover { opacity: .88; }

/* Secure Shares ----------------------------------------------------------- */
.secure-shares-view { width: min(1280px,100%); }
.secure-shares-toolbar { min-height: 44px; display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 28px; }
.secure-shares-toolbar h1 { margin: 0; font-size: clamp(27px,2.1vw,32px); line-height: 1.08; font-weight: 710; letter-spacing: -.045em; }
.secure-empty-stage { min-height: calc(100vh - 190px); display: grid; place-items: center; align-content: center; gap: 15px; text-align: center; }
.secure-empty-stage h2 { margin: 0 0 2px; font-size: 18px; font-weight: 640; }
.secure-empty-visual { position: relative; width: 104px; height: 92px; display: grid; place-items: center; color: #aeb5bf; }
.secure-empty-visual::before { content: ""; position: absolute; width: 120px; height: 82px; border-radius: 50%; background: radial-gradient(circle, rgba(141,124,255,.09), rgba(108,92,136,.035) 52%, transparent 74%); filter: blur(8px); }
.secure-empty-visual svg { position: relative; width: 52px; height: 52px; fill: currentColor; }
.secure-share-list { border-top: 1px solid var(--line); }
.secure-share-row { min-height: 76px; display: grid; grid-template-columns: 42px minmax(180px,1fr) 132px 92px auto; gap: 14px; align-items: center; padding: 11px 6px; border-bottom: 1px solid var(--line); }
.secure-share-icon { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 8px; background: rgba(255,255,255,.035); color: #aeb5bf; }
.secure-share-icon .icon { width: 18px; height: 18px; }
.secure-share-main, .secure-share-life, .secure-share-views { display: grid; gap: 2px; }
.secure-share-main strong { font-weight: 610; }
.secure-share-row small, .secure-share-life span { color: var(--muted); font-size: 11px; }
.secure-share-views strong { font-size: 16px; font-weight: 650; }
.secure-share-actions { display: flex; justify-content: flex-end; gap: 2px; }
.secure-picker-frame { width: min(640px,calc(100vw - 32px)); }
.secure-picker-body { display: grid; gap: 16px; }
.secure-media-picker { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; max-height: 420px; overflow-y: auto; }
.secure-picker-item { appearance: none; min-width: 0; overflow: hidden; padding: 0; border: 0; border-radius: 8px; background: #0d0f13; color: var(--text-soft); cursor: pointer; text-align: left; }
.secure-picker-item img { width: 100%; aspect-ratio: 1.2; display: block; object-fit: cover; }
.secure-picker-item span { display: block; padding: 8px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 11px; }
.secure-picker-item:hover { background: #1b2028; }
.secure-picker-empty { padding: 28px 0; color: var(--muted); text-align: center; }

/* Account ----------------------------------------------------------------- */
.account-page { width: min(840px,100%); margin: 0 auto; padding-bottom: 30px; }
.account-header { margin-bottom: 36px; }
.account-section { padding: 28px 0 32px; }
.account-section + .account-section { border-top: 1px solid var(--line); }
.account-section h2 { margin: 0 0 17px; font-size: 17px; font-weight: 650; letter-spacing: -.02em; }
.definition-list { margin: 0; }
.definition-list > div { min-height: 44px; display: grid; grid-template-columns: 150px minmax(0,1fr); gap: 16px; align-items: center; padding: 6px 0; }
.definition-list dt { color: var(--muted); }
.definition-list dd { min-width: 0; margin: 0; display: flex; align-items: center; gap: 7px; color: var(--text-soft); }
.definition-list dd code { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.definition-list.compact > div { grid-template-columns: 120px minmax(0,1fr); }
.password-change { max-width: 620px; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.password-change .field:first-child, .password-change .check-row, .password-change .form-error { grid-column: 1 / -1; }
.password-change .btn { width: fit-content; }
.session-list { max-width: 700px; }
.session-row { min-height: 64px; display: grid; grid-template-columns: minmax(0,1fr) auto auto; gap: 14px; align-items: center; border-bottom: 1px solid var(--line); }
.session-row:first-child { border-top: 1px solid var(--line); }
.session-row strong { display: block; font-weight: 610; }
.session-row small { color: var(--muted); font-size: 11px; }
.current-label { color: var(--success); font-size: 11px; font-weight: 650; }
.quota-list { max-width: 690px; display: grid; gap: 17px; }
.quota-row { display: grid; grid-template-columns: 180px minmax(120px,1fr) auto; gap: 14px; align-items: center; }
.quota-row strong { font-size: 13px; font-weight: 600; }
.progress { height: 4px; overflow: hidden; border-radius: 2px; background: rgba(255,255,255,.075); }
.progress > span { display: block; width: var(--progress,0%); height: 100%; background: var(--accent); }
.quota-value { color: var(--muted); font-size: 11px; white-space: nowrap; }
.account-advanced { padding-bottom: 23px; }
.account-signout { padding-top: 23px; }
.advanced summary { width: fit-content; color: var(--muted); cursor: pointer; font-size: 13px; font-weight: 600; }
.advanced summary:hover { color: var(--text-soft); }

/* Admin ------------------------------------------------------------------- */
.admin-view { width: min(1520px,100%); }
.admin-title { margin-bottom: 22px; }
.tabs { display: flex; gap: 25px; overflow-x: auto; border-bottom: 1px solid var(--line); margin-bottom: 23px; }
.tab { appearance: none; position: relative; min-height: 40px; padding: 0 0 11px; border: 0; background: transparent; color: var(--muted); cursor: pointer; font-weight: 620; white-space: nowrap; }
.tab:hover { color: var(--text-soft); }
.tab.active { color: var(--text); }
.tab.active::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 2px; background: var(--accent); }
.count-badge { display: inline-grid; min-width: 18px; height: 18px; place-items: center; margin-left: 4px; border-radius: 5px; background: rgba(255,255,255,.08); color: var(--text-soft); font-size: 10px; }
.tab-panel { display: none; }
.tab-panel.active { display: block; }
.panel-toolbar { min-height: 44px; display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 12px; }
.table-wrap { width: 100%; overflow-x: auto; border-top: 1px solid var(--line); }
.data-table { width: 100%; min-width: 650px; border-collapse: collapse; }
.data-table th { height: 39px; padding: 0 11px; border-bottom: 1px solid var(--line); color: var(--muted); font-size: 10px; font-weight: 680; letter-spacing: .035em; text-align: left; text-transform: uppercase; }
.data-table td { padding: 12px 11px; border-bottom: 1px solid var(--line); vertical-align: middle; }
.data-table tbody tr { transition: background-color .13s ease; }
.data-table tbody tr:hover { background: rgba(255,255,255,.022); }
.align-right { text-align: right !important; }
.row-actions { display: flex; justify-content: flex-end; align-items: center; gap: 5px; }
.status-text { display: inline-flex; align-items: center; gap: 7px; color: #c6cbd2; }
.status-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--muted-2); }
.status-dot.ready { background: var(--success); }
.status-dot.error { background: var(--danger); }
.empty-list { padding: 16px 0; color: var(--muted); font-size: 12px; }
.empty-state { min-height: 230px; display: grid; place-items: center; align-content: center; gap: 8px; color: var(--muted); text-align: center; }
.empty-state h2 { margin: 5px 0 0; color: var(--text); font-size: 17px; }
.empty-state p { margin: 0; }
.ambient-symbol { color: #9fa6b1; }
.ambient-symbol svg { width: 36px; height: 36px; fill: currentColor; }
.stat-strip { display: flex; flex-wrap: wrap; gap: 0; margin-bottom: 28px; border-bottom: 1px solid var(--line); }
.stat { min-width: 145px; padding: 8px 28px 15px 0; margin-right: 28px; }
.stat strong { display: block; font-size: 22px; font-weight: 690; letter-spacing: -.035em; }
.stat span { color: var(--muted); font-size: 11px; }
.system-layout { display: grid; grid-template-columns: minmax(0,1.5fr) minmax(280px,.65fr); gap: 54px; align-items: start; }
.system-layout h2, .system-group h2 { margin: 0 0 10px; font-size: 15px; }
.system-groups { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px 38px; }
.definition-grid { display: grid; margin: 0 0 15px; }
.definition-grid > div { min-height: 38px; display: flex; justify-content: space-between; gap: 18px; align-items: center; border-bottom: 1px solid var(--line); }
.definition-grid span:first-child { color: var(--muted); }
.diagnostics { margin-top: 28px; }
.capability-tree { margin-top: 12px; padding: 14px; border-radius: 8px; background: #07090c; color: #b7bdc6; font: 11px ui-monospace,SFMono-Regular,Consolas,monospace; white-space: pre-wrap; overflow-wrap: anywhere; }

.sheet { position: fixed; inset: 0 0 0 auto; margin: 0; width: auto; max-width: none; max-height: none; height: 100dvh; }
.sheet::backdrop { background: rgba(2,3,5,.62); backdrop-filter: blur(4px); }
.sheet-frame { width: min(650px,100vw); height: 100dvh; display: grid; grid-template-rows: auto minmax(0,1fr) auto; background: #101319; border-left: 1px solid var(--line-strong); box-shadow: -24px 0 80px rgba(0,0,0,.4); }
.sheet[open] .sheet-frame { animation: sheet-in .19s ease-out; }
.sheet-header { padding: 22px 24px 17px; border-bottom: 1px solid var(--line); }
.sheet-header h2 { margin: 0; font-size: 19px; font-weight: 670; }
.sheet-body { min-width: 0; overflow-y: auto; overflow-x: hidden; padding: 20px 24px 30px; }
.sheet-footer { min-height: 64px; display: flex; align-items: center; gap: 7px; padding: 10px 18px; border-top: 1px solid var(--line); background: rgba(9,11,14,.82); }
.dialog-spacer { flex: 1; }
.inspector-section { padding: 18px 0; border-top: 1px solid var(--line); }
.inspector-section:first-child { padding-top: 0; border-top: 0; }
.inspector-section h3 { margin: 0 0 12px; font-size: 13px; font-weight: 640; color: #d5d9df; }
.inspector-row { min-height: 41px; display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.inspector-row > span:first-child { color: var(--muted); }
.inspector-actions { display: flex; gap: 7px; flex-wrap: wrap; margin-top: 7px; }
.unit-grid { display: grid; gap: 11px; }
.unit-row { display: grid; grid-template-columns: minmax(0,1fr) 132px; gap: 16px; align-items: center; }
.unit-row label { color: var(--text-soft); }
.unit-input { position: relative; }
.unit-input input { padding-right: 40px !important; text-align: right; }
.unit-input span { position: absolute; right: 10px; top: 50%; transform: translateY(-50%); color: var(--muted); font-size: 10px; pointer-events: none; }
.page-summary { margin: 12px 0 0; color: var(--muted); font-size: 12px; }

/* Authentication ---------------------------------------------------------- */
.auth-page { min-height: 100vh; overflow-x: hidden; background: #08090c; }
.auth-shell { position: relative; min-height: 100vh; display: grid; place-items: center; padding: 32px; isolation: isolate; }
.auth-shell::before { content: ""; position: fixed; z-index: -2; width: min(700px,78vw); height: min(700px,78vw); left: 50%; top: 46%; transform: translate(-50%,-50%); border-radius: 50%; background: radial-gradient(circle, rgba(141,124,255,.105) 0, rgba(99,72,145,.038) 40%, transparent 70%); filter: blur(12px); }
.auth-panel { width: min(398px,100%); }
.auth-brand { display: flex; align-items: center; gap: 10px; margin-bottom: 38px; font-weight: 750; }
.auth-brand.small { margin: 0; }
.auth-heading { margin-bottom: 24px; }
.auth-heading h1 { margin: 0 0 6px; font-size: 29px; font-weight: 710; letter-spacing: -.04em; }
.auth-heading p, .auth-foot { color: var(--muted); }
.auth-heading p { margin: 0; }
.auth-panel .btn.primary { width: 100%; min-height: 43px; }
.auth-foot { margin-top: 20px; font-size: 13px; }
.auth-foot a { color: #c8c0ff; }
.pending-state { text-align: center; padding-top: 10px; }
.pending-state h2 { margin: 11px 0 5px; }
.pending-state p { margin: 0 0 18px; color: var(--muted); }
.status-icon { width: 40px; height: 40px; fill: var(--success); }

/* Public hosted shares ---------------------------------------------------- */
.share-page { min-height: 100vh; background: #06070a; }
.public-brand { display: flex; align-items: center; gap: 9px; color: #c9cdd3; font-size: 13px; font-weight: 650; }
.public-brand .brand-mark { width: 25px; height: 25px; border-radius: 7px; font-size: 12px; }
.public-single-viewer { --public-ambient: 50,47,57; min-height: 100dvh; position: relative; display: grid; grid-template-rows: auto minmax(0,1fr) auto; padding: 18px 24px 24px; isolation: isolate; overflow: hidden; }
.public-single-viewer::before { content: ""; position: absolute; z-index: -1; inset: 12% 10%; background: radial-gradient(circle at center, rgba(var(--public-ambient),.22), rgba(var(--public-ambient),.06) 38%, transparent 68%); filter: blur(42px); }
.public-single-stage { min-width: 0; min-height: 0; display: grid; place-items: center; padding: 20px; }
.public-single-stage img { max-width: min(96vw,1800px); max-height: calc(100dvh - 125px); object-fit: contain; filter: drop-shadow(0 22px 48px rgba(0,0,0,.3)); }
.public-single-caption { justify-self: center; max-width: 900px; padding-top: 7px; color: #9da4ae; font-size: 12px; text-align: center; }
.public-gallery { width: min(1680px,calc(100% - 40px)); margin: 0 auto; padding: 20px 0 50px; }
.public-gallery-header { min-height: 64px; display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; margin-bottom: 18px; }
.public-gallery-header > div:last-child { text-align: right; }
.public-gallery-header h1 { margin: 0; font-size: 20px; font-weight: 630; }
.public-gallery-header span { color: var(--muted); font-size: 11px; }
.share-grid { columns: 5 230px; column-gap: 12px; }
.share-media { position: relative; break-inside: avoid; margin: 0 0 12px; }
.share-image-button { appearance: none; width: 100%; display: block; overflow: hidden; padding: 0; border: 0; border-radius: 9px; background: #111319; cursor: zoom-in; }
.share-media img { width: 100%; height: auto; display: block; }
.public-media-flag { position: absolute; left: 8px; top: 8px; padding: 3px 6px; border-radius: 5px; background: rgba(5,6,8,.7); color: #e9edf1; font-size: 9px; backdrop-filter: blur(6px); }
.lightbox { position: fixed; inset: 0; z-index: 120; display: grid; place-items: center; padding: 30px; background: rgba(3,4,6,.96); animation: fade-in .15s ease-out; }
.lightbox img { max-width: 96vw; max-height: 93vh; object-fit: contain; }
.lightbox .icon-btn { position: absolute; top: 16px; right: 16px; }

/* Public Secure View ------------------------------------------------------ */
.secure-public { min-height: 100dvh; display: grid; place-items: center; padding: 24px; background: #07080b; color: var(--text); isolation: isolate; overflow: hidden; }
.secure-public::before { content: ""; position: fixed; z-index: -1; width: min(660px,84vw); height: min(660px,84vw); border-radius: 50%; background: radial-gradient(circle, rgba(141,124,255,.07), rgba(72,62,91,.028) 46%, transparent 70%); filter: blur(24px); pointer-events: none; }
.secure-public-panel { position: relative; width: min(440px,100%); display: grid; gap: 20px; }
.secure-brand { width: max-content; display: inline-flex; align-items: center; gap: 9px; color: #cbd0d7; font-size: 13px; font-weight: 660; }
.secure-brand .brand-mark { width: 27px; height: 27px; border-radius: 7px; font-size: 12px; box-shadow: none; }
.secure-lock { width: 50px; height: 50px; display: grid; place-items: center; margin-top: 10px; color: #b9c0c9; }
.secure-lock svg { width: 40px; height: 40px; fill: currentColor; }
.secure-public-copy { display: grid; gap: 7px; }
.secure-public-copy h1 { margin: 0; font-size: 29px; line-height: 1.05; font-weight: 700; letter-spacing: -.045em; }
.secure-public-copy p { margin: 0; color: var(--muted); font-size: 13px; }
.secure-unlock-form { display: grid; gap: 13px; margin-top: 2px; }
.secure-unlock-action { width: 100%; min-height: 43px; }
.security-note { margin: -3px 0 0; color: #717a86; font-size: 11px; line-height: 1.55; }
.secure-unavailable { padding-bottom: 42px; }
.secure-gallery-page { min-height: 100dvh; margin: 0; background: #050609; color: var(--text); overflow-x: hidden; }
.secure-gallery-top { position: fixed; z-index: 20; left: 50%; top: 13px; transform: translateX(-50%); min-height: 42px; display: flex; align-items: center; justify-content: space-between; gap: 22px; padding: 7px 10px 7px 8px; border-radius: 10px; background: rgba(15,18,23,.72); color: #cdd2d8; backdrop-filter: blur(16px); box-shadow: 0 10px 34px rgba(0,0,0,.25); }
.secure-gallery-brand, .secure-gallery-status { display: flex; align-items: center; gap: 7px; white-space: nowrap; }
.secure-gallery-brand { font-size: 12px; font-weight: 620; }
.secure-gallery-brand .brand-mark.small { width: 27px; height: 27px; border-radius: 7px; font-size: 11px; box-shadow: none; }
.secure-gallery-status { color: #aeb5bf; font-size: 11px; font-variant-numeric: tabular-nums; }
.secure-gallery-status svg { width: 16px; height: 16px; fill: #8f98a4; }
.secure-canvas-grid { min-height: 100dvh; display: grid; gap: 30px; place-items: center; padding: 72px 24px 30px; }
.secure-canvas-item { width: min(1600px,100%); display: grid; place-items: center; }
.secure-canvas-wrap { width: 100%; display: grid; place-items: center; }
.secure-canvas-wrap canvas { max-width: 100%; max-height: calc(100dvh - 112px); width: auto; height: auto; object-fit: contain; box-shadow: 0 28px 70px rgba(0,0,0,.34); }
.secure-expired { display: none; min-height: 100dvh; place-items: center; padding: 24px; text-align: center; }
.secure-expired-content { width: min(440px,100%); display: grid; justify-items: center; gap: 8px; }
.secure-expired-content svg { width: 42px; height: 42px; margin-bottom: 10px; fill: #8f98a4; }
.secure-expired h1 { margin: 0; font-size: 27px; font-weight: 690; letter-spacing: -.04em; }
.secure-expired p { margin: 0; color: var(--muted); }
.secure-gallery-page.expired .secure-gallery-top, .secure-gallery-page.expired .secure-canvas-grid { display: none; }
.secure-gallery-page.expired .secure-expired { display: grid; }
.secure-gallery-page.blurred .secure-canvas-grid { filter: blur(22px); opacity: .16; }

/* Toasts ------------------------------------------------------------------ */
.toast-region { position: fixed; z-index: 220; right: 16px; bottom: 16px; width: min(340px,calc(100vw - 32px)); display: grid; gap: 8px; pointer-events: none; }
.toast { padding: 10px 12px; border-radius: 8px; background: #20252d; color: var(--text); box-shadow: var(--shadow-float); animation: toast-in .16s ease-out; }
.toast.error { box-shadow: inset 2px 0 var(--danger), var(--shadow-float); }
.sidebar-scrim { position: fixed; inset: 0; z-index: 25; background: rgba(0,0,0,.62); }

@keyframes toast-in { from { opacity: 0; transform: translateY(6px); } }
@keyframes dialog-in { from { opacity: 0; transform: translateY(8px) scale(.99); } }
@keyframes sheet-in { from { opacity: .7; transform: translateX(16px); } }
@keyframes inspector-in { from { opacity: .6; transform: translateX(14px); } }
@keyframes fade-in { from { opacity: 0; } }

/* Responsive -------------------------------------------------------------- */
@media (min-width: 2000px) {
  .main-content { padding-inline: clamp(48px,3.5vw,88px); }
  .media-grid { columns: 7 240px; }
  .share-grid { columns: 7 245px; }
}

@media (max-width: 1050px) {
  .system-layout { grid-template-columns: 1fr; gap: 30px; }
  .system-groups { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 900px) {
  .app-shell { grid-template-columns: 1fr; }
  .sidebar { position: fixed; left: 0; top: 0; width: min(var(--sidebar),84vw); transform: translateX(-103%); transition: transform .18s ease-out; box-shadow: var(--shadow-float); }
  .sidebar.open { transform: translateX(0); }
  .mobile-bar { position: sticky; top: 0; z-index: 20; height: 54px; display: grid; grid-template-columns: 40px minmax(0,1fr) 40px; align-items: center; padding: 0 9px; border-bottom: 1px solid var(--line); background: rgba(9,11,14,.92); backdrop-filter: blur(15px); }
  .mobile-title { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; text-align: center; font-weight: 620; }
  .main-content { padding: 20px 18px 48px; }
  .media-toolbar > h1, .secure-shares-toolbar > h1, .account-header, .admin-title { display: none; }
  .media-toolbar:has(.media-toolbar-actions[hidden]), .secure-shares-toolbar { display: none; }
  .media-empty-stage { min-height: calc(100dvh - 145px); }
  .secure-empty-stage { min-height: calc(100dvh - 155px); }
  .public-single-viewer { padding-top: 14px; }
}

@media (max-width: 720px) {
  .main-content { padding-inline: 14px; }
  .page-view h1, .account-page h1, .admin-title h1, .secure-shares-toolbar h1 { font-size: 25px; }
  .media-toolbar { align-items: center; gap: 12px; }
  .media-toolbar-actions { flex: 1; justify-content: flex-end; }
  .search-field { width: min(250px,48vw); }
  .media-toolbar-actions .btn.primary { width: 40px; padding: 0; font-size: 0; }
  .media-toolbar-actions .btn.primary .icon { width: 20px; height: 20px; }
  .media-grid { columns: 2 150px; column-gap: 8px; }
  .media-card { margin-bottom: 8px; }
  .media-tile-copy, .media-tile-shade { display: none; }
  .media-empty-picker { min-height: 250px; padding: 24px 10px; }
  .viewer-topbar { padding-inline: 8px; }
  .viewer-title-wrap { display: none; }
  .viewer-stage { padding: 10px 47px 16px; }
  .viewer-nav { width: 36px; height: 44px; }
  .viewer-prev { left: 5px; } .viewer-next { right: 5px; }
  .viewer-filmstrip { max-width: 96vw; }
  .secure-share-row { grid-template-columns: 38px minmax(0,1fr) auto; gap: 10px; }
  .secure-share-life, .secure-share-views { grid-row: 2; }
  .secure-share-life { grid-column: 2; display: inline-flex; gap: 5px; }
  .secure-share-views { grid-column: 2; margin-left: 120px; display: inline-flex; gap: 5px; }
  .secure-share-actions { grid-column: 3; grid-row: 1 / span 2; }
  .secure-media-picker { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .password-change, .form-grid.two { grid-template-columns: 1fr; }
  .password-change .field:first-child, .password-change .check-row, .password-change .form-error { grid-column: auto; }
  .definition-list > div { grid-template-columns: 1fr; gap: 2px; padding: 9px 0; }
  .quota-row { grid-template-columns: 1fr auto; }
  .quota-row .progress { grid-column: 1 / -1; grid-row: 2; }
  .session-row { grid-template-columns: 1fr auto; gap: 5px 10px; padding: 9px 0; }
  .session-row .current-label { grid-column: 1; grid-row: 2; }
  .system-groups { grid-template-columns: 1fr; }
  .sheet, .sheet-frame { width: 100vw; }
  .sheet-header { padding: 18px 16px 14px; }
  .sheet-body { padding: 17px 16px 24px; }
  .sheet-footer { padding: 10px 12px; }
  .public-gallery { width: calc(100% - 24px); }
  .share-grid { columns: 2 150px; column-gap: 8px; }
  .share-media { margin-bottom: 8px; }
}

@media (max-width: 430px) {
  .main-content { padding-inline: 11px; }
  .media-toolbar { margin-bottom: 16px; }
  .search-field { width: min(200px,52vw); }
  .media-grid { columns: 2 132px; }
  .dialog-frame { width: calc(100vw - 16px); max-height: calc(100dvh - 16px); }
  .dialog-header { padding: 17px 14px 12px; }
  .dialog-body { padding: 7px 14px 17px; }
  .dialog-footer { padding-inline: 10px; }
  .upload-drop { min-height: 220px; }
  .viewer-actions { gap: 2px; }
  .viewer-control { width: 36px; height: 36px; }
  .viewer-inspector { width: 100vw; }
  .secure-shares-toolbar .btn.primary { width: 40px; padding: 0; font-size: 0; }
  .secure-shares-toolbar .btn.primary .icon { width: 20px; height: 20px; }
  .secure-share-row { padding-inline: 2px; }
  .secure-share-life, .secure-share-views { font-size: 10px; }
  .unit-row { grid-template-columns: 1fr; gap: 5px; }
  .toast-region { right: 10px; bottom: 10px; width: calc(100vw - 20px); }
  .public-single-viewer { padding: 14px 12px 18px; }
  .public-single-stage { padding: 12px 0; }
  .secure-public { padding: 20px 18px; }
  .secure-gallery-top { top: 8px; width: calc(100% - 16px); justify-content: space-between; }
  .secure-canvas-grid { padding: 64px 8px 20px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; scroll-behavior: auto !important; }
}
/* Keep horizontal tab navigation scrollable without presenting browser chrome. */
.tabs { scrollbar-width: none; }
.tabs::-webkit-scrollbar { display: none; }

/* ========================================================================
   Eien v12 visual system — reference-driven atmospheric product shell
   ======================================================================== */
:root {
  --eien-midnight: #06103f;
  --eien-deep: #09154d;
  --eien-panel: rgba(12, 24, 78, .72);
  --eien-panel-strong: rgba(14, 27, 88, .88);
  --eien-panel-soft: rgba(25, 38, 104, .54);
  --eien-line: rgba(151, 166, 255, .22);
  --eien-line-bright: rgba(176, 188, 255, .38);
  --eien-ice: #b8d8ff;
  --eien-lavender: #c7bfff;
  --eien-violet: #8d7cff;
  --eien-cyan: #78c7ff;
  --eien-rose: #e9a4ff;
  --eien-glow: rgba(100, 96, 255, .34);
  --sidebar: 282px;
  --shadow-float: 0 30px 90px rgba(0, 3, 35, .58), inset 0 1px rgba(255,255,255,.04);
  font-family: Inter, Geist, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

html { background: #071044; }
body.eien-app, body.eien-public, body.auth-page { background: #071044; }
.eien-environment { position: fixed; inset: 0; z-index: -5; background: #071044; }
.eien-environment::before { content:""; position:absolute; inset:0; background: linear-gradient(90deg, rgba(3,8,42,.16), rgba(3,8,42,.02) 46%, rgba(3,8,42,.12)); }
.eien-environment::after { content:""; position:absolute; inset:0; background: radial-gradient(circle at 54% 26%, rgba(98,104,255,.09), transparent 34%), linear-gradient(180deg, rgba(4,8,37,.06), rgba(3,8,38,.18)); }
::selection { background: rgba(141,124,255,.35); }
:focus-visible { outline-color: #a89cff; }

/* Shell */
.app-shell { min-height: 100dvh; grid-template-columns: var(--sidebar) minmax(0,1fr); gap: 0; }
.sidebar { height: 100dvh; padding: 26px 18px 20px; background: linear-gradient(180deg, rgba(6,15,58,.76), rgba(4,10,43,.62)); border-right: 1px solid rgba(151,166,255,.14); box-shadow: 20px 0 60px rgba(0,7,48,.2); backdrop-filter: blur(18px) saturate(118%); }
.brand { min-height: 112px; padding: 0 2px; gap: 15px; align-items: center; }
.brand-portrait { width: 90px; height: 90px; object-fit: contain; flex: 0 0 auto; filter: drop-shadow(0 0 22px rgba(111,113,255,.35)); }
.brand-copy { display:grid; gap:5px; min-width:0; }
.brand-word { font-family: Georgia, "Times New Roman", serif; font-size: 31px; line-height:1; font-weight: 500; letter-spacing: -.025em; color:#f2f0ff; text-shadow: 0 0 18px rgba(153,141,255,.26); }
.brand-copy small { color: #c4c5e6; font-size: 11px; line-height: 1.55; font-weight: 450; }
.nav-list { gap: 5px; margin-top: 22px; padding-bottom: 18px; border-bottom: 1px solid rgba(159,171,255,.12); }
.nav-item { min-height: 48px; gap: 12px; padding: 10px 13px; border-radius: 10px; color:#b7bcdf; font-size:14px; border:1px solid transparent; }
.nav-item .icon { width:22px; height:22px; color:#9198d5; }
.nav-item:hover { background: rgba(91,107,208,.12); color:#f0efff; }
.nav-item:hover .icon { color:#c6c8ff; }
.nav-item.active { background: linear-gradient(90deg, rgba(101,91,213,.28), rgba(80,99,207,.16)); color:#fff; border-color: rgba(144,150,255,.26); box-shadow: inset 0 0 22px rgba(112,96,255,.08), 0 8px 26px rgba(3,7,45,.12); }
.nav-item.active .icon { color:#cbc4ff; filter: drop-shadow(0 0 8px rgba(150,133,255,.45)); }
.sidebar-storage { margin-top: 17px; padding: 15px 14px; border:1px solid rgba(154,169,255,.18); border-radius: 12px; background: linear-gradient(180deg, rgba(19,31,91,.54), rgba(11,23,74,.42)); box-shadow: inset 0 1px rgba(255,255,255,.035); }
.sidebar-storage-title { display:flex; align-items:center; justify-content:space-between; margin-bottom:14px; font-family: Georgia,"Times New Roman",serif; font-size:18px; color:#f0edff; }
.sidebar-storage-title .icon { width:16px; height:16px; color:#b7cfff; }
.sidebar-meter { display:grid; gap:6px; margin-top:11px; }
.sidebar-meter-row { display:flex; justify-content:space-between; gap:10px; align-items:center; color:#bec3e2; font-size:11px; }
.sidebar-meter-row small { color:#8e96c7; font-size:10px; }
.mini-progress { height:4px; overflow:hidden; border-radius:3px; background:rgba(125,142,223,.13); }
.mini-progress > span { display:block; width:var(--meter,0%); height:100%; border-radius:inherit; background:linear-gradient(90deg,#74c8ff,#9a79ff); box-shadow:0 0 12px rgba(118,158,255,.4); transition:width .35s ease; }
.sidebar-footer { margin-top:auto; padding-top:14px; }
.sidebar-note { display:flex; align-items:center; gap:7px; color:#8f96bf; font-size:10px; letter-spacing:.02em; }
.sidebar-note .icon { width:14px; height:14px; }

.workspace { min-width:0; min-height:100dvh; background: rgba(5,10,43,.05); }
.app-topbar { height: 82px; display:grid; grid-template-columns: minmax(60px,1fr) minmax(340px,620px) minmax(220px,1fr); align-items:center; gap:18px; padding: 14px 28px 8px; }
.global-search { grid-column:2; height:48px; display:grid; grid-template-columns:22px minmax(0,1fr) auto; align-items:center; gap:10px; padding:0 14px; border:1px solid rgba(147,164,255,.2); border-radius:12px; background:rgba(8,20,72,.56); color:#9ea7d0; box-shadow:inset 0 1px rgba(255,255,255,.025),0 16px 38px rgba(0,5,39,.13); backdrop-filter:blur(18px); }
.global-search:focus-within { border-color:rgba(161,151,255,.55); box-shadow:0 0 0 3px rgba(130,112,255,.11),0 16px 38px rgba(0,5,39,.13); }
.global-search input, .global-search input:focus, .global-search input:hover { min-height:0!important; padding:0!important; border:0!important; background:transparent!important; box-shadow:none!important; color:#edf0ff; }
.global-search kbd { padding:3px 6px; border:1px solid rgba(167,177,255,.13); border-radius:6px; color:#838bb8; background:rgba(255,255,255,.025); font:10px ui-monospace,monospace; }
.topbar-spacer { grid-column:2; }
.top-account { grid-column:3; justify-self:end; min-height:52px; display:grid; grid-template-columns:44px auto 18px; align-items:center; gap:10px; padding:4px 7px 4px 5px; border-radius:13px; color:#d8dcf2; transition:background-color .16s ease; }
.top-account:hover,.top-account.active { background:rgba(46,61,133,.26); }
.top-account img { width:44px; height:44px; object-fit:contain; filter:drop-shadow(0 0 10px rgba(123,115,255,.3)); }
.top-account span { display:grid; }
.top-account strong { font-family:Georgia,"Times New Roman",serif; font-size:15px; font-weight:500; color:#f2efff; }
.top-account small { color:#878fb9; font-size:9px; }
.top-account > .icon { width:16px; height:16px; color:#8e96bd; }
.mobile-menu { display:none; }
.main-content { padding: 10px 26px 48px; }
.page-view { width:100%; max-width:1900px; margin:0 auto; }
.page-view h1,.account-page h1,.admin-title h1 { font-family:Georgia,"Times New Roman",serif; font-size:30px; font-weight:500; letter-spacing:-.02em; color:#f2efff; text-shadow:0 0 16px rgba(131,121,255,.09); }

/* Core controls */
.btn { border-radius:9px; background:rgba(61,75,148,.42); color:#e9ebff; border:1px solid rgba(155,166,255,.15); box-shadow:inset 0 1px rgba(255,255,255,.025); }
.btn:hover { background:rgba(77,92,174,.5); border-color:rgba(168,175,255,.24); }
.btn.primary { background:linear-gradient(180deg,#7769e9,#5d55ce); color:#fff; border-color:rgba(178,171,255,.5); box-shadow:0 8px 24px rgba(68,51,196,.28),inset 0 1px rgba(255,255,255,.18); }
.btn.primary:hover { background:linear-gradient(180deg,#8879f4,#6b61df); }
.btn.quiet-btn { border-color:transparent; background:rgba(255,255,255,.025); color:#c0c6e6; }
.icon-btn { border-radius:9px; background:rgba(55,69,143,.38); color:#c8ccef; border:1px solid rgba(150,163,255,.12); }
.icon-btn:hover { background:rgba(75,89,173,.5); color:#fff; }
.icon-btn.quiet { background:transparent; border-color:transparent; color:#9098c2; }
.icon-btn.quiet:hover { background:rgba(81,95,178,.18); color:#eef0ff; }
.glass-icon { background:rgba(16,29,88,.62); backdrop-filter:blur(16px); }
input:not([type="checkbox"]):not([type="radio"]),textarea,select { border-color:rgba(151,163,238,.17); background:rgba(10,22,72,.56); color:#edf0ff; }
input:not([type="checkbox"]):not([type="radio"]):hover,textarea:hover,select:hover { background:rgba(17,31,88,.65); }
input:not([type="checkbox"]):not([type="radio"]):focus,textarea:focus,select:focus { border-color:rgba(157,144,255,.64); box-shadow:0 0 0 3px rgba(123,108,255,.12); background:rgba(17,31,88,.75); }
.field label { color:#d8dcf2; }
.field small,.check-row small,.optional { color:#8790ba; }
.form-error { background:rgba(203,85,120,.13); color:#ffb8ca; border:1px solid rgba(255,125,157,.14); }

/* Media composition */
.media-view { min-height:calc(100dvh - 112px); }
.media-layout { display:grid; grid-template-columns:minmax(0,1fr) 318px; gap:18px; align-items:start; }
.media-stage-panel,.utility-panel,.account-page,.admin-view,.secure-shares-view { border:1px solid var(--eien-line); background:linear-gradient(180deg,rgba(11,25,80,.72),rgba(8,20,70,.58)); box-shadow:0 24px 70px rgba(0,5,46,.22),inset 0 1px rgba(255,255,255,.035); backdrop-filter:blur(18px) saturate(115%); }
.media-stage-panel { min-height:calc(100dvh - 130px); border-radius:15px; padding:20px 18px 18px; }
.media-stage-header { min-height:58px; display:flex; justify-content:space-between; align-items:center; gap:18px; margin-bottom:15px; }
.media-stage-title { display:flex; align-items:center; gap:13px; min-width:0; }
.section-symbol { width:44px; height:44px; display:grid; place-items:center; border-radius:10px; color:#d5d2ff; background:linear-gradient(180deg,rgba(112,98,221,.32),rgba(56,75,164,.25)); border:1px solid rgba(160,157,255,.2); box-shadow:0 8px 28px rgba(62,50,177,.15); }
.section-symbol .icon { width:24px; height:24px; }
.media-stage-title h1 { margin:0; font-size:27px; }
.media-stage-title p { margin:3px 0 0; color:#a5acd0; font-size:12px; }
.media-stage-controls { display:flex; align-items:center; gap:9px; }
.select-control { height:38px; display:flex; align-items:center; gap:7px; padding:0 8px 0 11px; border:1px solid rgba(149,162,242,.15); border-radius:9px; background:rgba(25,40,104,.4); color:#8e97c2; font-size:10px; }
.select-control select { min-height:30px; width:auto; padding:4px 26px 4px 5px; border:0!important; background:transparent!important; box-shadow:none!important; color:#dfe2f6; font-size:11px; }
.view-switch { display:flex; gap:4px; padding:3px; border:1px solid rgba(149,162,242,.14); border-radius:9px; background:rgba(16,29,87,.42); }
.view-switch .icon-btn { width:32px; height:30px; border:0; background:transparent; }
.view-switch .icon-btn.active { color:#fff; background:rgba(115,100,224,.45); box-shadow:0 0 12px rgba(119,103,230,.18); }
.media-mobile-add { display:none; }
.media-canvas { min-height:calc(100dvh - 228px); }
.media-grid { columns:4 210px; column-gap:10px; }
.media-grid.compact { columns:5 165px; column-gap:8px; }
.media-card { margin-bottom:10px; }
.media-thumb { border-radius:10px; border:1px solid rgba(157,171,255,.13); background:#081442; box-shadow:0 9px 24px rgba(0,6,48,.18); }
.media-thumb::after { content:""; position:absolute; inset:0; border-radius:inherit; box-shadow:inset 0 0 0 1px rgba(255,255,255,.03); pointer-events:none; }
.media-thumb img { transition:transform .28s ease,filter .2s ease; }
.media-card:hover .media-thumb img,.media-card:focus-within .media-thumb img { transform:scale(1.035); filter:saturate(1.05) brightness(1.03); }
.media-card:hover .media-thumb { border-color:rgba(167,172,255,.3); box-shadow:0 15px 36px rgba(1,5,52,.32),0 0 24px rgba(93,83,223,.08); }
.media-tile-shade { background:linear-gradient(180deg,transparent 45%,rgba(2,6,35,.78)); }
.media-tile-copy strong { font-family:Georgia,"Times New Roman",serif; font-size:13px; font-weight:500; }
.media-tile-copy small { color:#b0b6d7; }
.media-type { background:rgba(14,25,76,.72); color:#d9ddff; border:1px solid rgba(165,174,255,.2); }
.media-empty-stage { min-height:calc(100dvh - 235px); display:grid; place-items:center; }
.media-empty-picker { width:min(620px,92%); min-height:300px; display:grid; place-items:center; align-content:center; gap:10px; border:1px dashed rgba(151,165,255,.34); border-radius:16px; color:#d5d8ef; background:radial-gradient(circle at center,rgba(81,76,190,.14),rgba(24,37,102,.12) 42%,transparent 76%); }
.media-empty-picker:hover { border-color:rgba(179,183,255,.52); background:radial-gradient(circle at center,rgba(98,87,220,.2),rgba(29,42,112,.15) 42%,transparent 76%); }
.media-empty-orbit { width:78px; height:78px; display:grid; place-items:center; border-radius:50%; color:#d7d3ff; background:radial-gradient(circle,rgba(127,108,245,.34),rgba(74,89,192,.12) 58%,transparent 61%); box-shadow:0 0 36px rgba(104,91,234,.18); }
.media-empty-orbit svg { width:37px; height:37px; fill:currentColor; }
.media-empty-picker strong { font-family:Georgia,"Times New Roman",serif; font-size:22px; font-weight:500; color:#f1efff; }
.media-empty-picker span:last-child { color:#a8afd0; }
.media-no-results { padding:50px 12px; color:#9ea6cb; }

.media-utility { display:grid; gap:14px; position:sticky; top:92px; }
.utility-panel { border-radius:15px; padding:16px; }
.utility-heading { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:13px; }
.utility-heading h2 { margin:0; font-family:Georgia,"Times New Roman",serif; font-size:19px; font-weight:500; color:#f1eeff; }
.utility-heading > span,.utility-spark { color:#8f97c1; font-size:10px; }
.utility-spark { width:16px; height:16px; fill:currentColor; }
.utility-drop { width:100%; min-height:175px; display:grid; place-items:center; align-content:center; gap:6px; padding:18px; border:1px dashed rgba(153,168,255,.36); border-radius:12px; background:rgba(13,27,85,.3); color:#d9ddf4; cursor:pointer; }
.utility-drop:hover,.utility-drop.dragover { border-color:rgba(184,188,255,.62); background:rgba(55,64,151,.27); box-shadow:inset 0 0 30px rgba(104,93,231,.09); }
.upload-cloud { width:58px; height:58px; display:grid; place-items:center; margin-bottom:4px; border-radius:50%; color:#d0caff; background:radial-gradient(circle at 50% 55%,rgba(131,108,242,.45),rgba(81,81,191,.15) 65%,transparent 67%); filter:drop-shadow(0 0 12px rgba(129,111,255,.23)); }
.upload-cloud svg { width:37px; height:37px; fill:currentColor; }
.upload-cloud.large { width:76px; height:76px; }
.utility-drop strong { font-family:Georgia,"Times New Roman",serif; font-size:13px; font-weight:500; }
.utility-drop small { color:#969ec5; }
.utility-drop > span:last-child { margin-top:3px; color:#7882af; font-size:9px; }
.recent-media-list { display:grid; gap:4px; }
.recent-media-row { width:100%; display:grid; grid-template-columns:42px minmax(0,1fr) 18px; align-items:center; gap:10px; padding:6px; border:0; border-radius:9px; background:transparent; color:#dce0f5; text-align:left; cursor:pointer; }
.recent-media-row:hover { background:rgba(73,88,174,.2); }
.recent-media-row img { width:42px; height:42px; object-fit:cover; border-radius:7px; border:1px solid rgba(164,174,255,.14); }
.recent-media-row span { min-width:0; display:grid; gap:2px; }
.recent-media-row strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:11px; font-weight:600; }
.recent-media-row small { color:#838cb7; font-size:9px; }
.recent-media-row .icon { width:15px; height:15px; color:#65709f; }

/* Dialogs and viewer */
.dialog::backdrop,.sheet::backdrop,.media-viewer::backdrop { background:rgba(2,5,30,.72); backdrop-filter:blur(8px); }
.dialog-frame,.sheet-frame { background:linear-gradient(180deg,rgba(15,29,91,.97),rgba(8,20,70,.97)); border-color:rgba(166,176,255,.23); box-shadow:0 34px 100px rgba(0,3,35,.58),inset 0 1px rgba(255,255,255,.05); }
.dialog-header,.sheet-header { border-color:rgba(157,169,255,.14); }
.dialog-header h2,.sheet-header h2 { font-family:Georgia,"Times New Roman",serif; font-weight:500; color:#f3f0ff; }
.dialog-header p,.sheet-header p { color:#959ec7; }
.upload-drop { border-color:rgba(156,170,255,.34); background:radial-gradient(circle at 50% 50%,rgba(84,79,196,.15),rgba(20,36,101,.26)); color:#dce0f5; }
.upload-drop:hover,.upload-drop.dragover { border-color:rgba(182,186,255,.58); background:radial-gradient(circle at 50% 50%,rgba(111,92,231,.22),rgba(25,41,112,.34)); }
.upload-file-row { background:rgba(25,39,104,.42); border-color:rgba(157,169,255,.14); }
.media-viewer { --viewer-ambient: 92,89,164; background:rgba(2,5,27,.96); }
.viewer-shell::before { opacity:.42; }
.viewer-topbar { background:linear-gradient(180deg,rgba(5,10,44,.86),rgba(5,10,44,.42)); }
.viewer-control { background:rgba(21,33,91,.54); border-color:rgba(163,173,255,.15); backdrop-filter:blur(14px); }
.viewer-stage img { filter:drop-shadow(0 30px 70px rgba(0,0,25,.46)); }
.viewer-inspector { background:rgba(10,22,72,.88); border-color:rgba(160,171,255,.17); backdrop-filter:blur(22px); }
.viewer-film-thumb { border-color:rgba(166,177,255,.12); }
.viewer-film-thumb.active { border-color:#a599ff; box-shadow:0 0 0 2px rgba(138,123,255,.22); }

/* Secure Shares */
.secure-shares-view { min-height:calc(100dvh - 130px); border-radius:15px; padding:22px; }
.secure-shares-toolbar { padding-bottom:16px; border-bottom:1px solid rgba(156,169,255,.12); }
.secure-share-list { background:transparent; }
.secure-share-row { border-color:rgba(155,169,255,.11); }
.secure-share-row:hover { background:rgba(43,58,137,.18); }
.secure-share-icon { color:#cbc7ff; background:rgba(99,88,207,.18); }
.secure-empty-stage { min-height:calc(100dvh - 270px); }
.secure-empty-visual { color:#c8c7ff; background:radial-gradient(circle,rgba(105,92,220,.22),transparent 70%); }

/* Account / Admin */
.account-page { width:min(920px,100%); margin:0 auto; padding:28px 34px 42px; border-radius:15px; }
.account-header { padding-bottom:20px; border-bottom:1px solid rgba(156,169,255,.12); }
.account-section { border-color:rgba(156,169,255,.11); }
.account-section h2,.system-layout h2,.system-group h2 { color:#e8e8fa; }
.definition-list > div,.session-row,.quota-row { border-color:rgba(152,166,241,.1); }
.progress { background:rgba(121,140,221,.12); }
.progress span { background:linear-gradient(90deg,#72c8ff,#9b78ff); box-shadow:0 0 12px rgba(115,135,255,.25); }
.admin-view { min-height:calc(100dvh - 130px); padding:22px; border-radius:15px; }
.tabs { border-color:rgba(155,169,255,.12); }
.tab { color:#8f98c0; }
.tab:hover,.tab.active { color:#f0efff; }
.tab.active::after { background:linear-gradient(90deg,#7ac7ff,#9c7aff); }
.table-wrap { border-color:rgba(154,168,242,.13); background:rgba(7,19,67,.28); }
.data-table th { color:#8d96bf; background:rgba(20,33,92,.52); }
.data-table td { border-color:rgba(151,166,239,.09); }
.data-table tbody tr:hover { background:rgba(52,67,153,.16); }
.stat-strip { border-color:rgba(155,169,255,.14); background:rgba(13,27,83,.42); }
.sheet-frame { background:linear-gradient(180deg,rgba(13,28,89,.98),rgba(7,18,66,.98)); }

/* Authentication */
.auth-page { background:transparent; }
.auth-shell { min-height:100dvh; grid-template-columns:minmax(320px,520px) minmax(360px,420px); gap:clamp(50px,9vw,150px); place-content:center; padding:50px; }
.auth-shell::before { display:none; }
.auth-brand-scene { display:flex; align-items:center; gap:24px; align-self:center; }
.auth-brand-scene img { width:clamp(150px,16vw,230px); height:auto; filter:drop-shadow(0 0 30px rgba(116,115,255,.4)); }
.auth-brand-scene div { display:grid; gap:10px; }
.auth-brand-scene strong { font-family:Georgia,"Times New Roman",serif; font-size:clamp(48px,5vw,74px); font-weight:500; color:#f6f3ff; text-shadow:0 0 28px rgba(151,138,255,.28); }
.auth-brand-scene span { color:#c1c6e3; font-family:Georgia,"Times New Roman",serif; font-size:16px; line-height:1.6; }
.auth-panel { width:min(420px,100%); padding:30px; border:1px solid rgba(159,173,255,.22); border-radius:16px; background:linear-gradient(180deg,rgba(9,23,78,.72),rgba(8,20,70,.62)); box-shadow:0 32px 90px rgba(0,4,41,.3),inset 0 1px rgba(255,255,255,.05); backdrop-filter:blur(24px) saturate(118%); }
.auth-brand { gap:8px; margin-bottom:26px; color:#c8cbea; font-family:Georgia,"Times New Roman",serif; font-size:16px; }
.auth-brand img { width:34px; height:34px; object-fit:contain; }
.auth-heading h1 { font-family:Georgia,"Times New Roman",serif; font-size:34px; font-weight:500; color:#f3f0ff; }
.auth-heading p,.auth-foot { color:#9da5cb; }
.auth-foot a { color:#c2bdff; }

/* Public shares */
.share-page,.eien-public { background:transparent; }
.public-brand { gap:8px; color:#e0e1f4; font-family:Georgia,"Times New Roman",serif; font-size:14px; }
.public-brand img { width:34px; height:34px; object-fit:contain; }
.public-single-viewer { min-height:100dvh; padding:22px 28px 28px; background:linear-gradient(180deg,rgba(4,10,43,.1),rgba(3,8,40,.28)); }
.public-single-viewer::before { inset:5% 8%; background:radial-gradient(circle at center,rgba(var(--public-ambient),.25),rgba(77,74,188,.07) 40%,transparent 68%); }
.public-single-stage { padding:18px; }
.public-single-stage img { max-width:min(94vw,1780px); max-height:calc(100dvh - 115px); border-radius:10px; box-shadow:0 28px 90px rgba(0,3,31,.42),0 0 50px rgba(var(--public-ambient),.12); }
.public-single-caption { color:#bac0dd; }
.public-gallery { width:min(1760px,calc(100% - 52px)); padding:24px 0 60px; }
.public-gallery-header { padding:13px 15px; border:1px solid rgba(154,169,255,.18); border-radius:13px; background:rgba(9,22,74,.56); backdrop-filter:blur(18px); }
.share-grid { columns:5 230px; column-gap:11px; margin-top:16px; }
.share-image-button { border:1px solid rgba(157,171,255,.13); border-radius:10px; box-shadow:0 10px 30px rgba(0,5,44,.2); }
.share-image-button:hover { border-color:rgba(170,177,255,.3); box-shadow:0 14px 42px rgba(0,5,44,.35),0 0 22px rgba(95,85,225,.08); }
.lightbox { background:rgba(2,5,28,.94); backdrop-filter:blur(12px); }

/* Public Secure View */
.secure-public { background:transparent; }
.secure-public::before { width:min(720px,88vw); height:min(720px,88vw); background:radial-gradient(circle,rgba(104,88,222,.16),rgba(75,113,198,.06) 48%,transparent 72%); }
.secure-public-panel { width:min(470px,100%); padding:30px; gap:18px; border:1px solid rgba(160,174,255,.22); border-radius:16px; background:linear-gradient(180deg,rgba(9,23,78,.76),rgba(8,20,70,.66)); box-shadow:0 32px 90px rgba(0,4,41,.32),inset 0 1px rgba(255,255,255,.05); backdrop-filter:blur(24px); }
.secure-brand { color:#d9dcf2; font-family:Georgia,"Times New Roman",serif; }
.secure-brand img { width:32px; height:32px; object-fit:contain; }
.secure-lock { color:#d0ccff; }
.secure-public-copy h1 { font-family:Georgia,"Times New Roman",serif; font-weight:500; color:#f3f0ff; }
.secure-gallery-page { background:transparent; }
.secure-gallery-top { background:rgba(10,23,76,.7); border:1px solid rgba(159,173,255,.18); backdrop-filter:blur(20px); }
.secure-gallery-brand img { width:28px; height:28px; object-fit:contain; }
.secure-canvas-wrap canvas { border-radius:9px; box-shadow:0 30px 90px rgba(0,3,31,.45),0 0 46px rgba(99,91,220,.07); }
.secure-expired-content { padding:28px; border:1px solid rgba(159,173,255,.18); border-radius:15px; background:rgba(9,22,73,.66); backdrop-filter:blur(18px); }

.toast { background:rgba(18,32,91,.92); color:#eef0ff; border:1px solid rgba(161,173,255,.18); backdrop-filter:blur(18px); }

/* responsive */
@media (max-width: 1380px) {
  :root { --sidebar: 236px; }
  .brand-portrait { width:72px; height:72px; }
  .brand-word { font-size:26px; }
  .media-layout { grid-template-columns:minmax(0,1fr) 278px; }
  .media-grid { columns:4 185px; }
  .app-topbar { grid-template-columns:minmax(30px,1fr) minmax(320px,520px) minmax(180px,1fr); }
}
@media (max-width: 1120px) {
  :root { --sidebar: 218px; }
  .media-layout { grid-template-columns:minmax(0,1fr); }
  .media-utility { display:none; }
  .media-mobile-add { display:inline-flex; }
  .media-grid { columns:4 180px; }
  .app-topbar { grid-template-columns:40px minmax(260px,1fr) auto; }
  .global-search { grid-column:2; }
  .top-account { grid-column:3; }
  .top-account span { display:none; }
  .auth-shell { grid-template-columns:minmax(0,1fr); gap:28px; }
  .auth-brand-scene { display:none; }
}
@media (max-width: 820px) {
  :root { --sidebar: 270px; }
  .app-shell { display:block; }
  .sidebar { position:fixed; left:0; top:0; z-index:40; width:var(--sidebar); transform:translateX(-102%); transition:transform .2s ease-out; }
  .sidebar.open { transform:translateX(0); }
  .workspace { min-height:100dvh; }
  .app-topbar { position:sticky; top:0; z-index:24; height:70px; grid-template-columns:42px minmax(0,1fr) 44px; padding:10px 14px; background:rgba(6,15,58,.58); backdrop-filter:blur(18px); border-bottom:1px solid rgba(151,166,255,.1); }
  .mobile-menu { display:inline-grid; grid-column:1; }
  .global-search,.topbar-spacer { grid-column:2; }
  .global-search { height:42px; }
  .global-search kbd { display:none; }
  .top-account { grid-column:3; padding:0; grid-template-columns:40px; }
  .top-account img { width:40px;height:40px; }
  .top-account > .icon { display:none; }
  .main-content { padding:14px 13px 34px; }
  .media-stage-panel,.secure-shares-view,.admin-view { border-radius:13px; padding:14px; }
  .media-stage-header { align-items:flex-start; }
  .media-stage-title p { display:none; }
  .select-control { display:none; }
  .media-grid,.media-grid.compact { columns:3 145px; column-gap:8px; }
  .account-page { width:100%; padding:20px 18px 32px; border-radius:13px; }
  .auth-shell { padding:24px 18px; }
  .auth-panel { padding:24px 20px; }
}
@media (max-width: 560px) {
  .app-topbar { grid-template-columns:42px minmax(0,1fr) 42px; gap:8px; }
  .global-search { padding:0 10px; }
  .media-stage-title .section-symbol { width:38px;height:38px; }
  .media-stage-title h1 { font-size:23px; }
  .view-switch { display:none; }
  .media-grid,.media-grid.compact { columns:2 132px; }
  .media-thumb { border-radius:9px; }
  .media-tile-copy { padding:28px 8px 8px; }
  .media-tile-copy small { display:none; }
  .media-empty-picker { min-height:270px; }
  .media-empty-picker strong { font-size:19px; }
  .form-grid.two { grid-template-columns:1fr; }
  .dialog-frame { width:min(100vw - 20px,620px); }
  .sheet-frame { width:100vw; }
  .public-gallery { width:calc(100% - 22px); }
  .share-grid { columns:2 140px; gap:8px; }
  .secure-public-panel { padding:24px 20px; }
  .top-account { justify-self:end; }
}
@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after { scroll-behavior:auto!important; animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
}
.top-account > .icon { transform: rotate(90deg); }
.media-layout.empty-layout { grid-template-columns:minmax(0,1fr); }
body.eien-app, body.eien-public, body.auth-page { position:relative; isolation:isolate; }
.eien-environment { z-index:-1; }
/* Content-height refinement: populated libraries should not become a giant empty panel. */
.media-layout:not(.empty-layout) .media-stage-panel { min-height:0; }
.media-layout:not(.empty-layout) .media-canvas { min-height:0; }
.media-layout.empty-layout .media-stage-panel { min-height:calc(100dvh - 130px); }
.media-layout.empty-layout .media-canvas { min-height:calc(100dvh - 228px); }
/* Let the supplied background art breathe through the lower navigation rail. */
.sidebar { background:linear-gradient(180deg,rgba(6,15,58,.80) 0%,rgba(5,13,52,.65) 48%,rgba(4,10,43,.28) 100%); }
.sidebar { overflow:hidden; isolation:isolate; }
.sidebar::after { content:""; position:absolute; z-index:0; left:0; right:0; bottom:0; height:330px; background:url('/static/eien-sidebar-scene.png') left bottom / cover no-repeat; opacity:.84; -webkit-mask-image:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.72) 26%,#000 52%); mask-image:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.72) 26%,#000 52%); pointer-events:none; }
.sidebar > * { position:relative; z-index:1; }
.sidebar-storage { backdrop-filter:blur(10px); }
.sidebar-footer { min-height:132px; display:flex; align-items:flex-end; }
.upload-file-list { grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.upload-file-row { position:relative; min-height:0; display:block; overflow:hidden; padding:0; border:1px solid rgba(157,169,255,.14); border-radius:10px; background:rgba(16,29,88,.54); }
.upload-file-thumb { width:100%; height:112px; display:block; object-fit:cover; border-radius:0; background:#081442; }
.upload-file-copy { padding:8px 34px 9px 9px; }
.upload-file-copy strong { color:#e9ebff; font-size:11px; }
.upload-file-copy small { color:#868fb9; font-size:9px; }
.upload-file-row > .icon-btn { position:absolute; right:6px; top:6px; background:rgba(6,14,54,.7); color:#d8dcf2; backdrop-filter:blur(8px); }
@media (max-width:560px){.upload-file-list{grid-template-columns:repeat(2,minmax(0,1fr));}.upload-file-thumb{height:105px;}}

/* ========================================================================
   Eien v13 visual QA pass — reference matching and interaction fixes
   ======================================================================== */
html { scrollbar-gutter: stable; }
.eien-environment { position: fixed; inset: 0; overflow: hidden; background: #071044; contain: strict; }
.eien-background-layer { position: absolute; inset: 0; width: 100%; height: 100%; display: block; object-fit: cover; object-position: 50% 50%; pointer-events: none; user-select: none; }
.eien-environment::before { z-index: 1; }
.eien-environment::after { z-index: 2; }
.reduce-eien-effects .eien-environment::after { opacity: .35; }
.reduce-eien-effects .media-stage-panel,
.reduce-eien-effects .utility-panel,
.reduce-eien-effects .account-page,
.reduce-eien-effects .admin-view,
.reduce-eien-effects .secure-shares-view,
.reduce-eien-effects .sidebar { backdrop-filter: none !important; }

/* Prevent glass/backdrop paint from bleeding through rounded corners. */
.media-stage-panel,.utility-panel,.account-page,.admin-view,.secure-shares-view { background-clip: padding-box; isolation: isolate; overflow: clip; }

/* Sidebar readability over the illustrated lower scene. */
.sidebar-footer { min-height: 138px; display: flex; align-items: flex-end; }
.sidebar-note { width: fit-content; min-height: 28px; padding: 6px 9px; border: 1px solid rgba(162,177,255,.18); border-radius: 8px; background: rgba(6,17,67,.68); color: #d2d8f3; box-shadow: 0 8px 22px rgba(0,6,43,.18); backdrop-filter: blur(12px); text-shadow: 0 1px 7px rgba(0,0,35,.7); }
.sidebar-note .icon { color: #b7c9ff; }

/* Search is one component: only the outer shell receives focus treatment. */
.global-search { border-color: rgba(151,169,255,.26); transition: border-color .16s ease, box-shadow .16s ease, background-color .16s ease; }
.global-search:hover { border-color: rgba(166,179,255,.36); background: rgba(13,27,86,.62); }
.global-search:focus-within { border-color: #9f98ff; background: rgba(12,25,84,.74); box-shadow: 0 0 0 2px rgba(159,152,255,.28), 0 0 24px rgba(95,91,233,.12), 0 16px 38px rgba(0,5,39,.13); }
.global-search input:focus-visible { outline: none !important; outline-offset: 0 !important; }
.global-search kbd { white-space: nowrap; }

/* Media stage stays composed whether there are 0 or 200 assets. */
.media-layout,.media-layout.empty-layout { grid-template-columns: minmax(0,1fr) 318px; }
.media-stage-panel,.media-layout:not(.empty-layout) .media-stage-panel,.media-layout.empty-layout .media-stage-panel { min-height: calc(100dvh - 128px); }
.media-canvas,.media-layout:not(.empty-layout) .media-canvas,.media-layout.empty-layout .media-canvas { min-height: calc(100dvh - 230px); }
.media-stage-header { align-items: flex-start; }
.media-stage-controls { flex-wrap: wrap; justify-content: flex-end; }
.media-stage-controls.no-media .media-main-add { display: none; }
.select-control { height: 42px; min-width: 142px; display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: 7px; padding: 0 10px; border: 1px solid rgba(157,171,255,.2); border-radius: 9px; background: rgba(12,27,86,.46); color: #8993c2; }
.select-control span { font-size: 10px; white-space: nowrap; }
.select-control select { min-width: 0; min-height: 0; height: 34px; padding: 0 24px 0 0; border: 0; background: transparent; box-shadow: none; color: #e6e8fa; font-size: 11px; }
.select-control select:focus { border: 0; background: transparent; box-shadow: none; }
.select-control:has(select:disabled) { opacity: .52; }
.view-switch { height: 42px; display: grid; grid-auto-flow: column; gap: 2px; padding: 3px; border: 1px solid rgba(157,171,255,.2); border-radius: 9px; background: rgba(12,27,86,.46); }
.view-switch .icon-btn { width: 34px; height: 34px; border: 0; background: transparent; }
.view-switch .icon-btn.active { background: linear-gradient(180deg,rgba(123,108,233,.72),rgba(82,83,187,.62)); color: #fff; box-shadow: inset 0 1px rgba(255,255,255,.12); }
.media-main-add { min-height: 42px; }

.media-empty-stage { position: relative; min-height: calc(100dvh - 250px); display: grid; place-items: center; overflow: hidden; }
.media-empty-blueprint { position: absolute; inset: 14px 0 0; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); grid-auto-rows: minmax(130px,22vh); gap: 10px; opacity: .55; mask-image: linear-gradient(to bottom,#000 0%,rgba(0,0,0,.82) 48%,transparent 100%); pointer-events: none; }
.media-empty-blueprint span { border-radius: 11px; border: 1px solid rgba(146,164,255,.12); background: linear-gradient(145deg,rgba(52,70,151,.22),rgba(19,33,94,.08)); box-shadow: inset 0 1px rgba(255,255,255,.018); }
.media-empty-blueprint span:nth-child(2),.media-empty-blueprint span:nth-child(5) { transform: translateY(28px); }
.media-empty-blueprint span:nth-child(3) { transform: translateY(-8px); }
.media-empty-copy { position: relative; z-index: 2; display: grid; justify-items: center; gap: 7px; padding: 18px 22px; border-radius: 12px; background: rgba(7,19,68,.74); border: 1px solid rgba(155,170,255,.16); box-shadow: 0 20px 54px rgba(0,5,43,.25); backdrop-filter: blur(16px); }
.media-empty-copy .icon { width: 30px; height: 30px; color: #c6c9ff; }
.media-empty-copy strong { font-family: Georgia,"Times New Roman",serif; font-size: 18px; font-weight: 500; }
.media-empty-copy span { color: #929bc6; font-size: 11px; }
.media-canvas.drop-active { box-shadow: inset 0 0 0 2px rgba(158,149,255,.35); border-radius: 11px; }

/* Grid/list switch is functional rather than decorative. */
.media-grid.list-view { columns: auto; display: grid; grid-template-columns: 1fr; gap: 6px; }
.media-grid.list-view .media-card { margin: 0; }
.media-grid.list-view .media-thumb { height: 82px; aspect-ratio: auto !important; display: grid; grid-template-columns: 118px minmax(0,1fr); align-items: center; border-radius: 9px; cursor: pointer; }
.media-grid.list-view .media-thumb img { width: 118px; height: 82px; object-fit: cover; }
.media-grid.list-view .media-tile-shade { display: none; }
.media-grid.list-view .media-tile-copy { position: static; opacity: 1; transform: none; align-self: stretch; display: grid; align-content: center; gap: 4px; padding: 12px 16px; background: rgba(15,29,89,.58); }
.media-grid.list-view .media-type { left: 86px; top: 7px; }

/* Right utility rail now behaves like the reference upload queue. */
.media-utility { min-height: calc(100dvh - 128px); align-content: start; }
.utility-panel { overflow: hidden; }
.recent-media-empty { padding: 18px 8px 10px; color: #7d87b4; font-size: 11px; text-align: center; }
.utility-upload-state { display: grid; gap: 5px; margin-top: 2px; }
.utility-upload-row { min-width: 0; display: grid; grid-template-columns: 44px minmax(0,1fr) 30px; gap: 9px; align-items: center; padding: 6px 0; }
.utility-upload-row + .utility-upload-row { border-top: 1px solid rgba(151,166,239,.08); }
.utility-upload-row img { width: 44px; height: 44px; object-fit: cover; border-radius: 7px; border: 1px solid rgba(160,174,255,.15); background: #091446; }
.utility-upload-row > div { min-width: 0; display: grid; gap: 3px; }
.utility-upload-row strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #e5e8fb; font-size: 10px; font-weight: 600; }
.utility-upload-row small { color: #8690bd; font-size: 9px; }
.utility-progress { height: 3px; overflow: hidden; border-radius: 3px; background: rgba(125,142,223,.14); }
.utility-progress i { display: block; width: var(--upload-progress,0%); height: 100%; background: linear-gradient(90deg,#78c7ff,#a078ff); box-shadow: 0 0 8px rgba(125,134,255,.35); transition: width .18s ease; }
.utility-upload-actions { display: flex; justify-content: flex-end; gap: 7px; padding-top: 10px; border-top: 1px solid rgba(151,166,239,.1); }

/* Add media is now a preview composer, not blank file boxes. */
.media-upload-frame { width: min(760px,calc(100vw - 32px)); }
.media-upload-body { min-height: 310px; }
.upload-selection-summary { display: flex; justify-content: space-between; gap: 18px; align-items: baseline; margin-bottom: 2px; }
.upload-selection-summary strong { font-family: Georgia,"Times New Roman",serif; color: #f0edff; font-size: 16px; font-weight: 500; }
.upload-selection-summary span { color: #858fbd; font-size: 10px; }
.upload-file-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 11px; }
.upload-file-row { min-width: 0; position: relative; display: block; overflow: hidden; padding: 0; border: 1px solid rgba(157,169,255,.18); border-radius: 11px; background: rgba(16,29,88,.58); }
.upload-file-thumb { width: 100%; height: 150px; display: block; object-fit: cover; border: 0; border-radius: 0; background: linear-gradient(135deg,#091747,#142769); }
.upload-file-copy { min-width: 0; padding: 9px 36px 10px 10px; }
.upload-file-copy strong { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #eef0ff; font-size: 11px; }
.upload-file-copy small { display: block; margin-top: 2px; color: #8690bd; font-size: 9px; }
.upload-file-row > .icon-btn { position: absolute; right: 7px; top: 7px; background: rgba(5,14,54,.78); border-color: rgba(166,176,255,.16); backdrop-filter: blur(10px); }
.upload-add-card { appearance: none; min-height: 196px; display: grid; place-items: center; align-content: center; gap: 7px; border: 1px dashed rgba(157,171,255,.3); border-radius: 11px; background: rgba(21,35,96,.26); color: #aeb7dd; cursor: pointer; }
.upload-add-card:hover { border-color: rgba(183,187,255,.55); background: rgba(55,62,143,.26); color: #eef0ff; }
.upload-add-card .icon { width: 27px; height: 27px; }
.upload-add-card strong { font-size: 11px; font-weight: 600; }
.media-upload-footer { min-height: 70px; }
.upload-progress-wrap { width: min(250px,34vw); display: grid; gap: 5px; }
.upload-progress-wrap > span { height: 4px; overflow: hidden; border-radius: 4px; background: rgba(127,143,220,.14); }
.upload-progress-wrap > span::after { content:""; display:block; width: var(--upload-progress,0%); height:100%; background:linear-gradient(90deg,#70c7ff,#9e7aff); transition:width .18s ease; }
.upload-progress-wrap small { color: #8e97c0; font-size: 9px; }

/* Secure Shares is a management workspace even when empty. */
.secure-shares-view { width: 100%; min-height: calc(100dvh - 128px); }
.secure-shares-toolbar { min-height: 72px; margin: 0; padding: 0 0 16px; border-bottom: 1px solid rgba(156,169,255,.12); align-items: center; }
.secure-shares-toolbar > div:first-child { display: grid; gap: 4px; }
.secure-shares-toolbar p { margin: 0; color: #919ac5; font-size: 11px; }
.secure-toolbar-state { display: inline-flex; align-items: center; gap: 7px; color: #aab1d5; font-size: 10px; }
.secure-share-table-shell { min-height: calc(100dvh - 245px); }
.secure-share-table-head { height: 46px; display: grid; grid-template-columns: minmax(220px,1fr) 140px 110px 120px; gap: 14px; align-items: center; padding: 0 12px; color: #7882b0; font-size: 9px; text-transform: uppercase; letter-spacing: .07em; border-bottom: 1px solid rgba(151,166,239,.1); }
.secure-share-list { border-top: 0; }
.secure-share-row { grid-template-columns: 42px minmax(180px,1fr) 132px 92px 120px; padding-inline: 12px; }
.secure-empty-stage { min-height: calc(100dvh - 310px); grid-template-columns: auto auto auto; justify-content: center; align-content: center; column-gap: 18px; row-gap: 4px; text-align: left; }
.secure-empty-visual { grid-row: 1 / span 2; width: 70px; height: 70px; }
.secure-empty-visual svg { width: 38px; height: 38px; }
.secure-empty-copy { display: grid; gap: 3px; }
.secure-empty-copy h2 { margin: 0; font-family: Georgia,"Times New Roman",serif; font-size: 18px; font-weight: 500; }
.secure-empty-copy p { margin: 0; color: #8d96c1; font-size: 10px; }
.secure-empty-stage > .btn { grid-column: 3; grid-row: 1 / span 2; align-self: center; }

/* Account uses tabs instead of one tall repeating storage/settings document. */
.account-page { width: min(1040px,100%); min-height: calc(100dvh - 128px); margin: 0 auto; padding: 26px 32px 34px; }
.account-header { margin: 0; padding: 0 0 18px; border-bottom: 0; }
.account-header > div { display: grid; gap: 4px; }
.account-header p { margin: 0; color: #929bc5; font-size: 11px; }
.account-tabs { display: flex; gap: 4px; overflow-x: auto; padding: 0 0 12px; border-bottom: 1px solid rgba(156,169,255,.12); scrollbar-width: none; }
.account-tabs::-webkit-scrollbar { display: none; }
.account-tab { appearance: none; min-height: 38px; padding: 7px 12px; border: 0; border-radius: 8px; background: transparent; color: #8e97c0; cursor: pointer; }
.account-tab:hover { background: rgba(74,88,174,.15); color: #dfe2f7; }
.account-tab.active { background: rgba(70,84,170,.28); color: #fff; box-shadow: inset 0 0 0 1px rgba(158,171,255,.13); }
.account-panels { padding-top: 24px; }
.account-panel { max-width: 760px; animation: account-panel-in .16s ease-out; }
@keyframes account-panel-in { from { opacity:0; transform:translateY(3px); } to { opacity:1; transform:none; } }
.account-panel-heading { display: grid; gap: 4px; margin-bottom: 18px; }
.account-panel-heading h2 { margin: 0; font-family: Georgia,"Times New Roman",serif; font-size: 19px; font-weight: 500; color: #f0edff; }
.account-panel-heading p { margin: 0; color: #8992bd; font-size: 11px; }
.account-panel-actions { margin-top: 24px; padding-top: 18px; border-top: 1px solid rgba(151,166,239,.09); }
.preference-list { display: grid; }
.preference-row { min-height: 72px; display: grid; grid-template-columns: minmax(0,1fr) 190px; gap: 24px; align-items: center; padding: 11px 0; border-bottom: 1px solid rgba(151,166,239,.09); }
.preference-row:first-child { border-top: 1px solid rgba(151,166,239,.09); }
.preference-row > span { display: grid; gap: 3px; }
.preference-row strong { color: #e1e4f6; font-weight: 600; }
.preference-row small { color: #838db8; font-size: 10px; }
.preference-row select { min-height: 38px; }
.toggle-preference { grid-template-columns: minmax(0,1fr) auto; }
.toggle-preference input { width: 18px; height: 18px; accent-color: #9e91ff; }

@media (max-width: 1380px) {
  .media-layout,.media-layout.empty-layout { grid-template-columns:minmax(0,1fr) 286px; }
  .media-stage-controls { max-width: 570px; }
  .select-control { min-width: 126px; }
}
@media (max-width: 1120px) {
  .media-layout,.media-layout.empty-layout { grid-template-columns:minmax(0,1fr); }
  .media-utility { display:none; }
  .media-main-add { display:inline-flex; }
  .media-stage-panel { min-height:calc(100dvh - 120px); }
  .media-empty-copy span { display:none; }
}
@media (max-width: 820px) {
  .media-stage-header { display:grid; gap:12px; }
  .media-stage-controls { width:100%; justify-content:flex-start; }
  .select-control { flex:1 1 138px; }
  .media-main-add { margin-left:auto; }
  .media-empty-blueprint { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .secure-share-table-head { display:none; }
  .secure-empty-stage { min-height:calc(100dvh - 245px); grid-template-columns:1fr; justify-items:center; text-align:center; gap:10px; }
  .secure-empty-visual,.secure-empty-copy,.secure-empty-stage > .btn { grid-column:1; grid-row:auto; }
  .secure-share-row { grid-template-columns:38px minmax(0,1fr) auto; }
  .secure-share-life,.secure-share-views { display:none; }
  .account-page { min-height:calc(100dvh - 98px); width:100%; padding:22px 18px 30px; }
}
@media (max-width: 620px) {
  .media-stage-controls { display:grid; grid-template-columns:1fr 1fr auto; }
  .select-control { min-width:0; }
  .select-control span { display:none; }
  .media-main-add { grid-column:1 / -1; width:100%; }
  .upload-file-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .upload-file-thumb { height:120px; }
  .upload-add-card { min-height:164px; }
  .upload-selection-summary span { display:none; }
  .account-tabs { margin-inline:-4px; }
  .preference-row { grid-template-columns:1fr; gap:9px; }
  .toggle-preference { grid-template-columns:minmax(0,1fr) auto; }
}

/* Sparse libraries use fewer, larger columns instead of leaving a tiny strip of content. */
.media-grid.sparse:not(.list-view) { columns: 3 260px; column-gap: 11px; }
.media-grid.very-sparse:not(.list-view) { columns: 2 300px; }

/* Secure Shares uses the same centre-stage + utility-rail composition as Media. */
.secure-shares-layout { display: grid; grid-template-columns: minmax(0,1fr) 318px; gap: 18px; align-items: start; }
.secure-share-utility { display: grid; gap: 14px; position: sticky; top: 92px; }
.secure-create-utility { min-height: 248px; display: grid; justify-items: center; align-content: center; gap: 9px; text-align: center; }
.secure-create-orbit { width: 68px; height: 68px; display: grid; place-items: center; border-radius: 50%; color: #d2ceff; background: radial-gradient(circle,rgba(130,109,242,.36),rgba(71,85,186,.12) 58%,transparent 62%); box-shadow: 0 0 34px rgba(103,91,233,.15); }
.secure-create-orbit svg { width: 31px; height: 31px; fill: currentColor; }
.secure-create-utility h2 { margin: 3px 0 0; font-family: Georgia,"Times New Roman",serif; font-size: 19px; font-weight: 500; color: #f0edff; }
.secure-create-utility p { max-width: 240px; margin: 0 0 7px; color: #8d96c1; font-size: 10px; line-height: 1.55; }
.secure-rules-utility { display: grid; gap: 2px; }
.secure-rule { display: grid; grid-template-columns: 28px minmax(0,1fr); gap: 9px; align-items: start; padding: 9px 0; }
.secure-rule + .secure-rule { border-top: 1px solid rgba(151,166,239,.08); }
.secure-rule > .icon { width: 18px; height: 18px; margin: 2px auto 0; color: #aeb9ef; }
.secure-rule span { display: grid; gap: 2px; }
.secure-rule strong { color: #dfe2f6; font-size: 10px; font-weight: 600; }
.secure-rule small { color: #7f89b6; font-size: 9px; line-height: 1.4; }
.secure-shares-view { min-height: calc(100dvh - 128px); }
.secure-share-table-shell { min-height: calc(100dvh - 245px); }
.secure-empty-stage { grid-template-columns: auto auto; }
.secure-empty-stage > .btn { display: none; }

/* Account is intentionally finite-height in common cases; tabs eliminate the old scrolling wall. */
.account-page { min-height: 620px; }

@media (max-width: 1120px) {
  .secure-shares-layout { grid-template-columns: 1fr; }
  .secure-share-utility { position: static; grid-template-columns: repeat(2,minmax(0,1fr)); }
  .secure-create-utility { min-height: 210px; }
}
@media (max-width: 820px) {
  .secure-share-utility { grid-template-columns: 1fr; }
  .secure-rules-utility { display: none; }
  .secure-create-utility { min-height: 180px; }
  .account-page { min-height: 0; }
}

/* v13 final visual QA refinements */
@media (min-width: 821px) {
  .media-grid.sparse:not(.list-view) { columns: 4 210px; }
  .media-grid.very-sparse:not(.list-view) { columns: 3 250px; }
}
.media-upload-body { min-height: 0; }
.upload-file-list { grid-template-columns: repeat(4,minmax(0,1fr)); }
.upload-file-thumb { height: 138px; }
.upload-add-card { min-height: 190px; }
.secure-shares-view { min-height: min(760px,calc(100dvh - 150px)); }
.secure-share-table-shell { min-height: min(640px,calc(100dvh - 270px)); }
.secure-empty-stage { min-height: min(540px,calc(100dvh - 330px)); }
.account-page { position: relative; }
.account-page::after { content:""; position:absolute; right:36px; bottom:28px; width:220px; height:220px; background:url('/static/eien-logo.png') center / contain no-repeat; opacity:.045; filter:saturate(.85); pointer-events:none; }
.account-panels { position:relative; z-index:1; }
@media (max-width: 760px) {
  .upload-file-list { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .upload-file-thumb { height: 124px; }
}
@media (max-width: 900px) {
  .secure-shares-toolbar { display:flex !important; }
  .account-header { display:block !important; }
  .secure-shares-view { min-height:0; }
  .secure-share-table-shell { min-height:520px; }
  .secure-empty-stage { min-height:430px; }
}
@media (max-width: 620px) {
  .account-tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); overflow:visible; gap:4px; }
  .account-tab { min-width:0; padding-inline:7px; font-size:11px; }
  .account-page::after { width:150px; height:150px; right:18px; bottom:18px; }
  .upload-file-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

/* ========================================================================== 
   Eien v14 — mockup convergence + broader product surface
   Large workspace surfaces deliberately stay translucent so the supplied
   environment remains visible; functional controls retain readable glass.
   ========================================================================== */
:root{
  --eien-glass:rgba(8,20,76,.68);
  --eien-glass-strong:rgba(8,19,70,.91);
  --eien-panel:rgba(7,19,70,.42);
  --eien-panel-soft:rgba(7,18,62,.24);
  --eien-edge:rgba(140,157,255,.25);
  --eien-purple:#755af6;
  --eien-blue:#69b9ff;
  --eien-ink:#050d3b;
}
body.eien-app,.eien-public{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#f6f3ff}
body.eien-app h1,body.eien-app h2,body.eien-app h3,.eien-public h1,.eien-public h2,.eien-public h3,.brand-word{font-family:Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:-.02em}
.eien-background-layer{filter:saturate(1.02) brightness(.96)}
.app-shell{grid-template-columns:296px minmax(0,1fr)}
.sidebar{padding:24px 15px 18px;background:linear-gradient(90deg,rgba(4,10,48,.38),rgba(4,12,53,.16));border-right:1px solid rgba(134,151,255,.13);backdrop-filter:none;overflow:hidden}
.sidebar::after{content:none;display:none}
.brand{min-height:104px;gap:14px;padding:4px 10px 10px;background:transparent}
.brand-portrait{width:76px;height:76px;object-fit:contain;filter:drop-shadow(0 0 13px rgba(117,90,246,.28))}
.brand-copy{display:grid;gap:4px}.brand-word{font-size:26px;color:#fff}.brand-copy small{color:#d8d9f6;font-family:Georgia,"Times New Roman",serif;font-size:12px;line-height:1.5;font-weight:400}
.nav-list{gap:4px;margin-top:8px}.nav-item{min-height:47px;padding:10px 12px;border-radius:8px;color:#d4d6ee;font-family:Georgia,"Times New Roman",serif;font-size:15px;font-weight:400;background:transparent}.nav-item .icon{color:#abb5e8}.nav-item:hover{background:rgba(84,96,186,.14)}.nav-item.active{background:linear-gradient(90deg,rgba(92,72,224,.45),rgba(66,84,174,.27));box-shadow:inset 0 0 0 1px rgba(145,130,255,.32),0 8px 28px rgba(13,13,76,.18);color:#fff}.nav-item.active .icon{color:#d1ccff}
.sidebar-storage{margin-top:18px;padding:14px 14px 12px;border:1px solid rgba(141,155,255,.24);border-radius:11px;background:rgba(6,17,69,.68);box-shadow:inset 0 1px rgba(255,255,255,.025),0 14px 38px rgba(4,5,35,.16);backdrop-filter:blur(13px)}
.sidebar-storage-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font:500 18px Georgia,"Times New Roman",serif;color:#fff}.storage-snow,.utility-snow{color:#b9c4ff;text-shadow:0 0 12px #765aff}
.sidebar-meter{padding:7px 0}.sidebar-meter+.sidebar-meter{border-top:1px solid rgba(141,155,255,.09)}.sidebar-meter-row{display:flex;justify-content:space-between;gap:10px;color:#d6d8ef;font-size:11px}.sidebar-meter-row small{color:#9ca7d9}.mini-progress{height:5px;margin-top:6px;border-radius:4px;background:rgba(82,95,166,.28);overflow:hidden}.mini-progress span{display:block;width:var(--meter,0%);height:100%;border-radius:inherit;background:linear-gradient(90deg,#4bbfff,#8f59ff);box-shadow:0 0 12px rgba(98,101,255,.35)}
.sidebar-footer{position:relative;z-index:2;display:grid;gap:9px;margin-top:auto}.sidebar-account{min-height:72px;display:grid;grid-template-columns:52px minmax(0,1fr) 22px;align-items:center;gap:11px;padding:9px 11px;border:1px solid rgba(145,157,255,.24);border-radius:11px;background:rgba(7,18,68,.64);backdrop-filter:blur(12px)}.sidebar-account:hover,.sidebar-account.active{background:rgba(33,39,115,.72)}.sidebar-account img{width:52px;height:52px}.sidebar-account span{display:grid}.sidebar-account strong{font:500 17px Georgia,"Times New Roman",serif}.sidebar-account small{color:#9da7d4;font-size:11px}.sidebar-note{display:flex;align-items:center;gap:6px;width:max-content;max-width:100%;padding:5px 8px;border-radius:7px;background:rgba(3,11,49,.62);color:#e6e7fa;font-size:11px;text-shadow:0 1px 3px #02051b;backdrop-filter:blur(5px)}.sidebar-note .icon{width:13px;height:13px}.sidebar-note b{color:#c6caff}
.workspace{min-height:100dvh;background:transparent}.app-topbar{height:90px;display:grid;grid-template-columns:minmax(0,1fr) 318px;gap:18px;align-items:center;padding:17px 28px 7px;background:transparent;border:0}.global-search{grid-column:1;width:min(650px,75%);justify-self:center;height:48px;display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:9px;padding:0 13px;border:1px solid rgba(129,145,255,.27);border-radius:10px;background:rgba(4,13,56,.74);box-shadow:0 9px 35px rgba(2,5,33,.16);color:#aeb9e6;backdrop-filter:blur(12px);transition:border-color .15s,box-shadow .15s,background .15s}.global-search:focus-within{border-color:#8870ff;background:rgba(5,14,60,.86);box-shadow:0 0 0 2px rgba(116,83,245,.26),0 0 26px rgba(100,72,235,.22)}.global-search input,.global-search input:focus,.global-search input:hover{width:100%;min-height:0!important;padding:0!important;border:0!important;outline:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;color:#fff}.global-search kbd{padding:4px 7px;border-radius:6px;background:rgba(45,54,123,.32);color:#aeb6de;font:10px ui-monospace,monospace}
.main-content{padding:0 28px 44px}.page-view{width:100%;max-width:1900px;margin:0 auto}
/* Media */
.media-view{min-height:calc(100dvh - 90px)}.media-layout{display:grid;grid-template-columns:minmax(0,1fr) 318px;gap:18px;align-items:start}.media-stage-panel{position:relative;min-height:calc(100dvh - 124px);padding:18px 18px 14px;border:1px solid rgba(129,145,255,.18);border-radius:12px;background:rgba(4,15,63,.27);box-shadow:inset 0 1px rgba(255,255,255,.02);overflow:hidden}.media-stage-header{display:flex;align-items:center;gap:14px;min-height:64px;padding:0 0 14px;border-bottom:1px solid rgba(132,149,236,.12)}.media-stage-title{display:flex;align-items:center;gap:12px;margin-right:auto;min-width:180px}.media-stage-title .section-symbol{width:42px;height:42px;display:grid;place-items:center;border-radius:8px;background:rgba(78,75,177,.34);color:#d0ccff}.media-stage-title h1{margin:0;font-size:25px}.media-stage-title p{margin:2px 0 0;color:#a2a8d1;font:12px Georgia,"Times New Roman",serif}.media-stage-controls{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.media-filter-tab,.album-chip{appearance:none;min-height:36px;padding:7px 13px;border:1px solid transparent;border-radius:7px;background:rgba(16,27,84,.45);color:#b7bfdf;cursor:pointer}.media-filter-tab:hover,.album-chip:hover{background:rgba(53,58,139,.42)}.media-filter-tab.active,.album-chip.active{background:linear-gradient(135deg,rgba(100,74,237,.73),rgba(55,73,175,.55));border-color:rgba(148,130,255,.34);color:#fff}.select-control{height:38px;display:flex;align-items:center;gap:7px;padding:0 8px;border:1px solid rgba(128,143,237,.18);border-radius:8px;background:rgba(5,16,62,.58)}.select-control span{font-size:10px;color:#8993c0}.select-control select,.select-control select:focus{min-height:30px!important;padding:0 24px 0 0!important;border:0!important;background:transparent!important;box-shadow:none!important;font-size:11px}.view-switch{display:flex;gap:3px}.view-switch .icon-btn{width:38px;height:38px;background:rgba(7,18,68,.55);color:#9ea9d8}.view-switch .icon-btn.active{background:rgba(90,67,222,.6);color:#fff;box-shadow:0 0 18px rgba(104,82,244,.17)}.media-manage-toggle{height:38px}.media-manage-toggle.active{background:rgba(103,77,230,.65);color:#fff}.media-album-bar{display:flex;gap:7px;align-items:center;overflow:auto;padding:10px 0 3px}.media-album-bar #media-album-chips{display:flex;gap:7px}.media-canvas{min-height:calc(100dvh - 240px);padding-top:12px}.media-grid{columns:4 225px;column-gap:10px}.media-grid.sparse{columns:4 215px!important}.media-card{break-inside:avoid;margin:0 0 10px}.media-thumb{aspect-ratio:auto;min-height:160px;border-radius:8px;background:rgba(11,24,79,.5);cursor:pointer;overflow:hidden}.media-thumb img{width:100%;height:auto;min-height:160px;max-height:310px;object-fit:cover}.media-hover{position:absolute;left:0;right:0;bottom:0;display:grid;gap:2px;padding:30px 10px 9px;background:linear-gradient(transparent,rgba(3,7,32,.86));opacity:0;transition:opacity .15s}.media-card:hover .media-hover,.media-card.selected .media-hover{opacity:1}.media-hover strong{font-size:11px}.media-hover small{color:#c0c5df;font-size:9px}.media-badge{position:absolute;top:8px;left:8px;padding:4px 7px;border-radius:6px;background:rgba(3,9,41,.76);font-size:9px}.media-select-mark{position:absolute;top:8px;right:8px;width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:rgba(3,10,42,.72);color:#8f77ff}.media-card.selected .media-thumb{box-shadow:inset 0 0 0 2px #8770ff,0 0 20px rgba(109,82,242,.2)}.media-grid.list-view{columns:1!important;display:grid;gap:6px}.media-grid.list-view .media-card{margin:0}.media-grid.list-view .media-thumb{min-height:74px;height:74px;display:grid;grid-template-columns:100px 1fr}.media-grid.list-view .media-thumb img{width:100px;height:74px;min-height:0}.media-grid.list-view .media-hover{position:static;opacity:1;padding:14px;background:transparent;align-content:center}.media-empty-stage{position:absolute;inset:10px 0 0;display:grid;place-items:center;overflow:hidden;border-radius:9px}.media-empty-blueprint{position:absolute;inset:5px;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,minmax(160px,1fr));gap:10px;opacity:.23}.media-empty-blueprint span{border:1px solid rgba(126,142,228,.13);border-radius:9px;background:linear-gradient(145deg,rgba(37,47,117,.14),rgba(18,29,91,.03))}.media-empty-copy{position:relative;z-index:2;display:grid;place-items:center;gap:5px;padding:18px 28px;border-radius:10px;background:rgba(5,15,58,.55);backdrop-filter:blur(9px);color:#bfc6ea;text-align:center}.media-empty-copy .icon{width:30px;height:30px}.media-empty-copy strong{font:500 17px Georgia,"Times New Roman",serif;color:#fff}.media-empty-copy span{font-size:10px}.media-selection-bar{display:flex;align-items:center;gap:14px;min-height:64px;margin-top:8px;padding:9px 12px;border-top:1px solid rgba(137,151,237,.16);background:rgba(8,19,70,.49);border-radius:8px}.media-selection-bar>div:first-child{display:grid;min-width:120px}.media-selection-bar>div:first-child span{color:#8f99c7;font-size:10px}.selection-actions{display:flex;gap:7px;margin-left:auto}.danger-quiet{background:rgba(161,45,70,.15)!important;color:#ff8e9c!important}
.media-utility{position:sticky;top:90px;display:grid;gap:14px}.utility-panel{padding:15px;border:1px solid rgba(135,150,241,.24);border-radius:11px;background:rgba(6,17,68,.69);box-shadow:0 14px 42px rgba(1,5,34,.16);backdrop-filter:blur(12px)}.utility-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.utility-heading h2{margin:0;font-size:18px}.text-action,.utility-link{border:0;background:none;color:#a7afe0;font-size:10px;cursor:pointer}.utility-drop{width:100%;min-height:150px;display:grid;place-items:center;align-content:center;gap:4px;border:1px dashed rgba(154,152,255,.48);border-radius:9px;background:rgba(8,20,75,.35);color:#d4d7f5;cursor:pointer}.utility-drop.drag{background:rgba(81,66,195,.25)}.upload-cloud{width:55px;height:48px;display:grid;place-items:center;color:#9a78ff;filter:drop-shadow(0 0 10px rgba(126,92,255,.45))}.upload-cloud svg{width:44px;height:44px;fill:currentColor}.utility-drop strong{font:500 13px Georgia,"Times New Roman",serif}.utility-drop small,.utility-drop span:last-child{font-size:9px;color:#8d97c3}.utility-upload-state{display:grid;margin-top:9px}.utility-upload-row{display:grid;grid-template-columns:40px minmax(0,1fr) 26px;gap:8px;align-items:center;padding:7px 0;border-top:1px solid rgba(134,148,229,.1)}.utility-upload-row img{width:40px;height:40px;object-fit:cover;border-radius:6px}.utility-upload-row span{display:grid}.utility-upload-row strong{font-size:10px}.utility-upload-row small{font-size:9px;color:#8e98c6}.utility-upload-row i{height:3px;margin-top:4px;border-radius:3px;background:#253269;overflow:hidden}.utility-upload-row i b{display:block;height:100%;background:linear-gradient(90deg,#59c0ff,#925dff)}.utility-upload-row button{border:0;background:none;color:#a0a8d0}.utility-upload-actions{display:flex;justify-content:flex-end;gap:5px;margin-top:7px}.recent-album-list{display:grid}.recent-album-row{width:100%;display:grid;grid-template-columns:42px minmax(0,1fr) 18px;gap:8px;align-items:center;padding:7px 2px;border:0;border-top:1px solid rgba(133,148,228,.09);background:transparent;color:#d9dcf1;text-align:left;cursor:pointer}.recent-album-row:first-child{border-top:0}.recent-album-row img,.album-placeholder{width:42px;height:35px;object-fit:cover;border-radius:5px;background:rgba(40,50,115,.35)}.album-placeholder{display:grid;place-items:center}.recent-album-row span{display:grid}.recent-album-row strong{font-size:10px}.recent-album-row small{font-size:9px;color:#838db8}.recent-media-empty{padding:14px 4px;color:#7f88b4;font-size:10px}.expiring-share-list{display:grid}.expiring-share-row{display:flex;justify-content:space-between;gap:8px;padding:9px 0;border-top:1px solid rgba(134,149,231,.1)}.expiring-share-row:first-child{border-top:0}.expiring-share-row>span{display:flex;gap:7px}.expiring-share-row>span>span{display:grid}.expiring-share-row strong{font-size:10px}.expiring-share-row small{font-size:9px;color:#8790bd}.expiring-share-row time{color:#b6bde2;font-size:9px}.reclaim-utility p{margin:0;color:#8f98c4;font-size:10px}.reclaim-value{display:block;margin:8px 0;font:500 26px Georgia,"Times New Roman",serif;color:#c5b7ff}.storage-ring{width:104px;height:104px;display:grid;place-items:center;margin:10px auto 14px;border-radius:50%;background:conic-gradient(#765cff var(--storage-pct,45%),#26316b 0);position:relative}.storage-ring::after{content:"";position:absolute;inset:13px;border-radius:50%;background:#0a174f}.storage-ring span{position:relative;z-index:1;font:500 18px Georgia,"Times New Roman",serif}
/* Upload composer */
.upload-surface .dialog-frame{background:rgba(9,23,82,.98);border-color:rgba(133,145,235,.35)}.media-upload-frame{width:min(860px,calc(100vw - 36px));max-height:min(760px,calc(100dvh - 34px));overflow:hidden}.media-upload-body{overflow:auto}.upload-drop{min-height:240px}.upload-file-list{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important}.upload-preview-card{min-width:0;padding:0 0 9px;border:1px solid rgba(132,146,235,.18);border-radius:9px;background:rgba(11,28,92,.55);overflow:hidden}.upload-preview-image{position:relative;height:150px}.upload-preview-image img{width:100%;height:100%;object-fit:cover;display:block}.upload-preview-image button{position:absolute;right:7px;top:7px;width:30px;height:30px;display:grid;place-items:center;border:0;border-radius:7px;background:rgba(2,8,39,.8);color:#fff}.upload-preview-card>strong,.upload-preview-card>small{display:block;padding:0 10px}.upload-preview-card>strong{margin-top:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.upload-preview-card>small{color:#8792c2;font-size:9px}.upload-selection-summary{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.upload-progress-wrap{position:relative;min-width:220px;height:30px;border-radius:6px;background:#16245f;overflow:hidden}.upload-progress-wrap>span{position:absolute;inset:0 auto 0 0;width:55%;background:linear-gradient(90deg,#56bbff,#7c5cff)}.upload-progress-wrap small{position:relative;z-index:1;display:grid;place-items:center;height:100%;font-size:9px}
/* Secure Shares signed-in */
.secure-shares-layout{grid-template-columns:minmax(0,1fr) 318px}.secure-shares-view{padding:17px;border:1px solid rgba(129,145,255,.17);border-radius:12px;background:rgba(5,17,65,.25)}.secure-shares-toolbar p{color:#b0b5d5}.secure-share-table-shell{min-height:520px}.secure-empty-stage{min-height:440px}.secure-empty-visual{background:rgba(14,28,92,.52);box-shadow:0 0 48px rgba(99,80,229,.16)}
/* Chat backups */
.chat-backup-layout{display:grid;grid-template-columns:340px minmax(460px,1fr) 280px;gap:12px;min-height:calc(100dvh - 126px)}.chat-list-pane,.chat-history-pane,.chat-details-pane{border:1px solid rgba(128,145,238,.18);border-radius:11px;background:rgba(5,17,65,.37);overflow:hidden}.chat-list-pane{padding:17px}.chat-list-pane header h1{margin:0;font-size:22px}.chat-list-pane header p{margin:3px 0 12px;color:#9da6d1;font-size:10px}.chat-local-actions{margin-bottom:10px}.chat-filter-row{display:flex;gap:5px;margin-bottom:8px}.chat-conversation-list{display:grid}.chat-conversation-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:8px;align-items:center;padding:9px 7px;border:0;border-top:1px solid rgba(128,143,225,.09);background:transparent;color:#dfe2f4;text-align:left}.chat-conversation-row.active{border-radius:7px;background:rgba(91,70,213,.34);box-shadow:inset 0 0 0 1px rgba(140,124,255,.27)}.chat-avatar{width:35px;height:35px;display:grid;place-items:center;border-radius:50%;background:rgba(37,48,119,.5)}.chat-conversation-row span:nth-child(2){display:grid;min-width:0}.chat-conversation-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8893c0;font-size:9px}.chat-conversation-row time{font-size:9px;color:#9099c5}.chat-encrypted-section{margin-top:15px;padding-top:11px;border-top:1px solid rgba(130,145,229,.12)}.chat-encrypted-heading{display:flex;justify-content:space-between;color:#abb2d9;font-size:10px}.encrypted-chunk-row{display:grid;grid-template-columns:22px minmax(0,1fr);gap:7px;padding:8px 0}.encrypted-chunk-row span{display:grid}.encrypted-chunk-row strong{font-size:9px}.encrypted-chunk-row small{color:#7f8ab8;font-size:8px}.chat-history-pane{display:flex;flex-direction:column}.chat-history-empty{margin:auto;max-width:420px;padding:40px;text-align:center;color:#aab1d8}.chat-history-empty>svg{width:48px;height:48px;fill:#8d7cff}.chat-history-empty h2{font-size:21px}.chat-history-empty p{font-size:10px;line-height:1.55}.chat-history-content{display:flex;flex-direction:column;height:100%}.chat-history-content>header{display:flex;justify-content:space-between;align-items:center;padding:15px 18px;border-bottom:1px solid rgba(128,143,229,.12)}.chat-history-content h2{margin:0;font-size:20px}.chat-history-content p{margin:2px 0 0;color:#8792be;font-size:9px}.local-only-badge{display:flex;align-items:center;gap:5px;padding:6px 8px;border-radius:6px;background:rgba(75,65,182,.3);font-size:9px}.chat-message-list{overflow:auto;padding:13px 18px}.archive-message{display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;padding:10px 0;border-bottom:1px solid rgba(126,143,221,.08)}.archive-message-avatar{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#352d8a}.archive-message header{display:flex;gap:8px}.archive-message header strong{font:500 13px Georgia,"Times New Roman",serif}.archive-message time{color:#7782ae;font-size:8px}.archive-message p{margin:3px 0 0;color:#d5d8ec;font-size:10px}.chat-details-pane{padding:17px}.chat-details-pane h2{margin:0 0 16px;font-size:19px}.chat-privacy-note{display:grid;grid-template-columns:28px 1fr;gap:8px;margin-top:18px;padding-top:14px;border-top:1px solid rgba(128,143,229,.11)}.chat-privacy-note span{display:grid}.chat-privacy-note small{color:#8390bd;font-size:9px}
/* Upload history */
.uploads-page{padding:10px 0}.uploads-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.uploads-header h1{margin:0}.uploads-header p{margin:3px 0;color:#939cc7;font-size:10px}.uploads-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}.uploads-stats>div{padding:12px 14px;border:1px solid rgba(128,144,235,.16);border-radius:8px;background:rgba(5,17,65,.45)}.uploads-stats strong{display:block;font:500 19px Georgia,"Times New Roman",serif}.uploads-stats span{color:#8893c0;font-size:9px}.uploads-list-shell{border:1px solid rgba(128,145,237,.18);border-radius:10px;background:rgba(5,17,65,.36);overflow:hidden}.uploads-list-head,.uploads-row{display:grid;grid-template-columns:minmax(260px,2fr) repeat(4,1fr);gap:12px;align-items:center;padding:10px 14px}.uploads-list-head{color:#7782b0;font-size:9px;text-transform:uppercase;border-bottom:1px solid rgba(128,143,229,.11)}.uploads-row{border-top:1px solid rgba(128,143,229,.08);font-size:10px}.uploads-row:first-child{border-top:0}.uploads-row>span:first-child{display:flex;align-items:center;gap:9px}.uploads-row img{width:52px;height:40px;object-fit:cover;border-radius:5px}.uploads-file-icon{width:52px;height:40px;display:grid;place-items:center;border:1px solid rgba(143,154,240,.22);border-radius:6px;background:linear-gradient(145deg,rgba(74,68,159,.3),rgba(10,25,82,.72));color:#bfc5ff}.uploads-file-icon .icon{width:21px;height:21px}.uploads-item-copy{display:grid;min-width:0}.uploads-item-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uploads-item-copy small,.uploads-storage-kind small{color:#8e98c4;font-size:9px}.uploads-storage-kind{display:flex;align-items:center;gap:6px}.uploads-storage-kind .icon{width:14px;height:14px;color:#a9b1ee}.uploads-empty{padding:36px;text-align:center;color:#8a94c0}
/* Admin */
.admin-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.admin-title h1{margin:0}.admin-title p{margin:3px 0;color:#9aa3cd;font-size:10px}.admin-overview-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:10px}.admin-overview-strip>div{padding:12px 14px;border:1px solid rgba(130,145,236,.17);border-radius:8px;background:rgba(6,18,67,.5)}.admin-overview-strip strong{display:block;font:500 20px Georgia,"Times New Roman",serif}.admin-overview-strip span{font-size:9px;color:#8791bd}.admin-users-table tbody tr{cursor:pointer}.user-cell{display:flex;gap:8px;align-items:center}.user-cell img{width:32px;height:32px}.user-cell>span{display:grid}.user-cell small{max-width:180px;overflow:hidden;text-overflow:ellipsis;color:#747fab;font:8px ui-monospace,monospace}.admin-user-hero{display:flex;gap:12px;align-items:center;padding:12px;border-radius:9px;background:rgba(63,49,151,.22)}.admin-user-hero img{width:70px;height:70px}.admin-user-hero div{display:grid}.admin-user-hero strong{font:500 21px Georgia,"Times New Roman",serif}.admin-user-hero code{color:#949dcc}.admin-detail-section{padding:18px 0;border-bottom:1px solid rgba(128,144,225,.1)}.admin-detail-section h3{margin:0 0 10px;font-size:16px}.admin-control-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.admin-recovery-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.quota-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.quota-grid label{position:relative;display:grid;gap:4px;color:#abb2d5;font-size:9px}.quota-grid label span{position:absolute;right:9px;bottom:11px;color:#7883af}.quota-grid input{padding-right:38px}.sheet-frame.admin-user-sheet{background:rgba(7,18,69,.96)}
/* Auth */
.auth-screen{min-height:100dvh;display:grid;place-items:center;padding:28px}.auth-card{width:min(520px,calc(100vw - 36px));padding:28px 34px 30px;border:1px solid rgba(136,151,245,.28);border-radius:14px;background:rgba(6,18,68,.76);box-shadow:0 30px 100px rgba(2,5,34,.35),inset 0 1px rgba(255,255,255,.03);backdrop-filter:blur(13px)}.auth-brand{display:grid;justify-items:center;text-align:center;margin-bottom:18px}.auth-brand img{width:118px;height:118px}.auth-brand strong{font:500 38px Georgia,"Times New Roman",serif}.auth-brand span{color:#d2d5ef;font:12px Georgia,"Times New Roman",serif}.auth-heading{text-align:center;margin-bottom:16px}.auth-heading h1{margin:0;font-size:26px}.auth-heading p{margin:5px 0;color:#a3abd2;font-size:11px}.auth-form{display:grid;gap:10px}.auth-field{min-height:48px;display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px;align-items:center;padding:0 12px;border:1px solid rgba(137,151,241,.24);border-radius:8px;background:rgba(8,20,75,.54)}.auth-field:focus-within{border-color:#8d72ff;box-shadow:0 0 0 2px rgba(117,86,245,.17)}.auth-field>svg{width:18px;height:18px;fill:#b5bce0}.auth-field input,.auth-field textarea,.auth-field input:focus,.auth-field textarea:focus{min-height:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}.auth-note-field{align-items:start;padding-top:12px}.auth-note-field textarea{height:54px!important;min-height:54px!important}.auth-submit{min-height:48px;margin-top:2px;background:linear-gradient(135deg,#7658f0,#5947c9)!important;color:#fff!important;font:500 17px Georgia,"Times New Roman",serif;box-shadow:0 0 24px rgba(104,74,238,.23)}.auth-alt{display:flex;justify-content:center;gap:7px;margin-top:17px;color:#9da5ca;font-size:10px}.auth-alt a{color:#b59cff}.auth-approval-note{display:grid;grid-template-columns:28px 1fr;gap:9px;margin-top:16px;padding:11px;border:1px solid rgba(129,145,230,.17);border-radius:8px;background:rgba(6,17,62,.38)}.auth-approval-note span{display:grid}.auth-approval-note strong{font-size:10px}.auth-approval-note small{color:#8b95c0;font-size:9px}.auth-success{text-align:center}.auth-success>svg{width:54px;height:54px;fill:#7f70ff}.auth-success h1{font-size:26px}
/* Hosted share */
.hosted-share-viewer{min-height:100dvh;padding:22px 42px 40px}.hosted-share-top{height:60px;display:flex;align-items:center;justify-content:space-between}.public-brand{display:flex;align-items:center;gap:9px}.public-brand img{width:50px;height:50px}.public-brand span{font:500 25px Georgia,"Times New Roman",serif}.hosted-share-label{display:flex;align-items:center;gap:6px;color:#a99bff;font-size:10px}.hosted-share-layout{width:min(1400px,100%);margin:7px auto 0;display:grid;grid-template-columns:minmax(0,1fr) 330px;border:1px solid rgba(129,145,239,.2);border-radius:12px;background:rgba(4,15,61,.3);overflow:hidden}.hosted-share-stage{padding:20px}.hosted-share-hero{position:relative;min-height:560px;display:grid;place-items:center;overflow:hidden;border-radius:9px;background:rgba(1,7,30,.5)}.hosted-share-hero img{max-width:100%;max-height:70dvh;width:100%;height:100%;object-fit:contain}.hosted-share-counter{position:absolute;z-index:2;top:12px;left:12px;padding:5px 8px;border-radius:6px;background:rgba(2,7,30,.72);font-size:10px}.hosted-share-nav{position:absolute;z-index:2;top:50%;width:40px;height:40px;display:grid;place-items:center;border:1px solid rgba(170,170,255,.3);border-radius:50%;background:rgba(3,9,39,.7);color:#fff}.hosted-share-nav svg{width:20px;height:20px;fill:currentColor}.hosted-share-nav.prev{left:12px}.hosted-share-nav.next{right:12px}.hosted-share-filmstrip{display:flex;gap:8px;margin-top:10px;overflow:auto}.hosted-share-filmstrip button{width:112px;height:78px;flex:0 0 auto;padding:0;border:1px solid transparent;border-radius:7px;overflow:hidden;background:#0a164d}.hosted-share-filmstrip button.active{border-color:#8b72ff;box-shadow:0 0 14px rgba(115,87,244,.23)}.hosted-share-filmstrip img{width:100%;height:100%;object-fit:cover}.hosted-share-info{padding:28px 23px;border-left:1px solid rgba(132,148,235,.16);background:rgba(6,18,68,.56)}.share-kicker{color:#a895ff;font-size:10px}.hosted-share-info h1{margin:8px 0 20px;font-size:28px}.share-uploader{display:flex;align-items:center;gap:9px}.share-uploader img{width:55px;height:55px}.share-uploader span{display:grid}.share-uploader small{color:#8c96c2;font-size:9px}.share-uploader strong{font:500 15px Georgia,"Times New Roman",serif}.share-facts{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin:20px 0;background:rgba(122,137,222,.08);border-radius:8px}.share-facts>div{display:grid;padding:12px;text-align:center}.share-facts strong{font:500 13px Georgia,"Times New Roman",serif}.share-facts small{color:#8791bd;font-size:8px}.share-view-all{width:100%}.share-capability-note{display:grid;grid-template-columns:27px 1fr;gap:8px;margin-top:20px;padding:12px;border:1px solid rgba(132,147,233,.14);border-radius:8px;background:rgba(14,27,88,.35)}.share-capability-note span{display:grid}.share-capability-note strong{font-size:10px}.share-capability-note small{color:#8892be;font-size:9px;line-height:1.45}.hosted-share-all{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}.hosted-share-all button{padding:0;border:0;border-radius:7px;overflow:hidden}.hosted-share-all img{width:100%;height:170px;object-fit:cover;display:block}.hosted-share-unavailable{min-height:100dvh;display:grid;place-items:center;align-content:center;gap:10px;text-align:center}.hosted-share-unavailable .public-brand{position:absolute;top:24px;left:30px}.share-unavailable-icon{width:90px;height:90px;display:grid;place-items:center;border-radius:50%;background:rgba(109,66,147,.27);color:#ff8fa9}.share-unavailable-icon svg{width:48px;height:48px;fill:currentColor}.hosted-share-unavailable h1{margin:5px 0 0;font-size:33px}.hosted-share-unavailable p{max-width:430px;margin:0 0 7px;color:#aab1d2;font-size:11px}
/* Public Secure View */
.secure-unlock-page,.secure-unavailable-page,.secure-gallery-page{min-height:100dvh}.secure-unlock-card{width:min(730px,calc(100vw - 40px));min-height:660px;margin:6dvh auto;padding:32px 46px;border:1px solid rgba(134,149,241,.28);border-radius:14px;background:rgba(5,17,66,.63);backdrop-filter:blur(10px);box-shadow:0 26px 90px rgba(2,5,34,.28)}.secure-unlock-brand{display:flex;align-items:center;gap:10px}.secure-unlock-brand img{width:76px;height:76px}.secure-unlock-brand>span{display:grid}.secure-unlock-brand strong{font:500 28px Georgia,"Times New Roman",serif}.secure-unlock-brand small{font:11px Georgia,"Times New Roman",serif;color:#c8cce8}.secure-unlock-brand em{margin-left:auto;display:flex;align-items:center;gap:5px;padding:7px 9px;border:1px solid rgba(143,121,255,.3);border-radius:7px;background:rgba(72,54,160,.22);color:#c1afff;font-size:9px;font-style:normal}.secure-unlock-brand em svg{width:14px;height:14px;fill:currentColor}.secure-unlock-emblem{width:86px;height:86px;display:grid;place-items:center;margin:28px auto 12px;border-radius:50%;color:#9278ff;background:radial-gradient(circle,rgba(112,79,236,.34),rgba(50,64,165,.08) 60%,transparent 62%);filter:drop-shadow(0 0 16px rgba(120,82,250,.35))}.secure-unlock-emblem svg{width:58px;height:58px;fill:currentColor}.secure-unlock-copy{text-align:center}.secure-unlock-copy h1{margin:0;font-size:36px}.secure-unlock-copy p{margin:5px 0;color:#b5b9d6}.secure-unlock-facts{display:flex;justify-content:center;gap:18px;margin:18px 0}.secure-unlock-facts span{display:flex;align-items:center;gap:5px;padding:6px 8px;border-radius:6px;background:rgba(19,31,91,.43);color:#c6cae8;font-size:9px}.secure-unlock-facts svg{width:14px;height:14px;fill:#a593ff}.secure-unlock-form{max-width:470px;margin:0 auto}.secure-unlock-form>label{display:block;margin:0 0 7px;color:#d6d8ec;font-size:11px}.secure-clue-field{position:relative}.secure-clue-field input{min-height:50px!important;padding-right:44px!important;background:rgba(4,14,54,.6)!important;border-color:rgba(141,120,255,.55)!important}.secure-clue-field svg{position:absolute;right:14px;top:16px;width:18px;height:18px;fill:#b9b5ea}.secure-unlock-note{display:grid;grid-template-columns:18px 1fr;gap:7px;margin:10px 0 18px;color:#a6aecf;font-size:9px;line-height:1.5}.secure-unlock-note svg{width:16px;height:16px;fill:#b5bcdf}.secure-unlock-action{width:100%;min-height:54px;background:linear-gradient(135deg,#7c5cf7,#4f55c9)!important;color:#fff!important;font:500 19px Georgia,"Times New Roman",serif;box-shadow:0 0 28px rgba(113,80,241,.25)}.secure-unavailable-card{width:min(520px,calc(100vw - 40px));margin:16dvh auto;padding:40px;text-align:center;border:1px solid rgba(132,147,240,.25);border-radius:14px;background:rgba(6,18,68,.68);backdrop-filter:blur(10px)}.secure-unavailable-badge{width:max-content;margin:0 auto 22px;padding:6px 9px;border-radius:6px;background:rgba(66,54,154,.28);color:#c2b4ff;font-size:9px}.secure-unavailable-badge svg{width:13px;height:13px;fill:currentColor;vertical-align:-2px}.secure-unavailable-icon{width:88px;height:88px;display:grid;place-items:center;margin:auto;border-radius:50%;background:rgba(67,61,164,.24);color:#aa91ff}.secure-unavailable-icon svg{width:52px;height:52px;fill:currentColor}.secure-unavailable-card h1{font-size:32px}.secure-unavailable-card p{color:#adb4d3;font-size:11px}.secure-gallery-shell{min-height:100dvh;display:grid;grid-template-columns:300px minmax(0,1fr) 290px;gap:14px;padding:22px}.secure-gallery-side,.secure-gallery-main,.secure-gallery-status{border:1px solid rgba(132,147,240,.2);border-radius:11px;background:rgba(5,17,65,.45)}.secure-gallery-side{padding:18px}.secure-gallery-logo{display:flex;gap:9px;align-items:center}.secure-gallery-logo img{width:68px;height:68px}.secure-gallery-logo span{display:grid}.secure-gallery-logo strong{font:500 25px Georgia,"Times New Roman",serif}.secure-gallery-logo small{color:#bbc0dc;font:10px Georgia,"Times New Roman",serif}.secure-gallery-side section{margin-top:24px;padding:13px;border:1px solid rgba(130,145,230,.16);border-radius:8px;background:rgba(8,20,75,.45)}.secure-gallery-side h2,.secure-gallery-status h2{display:flex;gap:7px;align-items:center;margin:0;font-size:16px}.secure-gallery-side h2 svg,.secure-gallery-status h2 svg{width:18px;height:18px;fill:#c1b9ff}.secure-gallery-side p{color:#9fa8ce;font-size:9px}.secure-gallery-side dl div{display:flex;justify-content:space-between;padding:6px 0}.secure-gallery-side dt,.secure-gallery-side dd{font-size:9px}.secure-ok{color:#5addac}.secure-gallery-main{padding:18px}.secure-gallery-main>header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(132,147,230,.13);padding-bottom:13px}.secure-gallery-main h1{display:flex;align-items:center;gap:9px;margin:0;font-size:29px}.secure-gallery-main h1 svg{width:35px;height:35px;fill:#c5b8ff}.secure-gallery-main header p{margin:3px 0;color:#969fc8;font-size:9px}.secure-gallery-counters{display:flex;gap:2px;background:rgba(11,25,84,.5);border:1px solid rgba(133,148,230,.15);border-radius:8px}.secure-gallery-counters>span{min-width:125px;padding:9px 15px;display:grid}.secure-gallery-counters>span+span{border-left:1px solid rgba(133,148,230,.15)}.secure-gallery-counters small{font-size:8px;color:#919bc8}.secure-gallery-counters strong{font:500 25px Georgia,"Times New Roman",serif;color:#d5ceff}.secure-gallery-section-head{display:flex;align-items:center;gap:8px;margin:15px 0 9px}.secure-gallery-section-head h2{margin:0;font-size:18px}.secure-gallery-section-head span{color:#949dc6;font-size:9px}.secure-canvas-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.secure-canvas-tile{padding:0;border:1px solid rgba(130,145,230,.18);border-radius:7px;overflow:hidden;background:#08164b;cursor:zoom-in}.secure-canvas-tile canvas{display:block;width:100%;height:170px;object-fit:cover}.secure-gallery-status{padding:18px}.secure-gallery-status>h2{padding-bottom:13px;border-bottom:1px solid rgba(130,145,230,.12)}.secure-status-block{padding:16px 0}.secure-status-block small{display:block;color:#909ac6;font-size:9px}.secure-status-block strong{font:500 25px Georgia,"Times New Roman",serif}.secure-time-bar{height:5px;margin-top:7px;border-radius:5px;background:#26336c;overflow:hidden}.secure-time-bar span{display:block;height:100%;width:100%;background:linear-gradient(90deg,#6cb5ff,#8b5fff)}.secure-status-check{display:grid;grid-template-columns:28px 1fr;gap:8px;padding:12px 0;border-top:1px solid rgba(130,145,230,.1)}.secure-status-check svg{width:24px;height:24px;fill:#54d4a0}.secure-status-check span{display:grid}.secure-status-check strong{font-size:10px}.secure-status-check small{color:#8d97c1;font-size:9px}.secure-image-viewer{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:24px;background:rgba(1,5,27,.78);backdrop-filter:blur(8px)}.secure-image-viewer-shell{width:min(1100px,96vw);max-height:92dvh;border:1px solid rgba(142,123,255,.4);border-radius:12px;background:#07154a;box-shadow:0 30px 110px rgba(0,0,0,.55),0 0 40px rgba(92,67,218,.18);overflow:hidden}.secure-image-viewer-shell>header{height:55px;display:flex;align-items:center;gap:20px;padding:0 18px;border-bottom:1px solid rgba(130,145,230,.13)}.secure-image-viewer-shell>header>span:first-of-type{margin-left:auto}.secure-image-viewer-shell>header>span{font-size:9px;color:#b5bddb}.secure-image-viewer-shell>header b{padding:5px 8px;border-radius:6px;background:rgba(95,67,219,.3);color:#d8ceff}.secure-image-viewer-shell>header button{margin-left:6px;border:0;background:none;color:#fff}.secure-image-viewer-shell>header svg{width:18px;height:18px;fill:currentColor}.secure-image-viewer-body{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:14px;padding:14px}.secure-image-stage{height:600px;display:grid;place-items:center;background:#02081f;border-radius:8px;overflow:hidden}.secure-image-stage canvas{max-width:100%;max-height:100%;width:auto;height:auto}.secure-image-viewer-body aside{padding:13px;border:1px solid rgba(130,145,230,.15);border-radius:8px;background:rgba(13,28,88,.55)}.secure-image-viewer-body aside h3{margin:0 0 14px;font-size:16px}.secure-image-viewer-body aside p{color:#8f99c2;font-size:9px;line-height:1.5}.secure-image-filmstrip{display:flex;gap:7px;padding:0 14px 14px;overflow:auto}.secure-filmstrip-item{width:120px;height:72px;flex:0 0 auto;padding:0;border:1px solid transparent;border-radius:6px;overflow:hidden;background:#0d1b55}.secure-filmstrip-item.active{border-color:#8e73ff}.secure-filmstrip-item canvas{width:100%;height:100%;object-fit:cover}.secure-expired{display:none}.secure-is-expired .secure-gallery-shell{display:none}.secure-is-expired .secure-expired{min-height:100dvh;display:grid;place-items:center}.secure-expired-content{text-align:center}.secure-expired-content svg{width:70px;height:70px;fill:#a58cff}.secure-expired-content h1{font-size:32px}
/* Account tweaks: no duplicate storage */
.account-page{width:min(950px,100%);min-height:0;padding-top:20px}.account-header p{color:#adb3d2}.account-panels{padding-top:20px}.account-panel{max-width:820px}.account-panel::before{display:none}
/* responsive */
@media(max-width:1450px){.app-shell{grid-template-columns:250px minmax(0,1fr)}.sidebar{padding-inline:11px}.brand-portrait{width:64px;height:64px}.media-layout{grid-template-columns:minmax(0,1fr) 286px}.app-topbar{grid-template-columns:minmax(0,1fr) 286px}.chat-backup-layout{grid-template-columns:300px minmax(430px,1fr)}.chat-details-pane{display:none}.secure-gallery-shell{grid-template-columns:240px minmax(0,1fr) 250px}.secure-canvas-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1120px){.app-shell{grid-template-columns:216px minmax(0,1fr)}.media-layout{grid-template-columns:1fr}.media-utility{position:static;display:grid;grid-template-columns:1fr 1fr}.media-manage-utility[hidden],.media-normal-utility[hidden]{display:none}.app-topbar{grid-template-columns:1fr}.global-search{width:min(700px,92%)}.chat-backup-layout{grid-template-columns:300px 1fr}.secure-gallery-shell{grid-template-columns:1fr}.secure-gallery-side,.secure-gallery-status{display:none}.hosted-share-layout{grid-template-columns:1fr}.hosted-share-info{border-left:0;border-top:1px solid rgba(132,148,235,.16)}}
@media(max-width:820px){.app-shell{display:block}.sidebar{position:fixed;left:0;top:0;width:280px;transform:translateX(-105%);transition:transform .18s;box-shadow:20px 0 70px rgba(0,0,0,.45)}.sidebar.open{transform:none}.app-topbar{height:72px;padding:10px 14px}.mobile-menu{display:grid!important;position:absolute;left:14px}.global-search{width:calc(100% - 48px);justify-self:end}.main-content{padding:0 14px 30px}.media-stage-panel{padding:13px}.media-stage-header{display:grid}.media-stage-controls{justify-content:start}.media-filter-tab{padding:6px 8px}.media-sort-control{margin-left:0}.media-utility{grid-template-columns:1fr}.media-grid,.media-grid.sparse{columns:2 150px!important}.media-empty-blueprint{grid-template-columns:repeat(2,1fr)}.selection-actions{overflow:auto}.chat-backup-layout{grid-template-columns:1fr}.chat-history-pane,.chat-details-pane{display:none}.uploads-stats,.admin-overview-strip{grid-template-columns:1fr 1fr}.uploads-list-head{display:none}.uploads-row{grid-template-columns:1fr 1fr}.uploads-row>span:nth-child(4),.uploads-row>span:nth-child(5){display:none}.hosted-share-viewer{padding:12px}.hosted-share-hero{min-height:420px}.hosted-share-all{grid-template-columns:repeat(2,1fr)}.secure-unlock-card{padding:25px 22px}.secure-unlock-brand em{display:none}.secure-gallery-shell{padding:10px}.secure-canvas-grid{grid-template-columns:repeat(2,1fr)}.secure-image-viewer-body{grid-template-columns:1fr}.secure-image-viewer-body aside{display:none}.secure-image-stage{height:65dvh}.quota-grid{grid-template-columns:1fr}}
@media(max-width:540px){.media-stage-title p{display:none}.media-stage-controls{gap:4px}.media-filter-tab[data-media-filter="animated"]{display:none}.media-sort-control span{display:none}.media-manage-toggle span{display:none}.media-grid,.media-grid.sparse{columns:2 120px!important}.media-thumb img{min-height:120px}.media-utility{display:none}.upload-file-list{grid-template-columns:repeat(2,1fr)!important}.upload-preview-image{height:125px}.auth-screen{padding:14px}.auth-card{padding:24px 18px}.auth-brand img{width:94px;height:94px}.auth-brand strong{font-size:31px}.hosted-share-top{height:50px}.hosted-share-layout{border-radius:9px}.hosted-share-stage{padding:10px}.hosted-share-hero{min-height:330px}.hosted-share-info{padding:20px 16px}.secure-unlock-card{margin:3dvh auto;min-height:0}.secure-unlock-copy h1{font-size:29px}.secure-unlock-facts{gap:5px;flex-wrap:wrap}.secure-canvas-tile canvas{height:140px}.admin-overview-strip,.uploads-stats{grid-template-columns:1fr 1fr}.admin-title{align-items:flex-start}.admin-title p{display:none}}

/* v14 screenshot-QA corrections */
.auth-approval-note>svg{width:22px;height:22px;fill:#bdb7ff;align-self:start;margin-top:2px}.auth-card{width:min(560px,calc(100vw - 36px));padding:34px 38px 34px}.auth-card-register{width:min(590px,calc(100vw - 36px))}.auth-heading h1{font-size:29px}.auth-brand img{width:124px;height:124px}.auth-form{gap:11px}
.local-only-badge svg,.chat-privacy-note>svg{width:18px;height:18px;fill:currentColor;flex:0 0 auto}.chat-privacy-note>svg{color:#9b8cff}.local-only-badge{color:#d9d8f1}.chat-history-content>header{min-height:62px}.chat-details-pane{white-space:normal}
.hosted-share-label svg{width:15px;height:15px;fill:currentColor}.share-capability-note>svg{width:23px;height:23px;fill:#a997ff;align-self:start}.share-capability-note{white-space:normal}
.secure-canvas-grid{min-height:0!important;padding:0!important;place-items:stretch!important;align-items:stretch!important}.secure-gallery-status{display:block!important;white-space:normal!important}.secure-gallery-main{min-width:0}.secure-gallery-shell{overflow:hidden}.secure-canvas-tile canvas{height:190px}.secure-gallery-status .secure-status-check{white-space:normal}
.media-select-mark .icon{width:19px;height:19px;fill:#fff}.media-card.selected .media-select-mark{background:#735cf0;color:#fff;box-shadow:0 0 15px rgba(113,83,245,.4)}
.album-context-actions{display:flex;gap:6px;margin-left:auto}.album-context-actions[hidden]{display:none!important}
.account-page{background:rgba(5,17,65,.34);backdrop-filter:blur(7px) saturate(108%)}.admin-view{background:rgba(5,17,65,.38);backdrop-filter:blur(8px) saturate(108%)}
@media(max-width:540px){.auth-card,.auth-card-register{padding:25px 19px}.auth-brand img{width:100px;height:100px}.auth-heading h1{font-size:25px}.album-context-actions{width:100%;margin-left:0}.secure-canvas-tile canvas{height:145px}}
.status-text.ready{color:#73e2b1}.status-text.disabled{color:#f1bf69}.status-text.banned{color:#ff8297}

/* ==========================================================================
   Eien v15 refinement pass
   ========================================================================== */
:root { --eien-display: "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif; }
body.eien-app h1,body.eien-app h2,body.eien-app h3,.eien-public h1,.eien-public h2,.eien-public h3,.brand-word,.auth-brand strong,.secure-gallery-logo strong,.secure-unlock-brand strong { font-family:var(--eien-display); }

/* Preserve the supplied environment instead of blurring/repainting it through the rail. */
.sidebar { background:linear-gradient(90deg,rgba(3,9,45,.15),rgba(3,10,48,.055)); backdrop-filter:none!important; -webkit-backdrop-filter:none!important; }
.sidebar::after { display:none!important; content:none!important; }
.brand { min-height:96px; }
.brand-portrait { width:82px; height:82px; }
.brand-word { font-family:var(--eien-display); font-size:30px; font-weight:700; letter-spacing:.005em; text-shadow:0 1px 0 rgba(255,255,255,.08),0 0 18px rgba(139,129,255,.22); }
.brand-copy small { font-family:var(--eien-display); color:#e0e2f5; font-size:11px; }

/* Keep frosted treatment only where it materially protects text. */
.sidebar-storage { margin-top:12px; padding:10px 11px 9px; border-color:rgba(157,171,255,.22); background:rgba(7,18,68,.62); backdrop-filter:blur(10px) saturate(108%); -webkit-backdrop-filter:blur(10px) saturate(108%); }
.sidebar-storage-title { margin-bottom:5px; font:600 16px var(--eien-display); }
.sidebar-meter { padding:4px 0; }
.sidebar-meter + .sidebar-meter { border-top-color:rgba(154,168,243,.065); }
.sidebar-meter-row { font-size:9.5px; }
.sidebar-meter-row small { font-size:8.5px; }
.mini-progress { height:3px; margin-top:4px; }
.sidebar-footer { gap:7px; padding-top:9px; }
.sidebar-account { min-height:80px; grid-template-columns:58px minmax(0,1fr) 20px; gap:12px; padding:10px 12px; background:rgba(7,18,68,.64); backdrop-filter:blur(10px) saturate(108%); -webkit-backdrop-filter:blur(10px) saturate(108%); }
.sidebar-account img { width:58px; height:58px; }
.sidebar-account strong { font:600 18px var(--eien-display); }
.sidebar-account small { font-size:10px; }
.sidebar-note { background:rgba(3,11,49,.72); color:#f0f1ff; font-size:10px; backdrop-filter:blur(7px); }

/* Main/background surfaces remain translucent enough to show the supplied art clearly. */
.media-stage-panel,.secure-shares-view,.admin-view,.account-page,.chat-list-pane,.chat-history-pane,.chat-details-pane,.uploads-list-shell { backdrop-filter:none!important; -webkit-backdrop-filter:none!important; background-color:rgba(4,15,63,.18); }
.utility-panel { backdrop-filter:none!important; -webkit-backdrop-filter:none!important; background:rgba(5,17,66,.30); }

/* Media header: title + manage on the first compact row, controls below. */
.media-stage-panel { min-height:0; padding:14px 16px 16px; overflow:visible; }
.media-stage-header { min-height:42px; padding:0 0 6px; margin:0; border-bottom:0; align-items:center; }
.media-stage-title { min-width:0; }
.media-stage-title h1 { font:600 27px var(--eien-display); letter-spacing:-.01em; }
.media-manage-toggle { appearance:none; height:34px; display:inline-flex; align-items:center; gap:7px; padding:0 11px; border:1px solid rgba(152,165,248,.17); border-radius:8px; background:rgba(13,27,82,.48); color:#b9c0e2; cursor:pointer; font-weight:600; }
.media-manage-toggle:hover { background:rgba(41,52,129,.45); color:#fff; }
.media-manage-toggle.active { background:rgba(96,76,217,.62); border-color:rgba(158,142,255,.38); color:#fff; box-shadow:0 0 18px rgba(104,82,244,.13); }
.media-manage-toggle .icon { width:17px; height:17px; }
.media-stage-controls { min-height:43px; display:flex; align-items:center; flex-wrap:nowrap; gap:5px; padding:4px 0 8px; border-bottom:1px solid rgba(132,149,236,.10); }
.media-filter-group { display:flex; gap:4px; min-width:0; }
.media-controls-spacer { flex:1 1 auto; }
.media-filter-tab { min-height:33px; padding:6px 11px; }
.select-control { height:34px; }
.view-switch .icon-btn { width:34px; height:34px; }
.media-canvas { min-height:0; padding-top:10px; }
.media-load-more { display:flex; justify-content:center; padding:14px 0 4px; }
.media-load-more[hidden] { display:none!important; }
.media-load-more-btn { appearance:none; min-width:150px; height:38px; display:inline-flex; align-items:center; justify-content:center; gap:7px; border:1px solid rgba(160,148,255,.28); border-radius:8px; background:rgba(80,64,192,.54); color:#f3f1ff; font:600 13px var(--eien-display); cursor:pointer; box-shadow:0 8px 22px rgba(35,28,121,.16); }
.media-load-more-btn:hover { background:rgba(101,81,222,.68); }
.media-load-more-btn .icon { width:16px; height:16px; }
.media-selection-bar { position:static; margin:8px 0 0; }
.media-empty-stage { position:relative; inset:auto; min-height:520px; }

/* Add media remains intentionally opaque and crisp. */
.media-upload-frame { background:linear-gradient(180deg,#101f65,#071642)!important; border-color:rgba(167,179,255,.28)!important; }
.upload-preview-card { background:#0a1a55; border-color:rgba(165,177,255,.2); }
.upload-preview-image { background:linear-gradient(135deg,#0a194e,#172b78); }
.upload-preview-image img { width:100%; height:100%; object-fit:cover; display:block; }
.upload-preview-image img:not([src]),.upload-preview-image img[src=""] { display:none; }

/* Chat backups: cleaner archive workspace, closer to the approved reference. */
.chat-backup-layout { grid-template-columns:330px minmax(500px,1fr) 286px; gap:10px; min-height:calc(100dvh - 116px); }
.chat-list-pane,.chat-history-pane,.chat-details-pane { border-color:rgba(139,154,242,.16); background:rgba(4,15,61,.26); }
.chat-list-pane { padding:14px 13px; }
.chat-list-header { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; padding:2px 2px 10px; }
.chat-list-header h1 { font:600 21px var(--eien-display); }
.chat-list-header p { margin:2px 0 0!important; color:#aab1d3!important; }
.chat-import-button { width:34px; height:34px; flex:0 0 auto; }
.chat-list-search { height:36px; display:grid; grid-template-columns:19px minmax(0,1fr); align-items:center; gap:7px; margin-bottom:8px; padding:0 10px; border:1px solid rgba(143,157,239,.17); border-radius:8px; background:rgba(6,18,70,.42); color:#94a0cc; }
.chat-list-search input,.chat-list-search input:focus,.chat-list-search input:hover { min-height:0!important; padding:0!important; border:0!important; background:transparent!important; box-shadow:none!important; }
.chat-filter-row { gap:3px; margin-bottom:7px; }
.chat-filter-row .media-filter-tab { min-height:31px; padding:5px 10px; font-size:10px; }
.chat-conversation-row { min-height:57px; grid-template-columns:40px minmax(0,1fr) auto; gap:9px; padding:8px 8px; border-top:1px solid rgba(139,154,239,.075); }
.chat-conversation-row:hover { background:rgba(45,57,135,.17); }
.chat-conversation-row.active { background:linear-gradient(90deg,rgba(91,70,213,.32),rgba(40,57,135,.20)); box-shadow:inset 0 0 0 1px rgba(147,132,255,.26),0 7px 18px rgba(5,8,54,.13); }
.chat-avatar { width:38px; height:38px; color:#c4c8ff; background:radial-gradient(circle at 35% 30%,rgba(105,91,224,.45),rgba(24,40,107,.58)); }
.chat-conversation-row strong { font:600 13px var(--eien-display); }
.chat-conversation-row small { margin-top:2px; color:#99a3ca; font-size:9px; }
.chat-conversation-row time { font-size:8.5px; color:#a0a9cf; }
.chat-encrypted-section { margin-top:10px; padding-top:9px; }
.chat-encrypted-heading small { display:inline-flex; align-items:center; gap:4px; }
.chat-encrypted-heading small svg { width:12px; height:12px; fill:currentColor; }
.chat-history-content>header.chat-history-header { min-height:68px; padding:12px 16px; }
.chat-history-identity { display:flex; align-items:center; gap:10px; }
.chat-channel-avatar { width:42px; height:42px; display:grid; place-items:center; border-radius:50%; background:radial-gradient(circle at 35% 25%,rgba(125,100,246,.45),rgba(14,34,100,.7)); color:#d5d4ff; }
.chat-channel-avatar svg { width:20px; height:20px; fill:currentColor; }
.chat-history-identity h2 { font:600 20px var(--eien-display); }
.chat-history-tools { display:flex; align-items:center; gap:6px; }
.chat-archive-marker { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:10px; padding:8px 17px 2px; color:#7783b1; font-size:8px; }
.chat-archive-marker span { height:1px; background:rgba(137,152,232,.13); }
.chat-message-list { padding:8px 18px 14px; }
.archive-message { grid-template-columns:36px minmax(0,1fr); gap:10px; padding:9px 0; border-bottom:0; }
.archive-message + .archive-message { border-top:1px solid rgba(132,147,226,.065); }
.archive-message-avatar { width:34px; height:34px; background:linear-gradient(145deg,#5546ba,#243d91); color:#fff; font-weight:700; }
.archive-message-body header { display:flex; align-items:baseline; gap:8px; }
.archive-message header strong { font:600 13px var(--eien-display); color:#f0edff; }
.archive-message time { color:#8792bb; }
.archive-message p { margin:2px 0 0; font-size:10px; line-height:1.48; color:#d6daed; }
.archive-message.action p { color:#c8c9e4; font-style:italic; }
.chat-history-footer { margin-top:auto; display:flex; align-items:center; gap:7px; min-height:35px; padding:0 16px; border-top:1px solid rgba(135,150,231,.09); color:#7f8bb7; font-size:8.5px; }
.chat-history-footer svg { width:14px; height:14px; fill:currentColor; }
.chat-details-pane { padding:15px 14px; }
.chat-details-pane>header { display:flex; align-items:center; justify-content:space-between; padding-bottom:12px; border-bottom:1px solid rgba(137,152,232,.11); }
.chat-details-pane>header h2 { margin:0; font:600 18px var(--eien-display); }
.chat-detail-identity { display:grid; justify-items:center; gap:4px; padding:18px 0 15px; text-align:center; }
.chat-detail-avatar { width:58px; height:58px; display:grid; place-items:center; border-radius:50%; background:radial-gradient(circle at 35% 30%,rgba(121,95,237,.42),rgba(20,39,108,.62)); color:#d7d5ff; }
.chat-detail-avatar svg { width:27px; height:27px; fill:currentColor; }
.chat-detail-identity strong { font:600 16px var(--eien-display); }
.chat-detail-identity small { color:#8994bd; font-size:9px; }
.chat-detail-facts { margin-top:0; padding-top:8px; border-top:1px solid rgba(137,152,232,.09); }
.chat-privacy-note { margin-top:15px; }

/* Authentication: larger branding, ornamental separators, refined fields. */
.auth-card { width:min(560px,calc(100vw - 36px)); padding:30px 38px 32px; background:rgba(6,18,68,.73); }
.auth-card-register { width:min(590px,calc(100vw - 36px)); }
.auth-brand { margin-bottom:8px; }
.auth-brand img { width:146px; height:146px; filter:drop-shadow(0 0 24px rgba(119,104,255,.32)); }
.auth-brand strong { font:700 43px var(--eien-display); letter-spacing:.01em; }
.auth-brand span { font:12px var(--eien-display); color:#d6d8ef; }
.auth-ornament { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:11px; width:min(280px,78%); margin:7px auto 15px; color:#a9a6e7; }
.auth-ornament span,.auth-divider span { height:1px; background:linear-gradient(90deg,transparent,rgba(154,166,244,.36)); }
.auth-ornament span:last-child,.auth-divider span:last-child { background:linear-gradient(90deg,rgba(154,166,244,.36),transparent); }
.auth-ornament b { color:#c7c5ff; font-weight:400; text-shadow:0 0 11px rgba(125,101,255,.6); }
.auth-heading h1 { font:600 29px var(--eien-display); }
.auth-heading p { color:#b0b6d6; }
.auth-field { position:relative; grid-template-columns:24px minmax(0,1fr) auto; min-height:50px; background:rgba(5,17,65,.57); }
.auth-field>svg { fill:#c2c7e9; }
.auth-field-action { width:34px; height:34px; display:grid; place-items:center; padding:0; border:0; border-radius:7px; background:transparent; color:#a8b0d9; cursor:pointer; }
.auth-field-action:hover,.auth-field-action.revealed { color:#fff; background:rgba(94,79,202,.16); }
.auth-field-action svg { width:18px; height:18px; fill:currentColor; }
.auth-form-options { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0 1px; color:#a6aed2; font-size:10px; }
.auth-remember { display:flex; align-items:center; gap:7px; }
.auth-remember input { width:16px; height:16px; accent-color:#7f6cf0; }
.auth-link-button { appearance:none; border:0; padding:4px 0; background:transparent; color:#b29cff; cursor:pointer; font-size:10px; }
.auth-link-button:hover { color:#ddd5ff; }
.auth-submit { min-height:51px; font:600 17px var(--eien-display); }
.auth-submit-mark { font-size:14px; color:#f5f2ff; text-shadow:0 0 10px rgba(255,255,255,.45); }
.auth-divider { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:10px; margin:17px auto 0; width:min(300px,80%); color:#8e97c0; font-size:9px; }
.auth-divider b { font-weight:500; }
.forgot-password-frame { background:linear-gradient(180deg,#0d1d60,#071642)!important; }
.forgot-password-copy { display:grid; justify-items:center; gap:12px; text-align:center; color:#b9bfdc; line-height:1.55; }
.recovery-emblem { width:62px; height:62px; display:grid; place-items:center; border-radius:50%; background:rgba(105,83,226,.22); color:#c6bfff; }
.recovery-emblem svg { width:30px; height:30px; fill:currentColor; }

/* Secure public states: crisper chrome and more deliberate branding. */
.secure-unlock-card { width:min(760px,calc(100vw - 40px)); min-height:0; margin:5dvh auto; padding:27px 44px 32px; background:rgba(5,17,66,.70); backdrop-filter:blur(7px); -webkit-backdrop-filter:blur(7px); }
.secure-unlock-brand img { width:90px; height:90px; }
.secure-unlock-brand strong { font:700 31px var(--eien-display); letter-spacing:.01em; }
.secure-unlock-brand small { font:11px var(--eien-display); color:#d1d5ec; }
.secure-unlock-brand em { padding:7px 10px; background:rgba(73,55,161,.28); }
.secure-unlock-emblem { position:relative; width:90px; height:90px; margin:18px auto 7px; }
.secure-unlock-emblem svg { width:61px; height:61px; }
.secure-unlock-emblem span { position:absolute; inset:0; display:grid; place-items:center; padding-top:2px; color:#fff; font-size:19px; text-shadow:0 0 12px rgba(255,255,255,.55); }
.secure-title-ornament { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:10px; width:220px; margin:0 auto 8px; }
.secure-title-ornament span { height:1px; background:linear-gradient(90deg,transparent,rgba(153,166,244,.34)); }
.secure-title-ornament span:last-child { background:linear-gradient(90deg,rgba(153,166,244,.34),transparent); }
.secure-title-ornament b { color:#c5c1ff; font-weight:400; }
.secure-unlock-copy h1 { font:600 38px var(--eien-display); letter-spacing:-.015em; }
.secure-unlock-facts { gap:8px; margin:14px 0 16px; }
.secure-unlock-facts span { min-height:29px; padding:5px 9px; border:1px solid rgba(150,164,242,.12); background:rgba(14,27,85,.48); }
.secure-clue-field input { border-radius:9px!important; }
.secure-unlock-action { border-radius:9px; font:600 20px var(--eien-display); }
.secure-unavailable-card { width:min(540px,calc(100vw - 40px)); margin:10dvh auto; padding:31px 38px 36px; background:rgba(6,18,68,.74); }
.secure-unavailable-brand { display:flex; align-items:center; justify-content:center; gap:10px; margin-bottom:15px; text-align:left; }
.secure-unavailable-brand img { width:74px; height:74px; }
.secure-unavailable-brand span { display:grid; }
.secure-unavailable-brand strong { font:700 25px var(--eien-display); }
.secure-unavailable-brand small { color:#aeb5d4; font:10px var(--eien-display); }
.secure-unavailable-badge { margin-bottom:14px; }
.secure-unavailable-icon { width:96px; height:96px; margin:6px auto 14px; border:1px solid rgba(151,139,255,.18); box-shadow:0 0 30px rgba(118,88,246,.10); }
.secure-unavailable-icon svg { width:58px; height:58px; }
.secure-unavailable-card h1 { margin:5px 0 7px; font:600 34px var(--eien-display); }
.secure-unavailable-card p { max-width:390px; margin:0 auto 18px; line-height:1.55; }

/* Secure Gallery closer to approved composition without download-oriented controls. */
.secure-gallery-shell { grid-template-columns:245px minmax(0,1fr) 258px; gap:11px; padding:17px; }
.secure-gallery-side,.secure-gallery-main,.secure-gallery-status { background:rgba(5,17,65,.30); border-color:rgba(143,158,243,.18); }
.secure-gallery-side { padding:14px; }
.secure-gallery-logo img { width:62px; height:62px; }
.secure-gallery-logo strong { font:700 25px var(--eien-display); }
.secure-gallery-side section { margin-top:17px; padding:11px; background:rgba(8,20,75,.34); }
.secure-gallery-main { padding:15px; }
.secure-gallery-main>header { padding-bottom:10px; }
.secure-gallery-main h1 { font:600 29px var(--eien-display); }
.secure-gallery-main header p { margin:2px 0 0; color:#aeb5d3; }
.secure-gallery-counters>span { min-width:116px; padding:8px 13px; }
.secure-gallery-counters strong { font:600 24px var(--eien-display); }
.secure-gallery-section-head { margin:12px 0 8px; }
.secure-gallery-section-head h2 { font:600 18px var(--eien-display); }
.secure-canvas-grid { gap:7px; }
.secure-canvas-tile { border-radius:8px; }
.secure-canvas-tile canvas { height:185px; }
.secure-gallery-status { padding:15px 14px; }
.secure-gallery-status>h2 { font:600 17px var(--eien-display); }
.secure-status-block { padding:13px 0; }
.secure-status-block strong { font:600 24px var(--eien-display); }
.secure-image-viewer { background:rgba(1,5,27,.84); backdrop-filter:blur(5px); }
.secure-image-viewer-shell { width:min(1140px,96vw); background:#061443; border-color:rgba(150,134,255,.36); }
.secure-image-viewer-shell>header { height:58px; padding:0 17px; }
.secure-image-viewer-shell>header>strong { font:600 16px var(--eien-display); }
.secure-image-viewer-shell>header>span { display:inline-flex; align-items:center; gap:5px; }
.secure-image-stage { height:min(610px,70dvh); }
.secure-image-viewer-body aside h3 { font:600 17px var(--eien-display); }

@media(max-width:1450px){
  .sidebar-storage { padding:8px 10px; }
  .sidebar-meter { padding:3px 0; }
  .brand-portrait { width:70px; height:70px; }
  .brand-word { font-size:27px; }
  .chat-backup-layout { grid-template-columns:300px minmax(430px,1fr); }
}
@media(max-width:1120px){
  .media-stage-controls { flex-wrap:wrap; }
  .media-controls-spacer { display:none; }
  .media-sort-control { margin-left:auto; }
}
@media(max-width:820px){
  .media-stage-header { display:flex; }
  .media-stage-controls { display:flex; overflow-x:auto; padding-bottom:8px; scrollbar-width:none; }
  .media-stage-controls::-webkit-scrollbar { display:none; }
  .media-filter-group { flex:0 0 auto; }
  .media-load-more { padding-bottom:8px; }
  .chat-backup-layout { grid-template-columns:1fr; }
  .chat-history-pane,.chat-details-pane { display:none; }
  .auth-brand img { width:124px; height:124px; }
  .secure-gallery-shell { padding:9px; }
}
@media(max-width:540px){
  .brand-word { font-size:26px; }
  .media-stage-title h1 { font-size:23px; }
  .media-manage-toggle { width:34px; padding:0; justify-content:center; }
  .media-manage-toggle span { display:none; }
  .auth-card,.auth-card-register { padding:23px 18px 25px; }
  .auth-brand img { width:112px; height:112px; }
  .auth-brand strong { font-size:35px; }
  .auth-form-options { font-size:9px; }
  .secure-unlock-brand img { width:72px; height:72px; }
  .secure-unlock-copy h1 { font-size:30px; }
}

/* v15 public-share polish and state-specific secure endings. */
.public-brand { gap:11px; }
.public-brand img { width:58px; height:58px; filter:drop-shadow(0 0 18px rgba(120,103,255,.22)); }
.public-brand span { font:700 27px var(--eien-display); letter-spacing:.005em; color:#f2f0ff; }
.hosted-share-top { min-height:68px; height:auto; }
.hosted-share-layout { background:rgba(4,15,61,.18); backdrop-filter:none; -webkit-backdrop-filter:none; }
.hosted-share-stage { min-width:0; }
.hosted-share-hero { min-height:min(620px,72dvh); border:1px solid rgba(142,157,239,.13); background:rgba(1,7,30,.34); }
.hosted-share-info { background:rgba(6,18,68,.46); backdrop-filter:blur(7px); -webkit-backdrop-filter:blur(7px); }
.hosted-share-info h1 { font-family:var(--eien-display); font-weight:600; }
.hosted-share-unavailable .public-brand { top:22px; left:28px; }
.hosted-share-unavailable { padding:100px 28px 52px; }
.share-unavailable-icon { border:1px solid rgba(255,151,181,.17); box-shadow:0 0 32px rgba(239,100,153,.10); }
.hosted-share-unavailable h1 { font:600 35px var(--eien-display); }

.secure-unavailable-revoked .secure-unavailable-icon { color:#ff8fae; background:radial-gradient(circle,rgba(238,93,142,.25),rgba(67,61,164,.16) 68%); border-color:rgba(255,143,174,.22); }
.secure-unavailable-expired .secure-unavailable-icon { color:#c8b7ff; background:radial-gradient(circle,rgba(135,101,246,.27),rgba(45,61,154,.14) 68%); }
.secure-unavailable-consumed .secure-unavailable-icon { color:#a9c4ff; background:radial-gradient(circle,rgba(80,134,231,.22),rgba(45,61,154,.12) 68%); }
.secure-unavailable-card .quiet-btn { min-width:142px; }

/* Sharper secure-gallery proportions; protect the image stage from edge collisions. */
.secure-gallery-shell { gap:12px; padding:18px; grid-template-columns:270px minmax(0,1fr) 270px; }
.secure-gallery-side,.secure-gallery-main,.secure-gallery-status { overflow:hidden; background:rgba(5,17,65,.27); backdrop-filter:none; -webkit-backdrop-filter:none; }
.secure-gallery-main { min-width:0; padding:16px; }
.secure-gallery-main>header { gap:16px; }
.secure-gallery-main h1 { font:600 28px var(--eien-display); }
.secure-gallery-counters { flex:0 0 auto; }
.secure-gallery-section-head { margin:13px 0 8px; }
.secure-canvas-grid { gap:7px; }
.secure-canvas-tile { overflow:hidden; background:rgba(3,10,42,.36); }
.secure-canvas-tile canvas { display:block; width:100%; height:clamp(126px,16vh,178px); object-fit:cover; }
.secure-gallery-status { padding:17px; }
.secure-gallery-status h2 { font-family:var(--eien-display); }
.secure-image-viewer-shell { max-width:min(1160px,96vw); max-height:94dvh; }
.secure-image-viewer-shell>header { height:58px; padding:0 20px; }
.secure-image-viewer-shell>header strong { font:600 18px var(--eien-display); white-space:nowrap; }
.secure-image-viewer-body { min-height:0; }
.secure-image-stage { height:min(620px,68dvh); min-width:0; }
.secure-image-stage canvas { display:block; max-width:100%; max-height:100%; }

@media(max-width:540px){
  .public-brand img{width:46px;height:46px}.public-brand span{font-size:23px}
  .secure-unavailable-brand img{width:62px;height:62px}
  .secure-unavailable-card{padding:26px 20px 30px}
}

/* Keep the Media workspace flush to the viewport; long libraries scroll because of content, not stray shell padding. */
body[data-page="media"] .main-content { padding-bottom:0; }
body[data-page="media"] .media-thumb img { max-height:270px; }
body[data-page="media"] .media-load-more { padding-bottom:10px; }

/* v15 screenshot iteration: denser media pagination and richer chat reading rhythm. */
.chat-history-contextbar { min-height:38px; display:flex; align-items:center; gap:9px; padding:0 16px; border-bottom:1px solid rgba(137,152,232,.075); background:rgba(10,23,79,.22); color:#929bc1; font-size:9px; }
.chat-archived-badge { display:inline-flex; align-items:center; gap:5px; padding:5px 8px; border-radius:6px; background:rgba(93,69,209,.40); color:#d9d2ff; font-weight:650; }
.chat-archived-badge svg { width:13px; height:13px; fill:currentColor; }
.chat-context-spacer { flex:1; }
.archive-message { grid-template-columns:40px minmax(0,1fr); gap:11px; padding:11px 0; }
.archive-message-avatar { width:38px; height:38px; font-size:13px; }
.archive-message header strong { font-size:14px; }
.archive-message time { font-size:9px; }
.archive-message p { max-width:760px; font-size:11.5px; line-height:1.52; }
.chat-history-identity h2 { font-size:22px; }
.chat-history-identity p { font-size:9.5px; }
.chat-conversation-row { min-height:61px; }
.chat-conversation-row strong { font-size:13.5px; }
.chat-conversation-row small { font-size:9.5px; }
.chat-detail-facts div { min-height:38px; align-items:center; }
.chat-detail-facts dt,.chat-detail-facts dd { font-size:10px; }
.auth-brand img { width:156px; height:156px; }
.auth-ornament b,.secure-title-ornament b { font-size:15px; }
.auth-card::before,.auth-card::after { content:"✦"; position:absolute; top:188px; color:rgba(193,184,255,.62); font-size:13px; text-shadow:0 0 13px rgba(145,112,255,.55); pointer-events:none; }
.auth-card::before { left:45px; }
.auth-card::after { right:45px; }
@media(max-width:540px){.auth-card::before,.auth-card::after{display:none}.auth-brand img{width:108px;height:108px}}
body[data-page="media"] .media-layout:not(.empty-layout) .media-stage-panel { min-height:0; }
body[data-page="media"] .media-layout:not(.empty-layout) .media-canvas { min-height:0; }
.secure-image-stage canvas { width:100%; height:100%; object-fit:contain; }
.secure-gallery-logo img { width:82px; height:82px; }
.secure-gallery-logo strong { font:700 28px var(--eien-display); }
.secure-gallery-logo small { font-family:var(--eien-display); }

/* v15 final screenshot refinement: keep sparse secure galleries composed and chat backups legible without blurring the artwork. */
.secure-gallery-shell {
  min-height: 0;
  align-items: start;
}
.secure-gallery-side,
.secure-gallery-main,
.secure-gallery-status {
  align-self: start;
}
.secure-gallery-main {
  min-height: 0;
}
.secure-canvas-tile canvas {
  height: clamp(155px, 19vh, 205px);
}
.chat-list-pane,
.chat-history-pane,
.chat-details-pane {
  background: rgba(5,17,65,.34) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
.chat-conversation-row:hover,
.chat-conversation-row.active {
  background: rgba(48,53,137,.36);
}
.archive-message + .archive-message {
  border-top: 1px solid rgba(133,149,232,.075);
}
.secure-unlock-brand img {
  width: 84px;
  height: 84px;
}
.secure-unavailable-brand img {
  width: 82px;
  height: 82px;
}

/* ========================================================================== 
   Eien v16 — detail refinement and product-surface consolidation
   ========================================================================== */
:root{
  --eien-display:Baskerville,"Iowan Old Style","Palatino Linotype","Book Antiqua",Palatino,Georgia,serif;
  --eien-glow:#8f7bff;
  --eien-ice:#a9d7ff;
}

/* Sidebar: less chrome, richer but smaller storage, admin inside profile. */
.sidebar{padding-top:20px;padding-bottom:14px;background:linear-gradient(90deg,rgba(3,9,43,.27),rgba(3,10,47,.07));border-right-color:rgba(132,149,255,.09)}
.brand{min-height:96px}.brand-portrait{width:78px;height:78px}.brand-word{font-size:32px;font-weight:700;letter-spacing:.012em}.brand-copy small{font-size:10.5px;line-height:1.35;color:#e5e6f7}
.nav-list{margin-top:2px}.nav-item{min-height:43px;font-size:14px}.nav-item.active{background:rgba(78,67,172,.32);box-shadow:inset 0 0 0 1px rgba(154,144,255,.22),0 9px 28px rgba(12,12,69,.10)}
.sidebar-storage{margin-top:12px;padding:10px 11px 9px;border-color:rgba(157,171,255,.22);background:linear-gradient(180deg,rgba(8,20,73,.68),rgba(5,15,60,.55));box-shadow:inset 0 1px rgba(255,255,255,.035),0 12px 28px rgba(3,5,32,.12);backdrop-filter:blur(7px)}
.sidebar-storage-title{margin-bottom:4px;font-size:15px}.sidebar-meter{padding:4px 0}.sidebar-meter+.sidebar-meter{border-top-color:rgba(148,162,244,.065)}
.sidebar-meter-row{font-size:9.5px;align-items:center}.sidebar-meter-row>span{display:inline-flex;align-items:center;gap:5px}.sidebar-meter-row small{font-size:8.5px}.storage-icon{width:12px;height:12px;fill:#aebeff;opacity:.92}.mini-progress{height:3px;margin-top:4px;background:rgba(82,95,166,.23)}
.sidebar-storage-mini{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:6px;padding-top:7px;border-top:1px solid rgba(145,159,241,.09)}
.sidebar-storage-mini>div{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 6px;align-items:center}
.sidebar-storage-mini span{display:inline-flex;gap:4px;align-items:center;color:#bfc5e6;font-size:8.5px}.sidebar-storage-mini strong{color:#9fa9d6;font-size:8px;font-weight:500}.sidebar-storage-mini i{grid-column:1/-1;height:3px;border-radius:3px;background:rgba(82,95,166,.22);overflow:hidden}.sidebar-storage-mini i b{display:block;width:var(--meter,0%);height:100%;background:linear-gradient(90deg,#55c4ff,#8f66ff)}
.sidebar-account-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;padding:5px;border:1px solid rgba(145,157,255,.22);border-radius:12px;background:rgba(7,18,68,.61);backdrop-filter:blur(7px)}
.sidebar-account-card.active{border-color:rgba(157,144,255,.35);box-shadow:0 0 20px rgba(101,82,227,.09)}
.sidebar-account{min-height:66px;padding:6px;border:0;background:transparent!important;backdrop-filter:none;grid-template-columns:48px minmax(0,1fr) 18px}.sidebar-account img{width:48px;height:48px}.sidebar-account strong{font-size:17px}.sidebar-account small{font-size:9px}
.sidebar-admin-shortcut{width:54px;display:grid;place-items:center;align-content:center;gap:2px;border-radius:8px;color:#aeb7df;font-size:8px}.sidebar-admin-shortcut .icon{width:18px;height:18px}.sidebar-admin-shortcut:hover,.sidebar-admin-shortcut.active{background:rgba(94,73,207,.30);color:#f2eeff}.sidebar-note{background:rgba(3,11,49,.52);backdrop-filter:blur(3px)}

/* Media: refined command row, action buttons and richer hover metadata. */
.media-stage-header{min-height:56px;padding-bottom:9px}.media-stage-title h1{font-size:28px}.media-stage-controls{padding-top:7px}.media-manage-toggle,.refined-action,.refined-secondary{position:relative;overflow:hidden}
.media-manage-toggle{min-width:108px;height:37px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid rgba(163,151,255,.28);border-radius:9px;background:linear-gradient(180deg,rgba(63,55,153,.58),rgba(35,43,121,.48));color:#edeaff;font:600 12px var(--eien-display);box-shadow:inset 0 1px rgba(255,255,255,.05),0 8px 20px rgba(21,18,91,.12);cursor:pointer}.media-manage-toggle:hover,.media-manage-toggle.active{border-color:rgba(177,164,255,.46);background:linear-gradient(180deg,rgba(103,78,231,.72),rgba(59,60,173,.58));box-shadow:0 0 20px rgba(121,95,244,.16)}
.media-load-more{padding:10px 0 15px}.media-load-more-btn{min-width:176px;height:42px;border-color:rgba(171,159,255,.34);background:linear-gradient(180deg,rgba(91,68,217,.68),rgba(52,53,157,.56));box-shadow:inset 0 1px rgba(255,255,255,.07),0 11px 27px rgba(35,28,121,.18);font-size:14px}.media-load-more-btn:hover{transform:translateY(-1px);border-color:rgba(192,181,255,.48);box-shadow:0 0 24px rgba(110,83,242,.18)}
.media-hover small{line-height:1.35;color:#d0d4ea}.media-selection-bar{border-top-color:rgba(158,171,250,.13);background:linear-gradient(180deg,rgba(7,17,64,.55),rgba(7,16,60,.74));box-shadow:0 -12px 28px rgba(1,5,32,.10)}
.selection-actions .refined-secondary{border:1px solid rgba(147,159,239,.16);background:rgba(12,27,82,.58)}
.reclaim-action{min-height:43px;border:1px solid rgba(172,157,255,.32);background:linear-gradient(135deg,#7358ec,#5046bd)!important;color:#fff!important;font-family:var(--eien-display);font-weight:600;box-shadow:0 0 21px rgba(105,79,232,.16)}
.reclaim-utility{background:linear-gradient(180deg,rgba(8,20,73,.53),rgba(6,17,65,.38))}.reclaim-value{font-family:var(--eien-display);font-size:26px}

/* Auth: lighter environmental panels and a more ornamental, literary hierarchy. */
.auth-card{background:linear-gradient(180deg,rgba(7,20,72,.52),rgba(5,16,61,.43));border-color:rgba(157,170,255,.24);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);box-shadow:0 26px 90px rgba(2,5,34,.25),inset 0 1px rgba(255,255,255,.045)}
.auth-brand img{width:166px;height:166px}.auth-brand strong{font-size:46px;font-weight:700;letter-spacing:.018em}.auth-brand span{font-family:var(--eien-display);font-size:12.5px;font-style:italic;color:#e0e2f4}
.auth-ornament{margin:0 auto 13px}.auth-ornament span{background:linear-gradient(90deg,transparent,rgba(190,190,255,.42),transparent)}.auth-ornament b{color:#c8c8ff;text-shadow:0 0 14px rgba(144,116,255,.55)}
.auth-eyebrow{display:block;margin-bottom:5px;color:#b8b1e8;font:italic 11px var(--eien-display);letter-spacing:.08em}.auth-heading h1{font-size:31px}.auth-heading p{max-width:420px;margin-inline:auto;color:#c6cae1;font:italic 13.5px/1.45 var(--eien-display)}
.auth-field{min-height:52px;background:rgba(4,14,56,.64);border-color:rgba(155,169,255,.25)}.auth-field:focus-within{background:rgba(5,16,63,.76);border-color:#9d8cff;box-shadow:0 0 0 2px rgba(132,109,255,.18),0 0 22px rgba(108,84,232,.12)}
.auth-input-icon{width:29px;height:29px;display:grid;place-items:center;border-radius:8px;background:rgba(84,77,172,.18);color:#c8cef0}.auth-input-icon svg{width:17px;height:17px;fill:currentColor}.auth-field>svg{display:none}.auth-field input,.auth-field textarea{font-size:13px!important;color:#f4f2ff!important}.auth-field input::placeholder,.auth-field textarea::placeholder{color:#9fa7cd}
.auth-submit{border:1px solid rgba(177,164,255,.32);background:linear-gradient(135deg,#7658f0,#5947c9)!important;box-shadow:inset 0 1px rgba(255,255,255,.08),0 0 27px rgba(104,74,238,.22)}.auth-divider span{background:linear-gradient(90deg,transparent,rgba(159,169,231,.35),transparent)}
.auth-approval-note{background:rgba(4,14,55,.45);border-color:rgba(154,167,245,.16)}

/* Chat Backups: closer to the approved three-pane archive composition. */
.chat-backup-layout{grid-template-columns:350px minmax(540px,1fr) 304px;gap:11px}.chat-list-pane,.chat-history-pane,.chat-details-pane{border-color:rgba(146,160,246,.15);background:rgba(5,17,65,.28)!important;box-shadow:inset 0 1px rgba(255,255,255,.018)}
.chat-list-pane{padding:16px 14px}.chat-list-header{display:grid;grid-template-columns:1fr auto;align-items:start}.chat-list-header h1{font-size:23px}.chat-list-header p{color:#aab1d2}.chat-list-search{margin:5px 0 8px;background:rgba(5,17,62,.50);border-color:rgba(139,154,235,.17)}.chat-filter-row{padding-bottom:8px;border-bottom:1px solid rgba(140,155,238,.08)}
.chat-conversation-row{min-height:68px;padding:9px 8px;grid-template-columns:42px minmax(0,1fr) 52px;border-top-color:rgba(134,149,230,.06)}.chat-avatar{width:39px;height:39px;font-family:var(--eien-display);font-size:17px;color:#ece9ff;background:radial-gradient(circle at 35% 25%,rgba(121,94,237,.62),rgba(27,39,106,.64));box-shadow:inset 0 0 0 1px rgba(161,150,255,.17)}.chat-avatar .icon{width:18px;height:18px}.chat-conversation-row.active{background:linear-gradient(90deg,rgba(84,66,200,.40),rgba(37,51,130,.28));box-shadow:inset 0 0 0 1px rgba(150,132,255,.30),0 7px 20px rgba(23,18,94,.11)}.chat-row-copy{gap:3px}.chat-row-copy strong{font:600 14px var(--eien-display)}.chat-row-copy small{font-size:9.5px}.chat-row-meta{display:grid;justify-items:end;gap:3px}.chat-row-meta time{font-size:8px;color:#a2abd1}.chat-row-meta small{font-size:7.5px;color:#707cad}
.chat-history-content>header{padding:14px 17px;background:rgba(7,19,69,.30)}.chat-channel-avatar{width:44px;height:44px;background:radial-gradient(circle,rgba(93,84,209,.48),rgba(24,39,107,.50));border:1px solid rgba(152,145,255,.18)}.chat-history-contextbar{background:rgba(6,18,65,.26);border-bottom-color:rgba(140,154,234,.07)}.chat-archive-marker{padding:14px 18px 3px}.chat-message-list{padding:8px 18px 18px}.chat-date-separator{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin:7px 0 3px}.chat-date-separator span{height:1px;background:rgba(138,153,234,.11)}.chat-date-separator time{color:#8994c0;font:italic 9px var(--eien-display)}
.archive-message{padding:10px 3px;border-top:0!important}.archive-message-avatar{background:linear-gradient(145deg,#5646b2,#2d438d);box-shadow:inset 0 0 0 1px rgba(164,152,255,.18)}.archive-message-body{min-width:0}.archive-message header{align-items:baseline}.archive-message header strong{font-size:14px}.archive-message p{font-size:11.5px;line-height:1.55;color:#e0e2f1}.archive-message.action p{color:#c8cae4;font-style:italic}.archive-message.system{padding:8px 10px;margin:3px 0;border-radius:7px;background:rgba(80,72,176,.12)}
.chat-details-pane{padding:16px 15px}.chat-details-pane>header{padding-bottom:10px;border-bottom:1px solid rgba(142,156,236,.09)}.chat-detail-identity{padding:14px 8px 16px;text-align:center;border-bottom:1px solid rgba(140,155,237,.08)}.chat-detail-avatar{margin:0 auto 7px;width:54px;height:54px}.chat-detail-section{padding:14px 0;border-bottom:1px solid rgba(140,155,237,.08)}.chat-detail-section h3{margin:0 0 7px;font:600 14px var(--eien-display);color:#edeaff}.chat-detail-facts>div{padding:5px 0}.chat-local-size{display:grid;gap:7px}.chat-local-size>span{display:flex;align-items:center;gap:7px}.chat-local-size .icon{width:17px;height:17px;color:#afa8ff}.chat-local-size small{color:#7f8bb9;font-size:8.5px;line-height:1.45}.chat-privacy-note{margin-top:14px;padding:12px;border:1px solid rgba(143,158,238,.11);border-radius:8px;background:rgba(7,19,68,.28)}

/* Admin: visually richer, but intentionally retains only the basic operational controls. */
.admin-view{background:rgba(5,16,60,.20);border:1px solid rgba(145,159,239,.12);border-radius:13px;padding:16px}.admin-title{padding:2px 2px 13px;border-bottom:1px solid rgba(143,158,238,.08)}.admin-title h1{font-size:28px}.admin-title p{color:#aeb5d2;font-family:var(--eien-display);font-style:italic}.admin-overview-strip{gap:9px;margin:12px 0}.admin-overview-strip>div{min-height:68px;padding:12px 14px;background:linear-gradient(180deg,rgba(18,31,95,.50),rgba(8,21,70,.36));border-color:rgba(151,164,246,.14);box-shadow:inset 0 1px rgba(255,255,255,.025)}.admin-overview-strip strong{font:600 23px var(--eien-display)}.admin-tabs{padding:0 2px;border-bottom:1px solid rgba(143,158,238,.10)}.admin-tabs .tab{font-family:var(--eien-display)}.panel-toolbar{padding:11px 2px 8px}.admin-users-table{background:rgba(3,13,52,.20)}.admin-users-table thead{background:rgba(9,22,76,.38)}.admin-users-table tbody tr:hover{background:rgba(46,51,129,.22)}.admin-users-table tbody tr:focus-within{box-shadow:inset 3px 0 #8671ff}.admin-user-sheet{background:linear-gradient(180deg,rgba(7,18,69,.94),rgba(4,14,55,.96))}.admin-user-hero{padding:15px;background:linear-gradient(135deg,rgba(76,59,178,.29),rgba(26,44,119,.20));border:1px solid rgba(154,144,255,.14)}.admin-user-hero img{width:82px;height:82px}.admin-user-hero strong{font-size:23px}.admin-detail-section{padding:15px 0}.admin-control-grid .btn,.admin-recovery-row .btn{min-height:40px;border:1px solid rgba(143,157,239,.13);background:rgba(11,25,78,.48)}.admin-control-grid .btn.danger{border-color:rgba(255,115,135,.22)}.quota-grid input{background:rgba(5,16,60,.60)}

/* Secure public surfaces: crisper hierarchy, less muddy blur, more precise glass. */
.secure-unlock-card{width:min(780px,calc(100vw - 40px));padding:26px 45px 34px;background:linear-gradient(180deg,rgba(5,17,65,.48),rgba(4,14,55,.40));border-color:rgba(158,170,255,.24);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);box-shadow:0 25px 90px rgba(1,4,31,.25),inset 0 1px rgba(255,255,255,.04)}.secure-unlock-brand img{width:94px;height:94px}.secure-unlock-brand strong{font-size:34px}.secure-unlock-brand small{font-style:italic}.secure-unlock-brand em{border-color:rgba(166,151,255,.27);background:rgba(63,51,146,.27);font-family:var(--eien-display);letter-spacing:.04em}.secure-unlock-emblem{width:92px;height:92px;margin-top:22px;border:1px solid rgba(151,130,255,.20);background:radial-gradient(circle,rgba(111,83,235,.38),rgba(49,63,164,.08) 61%,transparent 64%);box-shadow:0 0 32px rgba(114,84,243,.16)}.secure-unlock-emblem svg{width:56px;height:56px}.secure-unlock-copy h1{font-size:40px}.secure-unlock-copy p{font:italic 13px var(--eien-display);color:#c9cce0}.secure-title-ornament span,.secure-unavailable-ornament span{height:1px;background:linear-gradient(90deg,transparent,rgba(187,185,255,.42),transparent)}.secure-clue-field{min-height:54px;background:rgba(4,15,59,.64);border-color:rgba(160,173,255,.27)}.secure-clue-field:focus-within{border-color:#9e8bff;box-shadow:0 0 0 2px rgba(132,109,255,.17)}.secure-unlock-action{min-height:56px;border:1px solid rgba(182,168,255,.32);background:linear-gradient(135deg,#7658f0,#5747c4)!important;box-shadow:inset 0 1px rgba(255,255,255,.08),0 0 30px rgba(106,77,236,.22)}
.secure-unavailable-card{background:linear-gradient(180deg,rgba(6,18,68,.52),rgba(5,15,57,.42));border-color:rgba(155,168,255,.22);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.secure-unavailable-brand img{width:92px;height:92px}.secure-unavailable-icon{width:94px;height:94px;margin-top:14px;border-width:1px}.secure-unavailable-icon svg{width:50px;height:50px}.secure-unavailable-ornament{width:min(220px,75%);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:9px;margin:10px auto 6px;color:#c2bbff}.secure-unavailable-card h1{font-size:37px}.secure-unavailable-card p{color:#c1c6de;font:italic 13px/1.55 var(--eien-display)}.secure-unavailable-card .quiet-btn{border:1px solid rgba(151,164,244,.18);background:rgba(12,27,82,.46)}
.secure-gallery-shell{grid-template-columns:252px minmax(0,1fr) 252px;gap:12px;padding:18px 20px;background:transparent}.secure-gallery-side,.secure-gallery-main,.secure-gallery-status{background:linear-gradient(180deg,rgba(5,17,65,.32),rgba(5,15,57,.24));border-color:rgba(151,164,243,.16);box-shadow:inset 0 1px rgba(255,255,255,.018)}.secure-gallery-logo img{width:88px;height:88px}.secure-gallery-logo strong{font-size:30px}.secure-gallery-kicker,.secure-viewer-kicker{display:block;margin-bottom:4px;color:#a9a4df;font:italic 9px var(--eien-display);letter-spacing:.08em;text-transform:uppercase}.secure-gallery-main>header{align-items:center;border-bottom:1px solid rgba(145,159,239,.08)}.secure-gallery-main h1{font-size:30px}.secure-gallery-counters>span{background:rgba(9,22,78,.45);border:1px solid rgba(149,162,243,.13);border-radius:8px}.secure-gallery-counters strong{font-size:25px}.secure-gallery-section-head{padding-top:4px}.secure-canvas-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px}.secure-canvas-tile{border:1px solid rgba(146,161,241,.13);box-shadow:0 9px 25px rgba(1,5,34,.12)}.secure-canvas-tile:hover{border-color:rgba(171,158,255,.42);transform:translateY(-1px)}.secure-gallery-status{padding:16px}.secure-status-block{padding:11px 0}.secure-status-check{padding:11px 0}.secure-status-note{display:grid;grid-template-columns:23px 1fr;gap:8px;margin-top:8px;padding:11px;border:1px dashed rgba(159,171,248,.16);border-radius:8px;color:#aca7e6}.secure-status-note p{margin:0;color:#929bc2;font:italic 9.5px/1.45 var(--eien-display)}
.secure-image-viewer{background:rgba(1,5,25,.80);backdrop-filter:blur(3px)}.secure-image-viewer-shell{background:linear-gradient(180deg,#071849,#06133c);border-color:rgba(161,145,255,.34);box-shadow:0 30px 110px rgba(0,2,25,.60),0 0 30px rgba(109,83,234,.11)}.secure-image-viewer-shell>header{background:rgba(4,14,53,.48);border-bottom:1px solid rgba(149,162,242,.11)}.secure-image-viewer-shell>header>span{padding:6px 9px;border-radius:7px;background:rgba(46,46,129,.28)}.secure-image-stage{background:radial-gradient(circle at 50% 45%,rgba(63,78,159,.15),rgba(1,7,31,.55) 70%);border-radius:8px;overflow:hidden}.secure-image-viewer-body aside{background:rgba(8,21,71,.48);border-left:1px solid rgba(148,162,242,.10)}.secure-image-viewer-body aside h3{margin-top:3px}.secure-viewer-privacy{display:flex;gap:7px;align-items:center;margin-top:15px;padding:10px;border:1px solid rgba(144,158,238,.13);border-radius:8px;color:#b9c1e4;font-size:9px}.secure-viewer-privacy svg{width:16px;height:16px;fill:#9d91ff}.secure-image-filmstrip{background:rgba(3,12,46,.60);border-top:1px solid rgba(146,160,240,.10)}

/* Public hosted viewer follows the same lighter environmental treatment. */
.hosted-share-layout{background:rgba(4,15,61,.12);border-color:rgba(145,159,238,.13)}.hosted-share-info{background:rgba(6,18,68,.34);backdrop-filter:blur(3px)}

@media(max-width:1450px){.chat-backup-layout{grid-template-columns:315px minmax(470px,1fr) 274px}.sidebar-storage{padding:8px 9px}.sidebar-meter{padding:3px 0}}
@media(max-width:820px){.sidebar-account-card{grid-template-columns:1fr auto}.chat-backup-layout{grid-template-columns:1fr}.secure-gallery-shell{grid-template-columns:1fr}.secure-gallery-side,.secure-gallery-status{display:none}.secure-gallery-main{width:100%}.auth-brand img{width:132px;height:132px}.secure-unlock-card{padding:25px 22px}}
@media(max-width:540px){.brand-portrait{width:68px;height:68px}.brand-word{font-size:28px}.sidebar-storage-mini{grid-template-columns:1fr 1fr}.auth-brand img{width:116px;height:116px}.auth-brand strong{font-size:38px}.auth-heading h1{font-size:27px}.auth-heading p{font-size:12px}.secure-unlock-brand img{width:76px;height:76px}.secure-unlock-copy h1{font-size:31px}.secure-unavailable-brand img{width:72px;height:72px}.secure-unavailable-card h1{font-size:31px}}

/* v16 screenshot refinement: secure image inspector should hug its content. */
.secure-image-viewer-body{align-items:start}
.secure-image-viewer-body aside{align-self:start;min-height:0;height:auto;border-bottom:1px solid rgba(148,162,242,.10);border-radius:0 0 8px 8px}
.secure-image-meta{display:block;margin:2px 0 12px;color:#9aa4cb;font-size:9px;letter-spacing:.02em}

/* v16 final inspector refinements */
.admin-mini-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0 18px}.admin-mini-facts span{display:grid;gap:3px;padding:10px 11px;border:1px solid rgba(145,158,235,.12);border-radius:8px;background:rgba(12,27,81,.28)}.admin-mini-facts small{font-size:9px;color:#8995bd}.admin-mini-facts strong{font:600 14px var(--eien-display);color:#e8e9fa}.secure-viewer-facts{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:14px 0}.secure-viewer-facts span{display:grid;gap:3px;padding:9px;border:1px solid rgba(145,158,235,.12);border-radius:7px;background:rgba(17,32,91,.34)}.secure-viewer-facts small{font-size:8px;color:#8995bd}.secure-viewer-facts strong{font:600 11px var(--eien-display);color:#e5e3fa}.secure-image-meta{display:block;margin-top:5px;color:#8995bd;font-size:9px}.secure-image-viewer-body aside{max-width:235px}.secure-image-viewer-body{grid-template-columns:minmax(0,1fr) 235px}

/* ---------------------------------------------------------------------
   Eien v17 — page-by-page refinement audit
   --------------------------------------------------------------------- */

/* Sidebar profile: one large account control with a real popout. */
.sidebar-account-card,.sidebar-admin-shortcut{display:none!important}
.sidebar-profile-menu{position:relative;margin-top:9px}
.sidebar-profile-menu>summary{list-style:none;cursor:pointer}
.sidebar-profile-menu>summary::-webkit-details-marker{display:none}
.sidebar-profile-menu .sidebar-account{min-height:70px;display:grid;grid-template-columns:48px minmax(0,1fr) 20px;align-items:center;gap:10px;padding:8px 10px;border:1px solid rgba(148,160,244,.22);border-radius:10px;background:rgba(8,20,72,.66);box-shadow:inset 0 1px rgba(255,255,255,.035);color:#f1efff;text-decoration:none}
.sidebar-profile-menu .sidebar-account img{width:48px;height:48px;border-radius:50%;object-fit:cover;filter:drop-shadow(0 0 9px rgba(129,105,255,.2))}
.sidebar-profile-menu .sidebar-account span{display:grid;gap:1px;min-width:0}
.sidebar-profile-menu .sidebar-account strong{font:600 16px var(--eien-display);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sidebar-profile-menu .sidebar-account small{font-size:9px;color:#aab2d5}
.profile-menu-chevron{width:18px;height:18px;transition:transform .18s ease}
.sidebar-profile-menu[open] .profile-menu-chevron{transform:rotate(180deg)}
.sidebar-profile-menu.active .sidebar-account,.sidebar-profile-menu[open] .sidebar-account{border-color:rgba(169,153,255,.36);background:rgba(25,33,105,.72)}
.sidebar-profile-popout{position:absolute;z-index:80;left:0;right:0;bottom:calc(100% + 9px);display:grid;padding:6px;border:1px solid rgba(155,167,247,.23);border-radius:11px;background:rgba(6,17,65,.96);box-shadow:0 20px 55px rgba(0,3,32,.42),inset 0 1px rgba(255,255,255,.035)}
.sidebar-profile-popout a,.sidebar-profile-popout button{appearance:none;width:100%;display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px;align-items:center;padding:9px 10px;border:0;border-radius:7px;background:transparent;color:#e7e8fb;text-align:left;text-decoration:none;cursor:pointer;font:inherit}
.sidebar-profile-popout a:hover,.sidebar-profile-popout button:hover{background:rgba(72,66,170,.28)}
.sidebar-profile-popout .icon{width:18px;height:18px;color:#b8b0ff}
.sidebar-profile-popout span{display:grid;gap:1px}.sidebar-profile-popout strong{font-size:10px}.sidebar-profile-popout small{font-size:8px;color:#8792bd}

/* Storage: denser but more authored. */
.sidebar-storage{padding:9px 11px 8px!important;background:linear-gradient(180deg,rgba(7,18,68,.66),rgba(5,15,57,.55))!important;border-color:rgba(157,171,255,.25)!important;box-shadow:inset 0 1px rgba(255,255,255,.04),0 12px 34px rgba(1,5,33,.11)}
.sidebar-storage-title{font-size:17px!important;letter-spacing:.01em}.storage-snow{color:#c5bbff;text-shadow:0 0 12px rgba(159,139,255,.5)}
.sidebar-meter{padding:3px 0!important}.sidebar-meter-row{font-size:9px!important}.sidebar-meter-row small{font-size:8px!important;color:#b6bfdf}.mini-progress{height:3px!important;background:rgba(55,68,133,.42)!important}.mini-progress span{box-shadow:0 0 8px rgba(103,104,255,.24)}
.sidebar-storage-mini{margin-top:3px;padding-top:5px;border-top:1px solid rgba(146,160,238,.10)}
.sidebar-storage-mini>div{padding:2px 0}.sidebar-storage-mini span,.sidebar-storage-mini strong{font-size:7.8px!important}.sidebar-storage-mini i{height:2px!important}

/* Auth-grade action primitive, shared by Media actions. */
.auth-grade-action{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:0 22px;border:1px solid rgba(190,179,255,.42)!important;border-radius:9px!important;background:linear-gradient(135deg,rgba(121,88,242,.96),rgba(76,66,189,.94))!important;color:#fff!important;font:600 15px var(--eien-display)!important;letter-spacing:.005em;box-shadow:inset 0 1px rgba(255,255,255,.13),0 0 0 1px rgba(103,86,222,.08),0 10px 28px rgba(37,28,129,.23),0 0 26px rgba(112,82,244,.13);text-shadow:0 1px rgba(0,0,0,.2);transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease,filter .15s ease}
.auth-grade-action::after{content:"";position:absolute;inset:1px;border-radius:7px;background:linear-gradient(180deg,rgba(255,255,255,.06),transparent 45%);pointer-events:none}
.auth-grade-action:hover:not(:disabled){transform:translateY(-1px);border-color:rgba(211,201,255,.60)!important;box-shadow:inset 0 1px rgba(255,255,255,.16),0 13px 30px rgba(37,28,129,.28),0 0 30px rgba(118,88,251,.20)}
.auth-grade-action:disabled{opacity:.46;filter:saturate(.6);box-shadow:none;cursor:not-allowed}
.action-flourish{font-size:14px;color:#eee9ff;text-shadow:0 0 10px rgba(222,213,255,.68)}
.media-load-more{display:flex;justify-content:center;padding:14px 0 16px!important}.media-load-more-btn{min-width:198px!important;height:46px!important}.media-load-more-btn .icon{width:18px;height:18px}.media-load-more-label{position:relative;z-index:1}
.reclaim-action{width:100%;min-height:48px!important;margin:12px auto 0!important;text-align:center!important}.reclaim-action span{position:relative;z-index:1}.reclaim-utility .reclaim-action{display:flex!important;justify-content:center!important;align-items:center!important}

/* Manage selected bar: stronger contrast, more deliberate footer. */
.media-selection-bar{min-height:72px!important;margin-top:10px!important;padding:11px 14px!important;border:1px solid rgba(161,171,249,.22)!important;border-radius:10px!important;background:linear-gradient(180deg,rgba(15,30,91,.82),rgba(7,20,69,.74))!important;box-shadow:inset 0 1px rgba(255,255,255,.04),0 10px 28px rgba(1,5,34,.16)!important}
.media-selection-bar>div:first-child{min-width:145px;padding-right:14px;border-right:1px solid rgba(159,172,248,.14)}
.media-selection-bar>div:first-child strong{font:600 17px var(--eien-display);color:#f3f0ff}.media-selection-bar>div:first-child span{margin-top:2px;color:#b4bddf!important;font-size:9.5px!important}
.selection-actions{gap:8px!important}.selection-actions .btn{min-height:40px;border-radius:8px}.selection-actions .refined-secondary{background:rgba(16,31,91,.78)!important;border-color:rgba(153,166,245,.20)!important}

/* Login: one welcome, stronger rhythm, less copy. */
.auth-card{background:linear-gradient(180deg,rgba(7,20,70,.58),rgba(5,15,57,.48))!important;border-color:rgba(159,171,255,.24)!important;backdrop-filter:blur(3px)!important;-webkit-backdrop-filter:blur(3px)!important}
.auth-card-login{padding-top:31px!important}.auth-heading{margin-top:11px!important}.auth-heading h1{font-size:32px!important;margin-bottom:7px!important}.auth-heading p{font-size:13px!important;line-height:1.45!important;color:#c2c7df!important}.auth-eyebrow{display:none!important}
.auth-divider{margin-top:19px!important}.auth-divider span{background:linear-gradient(90deg,transparent,rgba(180,181,245,.38),transparent)!important}.auth-divider b{font:italic 11px var(--eien-display);color:#c8c3e9}
.auth-field{border-color:rgba(151,164,247,.25)!important;background:rgba(6,18,66,.58)!important}.auth-field:focus-within{border-color:rgba(166,147,255,.68)!important;box-shadow:0 0 0 2px rgba(132,109,255,.15),0 0 20px rgba(106,83,235,.11)!important}.auth-input-icon{width:29px!important;height:29px!important;border-radius:7px!important;background:rgba(60,62,146,.33)!important;box-shadow:inset 0 0 0 1px rgba(162,164,244,.08)}
.auth-form-options{padding:1px 2px}.auth-remember span,.auth-link-button{font-size:9.5px!important}.auth-submit{min-height:50px!important;font-size:18px!important}.auth-submit-mark{font-size:14px}

/* Secure unavailable: rebuilt to match the approved cinematic state mockup. */
.secure-unavailable-page{display:grid;place-items:center;padding:30px}
.secure-unavailable-card{width:min(620px,calc(100vw - 40px))!important;min-height:540px;margin:0!important;padding:26px 34px 30px!important;display:grid;grid-template-rows:auto 1fr auto auto auto auto;align-content:center;border-radius:15px!important;background:linear-gradient(180deg,rgba(7,20,71,.58),rgba(5,15,57,.46))!important;border:1px solid rgba(158,171,255,.28)!important;box-shadow:0 30px 100px rgba(0,3,31,.30),inset 0 1px rgba(255,255,255,.04)!important;backdrop-filter:blur(3px)!important;-webkit-backdrop-filter:blur(3px)!important;text-align:center}
.secure-unavailable-head{display:flex;align-items:center;justify-content:space-between;gap:20px;text-align:left}
.secure-unavailable-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#fff}.secure-unavailable-brand img{width:84px!important;height:84px!important;filter:drop-shadow(0 0 12px rgba(129,104,255,.2))}.secure-unavailable-brand span{display:grid;gap:2px}.secure-unavailable-brand strong{font:600 30px var(--eien-display)}.secure-unavailable-brand small{font:italic 10px/1.35 var(--eien-display);color:#c1c5df}
.secure-unavailable-badge{margin:0!important;display:inline-flex;align-items:center;gap:5px;padding:7px 10px!important;border:1px solid rgba(153,133,255,.28);background:rgba(73,55,163,.28)!important;color:#c8baff!important;letter-spacing:.045em;text-transform:uppercase}.secure-unavailable-badge svg{width:13px;height:13px}
.secure-unavailable-visual{position:relative;min-height:188px;display:grid;place-items:center;align-content:center}.secure-unavailable-visual::before{content:"";position:absolute;width:170px;height:170px;border-radius:50%;background:radial-gradient(circle,rgba(119,86,247,.18),rgba(62,65,162,.07) 48%,transparent 70%);filter:blur(3px)}
.secure-unavailable-icon{position:relative;width:116px!important;height:116px!important;margin:0!important;border:1px solid rgba(157,143,255,.30)!important;background:radial-gradient(circle,rgba(100,76,219,.30),rgba(28,43,126,.18) 64%,transparent 66%)!important;box-shadow:0 0 38px rgba(105,79,236,.18),inset 0 0 25px rgba(151,139,255,.05)}
.secure-unavailable-icon::after{content:"";position:absolute;inset:-13px;border:1px solid rgba(154,148,255,.10);border-radius:50%}.secure-unavailable-icon svg{width:64px!important;height:64px!important;filter:drop-shadow(0 0 13px currentColor)}
.secure-unavailable-revoked .secure-unavailable-icon{color:#ff8aa9!important;background:radial-gradient(circle,rgba(190,66,126,.22),rgba(79,42,122,.13) 65%,transparent 67%)!important}.secure-unavailable-expired .secure-unavailable-icon{color:#c2adff!important}.secure-unavailable-consumed .secure-unavailable-icon{color:#9fc4ff!important}
.secure-unavailable-spark{position:absolute;color:#d8d1ff;text-shadow:0 0 14px rgba(185,169,255,.7)}.secure-unavailable-spark.s1{transform:translate(-76px,-55px);font-size:16px}.secure-unavailable-spark.s2{transform:translate(72px,52px);font-size:12px}
.secure-unavailable-ornament{width:min(300px,75%)!important;margin:0 auto 7px!important}.secure-unavailable-card h1{margin:0 0 8px!important;font:600 39px var(--eien-display)!important;color:#f6f1ff}.secure-unavailable-card p{max-width:430px!important;margin:0 auto 18px!important;font:italic 13px/1.55 var(--eien-display)!important;color:#c4c9df!important}
.secure-unavailable-state{width:min(300px,85%);min-height:48px;margin:0 auto 14px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid rgba(143,156,238,.16);border-radius:8px;background:rgba(26,37,95,.48);color:#9ba6cf;font-size:11px}.secure-unavailable-state svg{width:17px;height:17px;fill:currentColor}
.secure-unavailable-back{display:inline-flex;align-items:center;justify-content:center;gap:4px;margin:auto;color:#c8bbff;text-decoration:none;font-size:10px}.secure-unavailable-back svg{width:16px;height:16px;fill:currentColor}.secure-unavailable-back:hover{color:#fff}

/* Secure gallery: more deliberate three-zone hierarchy. */
.secure-gallery-shell{grid-template-columns:250px minmax(0,1fr) 270px!important;gap:13px!important;padding:18px 22px!important;align-items:start!important}
.secure-gallery-side,.secure-gallery-main,.secure-gallery-status{background:linear-gradient(180deg,rgba(5,17,65,.42),rgba(5,15,57,.30))!important;border-color:rgba(154,167,247,.20)!important;box-shadow:inset 0 1px rgba(255,255,255,.025),0 14px 38px rgba(0,4,31,.11)!important}
.secure-gallery-side{padding:15px!important}.secure-gallery-logo img{width:80px!important;height:80px!important}.secure-gallery-logo strong{font-size:29px!important}.secure-unlocked-summary{margin-top:18px!important;padding:14px!important}.secure-unlocked-summary h2{font-size:14px!important}.secure-unlocked-summary p{font-size:9.5px!important;line-height:1.45}.secure-side-facts{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:11px}.secure-side-facts span{display:grid;padding:8px;border-radius:7px;background:rgba(15,30,90,.52)}.secure-side-facts small{font-size:7.5px;color:#8490bf}.secure-side-facts strong{font-size:9.5px}.secure-side-note{display:grid!important;grid-template-columns:25px 1fr;gap:8px!important;margin-top:10px!important;padding:11px!important}.secure-side-note>svg{width:20px;height:20px;fill:#aa9bff}.secure-side-note>span{display:grid;gap:2px}.secure-side-note strong{font-size:9.5px}.secure-side-note small{font-size:8px;color:#8c97c2;line-height:1.4}
.secure-gallery-main{padding:17px!important}.secure-gallery-main>header{padding-bottom:14px!important}.secure-gallery-main h1{font-size:31px!important}.secure-gallery-kicker{font-size:8.5px!important}.secure-gallery-counters{gap:7px!important;background:transparent!important;border:0!important}.secure-gallery-counters>span{min-width:116px!important;padding:9px 13px!important}.secure-gallery-counters small{font-size:8px!important}.secure-gallery-counters strong{font-size:25px!important}.secure-gallery-section-head{display:grid!important;grid-template-columns:auto auto 1fr;align-items:end!important;gap:8px!important}.secure-gallery-section-head h2{font-size:17px!important}.secure-gallery-section-head>span{padding-bottom:2px}.secure-gallery-section-head>small{justify-self:end;color:#7f8bb8;font:italic 8px var(--eien-display)}.secure-canvas-grid{grid-template-columns:repeat(auto-fit,minmax(185px,1fr))!important;gap:9px!important}.secure-canvas-tile{border-radius:8px!important;background:rgba(7,20,71,.62)!important;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}.secure-canvas-tile:hover{transform:translateY(-2px)!important;box-shadow:0 11px 28px rgba(0,3,30,.20)!important}.secure-canvas-tile canvas{height:185px!important}
.secure-gallery-status{padding:15px!important}.secure-status-title{display:flex;align-items:center;gap:7px;padding:0 0 11px;border-bottom:1px solid rgba(147,160,240,.11)}.secure-status-title svg{width:17px;height:17px;fill:#c1b6ff}.secure-status-title h2{margin:0;font-size:16px}.secure-status-title>span{margin-left:auto;color:#bab0ff}.secure-status-block.primary{padding:14px 0!important}.secure-status-block.primary strong{font-size:26px!important}.secure-status-check{grid-template-columns:25px 1fr!important}.secure-status-check svg{width:21px!important;height:21px!important}.secure-status-note{margin-top:7px!important}

/* Secure image viewer: clearer header, centered content, useful compact rail. */
.secure-image-viewer{backdrop-filter:blur(2px)!important;-webkit-backdrop-filter:blur(2px)!important}.secure-image-viewer-shell{width:min(1180px,96vw)!important;border-radius:13px!important;overflow:hidden}.secure-image-viewer-shell>header{height:61px!important;gap:11px!important;padding:0 18px!important}.secure-image-viewer-shell>header strong{font-size:19px!important}.secure-image-viewer-shell>header>span{min-height:34px;padding:6px 10px!important;border:1px solid rgba(150,163,243,.13);background:rgba(27,38,104,.43)!important}.secure-image-viewer-shell>header>span:first-of-type{margin-left:auto!important}.secure-image-viewer-shell>header b{background:rgba(97,71,223,.28)!important;border:1px solid rgba(157,140,255,.20)}.secure-image-viewer-body{grid-template-columns:minmax(0,1fr) 230px!important;gap:13px!important;padding:14px!important;align-items:start!important}.secure-image-stage{height:min(650px,72dvh)!important;border:1px solid rgba(147,161,239,.10);box-shadow:inset 0 0 70px rgba(14,28,82,.15)}.secure-image-viewer-body aside{align-self:start!important;padding:15px!important;border-radius:9px!important}.secure-image-viewer-body aside>strong{display:block;margin:5px 0 3px;font:600 16px var(--eien-display);color:#f0edff}.secure-image-meta{display:block;color:#9ba5cc;font-size:8.5px}.secure-viewer-facts{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:13px 0}.secure-viewer-facts span{display:grid;padding:8px;border-radius:7px;background:rgba(18,32,92,.58)}.secure-viewer-facts small{font-size:7.5px;color:#7f8bb7}.secure-viewer-facts strong{font-size:9.5px}.secure-image-viewer-body aside p{margin:12px 0 0!important;font:italic 9px/1.55 var(--eien-display)!important;color:#9da6ca!important}.secure-image-filmstrip{padding:9px 14px 13px!important}.secure-filmstrip-item{height:76px!important;border-radius:7px!important}.secure-filmstrip-item.active{box-shadow:0 0 0 1px #fff,0 0 16px rgba(126,94,255,.32)!important}

/* Chat Backups: closer to the approved archive mockup, but still local/E2EE-safe. */
.chat-backup-layout{grid-template-columns:335px minmax(560px,1fr) 292px!important;gap:12px!important}.chat-list-pane,.chat-history-pane,.chat-details-pane{background:linear-gradient(180deg,rgba(5,17,65,.50),rgba(4,14,55,.38))!important;border-color:rgba(149,163,244,.19)!important;box-shadow:inset 0 1px rgba(255,255,255,.025),0 12px 34px rgba(0,4,31,.10)!important}
.chat-list-header{padding-bottom:12px!important;border-bottom:1px solid rgba(145,159,239,.09)}.chat-list-header h1{font-size:20px!important}.chat-list-header p{font-size:9px!important;color:#929cc7!important}.chat-list-search{margin-top:10px!important;background:rgba(6,18,66,.50)!important;border-color:rgba(148,161,242,.18)!important}.chat-filter-row{padding-bottom:9px;border-bottom:1px solid rgba(142,156,236,.08)}
.chat-conversation-row{min-height:70px!important;padding:9px 9px!important;border-radius:8px!important;border:1px solid transparent!important;margin:3px 0!important}.chat-conversation-row:hover{background:rgba(36,46,123,.28)!important}.chat-conversation-row.active{border-color:rgba(150,133,255,.36)!important;background:linear-gradient(90deg,rgba(91,69,217,.42),rgba(30,46,127,.36))!important;box-shadow:0 8px 22px rgba(22,16,91,.12),inset 0 1px rgba(255,255,255,.025)!important}.chat-row-copy strong{font-size:14.5px!important}.chat-row-copy small{font-size:9px!important;color:#aab2d3!important}.chat-row-meta time{font-size:8.3px!important;color:#afb6d7!important}.chat-row-meta small{font-size:7.5px!important;color:#7783ae!important}
.chat-history-content>header{min-height:72px!important;padding:13px 16px!important;border-bottom:1px solid rgba(146,160,240,.09)}.chat-channel-avatar{width:46px!important;height:46px!important;box-shadow:inset 0 0 0 1px rgba(160,148,255,.17),0 0 18px rgba(104,81,236,.10)}.chat-history-identity h2{font-size:20px!important}.chat-history-identity p{font-size:8.8px!important;color:#8d98c3!important}.chat-history-contextbar{min-height:43px!important;padding:7px 16px!important}.chat-archived-badge{border:1px solid rgba(160,145,255,.18);background:rgba(83,63,198,.45)!important}.chat-message-list{padding:10px 18px 24px!important}.archive-message{grid-template-columns:39px minmax(0,1fr)!important;gap:10px!important;padding:10px 0!important;border-bottom:1px solid rgba(143,157,237,.08)}.archive-message:last-child{border-bottom:0}.archive-message-avatar{width:37px!important;height:37px!important;font:600 14px var(--eien-display)!important;background:linear-gradient(145deg,rgba(109,81,226,.68),rgba(50,61,155,.72))!important;box-shadow:inset 0 0 0 1px rgba(171,157,255,.13)}.archive-message-body header{display:flex;align-items:baseline;gap:7px!important}.archive-message-body header strong{font:600 13.5px var(--eien-display)!important}.archive-message-body header time{font-size:8px!important;color:#8692bb!important}.archive-message-body p{margin:3px 0 0!important;color:#e4e6f4!important;font-size:10.5px!important;line-height:1.52!important}.archive-message.action .archive-message-body p{padding:7px 9px;border-radius:6px;background:rgba(23,35,95,.48);color:#b8c0df!important;font-style:italic}.archive-message.system{opacity:.82}
.archive-attachment{margin:9px 0 2px!important;border:1px solid rgba(145,159,239,.15);border-radius:8px;background:rgba(8,21,71,.48);overflow:hidden}.archive-attachment.image{width:min(470px,100%)}.archive-attachment.image img{display:block;width:100%;max-height:240px;object-fit:cover}.archive-attachment.image figcaption{display:flex;justify-content:space-between;gap:10px;padding:8px 10px}.archive-attachment figcaption strong{font-size:9px}.archive-attachment figcaption small{font-size:8px;color:#7f8bb7}.archive-attachment.file{display:grid;grid-template-columns:34px 1fr;gap:8px;align-items:center;width:min(430px,100%);padding:9px}.archive-attachment.file>svg{width:22px;height:22px;fill:#aea3ff}.archive-attachment.file span{display:grid}.archive-attachment.file strong{font-size:9.5px}.archive-attachment.file small{font-size:8px;color:#7e89b3}
.chat-details-pane{padding:14px!important}.chat-details-pane>header{padding:0 0 10px!important}.chat-details-pane>header h2{font-size:17px!important}.chat-detail-identity{padding:12px 5px 16px!important}.chat-detail-avatar{width:60px!important;height:60px!important;background:radial-gradient(circle,rgba(85,75,201,.48),rgba(20,34,99,.56))!important}.chat-detail-identity>strong{font:600 16px var(--eien-display)!important}.chat-detail-identity>small{font-size:8.5px!important}.chat-detail-section{padding:13px 0!important}.chat-detail-section h3{font-size:13.5px!important}.chat-detail-facts>div{padding:5px 0!important}.chat-detail-facts dt,.chat-detail-facts dd{font-size:8.8px!important}.chat-detail-integrity p{display:flex;gap:6px;margin:0;color:#9ca6ca;font-size:8.5px;line-height:1.45}.chat-detail-integrity svg{width:15px;height:15px;fill:#a397ff;flex:0 0 auto}.chat-privacy-note{background:rgba(10,24,79,.48)!important}

/* Admin: stronger workspace/inspector without adding the oversized mockup feature set. */
.admin-view{padding:18px!important;background:linear-gradient(180deg,rgba(5,17,65,.32),rgba(4,14,55,.24))!important;border-color:rgba(151,165,245,.16)!important}.admin-title{align-items:center!important}.admin-title h1{font-size:30px!important}.admin-title p{font-size:10.5px!important;color:#aab2d0!important}.admin-title .btn.primary{min-height:41px;border:1px solid rgba(186,173,255,.34);background:linear-gradient(135deg,#7357ea,#5048be)!important;box-shadow:inset 0 1px rgba(255,255,255,.08),0 8px 24px rgba(37,28,129,.18)}
.admin-overview-strip>div{min-height:82px!important;padding:13px 15px!important;border-radius:9px!important;background:linear-gradient(145deg,rgba(20,34,101,.65),rgba(8,21,70,.44))!important;border:1px solid rgba(151,164,245,.18)!important}.admin-overview-strip strong{font-size:25px!important}.admin-overview-strip span{font-size:8.5px!important;color:#8f99c2!important}.admin-tabs{margin-top:4px!important}.admin-tabs .tab{min-height:38px;padding-inline:14px!important}.panel-toolbar .search-field{max-width:360px;background:rgba(8,21,72,.46)!important}.admin-users-table{border:1px solid rgba(146,160,240,.10);border-radius:9px;overflow:hidden}.admin-users-table th{font-size:8.5px!important;letter-spacing:.04em;text-transform:uppercase;color:#8e98c1!important}.admin-users-table td{padding-block:12px!important}.admin-user-open{font-family:var(--eien-display)}
.admin-user-sheet{width:min(620px,calc(100vw - 24px))!important;border-left:1px solid rgba(157,169,248,.20)!important;background:linear-gradient(180deg,rgba(7,20,71,.98),rgba(4,14,55,.98))!important}.admin-user-hero{display:grid!important;grid-template-columns:88px minmax(0,1fr);align-items:center;gap:13px!important;padding:16px!important;border-radius:10px!important;background:linear-gradient(135deg,rgba(83,62,194,.34),rgba(24,43,119,.27))!important}.admin-user-hero img{width:88px!important;height:88px!important}.admin-user-hero strong{font-size:25px!important}.admin-user-hero code{font-size:8.5px;color:#9da7ce}.admin-mini-facts{grid-template-columns:repeat(4,1fr)!important;gap:6px!important;margin:10px 0 2px}.admin-mini-facts span{min-height:62px;padding:9px!important;border:1px solid rgba(148,162,241,.12);border-radius:8px;background:rgba(10,25,81,.45)}.admin-mini-facts small{font-size:7.5px!important;color:#7f8bb7}.admin-mini-facts strong{font-size:12px!important;color:#eceaff}.admin-detail-section h3{font-size:14px!important}.admin-control-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}.admin-control-grid .btn,.admin-recovery-row .btn{justify-content:center!important}.admin-recovery-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:7px}.quota-grid{gap:7px!important}.quota-grid label{background:rgba(9,22,75,.38);border:1px solid rgba(146,160,240,.10);border-radius:8px;padding:8px}.sheet-footer{background:rgba(5,16,58,.90);border-top-color:rgba(148,161,240,.10)}

@media(max-width:1120px){.chat-backup-layout{grid-template-columns:310px minmax(0,1fr)!important}.chat-details-pane{display:none!important}.secure-gallery-shell{grid-template-columns:220px minmax(0,1fr)!important}.secure-gallery-status{display:none!important}}
@media(max-width:820px){.sidebar-profile-popout{position:fixed;left:12px;right:auto;bottom:92px;width:min(270px,calc(100vw - 24px))}.media-selection-bar{align-items:flex-start!important;flex-direction:column}.media-selection-bar>div:first-child{width:100%;padding-right:0;border-right:0;border-bottom:1px solid rgba(159,172,248,.12);padding-bottom:8px}.selection-actions{width:100%;margin-left:0!important;overflow:auto}.secure-unavailable-page{padding:18px}.secure-unavailable-card{min-height:0!important}.secure-gallery-shell{grid-template-columns:1fr!important}.secure-gallery-side,.secure-gallery-status{display:none!important}.chat-backup-layout{grid-template-columns:1fr!important}.chat-history-pane,.chat-details-pane{display:none!important}.admin-mini-facts{grid-template-columns:1fr 1fr!important}}
@media(max-width:540px){.secure-unavailable-head{align-items:flex-start}.secure-unavailable-brand img{width:66px!important;height:66px!important}.secure-unavailable-brand strong{font-size:25px!important}.secure-unavailable-badge{font-size:7px!important}.secure-unavailable-visual{min-height:155px}.secure-unavailable-icon{width:96px!important;height:96px!important}.secure-unavailable-card h1{font-size:32px!important}.auth-grade-action{min-height:44px}.media-load-more-btn{min-width:170px!important}}
.secure-unlock-action.auth-grade-action{min-height:56px!important;width:100%;font-size:19px!important}.secure-unlock-emblem span{position:absolute;font-size:16px;color:#fff;text-shadow:0 0 12px rgba(218,210,255,.85)}.secure-unlock-emblem{position:relative}.secure-unlock-note{padding:9px 10px;border:1px solid rgba(145,159,239,.10);border-radius:7px;background:rgba(8,20,72,.30)}
/* v17 QA iteration 2: keep Media actions in-frame and scale protected viewer media. */
.media-canvas{min-height:0!important}.media-canvas:has(.media-empty-stage:not([hidden])){min-height:calc(100dvh - 255px)!important;position:relative}.secure-image-stage canvas,.secure-image-stage img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important}.secure-gallery-side,.secure-gallery-main,.secure-gallery-status{min-height:min(720px,calc(100dvh - 36px))}.secure-gallery-main{display:flex;flex-direction:column}.secure-gallery-main .secure-canvas-grid{align-content:start}.secure-gallery-status{align-self:start}.secure-gallery-side{align-self:start}
@media(max-width:1120px){.secure-gallery-side,.secure-gallery-main,.secure-gallery-status{min-height:0}}

/* ---------------------------------------------------------------------
   Eien v17 final page-by-page audit refinements
   --------------------------------------------------------------------- */

/* Media manage: keep the CTA language consistent with auth surfaces. */
.media-load-more{display:flex;justify-content:center;align-items:center;padding:12px 0 4px}
.media-load-more-btn.auth-grade-action{min-width:210px;min-height:48px;padding-inline:26px;justify-content:center}
.reclaim-utility .reclaim-action.auth-grade-action{width:100%;min-height:50px;margin:13px auto 0;justify-content:center;text-align:center}
.reclaim-utility .reclaim-action .action-flourish,.media-load-more-btn .action-flourish{color:#efeaff;text-shadow:0 0 12px rgba(198,181,255,.8)}
.media-selection-bar{position:relative;overflow:hidden}
.media-selection-bar::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(#b8a8ff,#6d75ee);box-shadow:0 0 14px rgba(143,118,255,.52)}
.media-selection-bar .selection-actions{align-items:center}
.media-selection-bar .refined-secondary{min-height:38px;border-color:rgba(160,170,246,.20);background:rgba(21,34,95,.55)}

/* Profile control: popout owns admin access; the summary remains one clean control. */
.sidebar-profile-menu summary::-webkit-details-marker{display:none}
.sidebar-profile-menu[open] .profile-menu-chevron{transform:rotate(180deg)}
.sidebar-profile-menu .profile-menu-chevron{transition:transform .16s ease}
.sidebar-profile-popout{transform-origin:bottom left;animation:eien-pop .15s ease-out}
@keyframes eien-pop{from{opacity:0;transform:translateY(5px) scale(.985)}to{opacity:1;transform:none}}

/* Chat backups: reduce visual noise, strengthen structure, keep attachments subordinate. */
.chat-backup-layout{grid-template-columns:330px minmax(0,1fr) 286px!important;gap:10px!important}
.chat-list-pane,.chat-history-pane,.chat-details-pane{border:1px solid rgba(151,164,243,.15)!important;background:linear-gradient(180deg,rgba(5,17,64,.40),rgba(5,15,57,.30))!important;box-shadow:inset 0 1px rgba(255,255,255,.02),0 14px 40px rgba(0,4,32,.10)!important}
.chat-list-header{padding-bottom:13px!important;border-bottom:1px solid rgba(153,165,241,.10)}
.chat-list-header h1{font-size:22px!important;letter-spacing:-.01em}
.chat-list-header p{margin-top:2px!important;color:#98a2cb!important;font:italic 9px/1.35 var(--eien-display)!important}
.chat-list-search{margin-top:12px!important;background:rgba(6,18,68,.45)!important;border-color:rgba(148,160,239,.16)!important}
.chat-conversation-row{min-height:66px!important;padding:10px 10px!important;border-radius:9px!important;border:1px solid transparent!important}
.chat-conversation-row:hover{background:rgba(30,40,111,.28)!important}
.chat-conversation-row.active{background:linear-gradient(90deg,rgba(77,65,180,.48),rgba(32,42,111,.32))!important;border-color:rgba(158,143,255,.30)!important;box-shadow:inset 2px 0 #9782ff,0 7px 20px rgba(8,6,53,.12)!important}
.chat-row-copy strong{font:600 13px var(--eien-display)!important}.chat-row-copy small{font-size:9.5px!important;color:#a8b0d2!important;line-height:1.35!important}
.chat-row-meta time{font-size:8.5px!important;color:#c0c5df!important}.chat-row-meta small{font-size:8px!important}
.chat-history-header{min-height:74px!important;padding:12px 16px!important;border-bottom:1px solid rgba(149,160,239,.10)!important}
.chat-history-identity h2{font-size:21px!important}.chat-history-identity p{font-size:8.5px!important;color:#9ba4ca!important}
.chat-history-contextbar{min-height:45px!important;padding:7px 16px!important;background:rgba(8,20,73,.34)!important;border-bottom:1px solid rgba(149,161,241,.09)!important}
.chat-archive-marker{margin:9px 18px 3px!important;opacity:.8}
.chat-message-list{padding:7px 17px 22px!important}
.archive-message{grid-template-columns:38px minmax(0,1fr)!important;gap:10px!important;padding:10px 2px!important;border-bottom:1px solid rgba(148,160,235,.075)!important}
.archive-message-avatar{width:34px!important;height:34px!important;border:1px solid rgba(170,157,255,.25);background:linear-gradient(145deg,rgba(97,77,210,.68),rgba(52,60,151,.66))!important;box-shadow:0 5px 14px rgba(12,8,71,.15)}
.archive-message-body header{display:flex;align-items:baseline;gap:8px!important}.archive-message-body header strong{font:600 13px var(--eien-display)!important;color:#f4f1ff!important}.archive-message-body header time{font-size:8px!important;color:#858fb9!important}
.archive-message-body p{max-width:760px;margin:3px 0 0!important;color:#e1e3f3!important;font-size:10.4px!important;line-height:1.5!important}
.archive-message.action{margin:5px 0;padding:8px 10px!important;border:0!important;border-radius:7px;background:rgba(28,40,106,.37)}
.archive-message.action .archive-message-avatar{display:none}.archive-message.action{grid-template-columns:1fr!important}.archive-message.action p{color:#b8bce0!important;font-style:italic}
.archive-attachment.image{max-width:520px!important;margin:9px 0 2px!important;border-radius:9px!important;overflow:hidden;border:1px solid rgba(148,160,237,.13)!important;background:rgba(5,15,55,.56)!important}
.archive-attachment.image img{display:block;width:100%;max-height:280px;object-fit:cover}
.archive-attachment figcaption{padding:7px 9px!important;background:rgba(4,13,52,.75)!important}
.chat-details-pane{padding:14px!important}.chat-details-pane>header{padding-bottom:11px!important;border-bottom:1px solid rgba(149,161,239,.10)!important}.chat-details-pane>header h2{font-size:17px!important}
.chat-detail-identity{padding:15px 0 13px!important;text-align:center;border-bottom:1px solid rgba(149,161,239,.09)!important}.chat-detail-avatar{width:54px!important;height:54px!important;margin:0 auto 8px!important;border:1px solid rgba(157,143,255,.25);background:radial-gradient(circle at 35% 30%,rgba(131,105,242,.55),rgba(27,37,107,.72))!important}.chat-detail-identity strong{font:600 17px var(--eien-display)!important}.chat-detail-identity small{font-size:8.5px!important;color:#9da5ca!important}
.chat-detail-section{padding:12px 0!important;border-bottom:1px solid rgba(149,161,239,.08)!important}.chat-detail-section h3{font:600 12px var(--eien-display)!important;color:#f3efff!important}.chat-detail-facts>div{padding:4px 0!important}.chat-detail-facts dt{font-size:8.5px!important}.chat-detail-facts dd{font-size:9.5px!important}
.chat-local-size>span{display:flex;align-items:center;gap:6px}.chat-local-size strong{font:600 15px var(--eien-display)!important}.chat-local-size small{display:block;margin-top:5px;color:#929bc4;font:italic 8.5px/1.4 var(--eien-display)!important}
.chat-privacy-note{margin-top:12px!important;background:linear-gradient(135deg,rgba(38,42,118,.34),rgba(8,22,72,.20))!important;border-color:rgba(147,160,240,.15)!important}

/* Secure Gallery: match the approved mockup's denser, intentional image stage. */
@media(min-width:1180px){
  .secure-canvas-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:9px!important}
  .secure-canvas-tile canvas{height:226px!important}
}
@media(min-width:821px) and (max-width:1179px){.secure-canvas-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.secure-canvas-tile canvas{height:205px!important}}
.secure-gallery-main{background:linear-gradient(180deg,rgba(5,17,65,.43),rgba(5,15,57,.31))!important}
.secure-gallery-side,.secure-gallery-status{background:linear-gradient(180deg,rgba(5,17,65,.48),rgba(5,15,57,.35))!important}
.secure-gallery-section-head{margin-top:3px!important;padding-bottom:7px;border-bottom:1px solid rgba(149,161,239,.08)}
.secure-gallery-status>header{padding-bottom:11px!important;border-bottom:1px solid rgba(149,161,239,.09)!important}
.secure-gallery-status>header h2{font-size:16px!important}
.secure-status-block strong{font:600 22px var(--eien-display)!important}.secure-status-block small{color:#919bc2!important}

/* Secure unavailable states: separate routes, but with the visual gravity of the approved portal mockup. */
.secure-unavailable-page{display:grid;place-items:center;padding:28px!important}
.secure-unavailable-card{width:min(700px,calc(100vw - 40px))!important;min-height:610px!important;padding:28px 44px 34px!important;border-color:rgba(148,160,244,.25)!important;background:linear-gradient(180deg,rgba(6,19,70,.58),rgba(4,15,57,.48))!important;box-shadow:inset 0 1px rgba(255,255,255,.025),0 30px 90px rgba(0,2,31,.25)!important}
.secure-unavailable-brand img{width:82px!important;height:82px!important}.secure-unavailable-brand strong{font-size:32px!important}.secure-unavailable-brand small{font-size:10px!important;line-height:1.4!important}
.secure-unavailable-badge{padding:8px 12px!important;background:rgba(70,55,154,.31)!important;border-color:rgba(159,142,255,.30)!important}
.secure-unavailable-visual{min-height:218px!important;margin-top:6px;display:grid;place-items:center;position:relative}
.secure-unavailable-visual::before,.secure-unavailable-visual::after{content:"";position:absolute;width:78px;height:1px;background:linear-gradient(90deg,transparent,rgba(177,161,255,.50),transparent)}
.secure-unavailable-visual::before{left:12%;top:48%}.secure-unavailable-visual::after{right:12%;top:48%}
.secure-unavailable-icon{width:132px!important;height:132px!important;border-width:1px!important;background:radial-gradient(circle at 50% 42%,rgba(108,78,216,.34),rgba(12,22,75,.52) 63%,transparent 65%)!important;box-shadow:0 0 0 12px rgba(100,79,213,.045),0 0 42px rgba(107,82,231,.22)!important}
.secure-unavailable-page.revoked .secure-unavailable-icon{background:radial-gradient(circle at 50% 42%,rgba(210,71,114,.30),rgba(57,24,79,.52) 63%,transparent 65%)!important;box-shadow:0 0 0 12px rgba(201,68,113,.045),0 0 45px rgba(236,91,137,.24)!important}
.secure-unavailable-icon svg{width:68px!important;height:68px!important}
.secure-unavailable-state{margin-top:-2px!important;padding-top:22px!important}.secure-unavailable-card h1{font-size:40px!important;letter-spacing:-.02em}.secure-unavailable-card .secure-unavailable-message{max-width:470px;margin:8px auto 0;color:#c0c4e1;font:italic 11px/1.55 var(--eien-display)!important}
.secure-unavailable-state-strip{width:min(350px,100%)!important;min-height:48px!important;margin:19px auto 0!important;border-color:rgba(147,160,239,.15)!important;background:rgba(16,29,84,.39)!important}.secure-unavailable-back{margin-top:18px!important;font-size:10px!important}

/* Secure viewer: stage first, compact facts second; eliminate edge collisions. */
.secure-image-viewer-card{border-color:rgba(154,166,246,.21)!important;box-shadow:0 32px 100px rgba(0,2,28,.40)!important}
.secure-image-viewer-header{min-height:56px!important;padding:9px 14px!important;border-bottom:1px solid rgba(153,165,243,.10)!important}
.secure-image-viewer-header h1{font-size:16px!important}.secure-image-viewer-header .secure-viewer-meta{gap:7px!important}.secure-image-viewer-header .secure-viewer-chip{min-height:34px!important;border-color:rgba(160,146,255,.22)!important;background:rgba(23,29,93,.53)!important}
.secure-image-viewer-body{grid-template-columns:minmax(0,1fr) 246px!important;gap:12px!important;padding:12px!important}.secure-image-stage{min-height:0!important;height:min(66dvh,650px)!important;border-radius:10px!important;border:1px solid rgba(151,162,241,.13)!important;background:rgba(1,7,35,.67)!important;overflow:hidden!important}.secure-image-viewer-body aside{align-self:start!important;border-color:rgba(152,164,242,.14)!important;background:linear-gradient(180deg,rgba(8,20,73,.61),rgba(7,18,65,.44))!important}.secure-image-info-section{padding:12px 0!important;border-bottom:1px solid rgba(151,162,238,.08)!important}.secure-image-info-section:last-child{border-bottom:0!important}.secure-image-filmstrip{padding:8px 12px 12px!important;gap:7px!important}.secure-image-filmstrip button{height:72px!important;border-radius:7px!important}

/* Admin: keep scope small, but make the data workspace feel finished. */
.admin-title{padding:4px 3px 15px!important;border-bottom:1px solid rgba(149,161,239,.09)!important}.admin-title h1{font-size:29px!important}.admin-title p{margin-top:3px!important;color:#9da6cb!important;font:italic 9px/1.35 var(--eien-display)!important}.admin-title>.btn.primary{min-height:40px;border-color:rgba(177,163,255,.34)!important;background:linear-gradient(135deg,rgba(104,77,227,.87),rgba(71,67,177,.80))!important;box-shadow:inset 0 1px rgba(255,255,255,.10),0 8px 22px rgba(37,24,124,.16)!important}
.admin-overview-strip{gap:9px!important;padding:11px 0 9px!important}.admin-overview-strip>div{min-height:78px!important;padding:13px 15px!important;border:1px solid rgba(151,164,243,.15)!important;border-radius:9px!important;background:linear-gradient(145deg,rgba(23,34,103,.52),rgba(8,21,73,.34))!important;box-shadow:inset 0 1px rgba(255,255,255,.025)!important}.admin-overview-strip strong{font:600 23px var(--eien-display)!important}.admin-overview-strip span{color:#9aa4cd!important;font-size:8.5px!important}
.admin-tabs{min-height:46px!important;padding:0 4px!important;border-bottom:1px solid rgba(149,161,239,.10)!important;gap:7px!important}.admin-tabs .tab{min-height:38px;padding:0 13px;border:0;border-radius:7px 7px 0 0;background:transparent;color:#929cc4}.admin-tabs .tab.active{color:#fff;background:linear-gradient(180deg,rgba(66,57,166,.26),rgba(26,34,100,.08));box-shadow:inset 0 -2px #8d76ff}
.admin-view .panel-toolbar{padding:13px 0 10px!important}.admin-view .search-field{width:min(420px,100%);background:rgba(6,18,68,.45)!important;border-color:rgba(148,160,239,.16)!important}.admin-users-table{border-collapse:separate!important;border-spacing:0 5px!important}.admin-users-table thead th{background:rgba(13,27,83,.60)!important;border:0!important;color:#929cc5!important;font-size:8px!important}.admin-users-table tbody tr{background:rgba(7,19,68,.28)!important;transition:background .13s ease,transform .13s ease,box-shadow .13s ease}.admin-users-table tbody tr:hover{background:rgba(37,43,119,.38)!important;box-shadow:inset 2px 0 #826fff}.admin-users-table tbody td{border-top:1px solid rgba(150,162,240,.07)!important;border-bottom:1px solid rgba(150,162,240,.07)!important}.admin-users-table tbody td:first-child{border-left:1px solid rgba(150,162,240,.07)!important;border-radius:8px 0 0 8px}.admin-users-table tbody td:last-child{border-right:1px solid rgba(150,162,240,.07)!important;border-radius:0 8px 8px 0}.status-text{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:6px;font-size:8.5px!important}.status-text.ready{color:#8cf0c4;background:rgba(26,128,94,.16);border:1px solid rgba(61,193,139,.15)}.status-text.disabled{color:#ffd17e;background:rgba(177,115,20,.14);border:1px solid rgba(227,157,54,.16)}.status-text.banned{color:#ff94ad;background:rgba(169,43,73,.14);border:1px solid rgba(228,78,112,.16)}
.admin-user-sheet{width:min(600px,100vw)!important}.admin-user-sheet .sheet-header{background:linear-gradient(180deg,rgba(25,33,98,.88),rgba(7,19,69,.87))!important;border-bottom-color:rgba(151,163,241,.12)!important}.admin-user-hero{padding:15px!important;border:1px solid rgba(154,166,244,.13)!important;border-radius:10px!important;background:linear-gradient(135deg,rgba(43,47,126,.38),rgba(8,20,72,.20))!important}.admin-user-hero img{width:66px!important;height:66px!important}.admin-user-hero strong{font:600 19px var(--eien-display)!important}.admin-mini-facts{gap:7px!important}.admin-mini-facts>span{min-height:58px;padding:9px 10px;border:1px solid rgba(151,163,241,.10);border-radius:8px;background:rgba(10,23,77,.34)}.admin-mini-facts small{font-size:7.5px!important;color:#8994c0!important}.admin-mini-facts strong{font:600 12px var(--eien-display)!important}.admin-detail-section{padding:15px 0!important;border-bottom:1px solid rgba(151,163,240,.09)!important}.admin-detail-section h3{font:600 13px var(--eien-display)!important;margin-bottom:9px!important}.admin-control-grid .btn,.admin-recovery-row .btn{min-height:36px!important}.admin-user-sheet .sheet-footer{border-top-color:rgba(151,163,240,.10)!important;background:rgba(5,16,60,.88)!important}

@media(max-width:820px){
  .chat-backup-layout{grid-template-columns:1fr!important}
  .secure-image-viewer-body{grid-template-columns:1fr!important}
  .secure-image-stage{height:62dvh!important}
  .secure-unavailable-card{min-height:0!important;padding:24px 20px!important}
}
.secure-unavailable-revoked .secure-unavailable-icon{background:radial-gradient(circle at 50% 42%,rgba(210,71,114,.30),rgba(57,24,79,.52) 63%,transparent 65%)!important;box-shadow:0 0 0 12px rgba(201,68,113,.045),0 0 45px rgba(236,91,137,.24)!important}.secure-unavailable-revoked .secure-unavailable-icon svg{color:#ff8fac!important;fill:#ff8fac!important}.secure-unavailable-expired .secure-unavailable-icon svg{color:#c5b8ff!important;fill:#c5b8ff!important}.secure-unavailable-state-strip{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important}.secure-unavailable-state-strip svg{width:17px!important;height:17px!important;fill:#8f99c4!important}.secure-unavailable-message{max-width:470px!important;margin:8px auto 0!important;text-align:center!important}
.admin-role-badge{display:inline-flex;align-items:center;min-height:23px;padding:0 7px;border-radius:6px;color:#c4c9e4;background:rgba(28,39,101,.36);border:1px solid rgba(149,161,239,.09);font-size:8.5px}.admin-role-badge.admin{color:#d8ceff;background:rgba(91,67,199,.20);border-color:rgba(159,142,255,.16)}
/* Sparse Secure Galleries should fit their content instead of manufacturing a tall empty panel. */
.secure-gallery-side,.secure-gallery-main,.secure-gallery-status{min-height:0!important;height:max-content!important}

/* ========================================================================== 
   Eien v18 — targeted final-state polish
   Focus: unavailable Secure Share states, admin identity, profile contrast,
   and archived-chat legibility. No new product surface is introduced.
   ========================================================================== */

/* Profile control: stronger separation from the illustrated environment without blur. */
.sidebar-profile-menu .sidebar-account{
  background:linear-gradient(135deg,rgba(9,23,80,.90),rgba(8,19,68,.84))!important;
  border-color:rgba(166,177,250,.30)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.045),0 12px 30px rgba(0,4,32,.16)!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
.sidebar-profile-menu .sidebar-account:hover,.sidebar-profile-menu[open] .sidebar-account{
  background:linear-gradient(135deg,rgba(34,39,115,.94),rgba(16,29,91,.91))!important;
  border-color:rgba(180,164,255,.43)!important;
}
.sidebar-profile-popout{
  background:linear-gradient(180deg,rgba(7,19,70,.995),rgba(4,14,55,.995))!important;
  border-color:rgba(173,183,252,.31)!important;
  box-shadow:0 24px 66px rgba(0,3,29,.54),inset 0 1px rgba(255,255,255,.045)!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
.sidebar-profile-popout a,.sidebar-profile-popout button{min-height:54px!important}
.sidebar-profile-popout strong{font-size:11px!important;color:#f5f3ff}.sidebar-profile-popout small{font-size:8.5px!important;color:#a7afd2!important}

/* Chat Backups: the approved mockup relies on three deliberate readable surfaces. */
.chat-list-pane,.chat-history-pane,.chat-details-pane{
  background:linear-gradient(180deg,rgba(5,17,65,.69),rgba(4,14,55,.57))!important;
  border-color:rgba(160,173,248,.23)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.035),0 16px 42px rgba(0,4,31,.16)!important;
}
.chat-list-header h1{color:#fbf8ff!important}.chat-list-header p{color:#b0b8d8!important}
.chat-list-search{background:rgba(7,20,74,.74)!important;border-color:rgba(161,174,247,.24)!important}
.chat-conversation-row{color:#f2efff!important}.chat-conversation-row:hover{background:rgba(42,50,128,.45)!important}
.chat-conversation-row.active{
  background:linear-gradient(90deg,rgba(92,71,221,.63),rgba(30,46,127,.52))!important;
  border-color:rgba(174,156,255,.50)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.045),0 9px 24px rgba(20,14,89,.19)!important;
}
.chat-row-copy small{color:#c0c6e0!important}.chat-row-meta time{color:#d0d4e8!important}
.chat-history-content>header{background:rgba(7,20,74,.62)!important}.chat-history-contextbar{background:rgba(10,24,84,.58)!important;color:#b2bad8!important}
.chat-message-list{background:linear-gradient(180deg,rgba(2,10,44,.12),rgba(9,19,66,.18))}
.archive-message{border-bottom-color:rgba(157,170,245,.12)!important}.archive-message-body p{color:#f0effa!important;font-size:10.8px!important}
.archive-message.action .archive-message-body p{background:rgba(24,38,104,.72)!important;color:#d0d5e9!important}
.archive-attachment.image{border-color:rgba(164,176,248,.23)!important;box-shadow:0 12px 30px rgba(0,4,30,.15)!important}
.chat-details-pane>header h2,.chat-detail-section h3{color:#fff!important}.chat-detail-facts dt{color:#929dc7!important}.chat-detail-facts dd{color:#e2e5f4!important}
.chat-privacy-note{background:rgba(10,25,82,.72)!important;border-color:rgba(164,177,248,.22)!important}

/* Admin user identity: an account gets an identity mark, never the Eien product logo. */
.user-monogram,.admin-user-monogram{
  display:grid;place-items:center;flex:0 0 auto;border-radius:50%;
  color:#f8f5ff;font-family:var(--eien-display);font-weight:700;
  background:radial-gradient(circle at 32% 26%,rgba(166,128,255,.95),rgba(77,63,187,.82) 38%,rgba(20,41,116,.96) 78%);
  border:1px solid rgba(190,180,255,.43);
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.035),0 0 18px rgba(116,86,239,.19);
}
.user-monogram{width:34px;height:34px;font-size:14px}.admin-user-monogram{width:78px;height:78px;font-size:31px}
.user-cell>img{display:none!important}.admin-user-hero>img{display:none!important}
.admin-user-hero{grid-template-columns:78px minmax(0,1fr)!important;padding:17px!important;background:linear-gradient(135deg,rgba(52,56,148,.51),rgba(9,22,77,.37))!important;border-color:rgba(169,180,248,.20)!important}
.admin-user-hero-copy{display:grid;align-content:center;justify-items:start;gap:4px}.admin-user-hero-copy strong{font:650 22px var(--eien-display)!important}.admin-user-hero-copy small{color:#9ea8cf!important}.admin-user-status{display:inline-flex;min-height:22px;align-items:center;padding:0 7px;border-radius:6px;font-size:8px;text-transform:uppercase;letter-spacing:.055em;background:rgba(26,122,91,.18);color:#8ff0c5;border:1px solid rgba(80,197,151,.17)}.admin-user-status.disabled{background:rgba(174,111,18,.16);color:#ffd17e;border-color:rgba(220,151,48,.18)}.admin-user-status.banned{background:rgba(162,38,70,.18);color:#ff9bb2;border-color:rgba(224,75,109,.19)}
.admin-user-sheet{background:linear-gradient(180deg,rgba(7,20,72,.985),rgba(4,14,55,.99))!important}.admin-user-sheet .sheet-body{background:transparent!important}.admin-mini-facts>span{background:rgba(11,27,88,.58)!important;border-color:rgba(161,174,245,.16)!important}.admin-detail-section{border-bottom-color:rgba(162,174,245,.12)!important}.quota-grid label{background:rgba(10,25,83,.62)!important;border-color:rgba(161,173,244,.15)!important}

/* Revoked / expired are destination pages, not generic error cards. */
.secure-unavailable-page{padding:32px!important;place-items:center!important}
.secure-unavailable-card{
  position:relative!important;
  width:min(590px,calc(100vw - 40px))!important;
  min-height:610px!important;
  margin:0!important;
  padding:28px 40px 34px!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,rgba(6,18,67,.67),rgba(4,14,55,.55))!important;
  border-color:rgba(162,174,247,.28)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.035),0 34px 96px rgba(0,3,31,.31)!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
.secure-unavailable-card::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.38;
  background:radial-gradient(circle at 50% 42%,rgba(91,69,211,.16),transparent 31%),radial-gradient(circle at 50% 70%,rgba(100,76,219,.09),transparent 38%);
}
.secure-unavailable-head{position:relative;z-index:2;display:flex!important;align-items:flex-start!important;min-height:82px!important}
.secure-unavailable-brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:#fff}.secure-unavailable-brand img{width:72px!important;height:72px!important}.secure-unavailable-brand span{display:grid;gap:2px}.secure-unavailable-brand strong{font:650 29px var(--eien-display)!important}.secure-unavailable-brand small{color:#d4d6ed!important;font:10.5px/1.45 var(--eien-display)!important}
.secure-unavailable-badge{position:absolute!important;right:0!important;top:0!important;display:flex!important;align-items:center!important;gap:6px!important;margin:0!important;min-height:34px;padding:0 10px!important;border:1px solid rgba(167,150,255,.31)!important;border-radius:8px!important;background:rgba(64,53,153,.34)!important;color:#d6ccff!important;text-transform:uppercase;letter-spacing:.045em;font-size:8.5px!important}
.secure-unavailable-badge svg{width:14px!important;height:14px!important}
.secure-unavailable-visual{position:relative;z-index:2;min-height:190px!important;margin:10px auto 0!important;display:grid!important;place-items:center!important}
.secure-unavailable-visual::before,.secure-unavailable-visual::after{width:90px!important;opacity:.65}
.secure-unavailable-art{display:block;width:230px;height:150px;object-fit:contain;mix-blend-mode:screen;filter:saturate(1.14) contrast(1.05) drop-shadow(0 0 18px rgba(120,91,239,.20))}
.secure-unavailable-revoked .secure-unavailable-art{filter:saturate(1.13) contrast(1.05) drop-shadow(0 0 22px rgba(244,103,144,.24))}
.secure-unavailable-ornament{position:relative;z-index:2;margin:0 auto 10px!important;opacity:.78}
.secure-unavailable-card h1{position:relative;z-index:2;margin:0!important;font:650 34px/1.08 var(--eien-display)!important;letter-spacing:-.025em!important}
.secure-unavailable-message{position:relative;z-index:2;max-width:390px!important;margin:10px auto 0!important;color:#c6cbe4!important;font:10.5px/1.55 var(--eien-display)!important;font-style:normal!important}
.secure-unavailable-state-strip{position:relative;z-index:2;width:min(330px,100%)!important;min-height:48px!important;margin:21px auto 0!important;padding:0 14px!important;border:1px solid rgba(158,171,242,.16)!important;border-radius:9px!important;background:linear-gradient(180deg,rgba(30,43,103,.60),rgba(18,29,83,.49))!important;color:#8e98bd!important;box-shadow:inset 0 1px rgba(255,255,255,.025)!important}
.secure-unavailable-state-strip svg{width:17px!important;height:17px!important;fill:#7f8ab5!important}.secure-unavailable-state-strip span{font:600 11px var(--eien-display)!important}
.secure-unavailable-back{position:relative;z-index:2;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;margin:18px auto 0!important;min-height:34px;padding:0 10px;border-radius:7px;color:#c9c7e8!important;text-decoration:none;font:600 10px var(--eien-display)!important}.secure-unavailable-back:hover{background:rgba(75,68,162,.22)!important;color:#fff!important}.secure-unavailable-back svg{width:16px!important;height:16px!important;fill:currentColor}
.secure-unavailable-revoked .secure-unavailable-state-strip{border-color:rgba(222,92,129,.15)!important;background:linear-gradient(180deg,rgba(80,37,78,.43),rgba(42,25,74,.42))!important;color:#d59aad!important}.secure-unavailable-expired .secure-unavailable-state-strip{border-color:rgba(154,140,255,.17)!important;color:#b3add8!important}

/* Keep the Secure Unlock corner badge visually aligned with the card header. */
.secure-unlock-brand{align-items:flex-start!important}.secure-unlock-brand>span{padding-top:5px}.secure-unlock-brand em{align-self:flex-start!important;margin-top:2px!important}

@media(max-width:680px){
  .secure-unavailable-card{min-height:0!important;padding:22px 20px 26px!important}.secure-unavailable-brand img{width:60px!important;height:60px!important}.secure-unavailable-brand strong{font-size:25px!important}.secure-unavailable-badge{top:3px!important}.secure-unavailable-art{width:205px;height:135px}.secure-unavailable-card h1{font-size:29px!important}
  .admin-user-monogram{width:64px;height:64px;font-size:26px}.admin-user-hero{grid-template-columns:64px minmax(0,1fr)!important}
}

/* v18 visual QA iteration 2 */
.sidebar-profile-menu .sidebar-account{background:#0a184f!important;border-color:rgba(172,184,252,.32)!important}
.sidebar-profile-menu[open] .sidebar-account{background:#111f63!important}
.sidebar-profile-popout{background:#06113f!important;border-color:rgba(179,190,255,.34)!important;box-shadow:0 26px 70px rgba(0,2,26,.62),inset 0 1px rgba(255,255,255,.05)!important}
.sidebar-profile-popout a,.sidebar-profile-popout button{color:#f7f5ff!important}.sidebar-profile-popout small{color:#b1b8d7!important}

.chat-list-pane,.chat-history-pane,.chat-details-pane{background:linear-gradient(180deg,rgba(5,17,65,.78),rgba(4,14,55,.68))!important;border-color:rgba(166,178,249,.25)!important}
.chat-history-pane{background:linear-gradient(180deg,rgba(5,17,65,.73),rgba(4,14,55,.63))!important}
.chat-conversation-row small{color:#bac1de!important}.chat-encrypted-section .muted{color:#c4cae3!important}
.chat-details-pane{color:#eef0fb!important}.chat-detail-section{border-bottom-color:rgba(166,178,249,.12)!important}

.secure-unavailable-card{width:min(560px,calc(100vw - 40px))!important;min-height:550px!important;padding:26px 38px 30px!important}
.secure-unavailable-visual{min-height:168px!important;margin-top:2px!important}.secure-unavailable-art{width:214px;height:136px}
.secure-unavailable-card h1{font-size:32px!important}.secure-unavailable-message{max-width:410px!important;font-size:12.5px!important;line-height:1.5!important;color:#d0d4e9!important}
.secure-unavailable-state-strip{width:min(310px,100%)!important;min-height:50px!important;margin-top:19px!important;background:linear-gradient(180deg,rgba(42,54,110,.55),rgba(24,35,87,.50))!important;border-color:rgba(171,183,248,.18)!important;color:#aeb5d2!important}
.secure-unavailable-revoked .secure-unavailable-state-strip,.secure-unavailable-expired .secure-unavailable-state-strip{background:linear-gradient(180deg,rgba(42,54,110,.55),rgba(24,35,87,.50))!important;border-color:rgba(171,183,248,.18)!important;color:#aeb5d2!important}
.secure-unavailable-state-strip span{font-size:12.5px!important}.secure-unavailable-back{font-size:11.5px!important;margin-top:16px!important}
.secure-unavailable-brand img{width:76px!important;height:76px!important}.secure-unavailable-brand strong{font-size:30px!important}.secure-unavailable-badge{right:0!important;top:1px!important}

@media(max-width:680px){.secure-unavailable-card{width:100%!important;padding:22px 20px 25px!important}.secure-unavailable-message{font-size:11.5px!important}.secure-unavailable-state-strip span{font-size:11.5px!important}}

/* v19 optional ambient video. The static Eien artwork remains underneath as a guaranteed fallback. */
.eien-background-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;pointer-events:none;background:transparent}
html.reduce-eien-effects .eien-background-video{display:none!important}
@media (prefers-reduced-motion:reduce){.eien-background-video{display:none!important}}

/* v19 archive state: archived media stays encrypted and recoverable, but leaves the normal Media view. */
.media-badge.archived{top:auto;bottom:10px;left:10px;right:auto;background:rgba(16,22,66,.88);border:1px solid rgba(177,170,255,.28);color:#d8d4ff}
.media-filter-tab[data-media-filter="archived"].active{box-shadow:inset 0 0 0 1px rgba(173,160,255,.16)}

/* ========================================================================== 
   Eien v19 visual QA pass — mockup convergence, legibility and layout fixes
   ========================================================================== */

/* Sidebar storage: match the reference hierarchy instead of miniature telemetry. */
.sidebar-storage{padding:13px 13px 12px!important}
.sidebar-storage-title{margin-bottom:8px!important;font-size:18px!important}
.sidebar-meter{padding:6px 0!important;gap:6px!important}
.sidebar-meter-row{font-size:13px!important;line-height:1.3!important}
.sidebar-meter-row small{font-size:11.5px!important;color:#c0c6e1!important;white-space:nowrap}
.sidebar-meter-row>span{gap:7px!important}
.sidebar-meter-row .storage-icon{width:14px!important;height:14px!important}
.mini-progress{height:4px!important;margin-top:4px!important}
.sidebar-storage-mini{gap:10px!important;margin-top:8px!important;padding-top:9px!important}
.sidebar-storage-mini span{font-size:11.5px!important;gap:6px!important}
.sidebar-storage-mini strong{font-size:10.5px!important;color:#c0c7e2!important}
.sidebar-storage-mini .storage-icon{width:13px!important;height:13px!important}
.sidebar-storage-mini i{height:4px!important}

/* Secure Shares: the populated row now follows the four-column header exactly. */
.secure-shares-view{padding:21px 22px!important}
.secure-shares-toolbar{min-height:76px!important;padding-bottom:17px!important}
.secure-shares-toolbar h1{font-size:31px!important}
.secure-shares-toolbar p{font-size:12px!important;color:#b8bdd8!important}
.secure-toolbar-state{font-size:11px!important}
.secure-share-table-shell{min-height:min(650px,calc(100dvh - 260px))!important}
.secure-share-table-head{
  height:48px!important;
  grid-template-columns:minmax(300px,1fr) 170px 120px 104px!important;
  gap:18px!important;
  padding:0 14px!important;
  color:#98a3ce!important;
  font-size:10px!important;
}
.secure-share-list{display:grid!important;gap:8px!important;padding-top:9px!important}
.secure-share-row{
  min-height:88px!important;
  grid-template-columns:minmax(300px,1fr) 170px 120px 104px!important;
  gap:18px!important;
  align-items:center!important;
  padding:12px 14px!important;
  border:1px solid rgba(158,171,245,.14)!important;
  border-radius:10px!important;
  background:linear-gradient(180deg,rgba(14,29,87,.44),rgba(8,21,72,.36))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.025)!important;
}
.secure-share-row:hover{background:linear-gradient(180deg,rgba(24,40,106,.52),rgba(12,28,83,.43))!important;border-color:rgba(171,179,255,.22)!important}
.secure-share-media{min-width:0;display:flex;align-items:center;gap:12px}
.secure-share-icon{width:48px!important;height:48px!important;display:grid!important;place-items:center!important;flex:0 0 auto;border-radius:11px!important;background:linear-gradient(145deg,rgba(104,85,222,.38),rgba(41,62,151,.29))!important;border:1px solid rgba(172,161,255,.20)!important;color:#ded9ff!important;box-shadow:0 0 22px rgba(104,82,233,.11)!important}
.secure-share-icon .icon{width:22px!important;height:22px!important}
.secure-share-main{min-width:0;display:grid!important;gap:5px!important}
.secure-share-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f4f1ff!important;font:600 15px var(--eien-display)!important}
.secure-share-main small{display:flex;align-items:center;gap:7px;color:#aeb6d7!important;font-size:11px!important}
.secure-share-ram-badge{display:inline-flex;align-items:center;min-height:22px;padding:0 7px;border-radius:6px;background:rgba(59,101,164,.25);border:1px solid rgba(112,179,230,.14);color:#a8ddff;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.045em}
.secure-share-life,.secure-share-views{display:grid!important;gap:3px!important}
.secure-share-life strong,.secure-share-views strong{color:#f1efff!important;font:600 15px var(--eien-display)!important}
.secure-share-life small,.secure-share-views small{color:#929cc5!important;font-size:10px!important}
.secure-share-actions{display:flex!important;justify-content:flex-end!important;gap:5px!important}
.secure-share-actions .icon-btn{width:40px!important;height:40px!important;border:1px solid rgba(155,168,244,.13)!important;background:rgba(11,25,79,.48)!important}
.secure-share-actions .icon-btn:hover{background:rgba(68,72,164,.40)!important}
.secure-share-actions .danger:hover{color:#ff9eb1!important;background:rgba(132,49,82,.28)!important}
.secure-create-utility{min-height:270px!important}
.secure-create-orbit{width:78px!important;height:78px!important}
.secure-create-orbit svg{width:36px!important;height:36px!important}
.secure-create-utility h2{font-size:21px!important}
.secure-create-utility p{max-width:255px!important;font-size:11px!important;color:#aeb5d6!important;line-height:1.55!important}
.secure-rule strong{font-size:11px!important}.secure-rule small{font-size:10px!important;color:#919ac2!important}

/* Account/settings: all tabs occupy a stable canvas and no decorative logo bleeds behind content. */
.account-page::after{display:none!important;content:none!important}
.account-page{width:min(1040px,100%)!important;background:linear-gradient(180deg,rgba(6,18,68,.46),rgba(4,15,58,.35))!important}
.account-header p{font-size:12px!important;color:#b4bbd9!important}
.account-tab{font-size:12px!important;min-height:40px!important;padding-inline:14px!important}
.account-panels{position:relative!important;z-index:1!important}
.account-panel{max-width:none!important}
.account-panel-heading h2{font-size:21px!important}
.account-panel-heading p{font-size:12px!important;color:#a2acd0!important}
.account-facts{max-width:760px}
.preference-row strong{font-size:13px!important}.preference-row small{font-size:11px!important;color:#9da6cb!important;line-height:1.45!important}
.preference-row select{max-width:190px;justify-self:end}

/* Preference checkbox becomes an intentional themed switch. */
.preference-switch{
  appearance:none!important;
  -webkit-appearance:none!important;
  position:relative!important;
  width:48px!important;
  height:26px!important;
  min-height:26px!important;
  margin:0!important;
  border:1px solid rgba(153,168,243,.25)!important;
  border-radius:999px!important;
  background:rgba(27,42,104,.70)!important;
  box-shadow:inset 0 1px 4px rgba(0,0,25,.30)!important;
  cursor:pointer!important;
  transition:background .16s ease,border-color .16s ease,box-shadow .16s ease!important;
}
.preference-switch::after{content:"";position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#c4cce8;box-shadow:0 2px 7px rgba(0,0,25,.42);transition:transform .17s ease,background .17s ease}
.preference-switch:checked{border-color:rgba(178,160,255,.46)!important;background:linear-gradient(90deg,#6655d6,#7a65ec)!important;box-shadow:0 0 18px rgba(112,88,236,.17)!important}
.preference-switch:checked::after{transform:translateX(22px);background:#fff}
.preference-switch:focus-visible{outline:none!important;box-shadow:0 0 0 3px rgba(150,133,255,.22),0 0 18px rgba(112,88,236,.17)!important}

/* Device sessions are compact information cards instead of malformed nested spans. */
.session-list{max-width:none!important;display:grid!important;gap:9px!important}
.session-row{
  min-height:82px!important;
  display:grid!important;
  grid-template-columns:minmax(260px,1fr) minmax(220px,300px) auto!important;
  gap:18px!important;
  align-items:center!important;
  padding:12px 14px!important;
  border:1px solid rgba(154,168,242,.13)!important;
  border-radius:10px!important;
  background:rgba(9,23,78,.45)!important;
}
.session-row:first-child{border-top:1px solid rgba(154,168,242,.13)!important}
.session-row.current{border-color:rgba(118,205,176,.18)!important;background:linear-gradient(90deg,rgba(17,62,87,.26),rgba(9,23,78,.44))!important}
.session-device{min-width:0;display:flex;align-items:center;gap:11px}
.session-device-icon{width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;border-radius:9px;background:rgba(67,74,168,.26);color:#cbd2ff;border:1px solid rgba(156,170,244,.12)}
.session-device-icon .icon{width:21px;height:21px}
.session-device-copy{min-width:0;display:grid;gap:3px}.session-device-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:600 14px var(--eien-display)!important;color:#f0eeff}.session-device-copy small{font-size:10.5px!important;color:#9ca6cb!important}
.session-dates{display:grid;grid-template-columns:1fr 1fr;gap:16px}.session-dates>span{display:grid;gap:2px}.session-dates small{font-size:9.5px!important;text-transform:uppercase;letter-spacing:.04em;color:#7f8bb6!important}.session-dates strong{font-size:11.5px!important;font-weight:600!important;color:#d5d9ed!important}
.session-action{justify-self:end}.current-label{display:inline-flex;align-items:center;min-height:30px;padding:0 9px;border-radius:7px;background:rgba(39,130,94,.16);border:1px solid rgba(90,211,161,.14);color:#78e2b5!important;font-size:10.5px!important;font-style:normal!important}
.session-empty{padding:24px;border:1px dashed rgba(155,168,241,.14);border-radius:9px;color:#9ca5c9;text-align:center}.session-empty.error{color:#ffafbd}

@media(min-width:821px){
  .account-page{height:min(760px,calc(100dvh - 112px))!important;min-height:650px!important;overflow:hidden!important}
  .account-panels{height:calc(100% - 125px)!important;min-height:470px!important;padding-top:22px!important;overflow:hidden!important}
  .account-panel{height:100%!important;min-height:470px!important;overflow:auto!important;padding-right:8px;scrollbar-width:thin}
}

/* Upload Media: use the cloud-upload mark and a stronger, cleaner drop target. */
.upload-utility .utility-drop{min-height:205px!important;border-color:rgba(165,176,255,.40)!important;background:radial-gradient(circle at 50% 42%,rgba(94,73,219,.18),rgba(10,25,80,.38) 56%,rgba(6,19,67,.30))!important}
.upload-cloud{width:82px!important;height:68px!important;margin-bottom:8px!important;border:1px solid rgba(174,161,255,.16)!important;border-radius:24px!important;background:radial-gradient(circle at 50% 45%,rgba(119,91,241,.37),rgba(52,62,157,.17) 58%,rgba(10,22,72,.12) 72%)!important;box-shadow:inset 0 1px rgba(255,255,255,.04),0 0 34px rgba(115,83,240,.17)!important;color:#dcd6ff!important;filter:none!important}
.upload-cloud svg{width:58px!important;height:50px!important;overflow:visible!important;filter:drop-shadow(0 0 9px rgba(162,139,255,.42))}.upload-cloud-outline{fill:rgba(94,79,211,.15);stroke:#c3b8ff;stroke-width:2.6;stroke-linejoin:round}.upload-cloud-arrow{stroke:#f2edff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.upload-cloud-glint{stroke:#9fcaff;stroke-width:1.8;stroke-linecap:round;opacity:.9}
.upload-cloud.large{width:96px!important;height:80px!important;border-radius:28px!important}
.upload-cloud.large svg{width:68px!important;height:58px!important}
.utility-drop strong{font:600 15px var(--eien-display)!important;color:#f1efff!important}.utility-drop small{font-size:11px!important;color:#c1c7e1!important}.utility-drop>span:last-child{font-size:10px!important;color:#909ac4!important}
.upload-drop{min-height:270px!important;border-width:1px!important}.upload-drop strong{font:600 16px var(--eien-display)!important}.upload-drop>span:last-child{max-width:420px;color:#aab2d2!important;font-size:11px!important;line-height:1.5;text-align:center}

/* Auth fields: one focus treatment on the component shell, never a second browser outline inside it. */
.auth-field{padding:0 11px!important;gap:9px!important}
.auth-field input,.auth-field textarea,
.auth-field input:hover,.auth-field textarea:hover,
.auth-field input:focus,.auth-field textarea:focus,
.auth-field input:focus-visible,.auth-field textarea:focus-visible{
  appearance:none!important;
  -webkit-appearance:none!important;
  min-width:0!important;
  height:48px!important;
  min-height:0!important;
  margin:0!important;
  padding:0 2px!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#f5f3ff!important;
  font-size:13.5px!important;
  line-height:1.25!important;
  caret-color:#cabfff!important;
}
.auth-field textarea,.auth-field textarea:hover,.auth-field textarea:focus,.auth-field textarea:focus-visible{height:58px!important;padding-top:10px!important;line-height:1.4!important}
.auth-field input::placeholder,.auth-field textarea::placeholder{color:#a9b0d0!important;opacity:1}
.auth-field input:-webkit-autofill,.auth-field input:-webkit-autofill:hover,.auth-field input:-webkit-autofill:focus{-webkit-text-fill-color:#f5f3ff!important;-webkit-box-shadow:0 0 0 1000px #071642 inset!important;transition:background-color 9999s ease-out 0s!important}
.auth-input-icon{flex:0 0 auto!important}.auth-field-action{flex:0 0 auto!important}

/* Secure Gallery: one page, one timer, one view counter, integrated full-size viewer. */
.secure-gallery-page{min-height:100dvh!important;background:#06103e!important;overflow-x:hidden!important}
.secure-gallery-shell{
  width:min(1900px,100%)!important;
  min-height:100dvh!important;
  margin:0 auto!important;
  padding:24px!important;
  display:grid!important;
  grid-template-columns:286px minmax(0,1fr) 292px!important;
  gap:14px!important;
  align-items:start!important;
  overflow:visible!important;
}
.secure-gallery-side,.secure-gallery-main,.secure-gallery-status{
  border:1px solid rgba(156,170,246,.22)!important;
  border-radius:13px!important;
  background:linear-gradient(180deg,rgba(6,19,70,.67),rgba(4,15,58,.51))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.035),0 20px 55px rgba(1,5,35,.14)!important;
  overflow:hidden!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.secure-gallery-side,.secure-gallery-status{position:sticky!important;top:24px!important}
.secure-gallery-side{padding:18px!important}.secure-gallery-status{padding:18px!important}
.secure-gallery-logo img{width:78px!important;height:78px!important}.secure-gallery-logo strong{font:700 29px var(--eien-display)!important}.secure-gallery-logo small{font:11px/1.45 var(--eien-display)!important;color:#d5d8eb!important}
.secure-gallery-side section{margin-top:19px!important;padding:14px!important;border-radius:9px!important;background:rgba(9,24,80,.48)!important}
.secure-gallery-side h2{font-size:16px!important;line-height:1.25!important}.secure-gallery-side p{font-size:12px!important;line-height:1.55!important;color:#c0c7e1!important}
.secure-side-facts{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:12px}.secure-side-facts>span{display:grid;gap:2px;padding:9px;border:1px solid rgba(155,169,243,.11);border-radius:7px;background:rgba(13,29,88,.48)}.secure-side-facts small{font-size:10.5px!important;color:#9da8ce!important}.secure-side-facts strong{font-size:11px!important;color:#e2e6f7!important}.secure-side-note{display:grid!important;grid-template-columns:27px 1fr!important;gap:9px!important}.secure-side-note>svg{width:22px;height:22px;fill:#afc5ff}.secure-side-note span{display:grid;gap:3px}.secure-side-note strong{font-size:11px}.secure-side-note small{font-size:11px!important;line-height:1.5;color:#aeb7d6!important}
.secure-gallery-main{min-width:0!important;min-height:460px!important;padding:19px!important}
.secure-gallery-main>header.secure-gallery-header{min-height:88px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;padding:0 0 16px!important;border-bottom:1px solid rgba(153,168,242,.14)!important}
.secure-gallery-kicker{display:block;margin-bottom:4px;color:#aab3d4;font-size:11.5px!important;letter-spacing:.02em}.secure-gallery-main h1{font:650 31px var(--eien-display)!important}.secure-gallery-main h1 svg{width:34px!important;height:34px!important}
.secure-gallery-counters{display:flex!important;flex:0 0 auto!important;overflow:hidden;border:1px solid rgba(158,171,243,.17)!important;border-radius:10px!important;background:rgba(9,24,80,.55)!important}
.secure-gallery-counters>span{min-width:132px!important;padding:10px 16px!important}.secure-gallery-counters>span+span{border-left:1px solid rgba(158,171,243,.14)!important}.secure-gallery-counters small{font-size:11px!important;color:#a8b1d2!important}.secure-gallery-counters strong{font:650 25px var(--eien-display)!important;color:#d9d2ff!important}
.secure-gallery-browse{padding-top:15px}
.secure-gallery-section-head{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:18px!important;margin:0 0 12px!important}
.secure-gallery-section-head>div{display:flex;align-items:baseline;gap:9px}.secure-gallery-section-head h2{font:600 20px var(--eien-display)!important}.secure-gallery-section-head span{font-size:11px!important;color:#9fa9cb!important}.secure-gallery-section-head p{display:flex;align-items:center;gap:6px;margin:0;color:#bbc2dc;font-size:12.5px!important;line-height:1.4}.secure-gallery-section-head p svg{width:16px;height:16px;fill:#b7b7ed}
.secure-canvas-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:9px!important;min-height:0!important;padding:0!important;align-items:stretch!important}
.secure-canvas-tile{position:relative!important;overflow:hidden!important;border:1px solid rgba(159,172,245,.18)!important;border-radius:9px!important;background:#061340!important;box-shadow:0 8px 22px rgba(0,4,35,.15)!important;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease!important}
.secure-canvas-tile:hover{transform:translateY(-1px);border-color:rgba(185,176,255,.42)!important;box-shadow:0 12px 28px rgba(0,4,35,.23),0 0 18px rgba(112,86,235,.10)!important}
.secure-canvas-tile:focus-visible{outline:2px solid #9d8cff!important;outline-offset:2px!important}
.secure-canvas-tile canvas{display:block!important;width:100%!important;height:clamp(170px,18.5vh,225px)!important;object-fit:cover!important}

.secure-status-title{display:flex!important;align-items:center!important;gap:8px!important;padding-bottom:14px!important;border-bottom:1px solid rgba(153,168,242,.13)!important}.secure-status-title svg{width:20px;height:20px;fill:#c4bcff}.secure-status-title h2{margin:0!important;font:600 18px var(--eien-display)!important}.secure-status-title>span{margin-left:auto;color:#c1c5ff}
.secure-status-hero{display:flex;align-items:center;gap:11px;margin:15px 0 5px;padding:12px;border:1px solid rgba(88,208,159,.14);border-radius:9px;background:rgba(24,104,78,.13)}.secure-status-hero>svg{width:28px;height:28px;fill:#61d8a7}.secure-status-hero span{display:grid;gap:2px}.secure-status-hero small{font-size:10px;color:#9bb9b4}.secure-status-hero strong{font:600 17px var(--eien-display);color:#86e3bb}
.secure-status-check{grid-template-columns:30px 1fr!important;gap:9px!important;padding:13px 0!important}.secure-status-check svg{width:23px!important;height:23px!important}.secure-status-check strong{font-size:12.5px!important;color:#e7e9f7!important}.secure-status-check small{margin-top:3px;color:#aeb7d6!important;font-size:11.5px!important;line-height:1.5!important}
.secure-status-note{display:grid!important;grid-template-columns:24px 1fr!important;gap:9px!important;margin-top:11px!important;padding:12px!important;border:1px dashed rgba(162,174,244,.18)!important;border-radius:9px!important;background:rgba(11,26,81,.39)!important}.secure-status-note>span{font-size:18px;color:#c4c2ff}.secure-status-note p{margin:0!important;color:#c0c6df!important;font-size:12px!important;line-height:1.55!important}

/* The old modal becomes an inline full-size mode inside the same page. */
.secure-image-viewer{position:static!important;inset:auto!important;z-index:auto!important;width:100%!important;display:block!important;padding:15px 0 0!important;background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.secure-image-viewer[hidden]{display:none!important}
.secure-inline-viewer-head{min-height:74px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;padding:0 0 13px;border-bottom:1px solid rgba(153,168,242,.13)}
.secure-viewer-back{appearance:none;min-height:38px;display:inline-flex;align-items:center;gap:5px;padding:0 9px;border:1px solid rgba(157,169,243,.15);border-radius:8px;background:rgba(11,27,82,.49);color:#d7d9ef;cursor:pointer}.secure-viewer-back:hover{background:rgba(59,65,150,.36);color:#fff}.secure-viewer-back svg{width:18px;height:18px;fill:currentColor}.secure-viewer-back span{font-size:11px;font-weight:600}
.secure-viewer-title{min-width:0;display:grid;gap:2px}.secure-viewer-kicker{color:#9da7ca;font-size:9.5px;text-transform:uppercase;letter-spacing:.055em}.secure-viewer-title h2{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0;font:600 21px var(--eien-display)!important}.secure-image-meta{color:#9da8ca;font-size:10.5px!important}
.secure-viewer-position{display:grid;justify-items:end;gap:2px;padding:7px 10px;border:1px solid rgba(157,170,243,.12);border-radius:8px;background:rgba(10,25,80,.45)}.secure-viewer-position small{color:#8793bd;font-size:9px}.secure-viewer-position strong{font:600 13px var(--eien-display)}
.secure-image-stage{width:100%!important;height:min(610px,61dvh)!important;min-height:390px!important;margin-top:14px!important;display:grid!important;place-items:center!important;overflow:hidden!important;border:1px solid rgba(156,170,243,.15)!important;border-radius:10px!important;background:radial-gradient(circle at center,rgba(19,31,86,.32),rgba(1,7,29,.74))!important;box-shadow:inset 0 0 48px rgba(0,4,28,.25)!important}
.secure-image-stage canvas{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important}
.secure-image-filmstrip{display:flex!important;gap:8px!important;padding:10px 0 0!important;overflow-x:auto!important;scrollbar-width:thin!important}.secure-filmstrip-item{width:112px!important;height:70px!important;border:1px solid rgba(158,171,244,.16)!important;border-radius:7px!important;background:#07164a!important;opacity:.72!important;cursor:pointer!important}.secure-filmstrip-item:hover,.secure-filmstrip-item.active{opacity:1!important}.secure-filmstrip-item.active{border-color:#a08dff!important;box-shadow:0 0 0 2px rgba(145,120,255,.16)!important}.secure-filmstrip-item canvas{width:100%!important;height:100%!important;object-fit:cover!important}
.secure-inline-viewer-note{display:flex;align-items:center;gap:8px;margin-top:10px;padding:10px 12px;border-radius:8px;background:rgba(10,25,80,.39);color:#bdc4dd;font-size:11.5px;line-height:1.5}.secure-inline-viewer-note svg{width:18px;height:18px;fill:#aebeff;flex:0 0 auto}

.secure-expired-content p{font-size:12px!important;color:#b5bdd8!important}
.secure-unavailable-consumed .secure-unavailable-art{width:230px!important;height:150px!important;filter:saturate(1.08) contrast(1.04) drop-shadow(0 0 24px rgba(104,121,244,.24))!important}
.secure-unavailable-consumed .secure-unavailable-state-strip{border-color:rgba(128,151,242,.19)!important;color:#b6c2e8!important}

@media(max-width:1450px){
  .secure-gallery-shell{grid-template-columns:250px minmax(0,1fr) 260px!important;padding:16px!important}
  .secure-gallery-side,.secure-gallery-status{top:16px!important}
  .secure-canvas-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .secure-share-table-head,.secure-share-row{grid-template-columns:minmax(260px,1fr) 145px 105px 94px!important;gap:12px!important}
  .sidebar-meter-row{font-size:12.5px!important}.sidebar-meter-row small{font-size:11px!important}
}
@media(max-width:1120px){
  .secure-gallery-shell{grid-template-columns:1fr!important;max-width:980px!important}
  .secure-gallery-side,.secure-gallery-status{display:none!important}
  .secure-gallery-main{min-height:calc(100dvh - 32px)!important}
  .secure-canvas-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:900px){
  .secure-share-table-head{display:none!important}
  .secure-share-row{grid-template-columns:minmax(0,1fr) auto auto!important;gap:12px!important}
  .secure-share-media{grid-column:1/-1}.secure-share-life{grid-column:1}.secure-share-views{grid-column:2}.secure-share-actions{grid-column:3;grid-row:2}
  .session-row{grid-template-columns:1fr auto!important}.session-dates{grid-column:1;grid-row:2;max-width:330px}.session-action{grid-column:2;grid-row:1 / span 2}
}
@media(max-width:820px){
  .account-page{height:auto!important;min-height:0!important;overflow:visible!important}.account-panels{height:auto!important;min-height:0!important;overflow:visible!important}.account-panel{height:auto!important;min-height:0!important;overflow:visible!important}
  .secure-gallery-shell{padding:10px!important}.secure-gallery-main{padding:14px!important}.secure-gallery-main>header.secure-gallery-header{align-items:flex-start!important}.secure-gallery-counters>span{min-width:110px!important;padding:8px 11px!important}.secure-gallery-counters strong{font-size:21px!important}
  .secure-gallery-section-head{align-items:flex-start!important;flex-direction:column!important;gap:5px!important}.secure-canvas-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.secure-canvas-tile canvas{height:170px!important}
  .secure-inline-viewer-head{grid-template-columns:1fr auto!important}.secure-viewer-back{grid-column:1/-1;width:max-content}.secure-image-stage{min-height:330px!important;height:58dvh!important}
}
@media(max-width:620px){
  .sidebar-meter-row{font-size:12px!important}.sidebar-meter-row small{font-size:10.5px!important}
  .secure-share-row{grid-template-columns:1fr auto!important}.secure-share-life,.secure-share-views{display:grid!important}.secure-share-actions{grid-column:2;grid-row:2 / span 2;align-self:center}.secure-share-views{grid-column:1;grid-row:3}.secure-share-main strong{white-space:normal!important}
  .preference-row select{justify-self:stretch;max-width:none}
  .session-row{grid-template-columns:1fr!important}.session-dates,.session-action{grid-column:1!important;grid-row:auto!important}.session-action{justify-self:start}
  .secure-gallery-main>header.secure-gallery-header{display:grid!important}.secure-gallery-counters{width:100%!important}.secure-gallery-counters>span{flex:1!important;min-width:0!important}.secure-canvas-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.secure-canvas-tile canvas{height:145px!important}.secure-image-stage{height:52dvh!important;min-height:280px!important}
}

/* ========================================================================== 
   Eien v19.3 visual QA correction pass
   Fixes: stable Media workspace, in-page upload queue, integrated secure viewer,
   secure-state readability and dedicated unavailable treatment.
   ========================================================================== */

/* Media gallery keeps the same desktop frame in browse, load-more and manage modes. */
@media (min-width:1121px){
  body[data-page="media"] .media-layout{
    grid-template-columns:minmax(0,1fr) 318px!important;
    gap:16px!important;
    align-items:stretch!important;
  }
  body[data-page="media"] .media-stage-panel{
    height:clamp(700px,calc(100dvh - 112px),820px)!important;
    min-height:700px!important;
    padding:17px 18px 12px!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
  }
  body[data-page="media"] .media-stage-header{flex:0 0 58px!important;min-height:58px!important;padding-bottom:10px!important}
  body[data-page="media"] .media-stage-title h1{font:650 30px/1 var(--eien-display)!important;letter-spacing:-.02em}
  body[data-page="media"] .media-stage-title p{margin-top:5px!important;color:#c1c6df!important;font:12.5px/1.35 var(--eien-display)!important}
  body[data-page="media"] .media-stage-controls{flex:0 0 47px!important;min-height:47px!important;padding:7px 0 4px!important;flex-wrap:nowrap!important}
  body[data-page="media"] .media-filter-tab{min-height:36px!important;font-size:11.5px!important}
  body[data-page="media"] .media-sort-control span{font-size:10.5px!important}
  body[data-page="media"] .media-sort-control select{font-size:11.5px!important}
  body[data-page="media"] .media-album-bar{flex:0 0 42px!important;min-height:42px!important;padding:5px 0!important}
  body[data-page="media"] .media-album-bar[hidden]{display:none!important}
  body[data-page="media"] .media-selection-bar{
    flex:0 0 58px!important;min-height:58px!important;margin:6px 0 0!important;padding:7px 10px!important;
    border:1px solid rgba(161,171,249,.20)!important;background:linear-gradient(180deg,rgba(15,30,91,.72),rgba(7,20,69,.66))!important;
  }
  body[data-page="media"] .media-selection-bar[hidden]{display:none!important}
  body[data-page="media"] .media-selection-bar .selection-summary{min-width:112px!important;padding-right:10px!important}
  body[data-page="media"] .media-selection-bar .selection-summary strong{font-size:14px!important}
  body[data-page="media"] .selection-actions{min-width:0!important;gap:5px!important;overflow-x:auto!important;scrollbar-width:none!important}
  body[data-page="media"] .selection-actions::-webkit-scrollbar{display:none}
  body[data-page="media"] .selection-actions .btn{min-height:36px!important;padding-inline:9px!important;font-size:10px!important;white-space:nowrap!important}
  body[data-page="media"] .selection-actions .btn .icon{width:15px!important;height:15px!important}
  body[data-page="media"] .media-canvas{
    position:relative!important;flex:1 1 auto!important;min-height:0!important;padding-top:9px!important;overflow:hidden!important;
  }
  body[data-page="media"] .media-grid:not(.list-view){
    height:100%!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:repeat(3,minmax(0,1fr))!important;
    gap:9px!important;columns:auto!important;column-gap:normal!important;align-items:stretch!important;
  }
  body[data-page="media"] .media-grid:not(.list-view) .media-card{min-width:0!important;min-height:0!important;height:100%!important;margin:0!important;break-inside:auto!important}
  body[data-page="media"] .media-grid:not(.list-view) .media-thumb{width:100%!important;height:100%!important;min-height:0!important;aspect-ratio:auto!important;border-radius:9px!important}
  body[data-page="media"] .media-grid:not(.list-view) .media-thumb img{width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;object-fit:cover!important}
  body[data-page="media"] .media-grid.list-view{height:100%!important;overflow:auto!important;align-content:start!important}
  body[data-page="media"] .media-load-more{flex:0 0 58px!important;min-height:58px!important;padding:8px 0 0!important;align-items:center!important}
  body[data-page="media"] .media-load-more[hidden]{display:none!important}
  body[data-page="media"] .media-load-more-btn{height:42px!important;min-height:42px!important;min-width:184px!important;font-size:13px!important}
  body[data-page="media"] .media-utility{
    position:static!important;height:clamp(700px,calc(100dvh - 112px),820px)!important;min-height:700px!important;
    display:flex!important;flex-direction:column!important;gap:12px!important;overflow:hidden!important;
  }
  body[data-page="media"] .media-utility[hidden]{display:none!important}
  body[data-page="media"] .upload-utility{flex:0 0 auto!important;max-height:505px!important;overflow:hidden!important}
  body[data-page="media"] .recent-utility{flex:1 1 auto!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}
  body[data-page="media"] .recent-album-list{min-height:0!important;overflow:auto!important;padding-right:2px!important}
  body[data-page="media"] .media-manage-utility>.utility-panel{flex:0 0 auto!important}
  body[data-page="media"] .media-manage-utility .reclaim-utility{margin-top:auto!important}
}

/* In-page Upload Media replaces the old modal workflow. */
body[data-page="media"] .upload-utility{padding:15px!important}
body[data-page="media"] .upload-utility .utility-heading h2{font:650 20px var(--eien-display)!important;color:#f3f0ff}
body[data-page="media"] .utility-drop{min-height:168px!important;padding:15px 11px!important;gap:5px!important;border-color:rgba(164,159,255,.48)!important;background:linear-gradient(180deg,rgba(12,27,83,.45),rgba(7,19,68,.34))!important}
body[data-page="media"] .utility-drop:hover,body[data-page="media"] .utility-drop.drag{border-color:rgba(188,173,255,.76)!important;background:linear-gradient(180deg,rgba(55,48,139,.43),rgba(15,27,83,.40))!important;box-shadow:inset 0 0 35px rgba(113,85,239,.07)!important}
body[data-page="media"] .upload-cloud{width:72px!important;height:62px!important;margin-bottom:1px!important;filter:drop-shadow(0 0 14px rgba(126,92,255,.5))!important}
body[data-page="media"] .upload-cloud-mark{width:65px!important;height:55px!important;overflow:visible}
body[data-page="media"] .upload-cloud-outline,body[data-page="media"] .upload-cloud-arrow,body[data-page="media"] .upload-cloud-glint{fill:none;stroke:#a887ff;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
body[data-page="media"] .upload-cloud-arrow{stroke:#e0dcff;stroke-width:2.5}
body[data-page="media"] .upload-cloud-glint{stroke:#c7d9ff;stroke-width:1.7}
body[data-page="media"] .utility-drop strong{font:600 14px var(--eien-display)!important;color:#f0edff}
body[data-page="media"] .utility-drop small{font-size:11px!important;color:#c0c5df!important}
body[data-page="media"] .utility-drop>span:last-child{font-size:9.5px!important;color:#909bc5!important}
.utility-upload-queue{margin-top:11px!important;padding-top:10px!important;border-top:1px solid rgba(151,165,242,.12)!important}
.utility-upload-queue-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:3px}.utility-upload-queue-head strong{font:600 12.5px var(--eien-display);color:#e9e8f8}.utility-upload-queue-head .text-action{font-size:10.5px!important}
.utility-upload-state{max-height:190px!important;overflow:auto!important;padding-right:2px!important}
.utility-upload-row{grid-template-columns:42px minmax(0,1fr) 26px!important;gap:9px!important;padding:7px 0!important}
.utility-upload-row img{width:42px!important;height:42px!important}.utility-upload-row strong{font-size:11px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.utility-upload-row small{display:block!important;font-size:9.5px!important}.utility-upload-row small em{margin-left:5px;color:#b9c3ec;font-style:normal}.utility-upload-row i{height:4px!important;margin-top:5px!important}.utility-upload-row i b{box-shadow:0 0 9px rgba(124,93,246,.25)}
.utility-upload-actions{margin-top:9px!important}.utility-upload-actions .btn{width:100%;min-height:38px!important;font-size:11.5px!important}

/* Secure gallery: fixed viewport composition, one set of counters, refined browse and integrated full-size viewer. */
.secure-gallery-page{overflow-x:hidden!important}
.secure-gallery-shell{
  width:min(1672px,100%)!important;min-height:100dvh!important;margin:0 auto!important;padding:18px!important;
  grid-template-columns:270px minmax(0,1fr) 286px!important;gap:14px!important;align-items:stretch!important;
}
.secure-gallery-side,.secure-gallery-main,.secure-gallery-status{min-height:calc(100dvh - 36px)!important;max-height:calc(100dvh - 36px)!important;overflow:hidden!important}
.secure-gallery-side,.secure-gallery-status{padding:17px!important}
.secure-gallery-main{padding:16px 17px 14px!important;display:flex!important;flex-direction:column!important}
.secure-gallery-main>header.secure-gallery-header{flex:0 0 80px!important;min-height:80px!important;display:flex!important;align-items:center!important;gap:18px!important;padding:0 0 13px!important;border-bottom:1px solid rgba(151,165,242,.13)!important}
.secure-gallery-main>header.secure-gallery-header>div:first-child{min-width:0;margin-right:auto}.secure-gallery-kicker{font-size:10.5px!important;color:#aeb6d6!important;letter-spacing:.065em!important}.secure-gallery-main h1{margin-top:3px!important;font:650 31px/1.05 var(--eien-display)!important}.secure-gallery-main h1 svg{width:30px!important;height:30px!important}
.secure-gallery-counters{display:flex!important;gap:8px!important;flex-wrap:nowrap!important}.secure-gallery-counters>span{min-width:128px!important;min-height:56px!important;display:grid!important;align-content:center!important;padding:7px 13px!important;border:1px solid rgba(157,170,244,.15)!important;border-radius:9px!important;background:linear-gradient(180deg,rgba(16,31,90,.54),rgba(8,22,73,.44))!important}.secure-gallery-counters small{font-size:10px!important;color:#aeb7d5!important}.secure-gallery-counters strong{margin-top:2px;font:650 25px/1 var(--eien-display)!important;color:#f4f1ff}
.secure-gallery-browse{flex:1 1 auto!important;min-height:0!important;display:flex!important;flex-direction:column!important;padding-top:14px!important;overflow:hidden!important}.secure-gallery-browse[hidden]{display:none!important}
.secure-gallery-section-head{flex:0 0 44px!important;display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:12px!important;padding:0!important}.secure-gallery-section-head>div{display:flex!important;align-items:baseline!important;gap:9px!important}.secure-gallery-section-head h2{font:650 20px var(--eien-display)!important}.secure-gallery-section-head span{font-size:11.5px!important;color:#9fa9cb!important}.secure-gallery-section-head p{display:flex!important;align-items:center!important;gap:6px!important;margin:1px 0 0!important;color:#c1c7df!important;font-size:12.5px!important;line-height:1.4!important}.secure-gallery-section-head p svg{width:17px!important;height:17px!important;fill:#b7b7ed!important}
.secure-canvas-grid{flex:1 1 auto!important;min-height:0!important;height:auto!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:repeat(3,minmax(0,1fr))!important;gap:9px!important;align-items:stretch!important;overflow:hidden!important}.secure-canvas-tile{min-width:0!important;min-height:0!important;height:100%!important;overflow:hidden!important;border-radius:9px!important}.secure-canvas-tile canvas{width:100%!important;height:100%!important;min-height:0!important;object-fit:cover!important}
.secure-gallery-side p,.secure-gallery-side small,.secure-gallery-status small,.secure-status-note p{font-size:11.5px!important;line-height:1.5!important}.secure-unlocked-summary h2{font-size:15px!important}.secure-gallery-logo small{font-size:10.5px!important;line-height:1.45!important}.secure-side-facts small{font-size:9.5px!important}.secure-side-facts strong{font-size:11.5px!important}.secure-side-note strong{font-size:11px!important}.secure-side-note small{font-size:10.5px!important}.secure-status-title h2{font-size:19px!important}.secure-status-hero small{font-size:10.5px!important}.secure-status-hero strong{font-size:17px!important}.secure-status-check strong{font-size:13px!important}.secure-status-check small{font-size:11.5px!important}.secure-status-note p{font-size:11.5px!important;color:#c1c7df!important}

.secure-image-viewer{flex:1 1 auto!important;min-height:0!important;position:static!important;inset:auto!important;display:flex!important;flex-direction:column!important;padding:11px 0 0!important;background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;overflow:hidden!important}.secure-image-viewer[hidden]{display:none!important}
.secure-viewer-context{flex:0 0 60px!important;min-height:60px!important;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:13px!important;align-items:center!important;padding:0 0 10px!important;border-bottom:0!important}
.secure-viewer-back{min-height:37px!important;padding:0 10px!important;border-radius:8px!important;font-size:11.5px!important}.secure-viewer-back span{font-size:11.5px!important}
.secure-viewer-title{min-width:0!important;display:grid!important;gap:2px!important}.secure-viewer-kicker{font-size:9.5px!important;color:#9fa9cc!important;text-transform:uppercase!important;letter-spacing:.06em!important}.secure-viewer-title h2{margin:0!important;font:650 21px/1.05 var(--eien-display)!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.secure-image-meta{margin:0!important;color:#a8b0cf!important;font-size:10.5px!important}.secure-viewer-position{display:grid!important;justify-items:end!important;gap:2px!important;padding:6px 10px!important;border-radius:8px!important;background:rgba(10,25,80,.40)!important;border:1px solid rgba(157,170,243,.11)!important}.secure-viewer-position small{font-size:9px!important;color:#8e99bf!important}.secure-viewer-position strong{font:650 13px var(--eien-display)!important}
.secure-image-stage-wrap{position:relative!important;flex:1 1 auto!important;min-height:0!important;overflow:hidden!important;border-radius:11px!important}.secure-image-stage{width:100%!important;height:100%!important;min-height:0!important;margin:0!important;display:grid!important;place-items:center!important;overflow:hidden!important;border:1px solid rgba(156,170,243,.16)!important;border-radius:11px!important;background:radial-gradient(circle at center,rgba(19,31,86,.30),rgba(1,7,29,.77))!important;box-shadow:inset 0 0 50px rgba(0,4,28,.28)!important}.secure-image-stage canvas{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important}
.secure-image-nav{position:absolute!important;z-index:5!important;top:50%!important;transform:translateY(-50%)!important;width:54px!important;height:54px!important;display:grid!important;place-items:center!important;border:1px solid rgba(196,184,255,.43)!important;border-radius:50%!important;background:rgba(17,23,77,.72)!important;color:#f5f2ff!important;box-shadow:0 10px 28px rgba(0,2,28,.30),0 0 22px rgba(112,85,239,.15)!important;backdrop-filter:blur(7px)!important;cursor:pointer!important;transition:background .15s ease,border-color .15s ease,transform .15s ease!important}.secure-image-nav:hover{background:rgba(80,64,177,.82)!important;border-color:rgba(221,211,255,.70)!important;transform:translateY(-50%) scale(1.04)!important}.secure-image-nav svg{width:29px!important;height:29px!important;fill:currentColor!important}.secure-image-prev{left:18px!important}.secure-image-next{right:18px!important}.secure-image-nav[hidden]{display:none!important}
.secure-image-filmstrip{flex:0 0 82px!important;min-height:82px!important;display:flex!important;gap:8px!important;padding:10px 0 0!important;overflow-x:auto!important;background:transparent!important;border-top:0!important}.secure-filmstrip-item{width:104px!important;height:68px!important;flex:0 0 auto!important}.secure-inline-viewer-note{flex:0 0 39px!important;min-height:39px!important;margin:7px 0 0!important;padding:8px 11px!important;font-size:12.5px!important;line-height:1.35!important}

/* Secure unavailable family: larger typography, dedicated art, and action text that never repeats the state. */
.secure-unavailable-page{padding:24px!important}
.secure-unavailable-card{width:min(700px,calc(100vw - 40px))!important;min-height:min(680px,calc(100dvh - 48px))!important;padding:28px 44px 30px!important;grid-template-rows:auto 1fr auto auto auto auto auto!important}
.secure-unavailable-brand img{width:78px!important;height:78px!important}.secure-unavailable-brand strong{font-size:32px!important}.secure-unavailable-brand small{font-size:11.5px!important}.secure-unavailable-badge{min-height:36px!important;font-size:9.5px!important;padding-inline:11px!important}
.secure-unavailable-visual{min-height:202px!important;margin-top:0!important}.secure-unavailable-art{width:258px!important;height:168px!important}.secure-unavailable-consumed .secure-unavailable-art{width:258px!important;height:168px!important}.secure-unavailable-art.unavailable-art{filter:saturate(1.14) contrast(1.06) drop-shadow(0 0 28px rgba(111,91,248,.29))!important}
.secure-unavailable-card h1{font:650 40px/1.08 var(--eien-display)!important;letter-spacing:-.022em!important}.secure-unavailable-message{max-width:500px!important;margin-top:12px!important;color:#d3d7ea!important;font-size:15px!important;line-height:1.55!important}
.secure-unavailable-state-strip{width:min(390px,100%)!important;min-height:47px!important;margin-top:20px!important;border-style:dashed!important;background:rgba(14,29,85,.38)!important;color:#b9c2e0!important}.secure-unavailable-state-strip span{font-size:12.5px!important}.secure-unavailable-state-strip svg{fill:#aab4d8!important}
.secure-unavailable-primary{position:relative;z-index:2;width:min(390px,100%)!important;min-height:54px!important;margin:14px auto 0!important;text-decoration:none!important;font-size:16px!important}.secure-unavailable-primary svg{width:19px!important;height:19px!important;fill:currentColor!important}.secure-unavailable-primary span{position:relative;z-index:1}
.secure-unavailable-footnote{position:relative;z-index:2;display:block;margin-top:13px;color:#a5aecf;font-size:11.5px;line-height:1.4}

@media(max-width:1450px){
  .secure-gallery-shell{grid-template-columns:250px minmax(0,1fr) 260px!important;padding:16px!important}.secure-gallery-side,.secure-gallery-main,.secure-gallery-status{min-height:calc(100dvh - 32px)!important;max-height:calc(100dvh - 32px)!important}.secure-canvas-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:repeat(4,minmax(0,1fr))!important}
}
@media(max-width:1120px){
  .secure-gallery-shell{grid-template-columns:1fr!important;max-width:980px!important}.secure-gallery-side,.secure-gallery-status{display:none!important}.secure-gallery-main{min-height:calc(100dvh - 32px)!important;max-height:none!important}.secure-canvas-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:auto!important;overflow:auto!important}.secure-canvas-tile{height:190px!important}
}
@media(max-width:820px){
  .secure-gallery-shell{padding:10px!important}.secure-gallery-main{padding:14px!important;min-height:calc(100dvh - 20px)!important}.secure-gallery-main>header.secure-gallery-header{height:auto!important;min-height:105px!important;align-items:flex-start!important;flex-wrap:wrap!important}.secure-gallery-counters{width:100%!important}.secure-gallery-counters>span{flex:1!important;min-width:0!important}.secure-gallery-section-head{height:auto!important;min-height:58px!important;flex-direction:column!important}.secure-canvas-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.secure-canvas-tile{height:160px!important}.secure-image-nav{width:46px!important;height:46px!important}.secure-image-prev{left:10px!important}.secure-image-next{right:10px!important}
  .secure-unavailable-card{min-height:0!important;padding:22px 22px 25px!important}.secure-unavailable-card h1{font-size:32px!important}.secure-unavailable-message{font-size:13px!important}.secure-unavailable-art,.secure-unavailable-consumed .secure-unavailable-art{width:220px!important;height:145px!important}
}

/* v19.3 screenshot correction: stage must stretch across the integrated viewer. */
.secure-image-viewer{width:100%!important;align-items:stretch!important}
.secure-image-stage-wrap{width:100%!important;height:0!important;flex:1 1 0!important;align-self:stretch!important;display:block!important}
.secure-image-nav span{display:block!important;margin-top:-4px!important;font:400 42px/1 Georgia,"Times New Roman",serif!important;color:#fff!important;text-shadow:0 0 10px rgba(205,194,255,.55)!important}
.secure-unavailable-card .secure-unavailable-message{font:500 15px/1.55 var(--eien-display)!important;color:#d3d7ea!important}
body[data-page="media"] .utility-upload-state{max-height:240px!important}
@media (min-width:1121px){body[data-page="media"] .upload-utility{max-height:565px!important}}

/* v19.3 secure-viewer cleanup: image navigation is part of the gallery, not a second page/modal. */
.secure-image-viewer{padding-top:10px!important}
.secure-image-stage-wrap{isolation:isolate!important}
.secure-viewer-context{
  position:absolute!important;z-index:8!important;top:14px!important;left:14px!important;right:14px!important;
  min-height:0!important;height:auto!important;display:flex!important;align-items:flex-start!important;justify-content:space-between!important;
  gap:12px!important;padding:0!important;border:0!important;pointer-events:none!important;
}
.secure-viewer-back{
  pointer-events:auto!important;min-height:40px!important;padding:0 13px 0 10px!important;border:1px solid rgba(205,195,255,.35)!important;
  border-radius:9px!important;background:rgba(5,14,54,.72)!important;color:#f5f2ff!important;box-shadow:0 8px 24px rgba(0,3,29,.26)!important;
  backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important;font-size:12.5px!important;
}
.secure-viewer-back svg{width:19px!important;height:19px!important;fill:currentColor!important}.secure-viewer-back span{font-size:12.5px!important;font-weight:650!important}
.secure-viewer-position{
  pointer-events:none!important;display:flex!important;align-items:baseline!important;gap:6px!important;padding:8px 11px!important;border:1px solid rgba(205,195,255,.28)!important;
  border-radius:9px!important;background:rgba(5,14,54,.70)!important;color:#f4f1ff!important;box-shadow:0 8px 24px rgba(0,3,29,.22)!important;
  backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important;
}
.secure-viewer-position small{font-size:10.5px!important;color:#b5bedc!important}.secure-viewer-position strong{font:650 13.5px/1 var(--eien-display)!important}
.secure-viewer-title{
  position:absolute!important;z-index:7!important;left:17px!important;bottom:16px!important;max-width:min(68%,620px)!important;
  display:grid!important;gap:2px!important;padding:10px 13px 9px!important;border:1px solid rgba(199,190,255,.18)!important;border-radius:9px!important;
  background:linear-gradient(90deg,rgba(3,9,37,.84),rgba(5,15,56,.66),rgba(5,15,56,.12))!important;box-shadow:0 8px 26px rgba(0,3,28,.22)!important;
  backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important;pointer-events:none!important;
}
.secure-viewer-kicker{font-size:10px!important;color:#c1c8e3!important;letter-spacing:.08em!important}.secure-viewer-title h2{font:650 20px/1.08 var(--eien-display)!important;color:#fff!important;text-shadow:0 2px 10px rgba(0,0,0,.45)!important}.secure-image-meta{font-size:11.5px!important;color:#c8cee4!important}
.secure-image-stage canvas{display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important}
.secure-image-filmstrip{flex-basis:78px!important;min-height:78px!important;padding-top:9px!important}.secure-filmstrip-item{width:102px!important;height:66px!important}
.secure-inline-viewer-note{flex-basis:37px!important;min-height:37px!important;margin-top:6px!important;padding:7px 10px!important;font-size:12.75px!important}

/* Increase readability in the secure gallery status rails to match the larger state-page type. */
.secure-gallery-side p,.secure-gallery-status small,.secure-status-note p{font-size:12.5px!important;line-height:1.5!important}
.secure-unlocked-summary h2{font-size:16px!important}.secure-side-facts small{font-size:10.5px!important}.secure-side-facts strong{font-size:12.5px!important}
.secure-side-note strong{font-size:12px!important}.secure-side-note small{font-size:11.5px!important}.secure-status-title h2{font-size:20px!important}
.secure-status-hero small{font-size:11.5px!important}.secure-status-hero strong{font-size:18px!important}.secure-status-check strong{font-size:14px!important}.secure-status-check small{font-size:12.5px!important}.secure-status-note p{font-size:12.5px!important}

/* Queued uploads have a visible waiting indicator; active uploads still use true XHR progress. */
.utility-upload-row.queued i b{width:8%!important;min-width:12px!important;opacity:.62!important;animation:eienQueuePulse 1.5s ease-in-out infinite alternate!important}
.utility-upload-row.complete i b{width:100%!important}
@keyframes eienQueuePulse{from{opacity:.38}to{opacity:.82}}
@media(prefers-reduced-motion:reduce){.utility-upload-row.queued i b{animation:none!important;opacity:.58!important}}

@media(max-width:820px){
  .secure-viewer-title{left:12px!important;bottom:12px!important;max-width:72%!important;padding:8px 10px!important}.secure-viewer-title h2{font-size:17px!important}.secure-image-meta{font-size:10.5px!important}
  .secure-viewer-context{top:10px!important;left:10px!important;right:10px!important}.secure-viewer-back{min-height:38px!important}.secure-inline-viewer-note{font-size:11.5px!important}
}

/* v19.4 secure-surface refinement: strengthen hierarchy, contrast and typographic crispness. */
.secure-gallery-side,.secure-gallery-main,.secure-gallery-status{
  border-color:rgba(170,182,250,.25)!important;
  background:linear-gradient(180deg,rgba(7,20,72,.82),rgba(4,15,57,.72))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.045),0 24px 64px rgba(0,3,34,.18)!important;
  backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important;
}
.secure-gallery-main{padding:15px 16px 14px!important}
.secure-gallery-main>header.secure-gallery-header{
  flex:0 0 94px!important;min-height:94px!important;padding:12px 13px!important;border:1px solid rgba(168,179,247,.18)!important;
  border-radius:11px!important;background:linear-gradient(135deg,rgba(18,35,98,.72),rgba(8,23,76,.58))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.045),0 10px 28px rgba(0,4,34,.13)!important;
}
.secure-gallery-heading{min-width:0;display:flex!important;align-items:center!important;gap:12px!important;margin-right:auto!important}
.secure-gallery-title-mark{width:46px;height:46px;display:grid;place-items:center;flex:0 0 auto;border:1px solid rgba(181,168,255,.30);border-radius:12px;background:radial-gradient(circle at 45% 35%,rgba(126,95,245,.35),rgba(37,48,132,.18) 67%,rgba(8,22,72,.20));box-shadow:inset 0 1px rgba(255,255,255,.06),0 0 24px rgba(113,82,236,.12)}
.secure-gallery-title-mark svg{width:29px!important;height:29px!important;fill:#d1c8ff!important;filter:drop-shadow(0 0 7px rgba(160,139,255,.28))}
.secure-gallery-heading-copy{min-width:0;display:grid;align-content:center;gap:1px}
.secure-gallery-kicker{margin:0!important;font:700 9.5px/1.2 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;letter-spacing:.13em!important;color:#aeb8dc!important}
.secure-gallery-main h1{margin:1px 0 0!important;font:650 30px/1.04 var(--eien-display)!important;letter-spacing:-.018em!important;color:#fbf9ff!important;text-shadow:0 1px 0 rgba(255,255,255,.06)}
.secure-gallery-heading-copy p{margin:2px 0 0!important;color:#b7bfdc!important;font:500 12px/1.35 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important}
.secure-gallery-counters{gap:8px!important;background:transparent!important;border:0!important;border-radius:0!important;overflow:visible!important}
.secure-gallery-counters>span.secure-gallery-counter{
  min-width:150px!important;min-height:66px!important;display:grid!important;grid-template-columns:30px minmax(0,1fr)!important;align-items:center!important;gap:9px!important;
  padding:8px 12px!important;border:1px solid rgba(169,181,248,.18)!important;border-radius:10px!important;
  background:linear-gradient(180deg,rgba(14,30,89,.73),rgba(8,22,73,.59))!important;box-shadow:inset 0 1px rgba(255,255,255,.035)!important;
}
.secure-gallery-counters>span+span{border-left:1px solid rgba(169,181,248,.18)!important}
.secure-gallery-counter>svg{width:25px;height:25px;fill:#c8c0ff;opacity:.94}
.secure-gallery-counter>span{display:grid;gap:2px}
.secure-gallery-counters small{font:600 10.5px/1.2 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;color:#aeb7d5!important;letter-spacing:.01em}
.secure-gallery-counters strong{display:flex;align-items:baseline;gap:6px;margin:0!important;font:650 25px/1 var(--eien-display)!important;color:#f7f4ff!important}
.secure-gallery-counters strong b{font:inherit;color:#b99dff}.secure-gallery-counters strong em{font:600 12px/1 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;color:#a9b1d0;font-style:normal}
.secure-gallery-browse{padding-top:13px!important}.secure-gallery-section-head{flex-basis:47px!important;border-bottom:1px solid rgba(161,173,244,.10);margin-bottom:10px!important}
.secure-gallery-section-head h2{font:650 20px/1.15 var(--eien-display)!important;color:#f4f1ff}.secure-gallery-section-head span{font-size:12px!important}.secure-gallery-section-head p{font-size:12.75px!important;color:#c4cae2!important}

.secure-gallery-status{padding:17px 18px!important;display:flex!important;flex-direction:column!important}
.secure-status-title{min-height:68px!important;display:grid!important;grid-template-columns:38px minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important;padding:0 0 15px!important;border-bottom:1px solid rgba(166,178,247,.14)!important}
.secure-status-title-mark{width:38px;height:38px;display:grid;place-items:center;border:1px solid rgba(177,165,255,.25);border-radius:10px;background:rgba(45,45,126,.30)}
.secure-status-title-mark svg{width:20px!important;height:20px!important;fill:#d3ccff!important}.secure-status-title>span:nth-child(2){display:grid;gap:1px}.secure-status-title>span:nth-child(2)>small{font:700 9px/1.1 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;letter-spacing:.12em;color:#929fc9!important}.secure-status-title h2{font:650 20px/1.1 var(--eien-display)!important;color:#f5f2ff!important}
.secure-live-pill{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 9px;border:1px solid rgba(87,220,165,.19);border-radius:999px;background:rgba(26,112,83,.16);color:#89e4bd;font:700 10px/1 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}.secure-live-pill i{width:6px;height:6px;border-radius:50%;background:#65d9aa;box-shadow:0 0 9px rgba(101,217,170,.55)}
.secure-status-hero{display:none!important}
.secure-status-check{grid-template-columns:36px minmax(0,1fr)!important;gap:11px!important;margin-top:10px!important;padding:12px!important;border:1px solid rgba(161,174,245,.11)!important;border-radius:10px!important;background:linear-gradient(135deg,rgba(15,31,91,.58),rgba(8,23,75,.43))!important;box-shadow:inset 0 1px rgba(255,255,255,.025)!important}
.secure-status-check+.secure-status-check{margin-top:9px!important}.secure-status-icon{width:36px;height:36px;display:grid!important;place-items:center!important;border:1px solid rgba(170,181,246,.14);border-radius:10px;background:rgba(27,40,106,.48)}.secure-status-icon svg{width:21px!important;height:21px!important;fill:#b8b3f5!important}.secure-status-check-confirmed .secure-status-icon{border-color:rgba(92,218,167,.15);background:rgba(28,110,83,.13)}.secure-status-check-confirmed .secure-status-icon svg{fill:#63d7a8!important}
.secure-status-check>span:last-child{display:grid!important;align-content:center!important;gap:3px!important;min-width:0}.secure-status-check strong{font:650 13.5px/1.25 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;color:#f0eefb!important}.secure-status-check small{margin:0!important;font:500 12px/1.45 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;color:#b7c0dc!important}
.secure-status-chip{width:max-content;margin-top:3px;padding:3px 6px;border-radius:5px;background:rgba(72,86,188,.24);color:#b8c7ff;font:700 8.5px/1 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:.08em}
.secure-status-note{margin-top:auto!important;grid-template-columns:28px 1fr!important;gap:10px!important;padding:13px!important;border-style:solid!important;border-color:rgba(169,181,248,.16)!important;background:linear-gradient(135deg,rgba(50,43,126,.27),rgba(9,25,79,.48))!important}.secure-status-note>span{display:grid;place-items:start center;padding-top:2px;color:#c9c1ff!important}.secure-status-note p{display:grid;gap:4px;margin:0!important;font:500 12px/1.47 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;color:#bcc4df!important}.secure-status-note p strong{font:650 12.5px/1.2 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;color:#ebe8fb!important}
.secure-gallery-side section{border-color:rgba(164,176,245,.15)!important;background:linear-gradient(135deg,rgba(14,30,89,.58),rgba(8,23,74,.43))!important}.secure-unlocked-summary h2{font:650 16px/1.2 var(--eien-display)!important}.secure-gallery-side p{font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;font-weight:500!important;color:#bcc5df!important}

/* Terminal Secure Share states: slightly larger, cleaner and less visually noisy. */
.secure-unavailable-page{padding:24px!important}
.secure-unavailable-card{
  width:min(760px,calc(100vw - 48px))!important;min-height:min(740px,calc(100dvh - 48px))!important;padding:30px 52px 34px!important;
  border-color:rgba(171,182,250,.30)!important;border-radius:15px!important;
  background:linear-gradient(180deg,rgba(7,20,73,.81),rgba(4,15,57,.72))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.045),0 34px 96px rgba(0,3,31,.28)!important;
  backdrop-filter:blur(14px)!important;-webkit-backdrop-filter:blur(14px)!important;
}
.secure-unavailable-head{min-height:88px!important}.secure-unavailable-brand{gap:12px!important}.secure-unavailable-brand img{width:84px!important;height:84px!important}.secure-unavailable-brand strong{font:650 34px/1.05 var(--eien-display)!important;letter-spacing:-.01em}.secure-unavailable-brand small{font:500 12px/1.45 var(--eien-display)!important;color:#d7daed!important}.secure-unavailable-badge{min-height:38px!important;padding-inline:12px!important;font:700 10px/1 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;letter-spacing:.08em!important}
.secure-unavailable-visual{min-height:224px!important;margin-top:4px!important}.secure-unavailable-art,.secure-unavailable-consumed .secure-unavailable-art{width:302px!important;height:194px!important}.secure-unavailable-visual::before,.secure-unavailable-visual::after{width:108px!important;opacity:.72!important}
.secure-unavailable-ornament{margin-bottom:12px!important}.secure-unavailable-card h1{font:650 42px/1.08 var(--eien-display)!important;letter-spacing:-.024em!important;color:#fbf9ff!important;text-shadow:0 1px 0 rgba(255,255,255,.04)}
.secure-unavailable-card .secure-unavailable-message{max-width:550px!important;margin:12px auto 0!important;font:500 16px/1.58 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;color:#d7dbea!important;letter-spacing:-.004em!important}
.secure-unavailable-state-strip{width:min(420px,100%)!important;min-height:50px!important;margin-top:21px!important;border-style:solid!important;border-color:rgba(173,184,248,.17)!important;background:linear-gradient(180deg,rgba(25,40,101,.57),rgba(14,29,83,.47))!important}.secure-unavailable-state-strip span{font:650 13.5px/1.2 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;color:#c3cae3!important}.secure-unavailable-state-strip svg{width:18px!important;height:18px!important;fill:#aeb9db!important}
.secure-unavailable-primary{width:min(420px,100%)!important;min-height:57px!important;margin-top:14px!important;font:650 17px/1 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;border:1px solid rgba(196,183,255,.30)!important;background:linear-gradient(135deg,#7658ed,#5057c9)!important;box-shadow:inset 0 1px rgba(255,255,255,.12),0 0 30px rgba(113,80,241,.22)!important}.secure-unavailable-footnote{margin-top:14px!important;font:500 12px/1.45 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;color:#aeb6d2!important}

@media(max-width:1450px){
  .secure-gallery-counters>span.secure-gallery-counter{min-width:132px!important}.secure-gallery-counter>svg{display:none!important}.secure-gallery-counters>span.secure-gallery-counter{grid-template-columns:1fr!important}
  .secure-status-check{padding:10px!important;grid-template-columns:32px minmax(0,1fr)!important}.secure-status-icon{width:32px;height:32px}
}
@media(max-width:820px){
  .secure-gallery-main>header.secure-gallery-header{padding:10px!important}.secure-gallery-title-mark{width:40px;height:40px}.secure-gallery-main h1{font-size:26px!important}.secure-gallery-heading-copy p{font-size:11px!important}
  .secure-unavailable-card{width:100%!important;min-height:0!important;padding:24px 22px 28px!important}.secure-unavailable-brand img{width:64px!important;height:64px!important}.secure-unavailable-brand strong{font-size:27px!important}.secure-unavailable-brand small{font-size:10.5px!important}.secure-unavailable-art,.secure-unavailable-consumed .secure-unavailable-art{width:235px!important;height:150px!important}.secure-unavailable-card h1{font-size:32px!important}.secure-unavailable-card .secure-unavailable-message{font-size:13.5px!important}.secure-unavailable-state-strip span{font-size:12px!important}
}
/* v19.4 final icon/counter alignment correction for the public Secure Gallery. */
.secure-gallery-status .secure-status-title h2{font-size:20px!important;line-height:1.08!important}
.secure-gallery-title-mark svg,.secure-gallery-counter>svg,.secure-status-title-mark svg,.secure-status-icon svg{display:block!important;fill:currentColor!important;color:#c9c1ff!important}
.secure-status-check-confirmed .secure-status-icon svg{color:#63d7a8!important}
.secure-gallery-counter>svg{color:#c8c0ff!important}

/* v19.4.1 final Secure Gallery / terminal-state polish after reference comparison. */
.secure-gallery-main>header.secure-gallery-header{
  min-height:96px!important;flex-basis:96px!important;padding:11px 13px!important;
  border-color:rgba(185,194,249,.22)!important;
  background:linear-gradient(112deg,rgba(17,34,96,.79),rgba(7,22,74,.67))!important;
}
.secure-gallery-title-mark{width:48px;height:48px;border-radius:13px!important;background:linear-gradient(145deg,rgba(99,78,214,.36),rgba(30,43,119,.28))!important}
.secure-gallery-title-mark svg{width:30px!important;height:30px!important}
.secure-gallery-main h1{font-weight:540!important;font-size:31px!important;letter-spacing:-.012em!important}
.secure-gallery-kicker{font-size:9.75px!important;color:#c0c7e3!important}.secure-gallery-heading-copy p{font-size:12.25px!important;color:#c4cae1!important}
.secure-gallery-counters{
  display:grid!important;grid-template-columns:1fr 1fr!important;gap:0!important;min-width:326px!important;min-height:66px!important;
  overflow:hidden!important;border:1px solid rgba(174,185,247,.20)!important;border-radius:11px!important;
  background:linear-gradient(180deg,rgba(11,27,83,.72),rgba(7,21,69,.62))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.035)!important;
}
.secure-gallery-counters>span.secure-gallery-counter{
  min-width:0!important;min-height:64px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
  grid-template-columns:30px minmax(0,1fr)!important;padding:8px 15px!important;
}
.secure-gallery-counters>span.secure-gallery-counter+span.secure-gallery-counter{border-left:1px solid rgba(174,185,247,.18)!important}
.secure-gallery-counter>svg{display:block!important;width:25px!important;height:25px!important;color:#c9c1ff!important;fill:currentColor!important;filter:drop-shadow(0 0 8px rgba(157,135,255,.18))}
.secure-gallery-counters small{font-size:10.25px!important;color:#bdc5df!important}.secure-gallery-counters strong{font-size:27px!important;font-weight:500!important;letter-spacing:.005em!important}.secure-gallery-counters strong b{color:#c2a4ff!important}
.secure-gallery-section-head h2{font-weight:540!important;font-size:20px!important}.secure-gallery-section-head p{font-size:12.5px!important}

.secure-gallery-status{padding:16px 18px!important;background:linear-gradient(180deg,rgba(7,20,72,.88),rgba(4,15,57,.78))!important}
.secure-status-title{min-height:72px!important;padding-bottom:16px!important}.secure-status-title-mark{width:40px;height:40px!important;border-radius:11px!important}.secure-status-title h2{font-weight:540!important;font-size:20.5px!important;letter-spacing:-.01em!important}.secure-status-title>span:nth-child(2)>small{font-size:9.25px!important;color:#aab4d7!important}
.secure-live-pill{min-height:27px!important;padding:0 9px!important;font-size:9.5px!important;background:rgba(25,106,80,.12)!important}
.secure-status-check{
  grid-template-columns:38px minmax(0,1fr)!important;gap:12px!important;margin:0!important;padding:18px 2px!important;
  border:0!important;border-bottom:1px solid rgba(164,176,244,.115)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
}
.secure-status-check+.secure-status-check{margin-top:0!important}.secure-status-icon{width:38px;height:38px!important;border-radius:11px!important;background:linear-gradient(145deg,rgba(45,58,139,.44),rgba(21,35,103,.30))!important}.secure-status-icon svg{width:21px!important;height:21px!important}
.secure-status-check-confirmed .secure-status-icon{background:rgba(27,111,83,.15)!important}.secure-status-check strong{font-size:14px!important;font-weight:650!important;letter-spacing:-.003em!important}.secure-status-check small{font-size:12.5px!important;line-height:1.48!important;color:#c0c7de!important}
.secure-status-chip{margin-top:5px!important;padding:4px 7px!important;font-size:8.75px!important;background:rgba(84,96,196,.25)!important}
.secure-status-note{margin-top:auto!important;padding:14px!important;border-color:rgba(181,191,247,.18)!important;background:linear-gradient(135deg,rgba(50,43,126,.25),rgba(8,24,77,.54))!important}.secure-status-note p{font-size:12.25px!important;color:#c5cbe0!important}.secure-status-note p strong{font-size:13px!important;font-weight:620!important}

/* The reference state pages use lighter display faces and generous negative space; mirror that rather than heavy bold type. */
.secure-unavailable-brand strong{font-weight:540!important;letter-spacing:0!important}.secure-unavailable-card h1{font-weight:520!important;letter-spacing:-.014em!important}.secure-unavailable-card .secure-unavailable-message{max-width:520px!important;line-height:1.62!important}.secure-unavailable-state-strip span{font-weight:600!important}.secure-unavailable-primary{font-weight:620!important}.secure-unavailable-primary svg{display:block!important;width:19px!important;height:19px!important;fill:currentColor!important}

@media(max-width:1450px){
  .secure-gallery-counters{min-width:278px!important}.secure-gallery-counters>span.secure-gallery-counter{grid-template-columns:1fr!important;padding-inline:12px!important}.secure-gallery-counter>svg{display:none!important}
  .secure-status-check{grid-template-columns:34px minmax(0,1fr)!important}.secure-status-icon{width:34px!important;height:34px!important}
}

/* v19.5 encrypted-file library: images remain gallery-native while arbitrary
   files are opaque client-encrypted envelopes with browser-held keys. */
.encrypted-upload-options{margin-top:10px;padding:11px;border:1px solid rgba(158,171,246,.16);border-radius:10px;background:rgba(14,29,87,.46);display:grid;grid-template-columns:1fr 1fr;gap:9px}.encrypted-upload-options[hidden]{display:none}.encrypted-upload-options-head{grid-column:1/-1;display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:center;padding-bottom:7px;border-bottom:1px solid rgba(154,168,239,.1)}.encrypted-upload-options-head>.icon{width:23px;height:23px;color:#c2b7ff}.encrypted-upload-options-head span{display:grid;gap:2px}.encrypted-upload-options-head strong{font-size:11px;color:#f0efff}.encrypted-upload-options-head small{font-size:9px;color:#949dc5;line-height:1.35}.encrypted-upload-options>label{display:grid;gap:5px;color:#aab2d4;font-size:9px}.encrypted-upload-options select,.encrypted-upload-options input{height:34px;min-height:34px;padding:0 9px;border:1px solid rgba(157,171,255,.18);border-radius:8px;background:rgba(7,19,65,.72);box-shadow:none;color:#eef0ff;font-size:10px}.encrypted-upload-options label>small{color:#7882b0;font-size:8px}.utility-file-icon{position:relative;width:44px;height:44px;display:grid;place-items:center;border:1px solid rgba(160,174,255,.18);border-radius:8px;background:linear-gradient(145deg,rgba(48,54,139,.52),rgba(10,25,82,.84));color:#d8d5ff}.utility-file-icon>.icon{width:22px;height:22px}.utility-file-icon>b{position:absolute;left:4px;bottom:3px;max-width:34px;overflow:hidden;color:#abb6e2;font-size:6.5px;font-weight:700;letter-spacing:.04em}.utility-file-icon>i{position:absolute;right:3px;top:3px;width:15px;height:15px;display:grid;place-items:center;border-radius:50%;background:#0b1748;color:#bdb2ff}.utility-file-icon>i .icon{width:10px;height:10px}
.media-file-thumb{min-height:184px;aspect-ratio:1.22/1!important;display:flex!important;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:13px!important;overflow:hidden;background:radial-gradient(circle at 50% 28%,rgba(112,92,224,.26),transparent 42%),linear-gradient(145deg,rgba(24,39,112,.88),rgba(7,20,67,.96))!important;text-align:left}.media-file-art{position:absolute;left:50%;top:42%;width:74px;height:74px;display:grid;place-items:center;transform:translate(-50%,-50%);border:1px solid rgba(185,182,255,.24);border-radius:18px;background:linear-gradient(145deg,rgba(123,101,231,.27),rgba(20,39,108,.34));box-shadow:0 14px 34px rgba(3,7,50,.3),0 0 34px rgba(110,92,223,.13);color:#dad6ff}.media-file-art>.icon{width:36px;height:36px}.media-file-art>i{position:absolute;right:-7px;bottom:-7px;width:31px;height:31px;display:grid;place-items:center;border:1px solid rgba(189,181,255,.27);border-radius:11px;background:#0b1953;color:#c8bcff;box-shadow:0 5px 14px rgba(0,4,35,.4)}.media-file-art>i .icon{width:17px;height:17px}.media-file-copy{position:relative;z-index:2;width:100%;display:grid;gap:2px;padding-right:4px}.media-file-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f3f1ff;font-family:Georgia,"Times New Roman",serif;font-size:14px;font-weight:520}.media-file-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#b5bddc;font-size:9.5px}.media-file-copy>span{color:#838db8;font-size:8.5px}.media-file-seal{position:absolute;left:9px;top:9px;z-index:2;display:inline-flex;align-items:center;gap:4px;padding:4px 6px;border:1px solid rgba(176,170,255,.19);border-radius:7px;background:rgba(8,19,67,.7);color:#c8c2ff;font-size:8px;backdrop-filter:blur(8px)}.media-file-seal .icon{width:12px;height:12px}.media-grid.list-view .media-file-thumb{min-height:82px;height:82px!important;display:grid!important;grid-template-columns:118px minmax(0,1fr);padding:0!important}.media-grid.list-view .media-file-art{position:relative;left:auto;top:auto;width:118px;height:82px;transform:none;border:0;border-radius:0;background:linear-gradient(145deg,rgba(70,66,174,.3),rgba(13,30,94,.5))}.media-grid.list-view .media-file-copy{padding:10px 14px}.media-grid.list-view .media-file-seal{left:85px;top:6px;font-size:0;padding:4px}.media-grid.list-view .media-file-seal .icon{width:12px;height:12px}.album-placeholder.file{background:linear-gradient(145deg,rgba(89,74,190,.34),rgba(18,33,97,.5));color:#cfc6ff}
.encrypted-file-library-dialog{width:min(880px,calc(100vw - 28px));max-width:880px}.encrypted-file-library-frame{width:100%}.encrypted-dialog-kicker{display:block;margin-bottom:5px;color:#9e92f0;font-size:8px;font-weight:700;letter-spacing:.1em}.encrypted-link-list{display:grid;gap:9px;max-height:min(62vh,610px);overflow:auto}.encrypted-link-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:11px;align-items:start;padding:12px;border:1px solid rgba(158,171,246,.14);border-radius:11px;background:rgba(12,26,83,.48)}.encrypted-link-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:11px;background:linear-gradient(145deg,rgba(105,87,218,.28),rgba(25,42,112,.4));color:#d0c8ff}.encrypted-link-icon .icon{width:22px;height:22px}.encrypted-link-row>div:nth-child(2){min-width:0;display:grid;gap:4px}.encrypted-link-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f0efff;font-size:12px}.encrypted-link-row small{color:#929cc5;font-size:9px;line-height:1.35}.encrypted-link-field input{width:100%;height:32px;min-height:32px;padding:0 8px;border:1px solid rgba(157,171,255,.14);border-radius:7px;background:rgba(5,15,56,.62);box-shadow:none;color:#bfc7e8;font-size:9px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.encrypted-link-field p{margin:2px 0 0;color:#b8a9d4;font-size:9px;line-height:1.4}.encrypted-link-actions{display:flex;gap:6px;align-self:center}.encrypted-link-actions .btn{min-height:32px;padding-inline:9px;font-size:9px}.encrypted-link-actions .icon{width:14px;height:14px}.encrypted-dialog-note{display:inline-flex;align-items:center;gap:6px;margin-right:auto;color:#8993bd;font-size:9px}.encrypted-dialog-note .icon{width:15px;height:15px;color:#ada4ef}

/* Public encrypted file transfer.  The plaintext identity stays absent until
   browser-side decryption succeeds. */
.encrypted-file-page{width:min(1120px,calc(100vw - 40px));min-height:100dvh;margin:0 auto;padding:28px 0 44px;display:grid;grid-template-rows:auto 1fr;gap:24px}.encrypted-file-top{display:flex;justify-content:space-between;align-items:center}.encrypted-file-badge{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 11px;border:1px solid rgba(174,183,244,.18);border-radius:9px;background:rgba(9,23,75,.56);color:#cbc7ef;font-size:10px}.encrypted-file-badge .icon{width:16px;height:16px}.encrypted-file-card{align-self:center;width:min(760px,100%);margin:0 auto;padding:34px 40px 28px;display:grid;justify-items:center;gap:20px;border:1px solid rgba(181,190,248,.2);border-radius:18px;background:linear-gradient(160deg,rgba(11,28,88,.86),rgba(5,18,65,.72));box-shadow:0 30px 90px rgba(0,5,46,.34),inset 0 1px rgba(255,255,255,.04);backdrop-filter:blur(20px)}.encrypted-file-visual{position:relative;width:112px;height:102px;display:grid;place-items:center;color:#d2c9ff}.encrypted-file-visual>svg{width:61px;height:61px;fill:currentColor;filter:drop-shadow(0 0 16px rgba(137,115,255,.34))}.encrypted-file-orbit{position:absolute;inset:3px;border:1px solid rgba(165,151,255,.22);border-radius:34% 66% 60% 40%/44% 38% 62% 56%;transform:rotate(-12deg);box-shadow:0 0 34px rgba(103,84,220,.14)}.encrypted-file-visual>i{position:absolute;right:7px;bottom:5px;width:37px;height:37px;display:grid;place-items:center;border:1px solid rgba(194,184,255,.3);border-radius:12px;background:#0a1954;box-shadow:0 8px 18px rgba(0,4,36,.38)}.encrypted-file-visual>i svg{width:21px;height:21px;fill:currentColor}.encrypted-file-copy{text-align:center}.encrypted-file-kicker{color:#9c91e4;font-size:8.5px;font-weight:700;letter-spacing:.11em}.encrypted-file-copy h1{margin:8px 0 7px;font-family:Georgia,"Times New Roman",serif;font-size:34px;font-weight:520;letter-spacing:-.015em;color:#f5f1ff}.encrypted-file-copy p{max-width:610px;margin:0;color:#bbc3df;font-size:12.5px;line-height:1.58}.encrypted-file-status-grid{width:100%;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid rgba(162,174,239,.14);border-radius:11px;background:rgba(8,22,72,.5);overflow:hidden}.encrypted-file-status-grid>div{min-width:0;display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px;align-items:center;padding:13px}.encrypted-file-status-grid>div+div{border-left:1px solid rgba(162,174,239,.12)}.encrypted-file-status-grid .icon{width:21px;height:21px;color:#aaa0f0}.encrypted-file-status-grid span{min-width:0;display:grid;gap:2px}.encrypted-file-status-grid small{color:#818bb5;font-size:8.5px}.encrypted-file-status-grid strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#e8e7f7;font-size:11px;font-weight:600}.encrypted-file-error{width:100%;padding:10px 12px;border:1px solid rgba(227,110,145,.25);border-radius:9px;background:rgba(99,26,61,.18);color:#ffc2d5;font-size:10px;text-align:center}.encrypted-file-action,.encrypted-file-download{appearance:none;border:1px solid rgba(191,178,255,.36);border-radius:11px;background:linear-gradient(180deg,rgba(108,87,224,.84),rgba(73,68,181,.82));box-shadow:0 10px 26px rgba(55,42,167,.23),inset 0 1px rgba(255,255,255,.12);color:#fff;cursor:pointer}.encrypted-file-action{min-width:300px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-size:12px}.encrypted-file-action .icon{width:19px;height:19px}.encrypted-file-action:disabled{opacity:.48;cursor:not-allowed}.encrypted-file-ready{width:100%;display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px;border:1px solid rgba(104,209,168,.19);border-radius:11px;background:rgba(25,92,76,.12)}.encrypted-file-ready[hidden]{display:none}.encrypted-file-ready-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:12px;background:rgba(58,176,136,.12);color:#67d7aa}.encrypted-file-ready-icon .icon{width:25px;height:25px}.encrypted-file-meta{min-width:0;display:grid;gap:2px}.encrypted-file-meta small{color:#82b9aa;font-size:8.5px}.encrypted-file-meta strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f0f4f3;font-size:12px}.encrypted-file-meta span{color:#9aabc3;font-size:9px}.encrypted-file-download{min-height:38px;padding:0 13px;display:inline-flex;align-items:center;gap:6px;font-size:10px}.encrypted-file-download .icon{width:16px;height:16px}.encrypted-file-foot{width:100%;display:flex;align-items:flex-start;gap:8px;padding-top:2px;color:#8792ba;font-size:9px;line-height:1.45}.encrypted-file-foot .icon{flex:0 0 auto;width:16px;height:16px;color:#aaa1e6}.encrypted-file-foot code{color:#c2bbeb}.encrypted-file-unavailable{min-height:100dvh}
@media(max-width:800px){.encrypted-upload-options{grid-template-columns:1fr}.encrypted-link-row{grid-template-columns:36px minmax(0,1fr)}.encrypted-link-icon{width:36px;height:36px}.encrypted-link-actions{grid-column:2;flex-wrap:wrap}.encrypted-file-page{width:min(100% - 24px,760px);padding-top:16px}.encrypted-file-card{padding:25px 18px}.encrypted-file-status-grid{grid-template-columns:1fr}.encrypted-file-status-grid>div+div{border-left:0;border-top:1px solid rgba(162,174,239,.12)}.encrypted-file-ready{grid-template-columns:42px 1fr}.encrypted-file-download{grid-column:1/-1;justify-content:center}.encrypted-file-action{min-width:0;width:100%}}

/* v19.5 protected video: ciphertext chunks are reconstructed only in the
   unlocked browser view; no normal MP4 URL is exposed by the server. */
.secure-video-tile{position:relative;min-width:0;min-height:0;overflow:hidden;border:1px solid rgba(173,166,255,.22);border-radius:10px;background:radial-gradient(circle at 50% 35%,rgba(112,92,235,.28),transparent 42%),linear-gradient(145deg,rgba(18,36,105,.93),rgba(5,18,64,.96));color:#eeeaff;cursor:pointer;box-shadow:inset 0 1px rgba(255,255,255,.045);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:18px;text-align:center}
.secure-video-tile:hover{border-color:rgba(195,184,255,.48);background:radial-gradient(circle at 50% 35%,rgba(128,102,255,.34),transparent 44%),linear-gradient(145deg,rgba(22,42,116,.95),rgba(6,20,70,.96))}
.secure-video-tile-icon{width:68px;height:68px;display:grid;place-items:center;border:1px solid rgba(199,188,255,.3);border-radius:50%;background:linear-gradient(145deg,rgba(116,91,237,.34),rgba(35,42,123,.36));box-shadow:0 0 32px rgba(105,82,230,.18),inset 0 1px rgba(255,255,255,.08);color:#ddd5ff}
.secure-video-tile-icon svg{width:31px;height:31px;fill:currentColor;margin-left:3px}
.secure-video-tile-copy{min-width:0;display:grid;gap:3px}.secure-video-tile-copy strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:540 15px/1.15 var(--eien-display);color:#f8f5ff}.secure-video-tile-copy small{font:500 10.5px/1.3 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#aeb8da}
.secure-filmstrip-video{display:grid!important;place-items:center!important;background:radial-gradient(circle at 50% 42%,rgba(111,88,231,.32),transparent 52%),rgba(7,20,69,.94)!important;color:#d8d0ff!important}.secure-filmstrip-video .secure-video-tile-icon{width:38px;height:38px;border-radius:50%;box-shadow:none}.secure-filmstrip-video .secure-video-tile-icon svg{width:18px;height:18px}
.secure-video-player{display:block;width:100%;height:100%;object-fit:contain;background:#020716;outline:0}
.secure-video-loading,.secure-video-ended{width:100%;height:100%;display:grid;place-items:center;align-content:center;gap:7px;padding:24px;text-align:center;background:radial-gradient(circle at 50% 44%,rgba(85,68,197,.18),transparent 34%),#020716;color:#e9e5ff}
.secure-video-loading>span{width:42px;height:42px;border:2px solid rgba(194,184,255,.18);border-top-color:#b9a8ff;border-radius:50%;animation:eienProtectedSpin .9s linear infinite}.secure-video-loading strong,.secure-video-ended strong{font:540 21px/1.15 var(--eien-display)}.secure-video-loading small,.secure-video-ended span{max-width:420px;color:#aab5d7;font-size:12px;line-height:1.5}.secure-video-ended:before{content:'✓';width:48px;height:48px;display:grid;place-items:center;border:1px solid rgba(96,218,165,.28);border-radius:50%;background:rgba(35,126,91,.14);color:#73dbaf;font-size:22px}
@keyframes eienProtectedSpin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.secure-video-loading>span{animation:none;border-color:#b9a8ff}}
.secure-one-play-option{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:11px 12px;border:1px solid rgba(164,176,244,.14);border-radius:10px;background:rgba(10,24,77,.43);cursor:pointer}.secure-one-play-option>span{display:grid;gap:3px}.secure-one-play-option strong{color:#ece9fb;font-size:11px}.secure-one-play-option small{color:#99a5c9;font-size:9px;line-height:1.4}.secure-one-play-option input{position:absolute;opacity:0;pointer-events:none}.secure-one-play-option i{position:relative;width:38px;height:21px;border:1px solid rgba(164,177,242,.26);border-radius:999px;background:rgba(34,48,112,.7);transition:.15s ease}.secure-one-play-option i:after{content:'';position:absolute;left:3px;top:3px;width:13px;height:13px;border-radius:50%;background:#aeb8d8;box-shadow:0 1px 5px rgba(0,0,0,.25);transition:.15s ease}.secure-one-play-option input:checked+i{border-color:rgba(165,147,255,.52);background:linear-gradient(90deg,#5e56d8,#7762eb);box-shadow:0 0 16px rgba(111,89,236,.16)}.secure-one-play-option input:checked+i:after{left:20px;background:#fff}.secure-one-play-option input:focus-visible+i{outline:2px solid rgba(177,160,255,.75);outline-offset:3px}

/* v19.5 secure encrypted file transfers share the Secure Shares surface without
   introducing another modal or a second storage model. */
.secure-file-mode-note{display:flex;align-items:flex-start;gap:9px;padding:11px 12px;border:1px solid rgba(116,196,227,.18);border-radius:9px;background:rgba(24,83,116,.14);color:#b9d9e7;font-size:10.5px;line-height:1.5}
.secure-file-mode-note[hidden]{display:none}.secure-file-mode-note .icon{flex:0 0 auto;width:18px;height:18px;margin-top:1px;color:#7dd5ee}.secure-file-mode-note code{color:#d7f3ff}
.secure-file-transfer-row .secure-share-icon{background:linear-gradient(145deg,rgba(43,119,151,.36),rgba(56,59,154,.28))!important;color:#bdeeff!important}.secure-file-transfer-row .secure-share-ram-badge{background:rgba(28,113,133,.22);border-color:rgba(98,209,222,.16);color:#9beaf0}

/* v19.7 shared mixed/encrypted album snapshot. */
.collection-public-page{min-height:100dvh}.collection-page{width:min(1340px,calc(100vw - 40px));min-height:100dvh;margin:0 auto;padding:26px 0 44px;display:grid;grid-template-rows:auto 1fr;gap:20px}.collection-topbar{display:flex;align-items:center;justify-content:space-between;gap:20px}.collection-security-badge{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 13px;border:1px solid rgba(175,184,244,.19);border-radius:10px;background:rgba(8,22,72,.62);box-shadow:inset 0 1px rgba(255,255,255,.035);color:#c9c5ef;font-size:10px;font-weight:650;letter-spacing:.025em}.collection-security-badge .icon{width:17px;height:17px;color:#ada4f1}.collection-shell{align-self:start;padding:25px;border:1px solid rgba(180,189,246,.17);border-radius:20px;background:linear-gradient(155deg,rgba(9,25,80,.82),rgba(5,17,61,.68));box-shadow:0 34px 100px rgba(0,5,43,.31),inset 0 1px rgba(255,255,255,.035);backdrop-filter:blur(22px)}.collection-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,430px);gap:30px;align-items:center;padding:4px 4px 23px;border-bottom:1px solid rgba(164,175,235,.12)}.collection-kicker{color:#9187db;font-size:9px;font-weight:750;letter-spacing:.12em}.collection-heading h1{margin:7px 0 7px;font-family:Georgia,"Times New Roman",serif;font-size:34px;font-weight:520;letter-spacing:-.018em;color:#f6f2ff}.collection-heading p{margin:0;max-width:720px;color:#aeb8d6;font-size:12px;line-height:1.55}.collection-privacy-note{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:start;padding:12px 13px;border:1px solid rgba(130,127,216,.17);border-radius:11px;background:rgba(23,30,91,.32)}.collection-privacy-note>.icon{width:22px;height:22px;margin:1px auto;color:#ada4f1}.collection-privacy-note span{display:grid;gap:3px}.collection-privacy-note strong{color:#dedcf3;font-size:10.5px;font-weight:650}.collection-privacy-note small{color:#8f9aba;font-size:9px;line-height:1.45}.collection-key-warning{margin:16px 2px 0;padding:10px 12px;border:1px solid rgba(225,170,90,.21);border-radius:9px;background:rgba(104,66,25,.16);color:#e7cda7;font-size:10px;line-height:1.45}.collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;padding:20px 0}.collection-card{min-width:0;overflow:hidden;border:1px solid rgba(168,178,237,.14);border-radius:14px;background:linear-gradient(155deg,rgba(12,29,84,.65),rgba(7,19,62,.66));box-shadow:0 14px 34px rgba(0,5,43,.16);transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease}.collection-card:hover{border-color:rgba(169,158,237,.27);transform:translateY(-1px);box-shadow:0 18px 42px rgba(0,5,43,.22)}.collection-media-stage,.collection-encrypted-stage{height:190px;display:grid;place-items:center;overflow:hidden;background:rgba(4,14,51,.74)}.collection-media-stage img,.collection-encrypted-stage>img,.collection-encrypted-stage>video{width:100%;height:100%;display:block;object-fit:cover}.collection-media-stage{cursor:zoom-in}.collection-encrypted-stage{position:relative;align-content:center;gap:10px;padding:14px}.collection-file-art{position:relative;width:76px;height:70px;display:grid;place-items:center;color:#bbb3f4}.collection-file-art>.icon{width:48px;height:48px;filter:drop-shadow(0 0 15px rgba(122,103,234,.23))}.collection-file-art>i{position:absolute;right:4px;bottom:1px;width:30px;height:30px;display:grid;place-items:center;border:1px solid rgba(194,185,255,.28);border-radius:9px;background:#0a1954;box-shadow:0 7px 18px rgba(0,4,36,.35)}.collection-file-art>i .icon{width:17px;height:17px}.collection-file-art.unlocked-art>i{color:#73d6ad}.collection-file-state{color:#8995bb;font-size:9.5px}.collection-card.busy .collection-encrypted-stage{animation:collectionPulse 1.2s ease-in-out infinite alternate}.collection-card.key-missing{opacity:.82}.collection-card.unlock-error{border-color:rgba(220,108,140,.22)}@keyframes collectionPulse{from{box-shadow:inset 0 0 0 rgba(130,108,230,0)}to{box-shadow:inset 0 0 40px rgba(130,108,230,.12)}}.collection-card-copy{padding:14px 15px 15px;display:grid;gap:7px}.collection-card-kind{display:inline-flex;align-items:center;gap:5px;width:max-content;color:#9187d1;font-size:8.5px;font-weight:700;letter-spacing:.045em;text-transform:uppercase}.collection-card-kind .icon{width:14px;height:14px}.collection-card-copy h2{min-width:0;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#ecebf8;font-size:12.5px;font-weight:650}.collection-card-copy p{min-height:28px;margin:0;color:#8f9bb9;font-size:9.5px;line-height:1.45}.collection-card-actions{display:flex;align-items:center;gap:7px;margin-top:2px}.collection-card .btn.compact{min-height:32px;padding:0 10px;font-size:9.5px}.collection-card .btn .icon{width:15px;height:15px}.collection-text-preview{align-self:stretch;justify-self:stretch;margin:0;padding:14px;overflow:auto;white-space:pre-wrap;word-break:break-word;background:rgba(3,12,44,.78);color:#ccd2e6;font:10px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}.collection-empty{grid-column:1/-1;min-height:280px;display:grid;place-items:center;align-content:center;gap:7px;color:#909bbe;text-align:center}.collection-empty .icon{width:44px;height:44px;color:#9a91dc}.collection-empty strong{color:#dad9ed;font-size:13px}.collection-empty span{font-size:10px}.collection-footer{display:flex;align-items:flex-start;gap:9px;padding-top:15px;border-top:1px solid rgba(164,175,235,.11);color:#7e89ae;font-size:9px;line-height:1.5}.collection-footer>.icon{flex:0 0 auto;width:17px;height:17px;color:#9b92db}.collection-footer code{color:#b9b1ea}
@media(max-width:1050px){.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-heading{grid-template-columns:1fr}.collection-privacy-note{max-width:620px}}
@media(max-width:680px){.collection-page{width:min(100% - 22px,620px);padding-top:15px}.collection-topbar{align-items:flex-start}.collection-shell{padding:17px}.collection-grid{grid-template-columns:1fr}.collection-heading h1{font-size:29px}.collection-media-stage,.collection-encrypted-stage{height:210px}.collection-security-badge{font-size:9px}}
.album-share-dot{display:inline-block;width:6px;height:6px;margin-left:5px;border-radius:50%;background:#8f86e9;box-shadow:0 0 8px rgba(143,134,233,.52);vertical-align:middle}.album-share-stale{border-color:rgba(224,173,92,.24)!important;background:rgba(110,69,21,.14)!important;color:#e7cba2!important}.album-share-link-row{grid-template-columns:42px minmax(0,1fr)}
