:root{
  --bg: #05070c;
  --panel: rgba(12,22,36,0.72);
  --cyan: #3ee6f0;
  --cyan-dim: #1c6a70;
  --amber: #ffb347;
  --magenta: #ff5fa2;
  --green: #5dffb0;
  --text: #d9f2f4;
  --text-dim: #7692a0;
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  background:
    radial-gradient(ellipse at 20% 0%, rgba(62,230,240,0.07), transparent 55%),
    radial-gradient(ellipse at 90% 100%, rgba(255,95,162,0.06), transparent 55%),
    repeating-linear-gradient(0deg, rgba(62,230,240,0.025) 0px, rgba(62,230,240,0.025) 1px, transparent 1px, transparent 34px),
    repeating-linear-gradient(90deg, rgba(62,230,240,0.025) 0px, rgba(62,230,240,0.025) 1px, transparent 1px, transparent 34px),
    var(--bg);
  color:var(--text);
  font-family:'Share Tech Mono', monospace;
  min-height:100vh;
  padding:30px 14px 90px;
}
.scanlines{
  pointer-events:none; position:fixed; inset:0; z-index:100; opacity:0.5;
  background:repeating-linear-gradient(0deg, rgba(0,0,0,0.12) 0px, transparent 1px, transparent 3px);
  mix-blend-mode:overlay;
}
.sheet{max-width:960px; margin:0 auto; position:relative;}
.panel{
  position:relative; background:var(--panel); backdrop-filter:blur(2px);
  border:1px solid rgba(62,230,240,0.25); border-radius:2px;
  padding:20px 24px; margin-bottom:20px;
}
.corner{position:absolute; width:14px; height:14px; border:2px solid var(--cyan); opacity:0.9;}
.corner.tl{top:-1px; left:-1px; border-right:none; border-bottom:none;}
.corner.tr{top:-1px; right:-1px; border-left:none; border-bottom:none;}
.corner.bl{bottom:-1px; left:-1px; border-right:none; border-top:none;}
.corner.br{bottom:-1px; right:-1px; border-left:none; border-top:none;}
.label{
  font-family:'Orbitron',sans-serif; font-size:11px; letter-spacing:3px; text-transform:uppercase;
  color:var(--cyan); margin-bottom:12px; display:flex; align-items:center; gap:8px;
}
.label::before{content:''; width:6px; height:6px; background:var(--cyan); box-shadow:0 0 8px var(--cyan); display:inline-block;}
.status-row{
  display:flex; justify-content:space-between; font-size:11px; letter-spacing:1.5px;
  color:var(--text-dim); text-transform:uppercase; margin-bottom:14px; flex-wrap:wrap; gap:6px;
}
.status-row span span{color:var(--green);}
.title-row{display:flex; align-items:flex-end; justify-content:space-between; gap:18px; flex-wrap:wrap;}
.paper-name{
  font-family:'Orbitron',sans-serif; font-weight:800; font-size:clamp(30px,5.5vw,50px);
  letter-spacing:4px; line-height:1; text-transform:uppercase; color:#eafcff;
  text-shadow: 0 0 18px rgba(62,230,240,0.55), 0 0 40px rgba(62,230,240,0.2);
}
.tagline{font-size:12px; color:var(--text-dim); margin-top:6px; letter-spacing:0.5px;}
.stamp{
  font-family:'Orbitron',sans-serif; font-weight:700; font-size:11px; letter-spacing:1.5px;
  color:var(--amber); border:1px solid var(--amber); padding:6px 12px; border-radius:2px;
  text-transform:uppercase; white-space:nowrap; box-shadow: inset 0 0 12px rgba(255,179,71,0.15);
}
.ticker-wrap{
  margin-top:16px; border-top:1px solid rgba(62,230,240,0.2); border-bottom:1px solid rgba(62,230,240,0.2);
  padding:8px 0; overflow:hidden; white-space:nowrap; position:relative;
}
.ticker-wrap::before{content:'▸ ';color:var(--cyan);}
.ticker{font-size:11.5px; letter-spacing:1px; color:var(--cyan); text-transform:uppercase;}
.cursor{display:inline-block; width:7px; height:12px; background:var(--cyan); margin-left:4px; animation:blink 1s steps(1) infinite; vertical-align:middle;}
@keyframes blink{50%{opacity:0;}}
.main-grid{display:grid; grid-template-columns: 1.7fr 1fr; gap:20px;}
@media (max-width:680px){ .main-grid{grid-template-columns:1fr;} }
.headline-title{
  font-family:'Orbitron',sans-serif; font-weight:700; font-size:23px; line-height:1.25;
  margin:0 0 8px; color:#f2fdff;
}
.headline-dek{font-size:13px; color:var(--text-dim); margin:0 0 10px; font-style:italic;}
.byline{font-size:10px; letter-spacing:1.5px; text-transform:uppercase; color:var(--cyan-dim); margin-bottom:12px;}
.body-text{font-size:13.5px; line-height:1.65; color:var(--text);}
.body-text p{margin:0 0 10px;}
.bulletin{margin-bottom:14px; padding-bottom:14px; border-bottom:1px dashed rgba(62,230,240,0.2);}
.bulletin:last-child{border-bottom:none; margin-bottom:0; padding-bottom:0;}
.bulletin-title{font-family:'Orbitron',sans-serif; font-weight:700; font-size:12.5px; margin-bottom:4px; color:var(--cyan);}
.bulletin-body{font-size:12px; line-height:1.55; color:var(--text-dim);}
.lower-grid{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
@media (max-width:680px){ .lower-grid{grid-template-columns:1fr;} }
.list-item{margin-bottom:12px; font-size:12.5px; line-height:1.55; padding-bottom:10px; border-bottom:1px dotted rgba(62,230,240,0.15);}
.list-item:last-child{border-bottom:none;}
.li-title{font-weight:700; font-family:'Orbitron',sans-serif; font-size:12px; color:var(--amber);}
.li-tag{
  display:inline-block; font-size:9.5px; letter-spacing:0.5px; color:var(--bg);
  background:var(--amber); border-radius:2px; padding:1px 6px; margin-left:6px;
  text-transform:uppercase; vertical-align:middle; font-family:'Orbitron',sans-serif;
}
.rumor .li-tag{background:var(--magenta);}
.rumor::before{content:'// ';color:var(--magenta);}
.footer{
  display:flex; justify-content:space-between; font-size:10px; color:var(--text-dim);
  letter-spacing:0.5px; margin-top:4px; text-transform:uppercase;
}
[contenteditable="true"]{outline:1px dashed var(--magenta); outline-offset:3px; background:rgba(255,95,162,0.05); border-radius:2px; cursor:text;}
[contenteditable="true"]:focus{outline:1px solid var(--magenta); background:rgba(255,95,162,0.1);}
.add-btn, .del-btn{
  font-family:'Orbitron',sans-serif; font-size:9.5px; letter-spacing:1px;
  border:1px solid var(--cyan); color:var(--cyan); background:transparent;
  padding:4px 10px; border-radius:2px; cursor:pointer; text-transform:uppercase;
}
.del-btn{border-color:var(--magenta); color:var(--magenta); float:right; margin-left:6px;}
.del-btn:hover{background:rgba(255,95,162,0.12); box-shadow:0 0 10px rgba(255,95,162,0.3);}
.add-btn:hover{background:rgba(62,230,240,0.12); box-shadow:0 0 10px rgba(62,230,240,0.3);}
.edit-only{display:none;}
body.editing .edit-only{display:inline-block;}
body.editing .del-btn{display:inline-block;}
.controls{
  position:fixed; bottom:18px; left:50%; transform:translateX(-50%);
  display:flex; gap:8px; align-items:center;
  background:rgba(6,10,16,0.9); border:1px solid var(--cyan); border-radius:30px; padding:9px 16px;
  box-shadow:0 0 30px rgba(62,230,240,0.15), 0 10px 30px rgba(0,0,0,0.6); z-index:110;
  font-family:'Orbitron',sans-serif; font-size:10.5px; backdrop-filter:blur(4px);
}
.controls a, .controls button{
  font-family:inherit; font-size:10px; letter-spacing:1px; text-transform:uppercase;
  background:transparent; color:var(--text); border:1px solid rgba(255,255,255,0.2); border-radius:20px;
  padding:8px 15px; cursor:pointer; text-decoration:none;
}
.controls button.primary{background:var(--cyan); color:#04262a; border-color:var(--cyan); font-weight:700; box-shadow:0 0 14px rgba(62,230,240,0.5);}
.controls button:hover, .controls a:hover{border-color:var(--cyan); color:var(--cyan);}
.controls button.primary:hover{color:#04262a;}
#saveStatus{color:var(--green); font-size:9.5px; padding:0 4px; min-width:80px;}

/* Ekran logowania */
.login-wrap{max-width:340px; margin:120px auto; text-align:center;}
.login-wrap h1{font-family:'Orbitron',sans-serif; font-size:18px; letter-spacing:2px; color:var(--cyan);}
.login-wrap input{
  width:100%; padding:10px 12px; margin:14px 0; background:rgba(255,255,255,0.05);
  border:1px solid var(--cyan-dim); color:var(--text); border-radius:2px; font-family:inherit; font-size:13px;
}
.login-wrap button{
  width:100%; padding:10px; background:var(--cyan); color:#04262a; border:none; border-radius:2px;
  font-family:'Orbitron',sans-serif; font-weight:700; letter-spacing:1px; cursor:pointer; text-transform:uppercase;
}
.login-err{color:var(--magenta); font-size:12px; min-height:16px; margin-top:8px;}

/* Kafelki wydań na liście */
.sheet a:hover .panel{border-color:rgba(62,230,240,0.6); box-shadow:0 0 20px rgba(62,230,240,0.08);}
.sheet a .panel{transition:border-color .15s, box-shadow .15s;}
