/* RIKO-PROFILE-TOP-GRID-V1 */
/* RIKO PROFILE-TOP: compact, verified card above the bot's live icon grid. */
.riko-neon-side{display:none!important}
html,body{min-height:100%!important;height:auto!important;overflow-x:hidden!important;overflow-y:auto!important}
#riko-live-grid{position:relative;z-index:102;isolation:isolate;box-sizing:border-box;
 max-width:760px;margin:0 auto;padding:max(18px,env(safe-area-inset-top))
 max(12px,env(safe-area-inset-right)) max(70px,env(safe-area-inset-bottom))
 max(12px,env(safe-area-inset-left));color:#effaff;
 font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
#riko-grid-profile{position:relative;box-sizing:border-box;border:1px solid rgba(118,230,255,.68);
 background:linear-gradient(125deg,rgba(7,21,47,.87),rgba(34,15,61,.86));
 box-shadow:0 0 24px rgba(54,180,255,.22),inset 0 0 18px rgba(81,173,255,.08);
 border-radius:20px;padding:14px 16px;margin:0 0 11px;overflow-wrap:anywhere}
.riko-profile-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.riko-profile-name{font-size:clamp(17px,4.3vw,22px);line-height:1.25;min-width:0}
/* The existing account button moves into the top card. It still opens registration/profile. */
#riko-grid-profile #riko-account-trigger{position:static!important;top:auto!important;left:auto!important;
 transform:none!important;z-index:auto!important;flex:0 0 auto;max-width:40%;min-height:38px;
 font-size:12px;padding:7px 10px;margin:0;white-space:normal}
.riko-profile-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 15px}
.riko-profile-field{display:flex;flex-direction:column;min-width:0;gap:1px;font-size:12px}
.riko-profile-field span{color:#a7bbdc}.riko-profile-field strong{font-size:13px;color:#f5fdff;overflow-wrap:anywhere}
#riko-grid-work{border:1px solid rgba(104,216,255,.32);border-radius:15px;
 padding:10px 13px;background:rgba(5,19,42,.72);margin:0 0 13px}
#riko-grid-work[hidden]{display:none!important}.riko-work-count{display:block;font-size:14px}
.riko-work-item{display:flex;align-items:center;justify-content:space-between;gap:10px;
 padding-top:7px;font-size:12px;color:#e6f5ff;overflow-wrap:anywhere}
.riko-work-item span{min-width:0}.riko-work-item small{white-space:nowrap;color:#a4d8ff}
#riko-grid-mode{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:0 0 12px}
.riko-grid-mode-btn{border:1px solid rgba(107,223,255,.55);background:rgba(7,23,48,.88);
 color:#f0faff;border-radius:12px;min-height:42px;padding:8px 13px;cursor:pointer;font:600 13px/1.2 system-ui,sans-serif}
.riko-grid-mode-btn[aria-pressed=true]{border-color:#8ef3ff;box-shadow:0 0 16px #42e5ff66}
#riko-grid-matrix{display:grid;gap:10px;box-sizing:border-box}
.riko-grid-row{display:grid;grid-template-columns:repeat(var(--riko-columns),minmax(0,1fr));gap:10px}
.riko-grid-btn{min-width:0;min-height:74px;display:flex;flex-direction:column;align-items:center;justify-content:center;
 gap:5px;border-radius:17px;border:1px solid rgba(91,223,255,.73);color:#ecfaff;
 padding:9px 5px;background:linear-gradient(135deg,rgba(9,28,57,.83),rgba(30,11,56,.85));
 box-shadow:inset 0 0 13px #2bd7ff19,0 0 14px #50ccff49,0 0 25px #ae63ff24;
 font:600 clamp(11px,2.9vw,15px)/1.25 system-ui,sans-serif;cursor:pointer;touch-action:manipulation;
 transition:box-shadow .2s,background .2s,transform .16s}
.riko-grid-btn:hover,.riko-grid-btn:focus-visible{outline:2px solid #a3f4ff;outline-offset:2px;box-shadow:0 0 22px #62e7ff99,0 0 30px #aa63ff55}
.riko-grid-btn:active{transform:scale(.98)}.riko-grid-btn .riko-grid-icon{font-size:clamp(21px,5vw,29px);line-height:1.1}
.riko-grid-btn .riko-grid-label{text-align:center;overflow-wrap:anywhere}
.riko-grid-btn[disabled]{opacity:.48;cursor:not-allowed;filter:grayscale(.25)}
#riko-grid-status{margin:12px auto;max-width:600px;line-height:1.5;white-space:pre-wrap;
 color:#d3e3fb;background:rgba(4,13,33,.72);border:1px solid #6ab9dc66;border-radius:14px;padding:12px}
#riko-grid-status[hidden]{display:none}#riko-grid-status button{font:inherit;color:#f9fdff;
 border:1px solid #7cd9ff;border-radius:10px;background:#163757;padding:10px;cursor:pointer}
@media(max-width:380px){.riko-grid-row{gap:6px}.riko-grid-btn{min-height:69px;padding:7px 2px;border-radius:13px}
 .riko-profile-fields{gap:7px 9px}.riko-profile-field strong{font-size:12px}}
@media(prefers-reduced-motion:reduce){.riko-grid-btn{transition:none!important}}

/* RIKO-EDGE-SUBMENUS-V1: anchored to the corresponding viewport edge. */
.riko-submenu[data-riko-edge="left"] {
  left: max(8px,env(safe-area-inset-left)) !important;
  right: auto !important;
}
.riko-submenu[data-riko-edge="right"] {
  right: max(8px,env(safe-area-inset-right)) !important;
  left: auto !important;
}
.riko-submenu[data-riko-edge] {
  position: fixed !important;
  box-sizing: border-box !important;
  width: min(300px,calc(50vw - 18px)) !important;
  max-height: min(70dvh,calc(100dvh - 20px)) !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  overflow-wrap: anywhere;
  scrollbar-width: thin;
}
@media (max-width:600px) {
  .riko-submenu[data-riko-edge] {
    width: min(260px,calc(50vw - 13px)) !important;
    padding: 9px !important;
    gap: 5px !important;
    border-radius: 12px !important;
  }
  .riko-submenu[data-riko-edge] button {
    font-size: 12px !important;
    min-height: 42px !important;
    padding: 9px 6px !important;
  }
}

/* RIKO-SCREEN-NAV-V1 — separate menu page on click, no hovering popup. */
.riko-submenu{display:none!important}
#riko-route-screen[hidden]{display:none!important}
#riko-live-grid.riko-deep-menu > :not(#riko-route-screen){display:none!important}
#riko-live-grid.riko-deep-menu{min-height:100dvh;max-width:760px;padding-top:max(16px,env(safe-area-inset-top))}
.riko-screen-nav{position:relative;min-height:75dvh;z-index:1;color:#effaff;padding:12px 0 max(45px,env(safe-area-inset-bottom));font-family:system-ui,-apple-system,sans-serif}
.riko-screen-nav-head{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin-bottom:24px}
.riko-screen-nav-title{flex:1 0 100%;order:3;margin:6px 0!important;text-align:center;font-size:clamp(20px,5vw,28px)}
.riko-screen-nav button,.riko-page-home{border:1px solid rgba(113,223,255,.69);color:#f1fcff;border-radius:15px;background:linear-gradient(125deg,rgba(7,27,52,.9),rgba(35,13,63,.92));box-shadow:0 0 15px rgba(55,190,255,.22);font:600 14px/1.3 system-ui,-apple-system,sans-serif;cursor:pointer;touch-action:manipulation}
.riko-screen-nav-back,.riko-screen-nav-home,.riko-page-home{min-height:44px;padding:9px 12px}
.riko-screen-nav-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.riko-screen-nav-action{width:100%;min-height:72px;padding:12px;white-space:normal;overflow-wrap:anywhere;text-align:center}
.riko-screen-nav button:hover,.riko-screen-nav button:focus-visible,.riko-page-home:focus-visible{outline:2px solid #9aebff;outline-offset:2px;box-shadow:0 0 22px rgba(78,226,255,.44)}
.riko-screen-nav-error{grid-column:1/-1}
@media(max-width:520px){.riko-screen-nav-options{grid-template-columns:1fr}.riko-screen-nav-action{min-height:58px}.riko-screen-nav-head{gap:6px}.riko-screen-nav-back,.riko-screen-nav-home{padding:9px;font-size:12px}}
/* Existing functional forms, cards and lists become a full PAGE, not a modal popup. */
#riko-panel:not([hidden]){position:fixed!important;inset:0!important;display:block!important;padding:0!important;background:linear-gradient(165deg,#040918,#071225 60%,#080d21)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;overflow-y:auto!important;overscroll-behavior:contain!important}
#riko-panel .riko-panel-box{position:relative!important;width:min(100%,760px)!important;max-height:none!important;min-height:100dvh!important;margin:0 auto!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;overflow:visible!important;padding:calc(68px + env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))!important}
#riko-panel #riko-panel-close{position:absolute!important;top:calc(12px + env(safe-area-inset-top))!important;left:max(16px,env(safe-area-inset-left))!important;right:auto!important;width:auto!important;min-height:42px!important;height:auto!important;border-radius:12px!important;padding:7px 12px!important;font-size:13px!important}
#riko-panel .riko-page-home{position:absolute;right:max(16px,env(safe-area-inset-right));top:calc(12px + env(safe-area-inset-top));z-index:2}
#riko-panel #riko-panel-title{padding-right:0!important}
@media(prefers-reduced-motion:reduce){.riko-screen-nav *,#riko-panel *{animation:none!important;transition:none!important}}


/* RIKO-ADMIN-GRID-BACK-V1: keep admin navigation visible on deep pages. */
#riko-admin-nav-v3:not([hidden]) {
  position: sticky; top: max(4px, env(safe-area-inset-top)); z-index: 120;
  display: flex; flex-wrap: wrap; gap: 8px;
  padding: 8px; border: 1px solid rgba(107,223,255,.45);
  border-radius: 14px; background: rgba(7,23,48,.95);
  backdrop-filter: blur(12px);
}
#riko-admin-nav-v3[hidden] { display: none !important; }
#riko-admin-nav-v3 .riko-grid-mode-btn { flex: 1 1 auto; }
@media(max-width:420px) {
 #riko-admin-nav-v3 .riko-grid-mode-btn { min-height: 44px; font-size: 12px; }
}


/* RIKO-ADMIN-HOME-SAME-GRID-V2-1: use EXACTLY the user card/grid renderer already installed.
   The backend supplies rows 3x2x3x2x1, and existing riko-grid-row/riko-grid-btn
   styles retain user card dimensions and visual language. Do not change JS renderer. */
#riko-admin-home-banner-v2 { display:none; color:#effaff; margin:6px 0 14px;
  border-radius:17px; border:1px solid rgba(91,223,255,.73);
  background:linear-gradient(135deg,rgba(9,28,57,.87),rgba(30,11,56,.89));
  padding:14px 18px; font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; }
#riko-admin-home-banner-v2 strong {display:block;font-size:clamp(19px,5vw,26px);margin:3px 0 5px;}
#riko-admin-home-banner-v2 span {color:#c9d8f2;font-size:13px;line-height:1.4;}
body:has(#riko-grid-mode [data-mode="admin"][aria-pressed="true"]) #riko-admin-home-banner-v2 {display:block;}
body:has(#riko-grid-mode [data-mode="admin"][aria-pressed="true"]) .riko-neon-side {display:none!important;}
body:has(#riko-grid-mode [data-mode="admin"][aria-pressed="true"]) #riko-grid-work {display:none!important;}


/* RIKO-ADMIN-HUB-V4: real admin-only visual identity; user layout stays untouched.
   Root retains the same row geometry as the real MAX keyboard. */
body:has(#riko-grid-mode [data-mode="admin"][aria-pressed="true"]) #riko-live-grid {
  --riko-admin-accent:#ffbf72;
}
body:has(#riko-grid-mode [data-mode="admin"][aria-pressed="true"]) #riko-admin-home-banner-v2 {
  display:block!important; border:1px solid rgba(255,191,114,.82); border-left:5px solid #ffbf72;
  background:linear-gradient(115deg,rgba(56,29,20,.97),rgba(19,34,58,.96));
  box-shadow:0 8px 27px rgba(0,0,0,.25); padding:18px 16px;
}
body:has(#riko-grid-mode [data-mode="admin"][aria-pressed="true"]) #riko-grid-matrix .riko-grid-btn {
  border-color:rgba(255,191,114,.72);background:linear-gradient(135deg,rgba(45,31,37,.98),rgba(15,37,60,.96));
  min-height:88px;box-shadow:0 3px 14px rgba(0,0,0,.27);
}
body:has(#riko-grid-mode [data-mode="admin"][aria-pressed="true"]) #riko-grid-matrix .riko-grid-row:first-child .riko-grid-btn:first-child {
  background:linear-gradient(120deg,rgba(107,56,22,.98),rgba(60,36,43,.97));
  border-color:#ffd498;box-shadow:0 0 16px rgba(255,173,73,.31);
}
body:has(#riko-grid-mode [data-mode="admin"][aria-pressed="true"]) #riko-grid-matrix .riko-grid-btn:focus-visible {
  outline:3px solid #ffdb9c;outline-offset:2px;
}
body:has(#riko-grid-mode [data-mode="admin"][aria-pressed="true"]) #riko-grid-mode .riko-grid-mode-btn[aria-pressed="true"] {
  border-color:#ffbf72;box-shadow:0 0 13px rgba(255,191,114,.42);
}
@media(max-width:380px){body:has(#riko-grid-mode [data-mode="admin"][aria-pressed="true"]) #riko-grid-matrix .riko-grid-btn{min-height:82px;}}


/* RIKO-ADMIN-CLEAN-GRID-V5: use USER card geometry in admin mode, no banner/profile clutter. */
body:has(#riko-grid-mode [data-mode="admin"][aria-pressed="true"]) #riko-admin-home-banner-v2,
body:has(#riko-grid-mode [data-mode="admin"][aria-pressed="true"]) #riko-grid-profile,
body:has(#riko-grid-mode [data-mode="admin"][aria-pressed="true"]) #riko-grid-work {
  display:none!important;
}
body:has(#riko-grid-mode [data-mode="admin"][aria-pressed="true"]) #riko-grid-matrix .riko-grid-btn {
  min-height:74px!important;
  background:linear-gradient(135deg,rgba(9,28,57,.83),rgba(30,11,56,.85))!important;
  border-color:rgba(91,223,255,.73)!important;
  box-shadow:inset 0 0 13px #2bd7ff19,0 0 14px #50ccff49,0 0 25px #ae63ff24!important;
}
body:has(#riko-grid-mode [data-mode="admin"][aria-pressed="true"]) #riko-grid-matrix .riko-grid-row:first-child .riko-grid-btn:first-child {
  background:linear-gradient(135deg,rgba(9,28,57,.83),rgba(30,11,56,.85))!important;
  border-color:rgba(91,223,255,.73)!important;
}
@media(max-width:380px){body:has(#riko-grid-mode [data-mode="admin"][aria-pressed="true"]) #riko-grid-matrix .riko-grid-btn{min-height:69px!important;}}

/* RIKO-ADMIN-CLEAN-GRID-V5 */

/* V9: one lower navigation bar. No sticky duplicate at top. */
#riko-admin-nav-v3:not([hidden]){position:static!important;top:auto!important;z-index:auto!important;margin-top:14px!important;}
