/* READA's official violet identity. Glass is a surface treatment, never a
   reduction in the opacity of text, data, validation or security messages. */
:root {
  --reada-purple: #a164ff;
  --reada-purple-deep: #6c3bc4;
  --reada-purple-soft: #eee5fb;
  --reada-black: #352c55;
  --reada-ink: #352c55;
  --reada-muted: #675c79;
  --reada-canvas: #f1edf8;
  --reada-border: #dcd3e9;
  --glass-surface: rgba(255,255,255,.74);
  --glass-navigation: rgba(255,255,255,.61);
  --glass-edge: rgba(255,255,255,.92);
  --glass-shadow: 0 8px 32px rgba(53,44,85,.065), inset 0 1px 0 #fff;
  --glass-filter: blur(24px) saturate(145%);
}
body.reada-app {
  background-color: var(--reada-canvas);
  background-image: radial-gradient(ellipse at 94% 4%,#ddcbff 0,transparent 43%),radial-gradient(ellipse at 3% 42%,#e0e7ff 0,transparent 42%),radial-gradient(ellipse at 74% 96%,#f0dff6 0,transparent 40%),linear-gradient(145deg,#f7f4fc,#eeedf8);
  background-attachment: fixed;
  color: var(--reada-ink);
  -webkit-font-smoothing: antialiased;
}
html[lang=en] body.reada-app { font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Cairo,sans-serif; }
.reada-app :is(a,button,input,select,textarea):focus-visible { outline:3px solid #7041b5;outline-offset:3px; }
.reada-app :is(button,.btn,a) { -webkit-tap-highlight-color:transparent; }
.reada-shell { grid-template-columns:258px minmax(0,1fr);gap:22px;padding:18px; }
.reada-sidebar,.reada-topbar,.reada-app .card,.reada-record-link,.reada-entry,.reada-public-header {
  background:var(--glass-surface);border:1px solid var(--glass-edge);
  box-shadow:var(--glass-shadow);-webkit-backdrop-filter:var(--glass-filter);backdrop-filter:var(--glass-filter);
}
.reada-sidebar { top:18px;height:calc(100vh - 36px);height:calc(100svh - 36px);border-radius:28px;padding:22px 14px 16px;color:var(--reada-ink);background:var(--glass-navigation);scrollbar-width:thin;scrollbar-color:#c9b8e5 transparent; }
.reada-brand { display:block;padding:8px 8px 24px;border-bottom:1px solid #cabadd66; }
.reada-brand img.reada-official-logo { display:block;width:100%;height:auto;max-height:none;object-fit:contain; }
.reada-app .reada-workspace-label { padding:23px 16px 13px;font-size:11px;color:#736485; }
.reada-navigation { gap:5px; }
.reada-sidebar .reada-navigation a { min-height:44px;border-radius:15px;padding:10px 14px;color:#55466b;border:1px solid transparent;font-size:13px;transition:background .18s,box-shadow .18s; }
.reada-navigation a i { color:#82659f; }
.reada-sidebar .reada-navigation a:hover { background:#ffffffb3;border-color:#ffffffd6;color:#352c55; }
.reada-sidebar .reada-navigation a[aria-current=page] { color:#563092;background:linear-gradient(115deg,#ffffffed,#ede1ffbd);border-color:#fff;box-shadow:0 4px 14px #7144aa12,inset 0 1px 0 #fff; }
.reada-navigation a[aria-current=page] i { color:#7644cf; }
.reada-sidebar-footer { border-color:#cabadd66;padding-top:16px; }
.reada-sidebar-footer small { color:#756585; }
.reada-avatar { color:#6d40a8;background:linear-gradient(145deg,#f8f4ff,#e6d8fa);border:1px solid #fff;border-radius:13px; }
.reada-sidebar-footer button { color:#67527b; }
.reada-topbar { height:70px;min-height:70px;border-radius:23px;padding:0 25px;position:sticky;top:18px;z-index:25; }
.reada-topbar-title { color:#493861; }
.reada-page { padding:30px 6px 22px; }
.reada-footer { padding:18px 8px;color:#746783;border-color:#d6cde266; }
.reada-app #reada-language-switch { padding:4px;border:1px solid #ffffffd9;background:#ede6f48c;border-radius:100px;box-shadow:inset 0 1px 3px #352c5507; }
.reada-app #reada-language-switch button { min-height:30px;padding:5px 12px;border-radius:100px;color:#675479;font-size:12px; }
.reada-app #reada-language-switch button[aria-pressed=true] { color:#5e359a;background:linear-gradient(#fff,#fff9);box-shadow:0 2px 7px #352c5510,inset 0 1px 0 #fff; }
.reada-app .card,.reada-entry { border-radius:22px; }
.reada-app .card.shadow { box-shadow:var(--glass-shadow)!important; }
.reada-app .card-header { background:#ffffff69;border-bottom-color:#e6def1;padding:19px 23px!important; }
.reada-app .card-body { padding:23px; }
.reada-app :is(.btn,button) { border-radius:12px;transition:background .18s,box-shadow .18s; }
.reada-app button:not(.primary):not([type=submit]):not([aria-current=page]):not([aria-pressed]):not(.btn-primary):not(.btn-danger):not(.btn-success):not(.btn-warning):not(.danger):not(.success) { color:#614779; }
.reada-app :is(.btn-primary,button.primary,.reada-login-form-panel button[type=submit]) { background:linear-gradient(130deg,#8951db,#6637ae);border:1px solid #7543bc;color:#fff;box-shadow:inset 0 1px 0 #d7b6ff6b,0 4px 12px #7644cf26; }
.reada-app :is(.btn-primary,button.primary,.reada-login-form-panel button[type=submit]):hover { background:linear-gradient(130deg,#7b42ce,#592d9d);border-color:#6336a8;color:#fff;box-shadow:inset 0 1px 0 #d7b6ff6b,0 5px 16px #7644cf30; }
.reada-app :is(.btn-light,.btn-outline-primary,.reada-company-button) { background:#ffffffb3;border:1px solid #ffffffed;box-shadow:0 2px 8px #352c5508;color:#614779; }
.reada-company-button { padding:7px 13px;border-radius:100px;text-decoration:none;white-space:nowrap; }
.reada-app :is(.form-control,.custom-select,input:not([type=checkbox]):not([type=radio]),select,textarea) { background:#ffffffed;border-color:#cfc2de;border-radius:12px;color:#352c55;box-shadow:inset 0 1px 3px #352c5505; }
.reada-app :is(.form-control,input,select,textarea):focus { border-color:#9870ce;box-shadow:0 0 0 4px #a164ff16; }
.reada-app :is(input,textarea)::placeholder { color:#82738f;opacity:1; }
.reada-app :is(input,select,textarea):disabled { background:#eeebf3;color:#776e84; }
.reada-app label { color:#61536f; }
.reada-app table { font-variant-numeric:tabular-nums; }
.reada-app table th { color:#61526f;background:#f4eefbde; }
.reada-app table td { background:#ffffff80; }
.reada-app .table :is(th,td) { border-color:#e3daee; }
.reada-app .table-hover tbody tr:hover td { background:#f3eafb; }
.reada-app .dropdown-menu,.reada-app .modal-content,.reada-app .popover { background:#fcfaff;border:1px solid #d8cbe8;border-radius:16px;box-shadow:0 16px 48px #352c551f; }
.reada-app .modal-backdrop { background-color:#352c55; }
.reada-app .reada-workbench-tabs { width:fit-content;max-width:100%;padding:6px;margin-bottom:22px;border:1px solid #ffffffbf;border-radius:18px;background:#e9e1f3a3;gap:4px; }
.reada-app .reada-workbench-tabs button { color:#655277;font-size:13px;padding:9px 14px;border-radius:12px; }
.reada-app .reada-workbench-tabs button[aria-current=page] { color:#5e359a;background:#ffffffe6;border-color:#fff;box-shadow:0 2px 8px #352c550c; }
.reada-app .reada-workbench-main .card { border-radius:22px; }
.reada-app .department-link { background:linear-gradient(130deg,#ffffffe6,#f4effc94);border:1px solid #fff;border-radius:18px;box-shadow:inset 0 1px 0 #fff; }
.reada-app .department-link:hover { background:#fff;border-color:#cab1e9; }
.reada-record-link { border-radius:18px;padding:19px; }
.reada-record-link:hover { background:#ffffffe6;border-color:#c5abe6;box-shadow:0 6px 20px #76569c12; }
.reada-record-symbol { background:linear-gradient(135deg,#f4ebff,#e5d4fa);border:1px solid #fff;border-radius:12px;width:40px;height:40px; }
.reada-record-search { background:#ffffffb8;border:1px solid #fff;border-radius:100px;box-shadow:var(--glass-shadow); }
.reada-app .reada-record-search input { border:0;background:transparent;box-shadow:none; }
.reada-organization-list a { border-color:#ded2ec;background:#ffffff94;border-radius:16px;text-decoration:none; }
.reada-app .reada-dashboard .reada-db-hero { padding:5px 2px 14px; }
.reada-app .reada-dashboard .reada-db-brand-copy { color:#675c79;line-height:1.8; }
.reada-app .reada-dashboard .reada-db-value { font-size:30px;color:#352c55; }
.reada-app .reada-dashboard .reada-db-label { font-size:12px;color:#665878; }
.reada-app .reada-dashboard .reada-db-caption { font-size:11px;color:#746783; }
.reada-app .reada-dashboard .reada-db-icon { background:linear-gradient(145deg,#fff,#e6d7f8);border:1px solid #fff;box-shadow:0 4px 12px #6032a511;border-radius:14px;width:42px;height:42px;font-size:16px; }
.reada-app .reada-dashboard .reada-db-panel-title { font-size:14px; }
.reada-app .reada-dashboard .reada-db-live { border-color:#d4e6dd;background:#f6fff8bf;color:#315e49; }
.reada-app .reada-dashboard .reada-db-actions .btn { padding:10px 16px;border-radius:13px; }
.reada-app .reada-dashboard .reada-department-shortcuts a { background:#ffffffa6;border-color:#fff;border-radius:100px;box-shadow:0 2px 6px #352c5505; }
.reada-app .reada-dashboard .reada-db-bar { background:linear-gradient(180deg,#b281f5,#7544bb);box-shadow:inset 1px 1px 0 #ffffff66,0 4px 10px #7644cf16; }
.reada-app .task-study { background:#ffffff70; }

/* Sign-in: a quiet glass panel, the unchanged official mark, no fake metrics. */
body.reada-app:has(.reada-login) { min-height:100vh;min-height:100svh;display:grid;place-items:center;padding:32px; }
.reada-login { width:100%;max-width:1190px;min-height:730px;grid-template-columns:1.08fr 1fr;margin:auto;border:1px solid #fffffff0;border-radius:36px;overflow:hidden;background:#ffffff24;box-shadow:0 30px 90px #50337115,inset 0 1px 0 #fff; }
.reada-login-story { padding:42px 48px 30px;background:linear-gradient(150deg,#f7f0ff55,#dfccf344);color:#352c55;gap:22px; }
.reada-login-story:after { display:none; }
.reada-login-logo { display:block;width:270px;max-width:100%;z-index:1; }
.reada-login-logo img { width:100%;height:auto; }
.reada-login-story h1 { color:#352c55;font-size:36px;line-height:1.65;letter-spacing:-.8px;max-width:430px;margin:12px 0; }
.reada-login-story p { color:#695a7d;font-size:14px;line-height:1.9; }
.reada-login-story .reada-eyebrow { color:#78509f;font-size:11px;letter-spacing:2px; }
.reada-login-story footer { color:#756187;font-size:11px; }
.reada-login-art { height:195px;position:relative;display:grid;place-items:center;isolation:isolate; }
.reada-glass-orbit { width:205px;height:205px;position:absolute;border-radius:50%;background:radial-gradient(circle at 30% 25%,#e9d1ff,#b184e4 48%,#8050b6 85%);box-shadow:inset -12px -18px 30px #53367728,0 20px 50px #8a5dbd28;transform:translate(34px,5px);z-index:-1; }
.reada-glass-emblem { width:164px;height:176px;display:grid;place-items:center;transform:rotate(-13deg) translate(-25px,-3px);border:1px solid #ffffffef;border-radius:34px;background:linear-gradient(135deg,#ffffff91,#ffffff21);-webkit-backdrop-filter:blur(17px) saturate(130%);backdrop-filter:blur(17px) saturate(130%);box-shadow:inset 0 1px 1px #fff,inset 0 -1px 1px #ffffff61,0 14px 32px #6a459831; }
.reada-glass-emblem img { width:93px;height:106px;transform:rotate(13deg); }
.reada-glass-pearl { width:48px;height:48px;position:absolute;inset-inline-end:18%;bottom:10px;border-radius:15px;transform:rotate(17deg);border:1px solid #ffffffef;background:linear-gradient(140deg,#ffffffc9,#ffffff40);box-shadow:0 10px 22px #352c5512,inset 0 1px 1px #fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px); }
.reada-login-form-panel { padding:52px;background:#ffffffa8;border-inline-start:1px solid #ffffffdc;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px); }
.reada-login-form-panel>div { max-width:350px; }
.reada-login-form-panel h2 { font-size:29px;color:#352c55; }
.reada-login-form-panel input { height:50px;border-radius:14px;background:#ffffffdd; }
.reada-login-form-panel button[type=submit] { height:50px;border-radius:14px; }
.reada-login-form-panel .reada-login-security { color:#756783; }
.reada-login #reada-language-slot { margin-bottom:40px; }

/* The same identity on recovery, verification and customer entry pages. */
.reada-public-header { margin:18px;border-radius:23px;height:80px;padding:0 24px; }
.reada-public-header img.reada-official-logo { width:208px;height:auto; }
.reada-public .logo { width:225px;max-width:100%;max-height:none; }
.reada-public .card { box-shadow:var(--glass-shadow)!important; }
.reada-app.reada-verification>main,.reada-app.reada-standalone>main { max-width:780px;margin:36px auto;padding:32px; }
.reada-app.reada-verification>main { background:var(--glass-surface);border:1px solid var(--glass-edge);border-radius:28px;box-shadow:var(--glass-shadow);-webkit-backdrop-filter:var(--glass-filter);backdrop-filter:var(--glass-filter); }
.reada-verification .brand img,.reada-standalone .reada-official-logo { width:235px;max-width:100%;height:auto;display:block;margin-bottom:24px; }
.reada-verification #reada-language-switch,.reada-standalone #reada-language-switch { width:fit-content;margin:18px auto; }
.reada-verification #result { border-radius:14px;border-inline-start:5px solid #9b741b;border-inline-end:0; }
.reada-verification #result[data-tone=match] { border-inline-start-color:#237a59; }
.reada-verification #result[data-tone=alert] { border-inline-start-color:#b5303e; }
.reada-app.reada-customer #workbench { display:grid;grid-template-columns:245px minmax(0,1fr);gap:20px;padding:18px; }
.reada-customer #workbench>aside { border:1px solid #fff;border-radius:24px;background:var(--glass-navigation);color:#55466b;-webkit-backdrop-filter:var(--glass-filter);backdrop-filter:var(--glass-filter); }
.reada-customer .brand img { width:100%;height:auto; }
.reada-customer aside nav button { color:#665276; }
.reada-customer aside nav button[aria-current=page] { background:#ffffffe6;color:#563092;box-shadow:var(--glass-shadow); }

@media(min-width:851px) and (max-width:1200px) {
  .reada-shell { grid-template-columns:224px minmax(0,1fr);gap:16px;padding:14px; }
  .reada-sidebar { top:14px;height:calc(100svh - 28px); }
  .reada-page { padding:24px 2px; }
  .reada-topbar { padding:0 20px;top:14px; }
  .reada-navigation a { padding-inline:11px!important; }
  .reada-login-story { padding:38px; }
}
@media(max-width:850px) {
  .reada-shell { display:block;padding:12px; }
  .reada-sidebar { top:10px;inset-block:10px;inset-inline-start:10px;height:calc(100svh - 20px);width:270px;max-width:calc(100vw - 28px);border-radius:25px;background:#f5effc;box-shadow:0 0 0 200vmax #352c5559,0 8px 35px #352c552b; }
  .reada-topbar { top:10px;height:64px;min-height:64px;padding:0 13px;border-radius:20px;gap:8px; }
  .reada-topbar-actions { gap:8px; }
  .reada-menu-toggle { width:38px;min-height:38px;padding:7px;border:1px solid #fff;background:#ffffffb3;border-radius:12px; }
  .reada-company-button { max-width:125px;overflow:hidden;text-overflow:ellipsis;padding:7px 9px; }
  .reada-page { padding:24px 2px 18px; }
  .reada-app .reada-workbench-tabs { width:100%;border-radius:15px; }
  .reada-app .reada-workbench-tabs button { font-size:12px;min-height:42px; }
  .reada-app .reada-workbench-main .card { padding:18px; }
  body.reada-app:has(.reada-login) { padding:16px;display:block; }
  .reada-login { grid-template-columns:1fr;min-height:0;max-width:520px;border-radius:28px;margin:10px auto; }
  .reada-login-story { padding:26px 30px;gap:0; }
  .reada-login-logo { width:240px;margin:auto; }
  .reada-login-logo img { width:100%;height:auto; }
  .reada-login-art { display:none; }
  .reada-login-form-panel { padding:28px 30px 36px;min-height:0;border-inline-start:0;border-top:1px solid #fff; }
  .reada-login #reada-language-slot { margin-bottom:25px; }
  .reada-app.reada-customer #workbench { grid-template-columns:1fr;gap:10px;padding:12px; }
  .reada-customer .brand img { width:185px; }
}
@media(max-width:480px) {
  .reada-shell { padding:9px; }
  .reada-topbar-title { max-width:105px;font-size:11px; }
  .reada-topbar-start { gap:6px; }
  .reada-app #reada-language-switch button { padding:5px 8px;font-size:11px; }
  .reada-topbar .reada-company-button { font-size:10px;max-width:75px; }
  .reada-app .card { border-radius:18px; }
  .reada-app .card-body { padding:18px; }
  .reada-app .reada-dashboard .reada-db-hero { align-items:flex-start;flex-wrap:wrap;gap:12px; }
  .reada-app .reada-dashboard .reada-db-value { font-size:27px; }
  .reada-app .reada-dashboard>.row { margin-inline:-5px; }
  .reada-app .reada-dashboard>.row>div { padding-inline:5px; }
  .reada-public-header { margin:10px;padding:0 15px;height:70px;gap:12px;border-radius:19px; }
  .reada-public-header img.reada-official-logo { width:162px; }
  .reada-app.reada-verification>main,.reada-app.reada-standalone>main { margin:14px 10px;padding:24px 18px;border-radius:24px; }
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) {
  :root { --glass-surface:#fcfaff;--glass-navigation:#f8f3fd; }
  .reada-login-form-panel { background:#fcfaff; }
  .reada-glass-emblem { background:#f3eafb; }
}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more) {
  :root { --glass-surface:#fff;--glass-navigation:#f9f6ff;--glass-edge:#bca8d4;--glass-filter:none; }
  body.reada-app { background-image:none;background-color:#f1edf8; }
  .reada-app :is(.reada-topbar,.reada-sidebar,.card,.reada-login-form-panel,.reada-glass-emblem) { -webkit-backdrop-filter:none;backdrop-filter:none;background:#fff; }
  .reada-login-story { background:#f4edfc; }
  .reada-app table td { background:#fff; }
}
@media(prefers-reduced-motion:reduce) {
  .reada-app * { animation:none!important;transition:none!important;scroll-behavior:auto!important; }
}
@media print {
  body.reada-app { background:#fff!important; }
  .reada-sidebar,.reada-topbar,.reada-footer,.reada-login-art { display:none!important; }
  .reada-shell { display:block;padding:0; }
  .reada-app .card,.reada-page { background:#fff!important;box-shadow:none!important;backdrop-filter:none!important; }
}
