@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;1,300&family=Inconsolata:wght@300;400&display=swap');

  *, *::before, *::after { box-sizing:border-box; margin:0; padding:0; }

  :root {
    --left:  #D26A25;
    --right: #258DD2;
    --rec:   #E24B4A;
    --bg:    #e8e1c8;
    --surf:  #16141F;
    --bord:  #16141F;
    --text:  #16141F;
    --muted: rgb(45, 45, 45);
  }

  body {
    background:var(--bg); color:var(--text);
    font-family:'Inconsolata',monospace;
    min-height:100dvh; display:flex; flex-direction:column; align-items:center;
    overflow-x:hidden;
  }

  a{
    all: unset;
    text-decoration: underline;
  }

  /* ── Fullscreen camera — fixed behind everything ── */
  #canvas-wrap {
    display:none; position:fixed; inset:0; z-index:1000;
    overflow:hidden; pointer-events: none;
  }
  #video {
    position:absolute; inset:0; width:100%; height:100%;
    object-fit:cover; transform:scaleX(-1);
    opacity: 0; /* almost black — skeletons dominate */
  }
  #overlay { position:absolute; inset:0; width:100%; height:100%; pointer-events: none;}
  #canvas-wrap::after {
    content:''; position:absolute; inset:0; pointer-events:none;
  }

  /* ── All content floats above the camera ── */
  header{ 
    text-align: center;  
    z-index:10; 
    position: fixed;
    width: 100vw;
    top: 45dvh;
  } 
  h1 { 
    font-family:'Inconsolata',monospace; 
    font-size:16px; 
    letter-spacing:0.2em; 
    text-transform:uppercase;
    margin-bottom: 10px;
    }

  /* .rule  { width:100%; max-width:800px; height:1px; position:relative; z-index:10; margin:0.6rem 0; background:linear-gradient(90deg,transparent,var(--bord) 20%,var(--bord) 80%,transparent); }*/
  main { 
    width:100%; 
    position:relative;
    }

  /* ── Setup ── */
  #setup { 
    width:100%;
    height: 100dvh;
    display: flex; 
    justify-content: center;
    align-items: center; 
    /* backdrop-filter:blur(6px); */
    z-index: 0; 
    }

  #setup label { font-size:11px; letter-spacing:0.18em; text-transform:uppercase; color:var(--muted); }
  #api-key-input { background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.14); color:var(--text); font-family:'Inconsolata',monospace; font-size:13px; padding:9px 12px; width:100%; letter-spacing:0.05em; outline:none; transition:border-color 0.2s; }
  #api-key-input:focus { border-color:var(--left); }
  #api-key-input::placeholder { color:var(--muted); }

  #start-btn { 
    align-self:center; 
    padding:10px 30px; 
    font-family:'Inconsolata',monospace; 
    font-size:11px; 
    letter-spacing:0.2em; 
    text-transform:uppercase; 
    background:transparent; 
    color:var(--bord); 
    border:1px solid; 
    background-color: var(--bg);
    cursor:pointer; 
    position:relative; 
    transition:border-color 0.2s,background 0.2s; 
    border-radius: 30px;
    position: fixed;
    top: 48dvh;
    }

  #start-btn::before,#start-btn::after { content:''; position:absolute; width:7px; height:7px;  }
  #start-btn::before { top:-1px; left:-1px; border-width:1px 0 0 1px; }
  #start-btn::after  { bottom:-1px; right:-1px; border-width:0 1px 1px 0; }
  #status { font-size:11px; letter-spacing:0.1em; color:var(--muted); text-align:center; min-height:16px; display: none}

  #credit{
    position: fixed;
    bottom:100px;
    width: 120px;
    font-family:'Inconsolata',monospace; 
    font-size:11px;
    left: calc(50dvw - 60px);
  }

  /* Hand cards */
  #info { 
    display:none; 
    width:50%;
    position: fixed;
    left: 25%;
    top: 60px;
    max-height: 80dvh;
    /* background-color: red;  */
    gap:12px;
    overflow: hidden; 
    }

#hand-cards{
   display: flex;
   gap: 10px; 
}

.hand-card { 
    flex:1; 
    padding: 30px; 
    /* background:var(--bg);  */
    border:1px solid var(--bord); 
    position:relative; 
    overflow:hidden; 
    backdrop-filter:blur(4px);
    border-radius: 50px;
    }

  /* .hand-card.left-hand  { border-left:2px solid var(--left); }
  .hand-card.right-hand { border-left:2px solid var(--right); } */

  .hand-label { font-size:11px; letter-spacing:0.22em; text-transform:uppercase; color:var(--muted); margin-bottom:5px; }
  .sound-name { font-family:'Cormorant Garamond',serif; font-size:1rem; font-weight:300; font-style:italic; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; margin-bottom:2px; min-height:1.3rem; }
  .left-hand  .sound-name { color:var(--left); }
  .right-hand .sound-name { color:var(--right); }
  .sound-tags { font-size:11px; letter-spacing:0.08em; color:var(--muted); margin-bottom:8px; min-height:12px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .spinner { display:none; width:12px; height:12px; border:1.5px solid rgba(255,255,255,0.1); border-top-color:var(--left); border-radius:50%; animation:spin 0.7s linear infinite; margin-bottom:8px; }
  .right-hand .spinner { border-top-color:var(--right); }
  .spinner.show { display:inline-block; }
  @keyframes spin { to{transform:rotate(360deg)} }
  .playhead-wrap { width:100%; height:2px; background:rgba(255,255,255,0.06); margin-bottom:6px; }
  .playhead { height:100%; width:0%; transition:width 0.3s linear; }
  .left-hand  .playhead { background:var(--left); }
  .right-hand .playhead { background:var(--right); }
  .hand-meta { font-size:11px; color:var(--muted); letter-spacing:0.06em; display:flex; flex-direction:column; gap:3px; }
  .vol-bar-wrap { width:100%; height:2px; background:rgba(255,255,255,0.06); margin-top:5px; }
  .vol-bar { height:100%; width:0%; transition:width 0.1s; }
  .left-hand  .vol-bar { background:var(--left); }
  .right-hand .vol-bar { background:var(--right); }
  .swipe-flash { position:absolute; inset:0; opacity:0; pointer-events:none; transition:opacity 0.05s; }
  .left-hand  .swipe-flash { background:rgba(155,143,232,0.18); }
  .right-hand .swipe-flash { background:rgba(93,202,165,0.18); }
  .swipe-flash.show { opacity:1; }

  /* ── Recording panel ── */
  #rec-panel { 
    display:none; 
    width:100%; 
    flex-direction:column; 
    gap:10px;
    margin-top: 10px; 
}

  .rec-controls { display:flex; gap:10px; align-items:center; width:100%; }

  .btn-rec {
    padding:10px 20px; 
    font-family:'Inconsolata',monospace; font-size:11px; letter-spacing:0.18em; text-transform:uppercase;
    background:transparent; color:var(--text); border:1px solid rgba(255,255,255,0.18); cursor:pointer;
    transition:border-color 0.2s, background 0.2s, color 0.2s; position:relative; white-space:nowrap;
  }
  .btn-rec:hover { }
  .btn-rec:disabled { opacity:0.3; cursor:default; }

  #btn-record { 
    border-color:var(--rec); 
    color:var(--rec); 
    border-radius: 30px;
    }  
 
  #btn-record.recording { background:rgba(226,75,74,0.15); }

  #btn-stop { 
    border-color:var(--bord); 
    border-radius: 16px;
    }
  

  /* Layers list */
  #layers-wrap { width:100%; display:flex; flex-direction:column; gap:10px; margin-top: 20px;}
  #layers-label { 
    font-size:10px;
    letter-spacing:0.18em; text-transform:uppercase; 
    color:var(--muted); 
    text-align: center;
    }   

  #layers-list { 
    display:flex; 
    flex-direction:column; 
    gap:10px; 
    width:100%;
    max-height: 41dvh;
    overflow-y: scroll;  
    }

  .layer-row {
    display:flex; align-items:center; gap:10px; padding:10px 20px; border:1px solid rgba(108, 0, 52, 0); position:relative; overflow:hidden; backdrop-filter:blur(4px);
    border-radius: 30px;
    min-height: 50px;
  }
  .layer-row.playing { border-color:rgba(108, 0, 52, 0.35); }

  .layer-num { font-size:11px; color:var(--bord); letter-spacing:0.1em; min-width:18px; }

  .layer-waveform { flex:1; height:28px; position:relative; overflow:hidden; }
  .layer-waveform canvas { width:100%; height:100%; display:block; }

  .layer-duration { font-size:11px; color:var(--bord); min-width:38px; text-align:right; font-variant-numeric:tabular-nums; }

  .layer-progress {
    position:absolute; top:0; left:0; height:100%;
    background:rgba(232, 143, 173, 0.234); pointer-events:none;
    transition:width 0.3s linear; width:0%;
  }

  .layer-btn {
    padding:5px 10px; font-family:'Inconsolata',monospace; font-size:11px; letter-spacing:0.12em; text-transform:uppercase;
    background:transparent; border:1px solid var(--bord); color:var(--muted); cursor:pointer;
    transition:border-color 0.15s,color 0.15s,background 0.15s; white-space:nowrap;
    border-radius: 30px;
    font-variant-emoji: text;
  }
  
  .layer-btn.muted { color:var(--rec); border-color:rgba(226,75,74,0.4); }
  

  .layer-vol-wrap { width:60px; height:2px; background:rgba(255,255,255,0.08); position:relative; cursor:pointer; padding:6px 0; margin:-6px 0; }
  .layer-vol-fill { height:2px; background:var(--left); pointer-events:none; }

  /* Export row */
  #export-row { display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
  .btn-export { padding:10px 20px; font-family:'Inconsolata',monospace; font-size:11px; letter-spacing:0.15em; text-transform:uppercase; background:transparent; color:var(--muted); border:1px solid var(--bord); cursor:pointer; transition:border-color 0.15s,color 0.15s,background 0.15s; border-radius: 30px;}
  .btn-export:disabled { opacity:0.3; cursor:default; }

  #hint { text-align:center; font-size:10px; letter-spacing:0.14em; text-transform:uppercase; color:var(--muted); line-height:1.9; display:none; }

  .legend { 
    justify-content:left; 
    font-size:10px; 
    letter-spacing:0.14em; 
    text-transform:uppercase; 
    color:var(--muted);
    display: none;
    }
  .legend-item { display:flex; align-items:center; gap:6px; }
  .legend-dot { width:6px; height:6px; border-radius:50%; }

  #pitch-strip {  
    width:70vw; 
    position: fixed;
    bottom: 20px;
    left: 15vw;
    align-items:center; justify-content:space-between; 
    padding: 20px 4px;
    overflow: hidden;
    display: none; 
    }
  .pitch-label { font-size:10px; letter-spacing:0.1em; color:var(--muted); }
  .pitch-bar-wrap { flex:1; height:1px; background:var(--bord); margin:0; position:relative; }
  .pitch-marker-l,.pitch-marker-r { position:absolute; top:-3px; width:8px; height:8px; border-radius:50%; transform:translateX(-50%); transition:left 0.08s; }
  .pitch-marker-l { background:var(--left); }
  .pitch-marker-r { background:var(--right); }

  #debug-box {
    width:100%; background:rgba(0,0,0,0.4); border:1px solid rgba(255,255,255,0.1);
    padding:10px 12px; font-size:10px; letter-spacing:0.04em; color:rgba(232,228,240,0.6);
    line-height:1.7; white-space:pre-wrap; word-break:break-all; max-height:120px; overflow-y:auto;
    display:none;
  }

  /* ── Sound menus ── */
  .sound-menu {
    position: fixed;
    top: 60px;
    width: 15vw;
    z-index: 5;
    height: 92dvh;
    display: none;
    flex-direction: column;
    overflow: hidden; /* clip the scroll */
    min-height: 0;
    }

.sound-menu.show {
  display: flex;
}
  .sound-menu.left  { left:0;  
    /* background:linear-gradient(90deg,rgba(0, 0, 0, 0.82) 50%,transparent);  */
    }
  .sound-menu.right { right:0; 
    /* background:linear-gradient(270deg,rgba(0, 0, 0, 0.82) 50%,transparent);  */
    }
  .sound-menu.active { pointer-events:auto; }

  /* #menu-left-title{
    display: none;
  } */

  #left-top{
    position: fixed;
    top: 10px;
    left: 10px;
    display: none;
    z-index: 99;
    column-gap: 10px;
  }
  #menu-left-title{
    
    
    cursor: pointer;
    pointer-events: auto;
    
    /* background-color:var(--left); */
    border: solid var(--left) 1px;
    padding: 10px 30px;
    color: var(--left);
    border-radius: 100px;
    display: block;
    transition: all 0.2s ease-in-out;
  }
  
  #menu-left-title.clicked{
    background-color: var(--bg);
    color: var(--left);
  }
  #right-top{
    position: fixed;
    top: 10px;
    right: 10px;
    display: none;
    z-index: 99;
    column-gap: 10px;
  }
  #menu-right-title{
    
    cursor: pointer;
    pointer-events: auto;
    z-index: 30;
    /* background-color:var(--right); */
    padding: 10px 30px;
    color: var(--right);
    border: solid var(--right) 1px;
    border-radius: 100px;
    display: block;
    transition: all 0.2s ease-in-out;
  }
  
  #menu-right-title.clicked{
    background-color: var(--bg);
    color: var(--right);
  }
  /* #menu-title-back{
    display: none;
  } */
  /* #menu-title-back{
    position: fixed;
    top: 0;
    left: 0;
    height: 57px;
    width: 100vw;
    background-color: black;
    z-index: 20;
    display: none;
  } */

  .menu-inner {
    display: none;
    flex-direction: column;
    gap: 0;
    /* overflow-y: scroll; */
    flex: 1;
    -webkit-overflow-scrolling: touch;
    flex: 1;
    min-height: 0;
    padding-bottom: 10px;
    }
  #menu-inner-left.show, #menu-inner-right.show {
    display: block !important;
    }
  .menu-item {
    padding:4.25px 12px; font-size:11px; letter-spacing:0.1em; text-transform:uppercase;
    color:var(--text); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; cursor:pointer; line-height:1.6;
    flex-shrink: 0;
    transition: all 0.1s ease-in-out;
  }
  .sound-menu.left  .menu-item { 
    text-align:left;
    margin-left: 10px }
  .sound-menu.right .menu-item { 
    text-align:right;
    margin-right: 10px; }
  .menu-item.selected {
    color:var(--text); 
    font-size:11px;
  }
  .sound-menu.left  .menu-item.selected { 
    color: var(--bg);   
    background-color: var(--left);
    border-radius: 20px;  
    }
    
    .sound-menu.left  .menu-item:active { 
        color: var(--bg);   
        /* background-color: var(--left); */
        border: none;
        border-radius: 20px;  
    }
  .sound-menu.right .menu-item.selected { 
    color: var(--bg); 
    background: var(--right);
    border-radius: 20px;
    }
    
    .sound-menu.right  .menu-item:active { 
        color: var(--bg);   
        /* background-color: var(--left); */
        /* border: solid 1px var(--right); */
        border-radius: 20px;  
        border: none;
    }
  .gesture-badge {
    position:absolute; bottom:32px; font-size:22px; pointer-events:none;
    filter: drop-shadow(0 0 6px rgba(255,255,255,0.4));
    transition: opacity 0.2s;
    z-index:6;
  }
  .sound-menu.left  .gesture-badge { left:10px;  }
  .sound-menu.right .gesture-badge { right:10px; }

  .menu-hint {
    position:absolute; bottom:6px; font-size:9px; letter-spacing:0.12em;
    text-transform:uppercase; color:rgba(255,255,255,0.3);
  }
  .sound-menu.left  .menu-hint { left:10px; }
  .sound-menu.right .menu-hint { right:10px; }

  /* ── Layer transport ── */
  .layer-transport { display:flex; gap:4px; align-items:center; }
  .layer-transport .layer-btn { padding:4px 8px; font-size:11px; line-height:1; }

  #instruction{
    width: 270px;
    height: 150px;
    border: solid var(--bord) 1px;
    /* background-color: var(--bg); */
    position: fixed;
    /* top: calc(50vh - 125px); */
    bottom: 280px;
    left: calc(50vw - 125px);
    z-index: 1001;
    border-radius: 50px;
    display: none;
    backdrop-filter:blur(4px);
    text-align: center;
    padding: 30px;
  }
  #instruction.show{
    display: flex;
    flex-direction: column; 
    justify-content: center;
    align-items: center;
  }
  #tut-confirm{
    display: flex;
    gap: 10px;
    margin-top: 30px;
  }
  #tut-yes, #tut-no{
    padding: 10px 30px;
    border-radius: 100px;
    border: solid var(--bord) 1px;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
  }
  

  #instruction-button{
    position: fixed;
    top: 10px;
    left: calc(50vw - 37.5px); 
    cursor: pointer;
    pointer-events: auto;
    z-index: 100;
    /* background-color:var(--bord); */
    padding: 10px 30px;
    color: var(--bord);
    border: solid var(--bord) 1px;
    border-radius: 100px;
    display: none;
    width: 70px;
    justify-content: center;
    transition: all 0.2s ease-in-out;
  }
  

  #instruction-button.show{
    display: flex;
  }

  #blur {
    width: 100dvw;
    height: 100dvh;
    position: fixed;
    inset: 0;
    z-index: 999;
    pointer-events: none;
    display: none;
    background-color: var(--bg);
    opacity: 0.8;
    backdrop-filter: blur(6px);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    }
    #blur.show {
        display: block;
    }

  .next-btn{
    border-radius: 100px;
    padding: 10px 30px;
    margin-top: 10px;
    border: solid 1px var(--bord);
    transition: all 0.2s ease-in-out;
  }
 
  #end-tutorial{
    margin-top: 0;
  }

  #search-toggle-left, #search-toggle-right{
    cursor: pointer;
    pointer-events: auto;
    padding: 10px 15px;
    border-radius: 100px;
    /* display: none; */
    transition: all 0.1s ease-in-out;
  }

  #search-toggle-left{
    color: var(--left);
    border: solid var(--left) 1px;
  }
  #search-toggle-left.close{
  }
  #search-toggle-right.close{
  }

  /* #hand-cards.top, #menu-left-title.top, #menu-right-title.top, #search-toggle-left.top, #search-toggle-right.top, #rec-panel.top, #export-row.top {
    z-index: 1001;
  } */

  /* .search-window{
    overflow-y: scroll;

  } */
  .search-window-results{
    overflow-y: scroll;
    overflow-x: hidden;
    max-height: 85%; 
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 20px;
  }
  .search-result-item{
    text-transform: uppercase;
    font-size: 11px;
    letter-spacing: 0.1em;
    font-weight: 500;
    transition: all 0.2s ease-in-out;
  }
  #search-results-left .search-result-item.active{
    background-color: var(--left);
    border-radius: 50px;
    color: var(--bg);
    padding: 4px 12px;
  }
  #search-results-right .search-result-item.active{
    background-color: var(--right);
    border-radius: 50px;
    color: var(--bg);
    padding: 4px 12px;
  }
  
  .search-window-header{
    /* text-transform: uppercase; */
    font-size: 11px;
    letter-spacing: 0.1em;
    font-weight: 500;
    line-height: 110%;
  }

  #search-toggle-right{
    color: var(--right);
    border: solid var(--right) 1px;
  }

  .search-window{
    width: 208px;
    height: 89.5dvh;
    padding: 20px;
    border-radius: 32px;
    background-color: var(--bg);
    position: fixed;
    z-index: 99;
    top: 60px;
    overflow-x: hidden; 
  }
  #search-left{
    border: solid 1px var(--left);
    color: --left;
    left: 10px;
    display: none;
  }
  #search-left.show, #search-right.show{
    display: block;
  }
  #search-right{
    border: solid 1px var(--right);
    color: --right;
    right: 10px;
    display: none;
  }
  .search-window-input-row{
    display: flex;
    gap: 10px;
    margin-top: 10px;
  }

  .search-window-input{
    border-radius: 15px;
    background-color: var(--bg);
    text-transform: uppercase;
    font-size: 11px;
    letter-spacing: 0.1em;
    font-weight: 500;
    font-family:'Inconsolata',monospace;
    padding: 4px 6px;
  }
  input:focus{
    outline: none;
  }
  #search-input-left{
    border: solid 1px var(--left);
  }
  #search-input-right{
    border: solid 1px var(--right);
  }
  .search-window-btn{
    background-color: var(--bg);
    border-radius: 20px;
    font-family: 'Inconsolata', monospace;
    padding: 4px;
    font-weight: 500;
    letter-spacing: 0.1em;
    font-size: 11px;
    text-transform: uppercase;
  }
  #search-btn-left{
    border: solid 1px var(--left);
    color: var(--left)
  }
  #search-btn-right{
    border: solid 1px var(--right);
    color: var(--right);
  }

  .sound-menu-highlight{
    height: 38.5px;
    border: solid 3px var(--rec);
    border-radius: 100px;
    position: fixed;
    top: 10px;
    pointer-events: none;
    z-index: 1000;
    display: none;
  }
  #sound-menu-highlight-left{
    left: 10px;
    width: 150px;
  }
  #sound-menu-highlight-right{
    right: 10px;
    width: 158px;
  }

  .more-sounds-highlight{
    width: 40px;
    height: 38.5px;
    border: solid 3px var(--rec);
    border-radius: 100px;
    position: fixed;
    top: 10px;
    pointer-events: none;
    z-index: 1000;
    display: none;
  }
  #more-sounds-highlight-left{
    left: 170px;
  }
  #more-sounds-highlight-right{
    right: 178px;
  }

  .pitch-vol-highlight{
    font-size: 50px;
    position: fixed;
    top: 131px;
    pointer-events: none;
    z-index: 1000;
    color: var(--rec);
    display: none;
  }
  #pitch-vol-highlight-left{
    left: 20%;
  }
  #pitch-vol-highlight-right{
    right: 20%;
  }

  .record-highlight{
    position: fixed;
    top: 230px;
    pointer-events: none;
    z-index: 1000;
    border: solid 3px var(--rec);
    border-radius: 20px;
    width: 102.97px;
    height: 34.5px;
    left: 25%;
    display: none;
  }

  .mix-highlight{
    font-size: 30px;
    position: fixed;
    pointer-events: none;
    z-index: 1000;
    color: var(--rec);
    display: none;
    top: 365px;
    left: 20%;
  }

  .pitch-vol-highlight.show, .sound-menu-highlight.show, .more-sounds-highlight.show, .record-highlight.show, .mix-highlight.show{
    display: block;
  }


@media (hover: hover) {
     #start-btn:hover { background: var(--bord); color: var(--bg); border-color: var(--bord); cursor: pointer;}
     #btn-record:hover:not(:disabled) { background-color: var(--rec); color: var(--bg) }
     #btn-stop:hover:not(:disabled) {background-color: var(--bord); color: var(--bg)}
     .layer-btn:hover { border-color:var(--bord); color:var(--bg); background-color: var(--bord)}
     .layer-btn.delete:hover { border-color:var(--rec); color:var(--bg); background-color: var(--rec);}
     .btn-export:hover:not(:disabled) { background-color: var(--bord); color: var(--bg) ; }
     #menu-left-title:hover{
        background-color: var(--left);
        color: var(--bg);
    }
     #menu-right-title:hover{
        background-color: var(--right);
        color: var(--bg);
    }
     .sound-menu.left  .menu-item:hover { 
        color: var(--left);   
        /* background-color: var(--left); */
        border: none;
        border-radius: 20px;  
    }
    .sound-menu.right  .menu-item:hover { 
        color: var(--right);   
        /* background-color: var(--left); */
        /* border: solid 1px var(--right); */
        border-radius: 20px;  
        border: none;
    }
    #tut-yes:hover, #tut-no:hover{
        color: var(--bg);
        background-color: var(--bord);
        cursor: pointer;
    } 
     #instruction-button:hover{
        background-color: var(--bord);
        color: var(--bg);
    }
     .next-btn:hover{
        background-color: var(--bord);
        color: var(--bg);
    }
     #search-toggle-left:hover {
        background-color: var(--left);
        color: var(--bg);
    }
     #search-toggle-right:hover {
        background-color: var(--right);
        color: var(--bg);
    }
     #search-results-left .search-result-item:hover{
        color: var(--left);
    }
   #search-results-right .search-result-item:hover{
        color: var(--right);
    }
    
}




@media screen and (max-width: 800px) {
    /* *:hover{
        all: unset;
    } */
    #h1{
        margin-bottom: 20px;
    }
  #info{
    width: calc(100% - 20px);
    left: 10px;
    bottom: 10%;
  }
  .sound-menu{
    width: 100vw;
    height: 100dvh;
    padding-top: 60px;
    top: 0px;
    bottom: 0px;
    left: 0;
    background-color: var(--bg);
    z-index: 50;
    display: none;
    flex-direction: column;
    box-sizing: border-box;
  }
  #menu-left.show{
    display: flex;
  }
  #menu-right.show{
    display: flex;
  }
  
.menu-inner{
    height: calc(100dvh - 60px);
    padding-bottom: 40px;
    /* height: 0; */
    flex: 1;
    min-height: 0;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-y;
}
  #menu-left-title, #menu-right-title {
    z-index: 99;
  }
  .sound-menu.left  .menu-item { 
    margin-right: 10px }
  .sound-menu.right .menu-item { 
    margin-left: 10px; 
    }

    .layer-waveform, .layer-vol-wrap{
        display: none;
    }

    .layer-row{
        gap: 6px;
        justify-content: center;
    }

    #export-row{
        justify-content: center;
        align-items: center;
    }

    .search-window{
        width: calc(100vw - 20px);
    }
    .search-window-header{
        font-size: 16px;
        letter-spacing: 0;
        text-align: center;
    }
    .search-window-input{
        text-transform: lowercase;
        font-size: 16px;
        letter-spacing: 0;
        width: 100%;
    }

    #instruction{
        width: 270px;
        height: 140px;
        border: solid var(--bord) 1px;
        /* background-color: var(--bg); */
        position: fixed;
        /* top: calc(50vh - 125px); */
        bottom: 80px;
        left: calc(50vw - 135px);
        z-index: 1003;
        border-radius: 50px;
        display: none;
        backdrop-filter:blur(4px);
        text-align: center;
        padding: 15px;
        font-size: 16px; 
    }
    .next-btn{
        margin-top: 10px;
        padding: 5px 30px;
    }

    .sound-menu-highlight{
        height: 40px !important;
        border: solid 3px var(--rec);
        border-radius: 100px;
        position: fixed;
        top: 10px;
        pointer-events: none;
        z-index: 1000;
        display: none;
    }
    #sound-menu-highlight-left{
        left: 10px;
        width: 70px;
    }
    #sound-menu-highlight-right{
        right: 10px;
        width: 70px;
    }

    .more-sounds-highlight{
        width: 40px;
        height: 40px !important;
        border: solid 3px var(--rec);
        border-radius: 100px;
        position: fixed;
        top: 10px;
        pointer-events: none;
        z-index: 1000;
        display: none;
    }
    #more-sounds-highlight-left{
        left: 90px;
    }
    #more-sounds-highlight-right{
        right: 90px;
    }

    .pitch-vol-highlight{
        font-size: 30px;
        position: fixed;
        top: 131px;
        pointer-events: none;
        z-index: 1000;
        color: var(--rec);
        display: none;
    }
    #pitch-vol-highlight-left{
        left: 3%;
    }
    #pitch-vol-highlight-right{
        right: 3%;
    }

    .record-highlight{
        position: fixed;
        top: 230px;
        pointer-events: none;
        z-index: 1000;
        border: solid 3px var(--rec);
        border-radius: 20px;
        width: 102.97px;
        height: 36.5px !important;
        left: 5%;
        display: none;
    }

    .mix-highlight{
        font-size: 30px;
        position: fixed;
        pointer-events: none;
        z-index: 1000;
        color: var(--rec);
        display: none;
        top: 365px;
        left: 20%;
    }

    #export-row { 
        flex-direction: column;
    }

}

