/* RESET */
*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

/* BODY */
body{
  background:#0b0b0b;
  color:#00ff66;
  font-family:system-ui;
  height:100vh;
  overflow:hidden;
}

/* APP CONTAINER */
#app{
  position:absolute;
  top:0;
  left:0;
  right:0;
  bottom:70px; /* plads til bundbar */
}

/* IFRAME */
#page-frame{
  width:100%;
  height:100%;
  border:none;
  background:transparent;
  opacity:1;
  transition:opacity .2s ease;
}

#page-frame.fade-out{
  opacity:0.2;
}

/* BOTTOM BAR */
#bottom-bar{
  position:fixed;
  bottom:0;
  left:0;
  width:100%;
  height:70px;

  display:flex;
  justify-content:center;
  align-items:center;
  gap:25px;

  background:rgba(0,0,0,0.9);
  border-top:1px solid #00ff66;
  backdrop-filter:blur(6px);

  padding:0 90px 0 20px;
}

/* 🔥 NY venstre zone */
#nav-left{
  display:flex;
  align-items:center;
  gap:18px;
}

/* resten (de andre knapper) */
#nav-center{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:25px;
  margin:0 auto;
}

#bottom-search{
  width:min(100%, 220px);
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:8px;
}

#widget-search-form{
  flex:1;
}

#search-engine-indicator{
  width:42px;
  height:42px;
  flex:0 0 42px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:12px;
  border:1px solid rgba(0,255,102,0.4);
  background:rgba(0,255,102,0.05);
  color:#00ff66;
  font-size:20px;
  cursor:pointer;
  transition:all .2s ease;
}

#search-engine-indicator:hover{
  border-color:#00ff66;
  box-shadow:0 0 10px rgba(0,255,102,0.2);
  transform:scale(1.05);
}

#widget-search-input{
  width:100%;
  padding:12px 14px;
  border-radius:12px;
  border:1px solid rgba(0,255,102,0.4);
  background:rgba(0,255,102,0.05);
  color:#00ff66;
  font:inherit;
  line-height:1.4;
}

#widget-search-input:focus{
  outline:none;
  border-color:#00ff66;
  box-shadow:0 0 10px rgba(0,255,102,0.2);
}

#widget-search-input::placeholder{
  color:rgba(0,255,102,0.45);
}

#nav-clock{
  position:absolute;
  right:24px;
  top:50%;
  transform:translateY(-50%);
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:2px;
  color:#00ff66;
  white-space:nowrap;
  user-select:none;
  text-shadow:0 0 10px rgba(0,255,102,0.45);
  line-height:1.1;
}

#nav-clock .clock-time{
  font-size:1rem;
  font-weight:600;
  letter-spacing:0.08em;
}

#nav-clock .clock-date{
  font-size:0.78rem;
  font-weight:500;
  letter-spacing:0.06em;
  opacity:0.9;
}

/* ===== PLAYER OVERLAY ===== */

.hidden{
  display:none !important;
}

#player-overlay{
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:9999;
}

#player-window{
  position:absolute;
  top:80px;
  left:80px;
  width:360px;
  height:245px;
  display:flex;
  flex-direction:column;
  background:rgba(0,0,0,0.96);
  border:1px solid #00ff66;
  border-radius:14px;
  box-shadow:0 0 24px rgba(0,255,102,0.25);
  overflow:hidden;
  pointer-events:auto;
}

#player-header{
  height:42px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 10px 0 14px;
  background:rgba(0,255,102,0.08);
  border-bottom:1px solid rgba(0,255,102,0.35);
  cursor:move;
  user-select:none;
}

#player-drag-handle{
  color:#00ff66;
  font-size:14px;
  font-weight:600;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

#player-controls{
  display:flex;
  align-items:center;
  gap:8px;
}

#player-controls button{
  width:30px;
  height:30px;
  border:none;
  background:transparent;
  color:#00ff66;
  font-size:18px;
  cursor:pointer;
  border-radius:8px;
  transition:transform .15s ease, background .15s ease, text-shadow .15s ease;
}

#player-controls button:hover{
  background:rgba(0,255,102,0.12);
  transform:scale(1.08);
  text-shadow:0 0 8px #00ff66;
}

#player-frame{
  width:100%;
  height:100%;
  border:none;
  background:#000;
}

/* ===== Browser overlay ===== */
#open-browser-btn{
  position: fixed;
  bottom: 70px;
  right: 20px;
  font-size: 1.6rem;
  background: none;
  border: none;
  color: var(--green);
  cursor: pointer;
  z-index: 999;
  opacity: 0.7;
  transition: all 0.2s ease;
}

#open-browser-btn:hover{
  opacity: 1;
  transform: scale(1.2);
  text-shadow: 0 0 10px rgba(0,255,102,0.6);
}

.browser-overlay{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.82);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 25000;
  padding: 20px;
}

.browser-overlay.show{
  display: flex;
}

.browser-popup{
  position: relative;
  width: min(1280px, 96vw);
  height: min(820px, 92vh);

  background: #000;
  border: none;
  border-radius: 8px;

  box-shadow: none;
  overflow: hidden;
}

#browser-iframe{
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}


/* grøn understregning på musik-knap når player er minimeret */
.nav-btn.is-minimized{
  position:relative;
}

.nav-btn.is-minimized::after{
  content:"";
  position:absolute;
  left:12%;
  right:12%;
  bottom:2px;
  height:3px;
  border-radius:999px;
  background:#00ff66;
  box-shadow:0 0 10px #00ff66;
}

/* NAV BUTTON */
.nav-btn{
  font-size:36px;
  background:none;
  border:none;
  color:#00ff66;
  cursor:pointer;

  transition:all .2s ease;
}

.nav-icon-img{
  width:36px;
  height:36px;
  object-fit:contain;
  pointer-events:none;
  transition: transform .2s ease;
} 

/* HOVER */
.nav-btn:hover{
  transform:translateY(-6px) scale(1.35);
  text-shadow:0 0 10px #00ff66;
}

/* ACTIVE */
.nav-btn.is-active{
  transform:translateY(-4px) scale(1.5);
  text-shadow:0 0 2px #00ff66;
}

.nav-btn.is-active:hover{
  transform:translateY(-6px) scale(1.6);
}


/* sørg for at den følger hover scaling */
.nav-btn:hover .nav-icon-img{
  transform: scale(1.2);
}

/* aktiv */
.nav-btn.is-active .nav-icon-img{
  transform: scale(1.3);
}

/* ===== Forside højrekliksmenu ===== */
.home-context-menu{
  position:fixed;
  left:0;
  bottom:70px;
  top:auto;
  right:auto;
  z-index:30000;

  min-width:240px;
  display:flex;
  flex-direction:column;
  gap:0;
  padding:0;

  background:rgba(0,0,0,0.96);
  border:1px solid rgba(0,255,102,0.45);
  border-radius:0;
  box-shadow:0 0 24px rgba(0,255,102,0.22);
  overflow:hidden;
}

.home-context-item{
  width:100%;
  text-align:left;
  padding:12px 14px;
  border:none;
  border-bottom:1px solid rgba(0,255,102,0.18);
  border-radius:0;
  background:transparent;
  color:#00ff66;
  font:inherit;
  cursor:pointer;
  transition:background .18s ease, color .18s ease;
}

.home-context-item:last-child{
  border-bottom:none;
}

.home-context-item:hover{
  background:rgba(0,255,102,0.10);
  color:#fff;
  box-shadow:none;
  transform:none;
}