@import url('https://fonts.googleapis.com/css2?family=Rajdhani:wght@500;600;700&family=Barlow:ital,wght@0,300;0,400;0,500;0,600;0,700;0,900;1,400&family=Share+Tech+Mono&display=swap'); :root { --red: #D91919; --red2: #FF2D2D; --orange: #E8600A; --yellow: #F5A623; --bg: #0D0D0D; --bg2: #141414; --bg3: #1A1A1A; --card: #1E1E1E; --card2: #242424; --line: #2C2C2C; --line2: #353535; --t1: #F0F0F0; --t2: #A0A0A0; --t3: #555; --green: #1DB954; --blue: #2979FF; --fire: linear-gradient(135deg,#D91919 0%,#E8600A 60%,#F5A623 100%); --shadow: 0 8px 32px rgba(0,0,0,.7); --r: 16px; --rb: 24px; } * { margin:0; padding:0; box-sizing:border-box; -webkit-tap-highlight-color:transparent; } html, body { width: 100%; height: 100%; background: #080808; display: flex; align-items: center; justify-content: center; font-family: 'Barlow', sans-serif; overflow: hidden; } /* ─── PHONE SHELL ─────────────────────────────── */ .phone-shell { width: 390px; height: 844px; background: #111; border-radius: 50px; border: 2px solid #2A2A2A; box-shadow: 0 0 0 6px #0A0A0A, 0 0 0 8px #1E1E1E, 0 40px 120px rgba(0,0,0,.9), inset 0 0 0 1px rgba(255,255,255,.04); position: relative; overflow: hidden; display: flex; flex-direction: column; } /* notch */ .phone-shell::before { content:''; position:absolute; top:0; left:50%; transform:translateX(-50%); width:120px; height:32px; background:#111; border-radius:0 0 20px 20px; z-index:999; box-shadow: inset 0 -2px 6px rgba(0,0,0,.6); } /* Dynamic island camera */ .phone-shell::after { content:''; position:absolute; top:10px; left:50%; transform:translateX(-50%); width:90px; height:20px; background:#000; border-radius:12px; z-index:1000; } /* ─── STATUS BAR ──────────────────────────────── */ .statusbar { height: 44px; display: flex; align-items: flex-end; justify-content: space-between; padding: 0 28px 6px; background: var(--bg); position: relative; z-index: 100; flex-shrink: 0; } .statusbar .time { font-size: 13px; font-weight: 700; color: var(--t1); font-family: 'Barlow', sans-serif; letter-spacing: -.2px; } .statusbar .icons { display: flex; align-items: center; gap: 5px; font-size: 12px; color: var(--t1); } /* ─── SCREEN AREA ─────────────────────────────── */ .screen { flex: 1; background: var(--bg); overflow: hidden; position: relative; display: flex; flex-direction: column; } /* ─── ALL SCREENS ────────────────────────────── */ .sc { position: absolute; inset: 0; display: flex; flex-direction: column; overflow: hidden; opacity: 0; pointer-events: none; transform: translateX(20px); transition: opacity .28s cubic-bezier(.4,0,.2,1), transform .28s cubic-bezier(.4,0,.2,1); } .sc.active { opacity: 1; pointer-events: all; transform: translateX(0); } .sc.back-exit { transform: translateX(-20px); opacity: 0; } /* ─── SCROLLABLE BODY ─────────────────────────── */ .sc-body { flex: 1; overflow-y: auto; overflow-x: hidden; -webkit-overflow-scrolling: touch; padding-bottom: 80px; } .sc-body::-webkit-scrollbar { display: none; } /* ─── NAV BAR ─────────────────────────────────── */ .navbar { position: absolute; bottom: 0; left: 0; right: 0; height: 78px; background: rgba(18,18,18,.96); backdrop-filter: blur(20px); border-top: 1px solid var(--line); display: flex; align-items: flex-start; justify-content: space-around; padding-top: 10px; z-index: 200; } .nav-tab { display: flex; flex-direction: column; align-items: center; gap: 3px; cursor: pointer; padding: 4px 12px; border-radius: 12px; transition: all .2s; position: relative; } .nav-tab .nt-icon { font-size: 22px; transition: transform .2s; filter: grayscale(1) opacity(.5); } .nav-tab .nt-label { font-size: 10px; color: var(--t3); font-weight: 600; letter-spacing: .3px; transition: color .2s; } .nav-tab.active .nt-icon { filter: none; transform: scale(1.1); } .nav-tab.active .nt-label { color: var(--red); } .nav-tab .nt-dot { position: absolute; top: 2px; right: 10px; width: 8px; height: 8px; background: var(--red); border-radius: 50%; border: 2px solid var(--bg2); } /* ─── TOP BAR ─────────────────────────────────── */ .topbar { display: flex; align-items: center; justify-content: space-between; padding: 14px 20px 10px; background: var(--bg); flex-shrink: 0; position: relative; z-index: 10; } .topbar h1 { font-family: 'Rajdhani', sans-serif; font-size: 22px; font-weight: 700; color: var(--t1); letter-spacing: .3px; } .topbar .back-btn { width: 36px; height: 36px; background: var(--card2); border-radius: 10px; display: flex; align-items: center; justify-content: center; cursor: pointer; font-size: 18px; color: var(--t2); transition: background .2s; } .topbar .back-btn:active { background: var(--line2); } .topbar-actions { display: flex; gap: 8px; } .icon-pill { height: 36px; background: var(--card2); border-radius: 10px; display: flex; align-items: center; justify-content: center; padding: 0 10px; cursor: pointer; font-size: 18px; position: relative; gap: 5px; } .icon-pill .badge { background: var(--red); color: #fff; font-size: 9px; font-weight: 800; width: 16px; height: 16px; border-radius: 50%; display: flex; align-items: center; justify-content: center; position: absolute; top: -4px; right: -4px; border: 2px solid var(--bg); } /* ─── FIRE GRADIENT HEADER ────────────────────── */ .fire-header { background: var(--fire); padding: 20px 20px 24px; position: relative; overflow: hidden; flex-shrink: 0; } .fire-header::before { content: '🔥'; position: absolute; right: -10px; bottom: -20px; font-size: 100px; opacity: .08; } .fire-header .fh-label { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 1.5px; color: rgba(255,255,255,.7); margin-bottom: 4px; } .fire-header h2 { font-family: 'Rajdhani', sans-serif; font-size: 26px; font-weight: 700; color: #fff; line-height: 1.1; } .fire-header p { font-size: 13px; color: rgba(255,255,255,.8); margin-top: 4px; } /* ─── CARDS & TILES ───────────────────────────── */ .px { padding: 0 16px; } .py { padding-top: 12px; } .section-title { font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 1.2px; color: var(--t3); padding: 14px 20px 8px; } .card { background: var(--card); border-radius: var(--r); overflow: hidden; margin: 0 16px 12px; border: 1px solid var(--line); } .card.glow { border-color: rgba(217,25,25,.3); box-shadow: 0 0 20px rgba(217,25,25,.1); } .card-row { display: flex; align-items: center; padding: 14px 16px; gap: 12px; border-bottom: 1px solid var(--line); cursor: pointer; transition: background .15s; position: relative; } .card-row:last-child { border-bottom: none; } .card-row:active { background: rgba(255,255,255,.03); } .row-icon { width: 40px; height: 40px; border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 20px; flex-shrink: 0; } .ri-fire { background: rgba(217,25,25,.15); } .ri-blue { background: rgba(41,121,255,.15); } .ri-green { background: rgba(29,185,84,.15); } .ri-orange{ background: rgba(232,96,10,.15); } .ri-yellow{ background: rgba(245,166,35,.15); } .ri-gray { background: rgba(255,255,255,.06); } .row-info { flex: 1; min-width: 0; } .row-info .ri-title { font-size: 14px; font-weight: 600; color: var(--t1); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .row-info .ri-sub { font-size: 12px; color: var(--t2); margin-top: 1px; } .row-right { display: flex; align-items: center; gap: 6px; flex-shrink: 0; } .chevron { color: var(--t3); font-size: 14px; } /* ─── STAT CHIPS ──────────────────────────────── */ .stats-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 0 16px; margin-bottom: 12px; } .stat-chip { background: var(--card); border: 1px solid var(--line); border-radius: var(--r); padding: 14px; position: relative; overflow: hidden; } .stat-chip::after { content:''; position:absolute; top:0; left:0; right:0; height:2px; background: var(--fire); } .sc-val { font-family: 'Rajdhani', sans-serif; font-size: 28px; font-weight: 700; color: var(--t1); line-height: 1; } .sc-lbl { font-size: 11px; color: var(--t2); margin-top: 3px; text-transform: uppercase; letter-spacing: .5px; } /* ─── TAGS ────────────────────────────────────── */ .tag { display: inline-flex; align-items: center; padding: 3px 8px; border-radius: 6px; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .4px; } .tag-red { background:rgba(217,25,25,.15); color:#FF5555; border:1px solid rgba(217,25,25,.25); } .tag-orange { background:rgba(232,96,10,.15); color:var(--orange); border:1px solid rgba(232,96,10,.25); } .tag-green { background:rgba(29,185,84,.12); color:var(--green); border:1px solid rgba(29,185,84,.2); } .tag-blue { background:rgba(41,121,255,.12); color:var(--blue); border:1px solid rgba(41,121,255,.2); } .tag-gray { background:rgba(255,255,255,.06);color:var(--t2); border:1px solid var(--line); } /* ─── PROGRESS ────────────────────────────────── */ .prog-item { padding: 0 20px 14px; } .prog-head { display:flex; justify-content:space-between; margin-bottom:5px; } .prog-name { font-size:13px; font-weight:500; color:var(--t1); } .prog-pct { font-size:12px; font-weight:700; color:var(--orange); font-family:'Share Tech Mono',monospace; } .prog-bar { height:5px; background:var(--line2); border-radius:3px; overflow:hidden; } .prog-fill { height:100%; border-radius:3px; background:var(--fire); } /* ─── FORM ────────────────────────────────────── */ .form-group { padding: 0 16px; margin-bottom: 12px; } .form-label { display:block; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.8px; color:var(--t3); margin-bottom:6px; } .form-input, .form-select, .form-ta { width:100%; background:var(--card2); border:1px solid var(--line2); border-radius:12px; padding:13px 14px; font-size:14px; color:var(--t1); font-family:'Barlow',sans-serif; outline:none; transition:border-color .2s; -webkit-appearance:none; } .form-input:focus, .form-select:focus, .form-ta:focus { border-color:var(--orange); } .form-ta { resize:none; height:90px; } .form-select option { background:var(--card2); } /* ─── BUTTON ──────────────────────────────────── */ .btn { width: calc(100% - 32px); margin: 0 16px; display: flex; align-items: center; justify-content: center; gap: 8px; padding: 15px; border-radius: 14px; font-size: 15px; font-weight: 700; cursor: pointer; border: none; font-family: 'Barlow', sans-serif; text-transform: uppercase; letter-spacing: .5px; transition: all .2s; -webkit-appearance: none; } .btn:active { transform: scale(.97); } .btn-fire { background: var(--fire); color: #fff; box-shadow: 0 4px 20px rgba(217,25,25,.4); } .btn-dark { background: var(--card2); color: var(--t1); border: 1px solid var(--line2); } .btn-outline-red { background: rgba(217,25,25,.1); color: var(--red2); border: 1px solid rgba(217,25,25,.3); } .btn-sm { width: auto; margin: 0; padding: 8px 14px; font-size: 12px; border-radius: 10px; } .btn-alarm { background: var(--red); color: #fff; box-shadow: 0 0 30px rgba(217,25,25,.5); animation: alarmPulse 2s infinite; font-size: 17px; padding: 18px; border-radius: 18px; } @keyframes alarmPulse { 0%,100% { box-shadow:0 0 20px rgba(217,25,25,.5); } 50% { box-shadow:0 0 50px rgba(217,25,25,.8), 0 0 80px rgba(232,96,10,.3); } } /* ─── PILL SEGMENT ────────────────────────────── */ .seg { display: flex; background: var(--card2); border-radius: 12px; padding: 3px; margin: 0 16px 14px; } .seg-btn { flex: 1; padding: 8px; border-radius: 10px; font-size: 12px; font-weight: 600; color: var(--t3); cursor: pointer; text-align: center; transition: all .2s; } .seg-btn.active { background: var(--red); color: #fff; } /* ─── QUIZ ────────────────────────────────────── */ .quiz-wrap { padding: 16px; } .quiz-bar-outer { height:3px; background:var(--line2); border-radius:2px; margin-bottom:20px; } .quiz-bar-inner { height:100%; background:var(--fire); border-radius:2px; transition:width .4s; } .quiz-q { font-size: 18px; font-weight: 600; color: var(--t1); line-height: 1.45; margin-bottom: 20px; } .quiz-opt { display: flex; align-items: center; gap: 12px; padding: 14px; background: var(--card2); border-radius: 12px; margin-bottom: 10px; cursor: pointer; border: 1.5px solid transparent; transition: all .15s; } .quiz-opt:active { transform: scale(.98); } .quiz-opt .opt-letter { width: 28px; height: 28px; background: var(--line2); border-radius: 8px; display: flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 700; color: var(--t2); flex-shrink: 0; font-family: 'Rajdhani', sans-serif; } .quiz-opt .opt-text { font-size: 14px; color: var(--t1); flex:1; } .quiz-opt.correct { border-color:var(--green); background:rgba(29,185,84,.1); } .quiz-opt.wrong { border-color:var(--red); background:rgba(217,25,25,.1); } .quiz-opt.correct .opt-letter { background:var(--green); color:#fff; } .quiz-opt.wrong .opt-letter { background:var(--red); color:#fff; } /* ─── FLASHCARD ───────────────────────────────── */ .fc-wrap { padding: 16px; perspective: 800px; } .fc { width: 100%; height: 200px; position: relative; transform-style: preserve-3d; transition: transform .55s cubic-bezier(.4,0,.2,1); cursor: pointer; margin-bottom: 16px; } .fc.flip { transform: rotateY(180deg); } .fc-face { position: absolute; inset: 0; border-radius: 18px; backface-visibility: hidden; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 24px; text-align: center; } .fc-front { background:var(--card); border:1.5px solid var(--line2); } .fc-back { background:linear-gradient(145deg,rgba(217,25,25,.12),rgba(232,96,10,.06)); border:1.5px solid rgba(217,25,25,.25); transform:rotateY(180deg); } .fc-q { font-size:17px; font-weight:600; color:var(--t1); line-height:1.4; } .fc-a { font-size:14px; color:var(--t2); line-height:1.5; } .fc-hint { font-size:11px; color:var(--t3); margin-top:10px; } .fc-actions { display:flex; gap:10px; } .fc-btn { flex:1; padding:12px; border-radius:12px; font-size:13px; font-weight:700; cursor:pointer; border:none; text-align:center; font-family:'Barlow',sans-serif; transition:all .15s; } .fc-btn:active { transform:scale(.96); } .fc-again { background:rgba(217,25,25,.12); color:var(--red2); border:1.5px solid rgba(217,25,25,.2); } .fc-ok { background:rgba(255,255,255,.06); color:var(--t2); border:1.5px solid var(--line2); } .fc-good { background:rgba(29,185,84,.12); color:var(--green); border:1.5px solid rgba(29,185,84,.2); } /* ─── PAGER ───────────────────────────────────── */ .pager-body { padding: 16px; } .pager-device { background: linear-gradient(170deg,#2C2C2C,#1A1A1A); border: 2px solid #3A3A3A; border-radius: 20px; padding: 16px; margin-bottom: 16px; box-shadow: 0 12px 40px rgba(0,0,0,.6), inset 0 1px 0 rgba(255,255,255,.04); position: relative; } .pager-btns { display: flex; gap: 6px; margin-bottom: 10px; } .pager-btn { height: 10px; background: #3A3A3A; border-radius: 3px; flex: 1; box-shadow: inset 0 2px 3px rgba(0,0,0,.4); } .pager-btn:first-child { max-width: 22px; } .pager-screen { background: #1A2A1A; border: 2px solid #0D1A0D; border-radius: 10px; padding: 12px; min-height: 110px; font-family: 'Share Tech Mono', monospace; box-shadow: inset 0 3px 8px rgba(0,0,0,.5); position: relative; overflow: hidden; } .pager-screen.alarming { animation: screenFlash .4s infinite; } @keyframes screenFlash { 0%,100%{background:#1A2A1A} 50%{background:#251A1A} } .pager-dt { font-size:10px; color:#7AAA7A; display:flex; justify-content:space-between; margin-bottom:8px; } .pager-msg { font-size:15px; color:#AACCAA; line-height:1.5; letter-spacing:.5px; text-transform:uppercase; white-space:pre-line; } .pager-msg.fire-msg { color:#FFD700; text-shadow:0 0 12px rgba(255,215,0,.4); animation:msgGlow 1s infinite; } @keyframes msgGlow { 0%,100%{color:#FFD700;text-shadow:0 0 8px rgba(255,215,0,.4);} 50%{color:#FFF;text-shadow:0 0 20px rgba(255,255,255,.7);} } .pager-brand { font-size:9px; color:#444; text-align:center; margin-top:8px; letter-spacing:2px; } /* ─── ALARM PANEL ─────────────────────────────── */ .alarm-form { padding: 0 0 8px; } .alarm-title { display: flex; align-items: center; gap: 10px; padding: 16px 20px; font-family: 'Rajdhani', sans-serif; font-size: 18px; font-weight: 700; color: var(--red2); text-transform: uppercase; letter-spacing: 1px; border-bottom: 1px solid var(--line); } /* ─── LEXIKON ─────────────────────────────────── */ .alpha-scroll { display: flex; gap: 4px; padding: 10px 16px; overflow-x: auto; scrollbar-width: none; flex-shrink: 0; } .alpha-scroll::-webkit-scrollbar { display:none; } .alpha-chip { min-width: 28px; height: 28px; background: var(--card2); border: 1px solid var(--line2); border-radius: 8px; display: flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 700; cursor: pointer; color: var(--t2); font-family: 'Rajdhani', sans-serif; flex-shrink: 0; transition: all .15s; } .alpha-chip.active { background:var(--red); color:#fff; border-color:var(--red); } .lex-entry { padding: 14px 20px; border-bottom: 1px solid var(--line); } .lex-term { font-family:'Rajdhani',sans-serif; font-size:17px; font-weight:700; color:var(--t1); margin-bottom:3px; } .lex-def { font-size:13px; color:var(--t2); line-height:1.55; } /* ─── SUPPORT ─────────────────────────────────── */ .ticket-item { margin: 0 16px 10px; background: var(--card); border: 1px solid var(--line); border-radius: 14px; padding: 14px; cursor: pointer; transition: border-color .15s; } .ticket-item:active { border-color: var(--line2); } .ticket-item .t-top { display:flex; align-items:center; gap:8px; margin-bottom:6px; } .ticket-item .t-id { font-family:'Share Tech Mono',monospace; font-size:11px; color:var(--orange); } .ticket-item .t-title { font-size:14px; font-weight:600; color:var(--t1); flex:1; } .ticket-item .t-meta { font-size:11px; color:var(--t3); } /* ─── ADMIN ────────────────────────────────────── */ .admin-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 0 16px; margin-bottom: 16px; } .admin-tile { background: var(--card); border: 1px solid var(--line); border-radius: 14px; padding: 16px; cursor: pointer; transition: all .15s; text-align: center; } .admin-tile:active { background:var(--card2); transform:scale(.97); } .admin-tile .at-icon { font-size:28px; margin-bottom:8px; display:block; } .admin-tile .at-name { font-size:12px; font-weight:600; color:var(--t1); } .admin-tile .at-sub { font-size:10px; color:var(--t3); margin-top:2px; } /* ─── TOGGLE ──────────────────────────────────── */ .toggle-row { display: flex; align-items: center; justify-content: space-between; padding: 13px 0; border-bottom: 1px solid rgba(255,255,255,.04); } .toggle-row:last-child { border:none; } .toggle-info .tg-name { font-size:14px; font-weight:500; color:var(--t1); } .toggle-info .tg-sub { font-size:11px; color:var(--t3); margin-top:1px; } .tgl { position:relative; width:46px; height:26px; cursor:pointer; flex-shrink:0; } .tgl input { opacity:0; width:0; height:0; } .tgl-sl { position:absolute; inset:0; background:var(--line2); border-radius:13px; transition:.3s; border:1px solid var(--line); } .tgl-sl::before { content:''; position:absolute; width:20px; height:20px; left:2px; top:2px; background:var(--t3); border-radius:50%; transition:.3s; } .tgl input:checked + .tgl-sl { background:rgba(217,25,25,.3); border-color:var(--red); } .tgl input:checked + .tgl-sl::before { transform:translateX(20px); background:var(--red); } /* ─── USER ROW ────────────────────────────────── */ .user-row { display: flex; align-items: center; padding: 12px 20px; gap: 12px; border-bottom: 1px solid var(--line); cursor: pointer; } .user-row:active { background:rgba(255,255,255,.02); } .u-av { width:38px; height:38px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:14px; font-weight:700; color:#fff; flex-shrink:0; } .u-info .u-name { font-size:14px; font-weight:600; color:var(--t1); } .u-info .u-sub { font-size:11px; color:var(--t2); margin-top:1px; } .u-right { margin-left:auto; display:flex; align-items:center; gap:6px; } /* ─── LOG ─────────────────────────────────────── */ .log-row { display: flex; gap: 10px; padding: 10px 20px; border-bottom: 1px solid rgba(255,255,255,.03); } .log-t { font-size:10px; color:var(--t3); font-family:'Share Tech Mono',monospace; flex-shrink:0; width:42px; } .log-txt{ font-size:12px; color:var(--t2); line-height:1.5; } .log-txt strong { color:var(--orange); } /* ─── CALENDAR ────────────────────────────────── */ .cal-grid { display: grid; grid-template-columns: repeat(7,1fr); gap: 3px; padding: 0 16px 8px; } .cal-head { text-align:center; font-size:10px; color:var(--t3); padding:4px; font-weight:700; text-transform:uppercase; } .cal-day { background:var(--card2); border-radius:8px; padding:6px 2px; text-align:center; font-size:12px; color:var(--t2); cursor:pointer; min-height:44px; position:relative; transition:all .15s; display:flex; flex-direction:column; align-items:center; gap:2px; } .cal-day:active { background:var(--line2); } .cal-day.today { background:rgba(217,25,25,.15); color:var(--red2); font-weight:700; border:1px solid rgba(217,25,25,.25); } .cal-day.event::after { content:''; width:5px; height:5px; background:var(--orange); border-radius:50%; } .cal-day.empty { background:transparent; } /* ─── TOAST ───────────────────────────────────── */ .toast-wrap { position: absolute; top: 0; left: 0; right: 0; z-index: 999; pointer-events: none; padding: 10px 14px 0; display: flex; flex-direction: column; gap: 6px; } .toast { background: rgba(28,28,28,.96); backdrop-filter: blur(20px); border-radius: 14px; padding: 12px 14px; display: flex; align-items: flex-start; gap: 10px; border: 1px solid var(--line2); box-shadow: 0 8px 32px rgba(0,0,0,.5); animation: toastIn .3s cubic-bezier(.4,0,.2,1); pointer-events: all; } @keyframes toastIn { from{transform:translateY(-100%) scale(.9);opacity:0} to{transform:translateY(0) scale(1);opacity:1} } .toast.alarm { border-left:3px solid var(--red); } .toast.success{ border-left:3px solid var(--green); } .toast.info { border-left:3px solid var(--blue); } .t-ico { font-size:18px; margin-top:1px; flex-shrink:0; } .t-title { font-size:13px; font-weight:700; color:var(--t1); } .t-msg { font-size:12px; color:var(--t2); margin-top:1px; } /* ─── ACTIVITY DOT ────────────────────────────── */ .act-row { display:flex; align-items:flex-start; gap:10px; padding:10px 20px; border-bottom:1px solid rgba(255,255,255,.03); } .act-dot { width:7px; height:7px; border-radius:50%; margin-top:5px; flex-shrink:0; } .ad-r{background:var(--red)} .ad-g{background:var(--green)} .ad-o{background:var(--orange)} .ad-b{background:var(--blue)} .act-txt { flex:1; font-size:13px; color:var(--t2); line-height:1.5; } .act-txt strong { color:var(--t1); } .act-time{ font-size:10px; color:var(--t3); font-family:'Share Tech Mono',monospace; flex-shrink:0; margin-top:2px; } /* ─── DIENSTPLAN ──────────────────────────────── */ .dienst-item { display:flex; align-items:center; gap:12px; padding:14px 20px; border-bottom:1px solid var(--line); } .dienst-icon { font-size:22px; } .dienst-info .di-title { font-size:14px; font-weight:600; color:var(--t1); } .dienst-info .di-sub { font-size:11px; color:var(--t2); margin-top:1px; } /* ─── LOGIN ───────────────────────────────────── */ #sc-login { background: var(--bg); justify-content: flex-end; } .login-top { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 0 32px; gap: 6px; } .login-fire { font-size: 64px; margin-bottom: 8px; filter: drop-shadow(0 0 30px rgba(217,25,25,.5)); animation: fireFloat 3s ease-in-out infinite; } @keyframes fireFloat { 0%,100%{transform:translateY(0) scale(1)} 50%{transform:translateY(-8px) scale(1.03)} } .login-name { font-family: 'Rajdhani', sans-serif; font-size: 26px; font-weight: 700; color: var(--t1); text-align: center; line-height: 1.1; } .login-sub { font-size:12px; color:var(--t3); letter-spacing:1.5px; text-transform:uppercase; } .login-bottom { background: var(--bg2); border-radius: 28px 28px 0 0; padding: 24px 20px 32px; border-top: 1px solid var(--line); flex-shrink: 0; } .login-demo { margin: 12px 0 0; padding: 10px 14px; background: rgba(255,255,255,.04); border-radius: 10px; font-size: 11px; color: var(--t3); text-align: center; } .login-demo strong { color: var(--orange); } /* ─── REGISTER ────────────────────────────────── */ .reg-scroll { padding-bottom: 24px; } /* ─── ADMIN PERM PANEL ─────────────────────────── */ #permPanel { border-top: 1px solid var(--line); margin-top: 8px; } /* ─── DIVIDER ─────────────────────────────────── */ .divider { height: 1px; background: var(--line); margin: 4px 20px; } /* ─── PILL ────────────────────────────────────── */ .pill { display:inline-flex; align-items:center; padding:4px 10px; border-radius:20px; font-size:11px; font-weight:700; } .pill-green { background:rgba(29,185,84,.12); color:var(--green); } .pill-red { background:rgba(217,25,25,.12); color:var(--red2); } .pill-warn { background:rgba(245,166,35,.12); color:var(--yellow); } /* ─── MAINTENANCE BANNER ──────────────────────── */ .warn-banner { margin: 10px 16px; padding: 10px 14px; background: rgba(245,166,35,.08); border: 1px solid rgba(245,166,35,.2); border-radius: 12px; font-size: 12px; color: var(--yellow); display: flex; align-items: flex-start; gap: 8px; } /* ─── SCROLL AREA INSET ───────────────────────── */ .inset { padding: 0 20px; } /* ─── SMOOTH GLOW LINE ────────────────────────── */ .glow-line { height: 2px; background: var(--fire); margin: 0; box-shadow: 0 0 10px rgba(217,25,25,.5); } /* ─── RESPONSIVE (tablet preview) ─────────────── */ @media (max-width: 430px) { .phone-shell { width: 100%; height: 100dvh; border-radius: 0; border: none; box-shadow: none; } html, body { overflow: auto; align-items: flex-start; } }
Administrator · FF Musterstadt