diff --git a/primegrading-web/html/index.html b/primegrading-web/html/index.html index 9a3b172..ab6be76 100644 --- a/primegrading-web/html/index.html +++ b/primegrading-web/html/index.html @@ -4,7 +4,18 @@ PrimeGrading.dk — Kortgradering med kant - + + + + + + + + + + + + @@ -12,6 +23,21 @@ *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; } :root { + --bg: #f5f0e5; + --surface: #ece7db; + --border: #d8d2c4; + --gold: #c9a84c; + --gold-light:#e6c860; + --red: #cc2222; + --text: #2c2820; + --muted: #7a7262; + --text-light:#f0eef0; + --holo1: #3ab0a0; + --holo2: #8a4ec5; + --holo3: #d04e4e; + } + + .dark-mode { --bg: #0a0a0f; --surface: #111118; --border: #1e1e2e; @@ -20,6 +46,7 @@ --red: #cc2222; --text: #e8e6f0; --muted: #7a7890; + --text-light:#e8e6f0; --holo1: #5af0d8; --holo2: #b06ef5; --holo3: #f06e6e; @@ -34,6 +61,7 @@ font-weight: 400; line-height: 1.6; overflow-x: hidden; + transition: background 0.3s, color 0.3s; } /* ── NAV ── */ @@ -41,26 +69,48 @@ position: fixed; top: 0; left: 0; right: 0; z-index: 100; display: flex; align-items: center; justify-content: space-between; padding: 1rem 2.5rem; - background: rgba(10,10,15,0.85); + background: rgba(245,244,240,0.85); backdrop-filter: blur(12px); border-bottom: 1px solid var(--border); + transition: background 0.3s; + } + + .dark-mode nav { + background: rgba(10,10,15,0.85); } .logo { - font-family: 'Cinzel', serif; - font-weight: 900; - font-size: 1.3rem; - letter-spacing: 0.08em; - background: linear-gradient(135deg, var(--gold), var(--gold-light), var(--gold)); - -webkit-background-clip: text; - -webkit-text-fill-color: transparent; - background-clip: text; + display: flex; + align-items: center; text-decoration: none; + height: 48px; } - .logo span { - color: var(--red); - -webkit-text-fill-color: var(--red); + .logo img { + display: block; + height: 48px; + width: auto; + } + + @media (max-width: 600px) { + .logo { height: 38px; } + .logo img { height: 38px; } + } + + .nav-right { + display: flex; align-items: center; gap: 1rem; + } + + .theme-toggle { + background: none; border: 1px solid var(--border); + color: var(--muted); cursor: pointer; + font-size: 1rem; padding: 0.4rem 0.6rem; + border-radius: 4px; line-height: 1; + transition: border-color 0.2s, color 0.2s; + } + + .theme-toggle:hover { + border-color: var(--gold); color: var(--gold); } .hamburger { @@ -79,7 +129,7 @@ width: 24px; height: 2px; background: var(--text); - transition: transform 0.3s, opacity 0.3s; + transition: transform 0.3s, opacity 0.3s, background 0.3s; } .hamburger.active span:nth-child(1) { @@ -114,13 +164,14 @@ /* ── MOBILE NAV ── */ @media (max-width: 768px) { .hamburger { display: flex; } + nav { padding: 1rem 1.25rem; } nav ul { position: fixed; top: 0; right: -100%; width: 260px; height: 100vh; flex-direction: column; gap: 0; - background: rgba(10,10,15,0.97); + background: rgba(245,244,240,0.98); backdrop-filter: blur(16px); border-left: 1px solid var(--border); padding: 5rem 2rem 2rem; @@ -128,6 +179,10 @@ z-index: 100; } + .dark-mode nav ul { + background: rgba(10,10,15,0.98); + } + nav ul.open { right: 0; } nav ul a { @@ -153,6 +208,13 @@ .hero-glow { position: absolute; inset: 0; z-index: 0; + background: + radial-gradient(ellipse 60% 40% at 50% 30%, rgba(201,168,76,0.06) 0%, transparent 70%), + radial-gradient(ellipse 40% 30% at 20% 80%, rgba(58,176,160,0.03) 0%, transparent 60%), + radial-gradient(ellipse 40% 30% at 80% 70%, rgba(138,78,197,0.03) 0%, transparent 60%); + } + + .dark-mode .hero-glow { background: radial-gradient(ellipse 60% 40% at 50% 30%, rgba(201,168,76,0.08) 0%, transparent 70%), radial-gradient(ellipse 40% 30% at 20% 80%, rgba(90,240,216,0.04) 0%, transparent 60%), @@ -185,8 +247,7 @@ h1 .line1 { display: block; - background: linear-gradient(135deg, #fff 30%, var(--gold-light)); - -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; + color: var(--text); } h1 .line2 { @@ -250,23 +311,46 @@ border-radius: 6px; position: relative; overflow: hidden; - border: 1px solid rgba(255,255,255,0.08); + border: 1px solid rgba(0,0,0,0.08); cursor: pointer; transition: transform 0.3s, box-shadow 0.3s; } + .dark-mode .holo-card { border-color: rgba(255,255,255,0.08); } + .holo-card:hover { transform: translateY(-8px) rotate(-1deg); + box-shadow: 0 20px 40px rgba(0,0,0,0.15), 0 0 20px rgba(201,168,76,0.15); + } + + .dark-mode .holo-card:hover { box-shadow: 0 20px 40px rgba(0,0,0,0.5), 0 0 20px rgba(201,168,76,0.2); } .holo-card .card-bg { position: absolute; inset: 0; + background: linear-gradient(135deg, #e8e6f0, #dddae8, #ccc8e0); + } + + .dark-mode .holo-card .card-bg { background: linear-gradient(135deg, #1a1a2e, #16213e, #0f3460); } .holo-card .card-shine { position: absolute; inset: 0; + background: linear-gradient( + 115deg, + transparent 20%, + rgba(58,176,160,0.1) 35%, + rgba(138,78,197,0.1) 50%, + rgba(208,78,78,0.1) 65%, + transparent 80% + ); + opacity: 0; + transition: opacity 0.3s; + } + + .dark-mode .holo-card .card-shine { background: linear-gradient( 115deg, transparent 20%, @@ -275,8 +359,6 @@ rgba(240,110,110,0.15) 65%, transparent 80% ); - opacity: 0; - transition: opacity 0.3s; } .holo-card:hover .card-shine { opacity: 1; } @@ -287,10 +369,10 @@ color: #0a0a0f; font-family: 'Cinzel', serif; font-weight: 900; - font-size: 1.1rem; - width: 28px; height: 28px; - display: flex; align-items: center; justify-content: center; + font-size: 0.85rem; + padding: 3px 8px; border-radius: 2px; + letter-spacing: 0.04em; } .holo-card .card-label { @@ -299,9 +381,12 @@ font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; - color: rgba(255,255,255,0.6); + color: rgba(0,0,0,0.5); + text-shadow: 0 0 4px rgba(0,0,0,0.15), 0 0 8px rgba(0,0,0,0.1); } + .dark-mode .holo-card .card-label { color: rgba(255,255,255,0.85); font-size: 0.55rem; text-shadow: 0 0 6px rgba(0,0,0,0.5), 0 0 12px rgba(0,0,0,0.3); } + .holo-card .card-art { position: absolute; inset: 20px 8px 40px; display: flex; align-items: center; justify-content: center; @@ -390,7 +475,7 @@ .grade-chip.prime-grade { grid-column: 1 / -1; - background: linear-gradient(135deg, rgba(201,168,76,0.08), rgba(240,110,110,0.04), rgba(90,240,216,0.04)); + background: linear-gradient(135deg, rgba(201,168,76,0.08), rgba(208,78,78,0.04), rgba(58,176,160,0.04)); border-color: rgba(201,168,76,0.5); display: flex; align-items: center; gap: 1.5rem; padding: 1.25rem 1.5rem; @@ -399,6 +484,14 @@ .grade-chip.prime-grade:hover { border-color: var(--gold); + background: linear-gradient(135deg, rgba(201,168,76,0.12), rgba(208,78,78,0.06), rgba(58,176,160,0.06)); + } + + .dark-mode .grade-chip.prime-grade { + background: linear-gradient(135deg, rgba(201,168,76,0.08), rgba(240,110,110,0.04), rgba(90,240,216,0.04)); + } + + .dark-mode .grade-chip.prime-grade:hover { background: linear-gradient(135deg, rgba(201,168,76,0.12), rgba(240,110,110,0.06), rgba(90,240,216,0.06)); } @@ -530,11 +623,16 @@ .team-avatar { width: 72px; height: 72px; border-radius: 50%; - background: linear-gradient(135deg, var(--border), #2a2a3e); + background: linear-gradient(135deg, var(--border), #d0ced8); margin: 0 auto 1rem; display: flex; align-items: center; justify-content: center; font-size: 1.8rem; border: 2px solid var(--border); + transition: background 0.3s; + } + + .dark-mode .team-avatar { + background: linear-gradient(135deg, var(--border), #2a2a3e); } .team-name { @@ -566,22 +664,28 @@ .team-tag.pokemon { background: rgba(240,200,50,0.15); - color: #f0c832; + color: #b8941e; border: 1px solid rgba(240,200,50,0.25); } + .dark-mode .team-tag.pokemon { color: #f0c832; } + .team-tag.onepiece { background: rgba(80,180,240,0.15); - color: #50b4f0; + color: #2068a0; border: 1px solid rgba(80,180,240,0.25); } + .dark-mode .team-tag.onepiece { color: #50b4f0; } + .team-tag.ceo { background: rgba(201,168,76,0.2); - color: var(--gold-light); + color: #8a6e20; border: 1px solid rgba(201,168,76,0.4); } + .dark-mode .team-tag.ceo { color: var(--gold-light); } + .team-bio { font-size: 0.8rem; color: var(--muted); @@ -768,25 +872,57 @@ } #toast.show { opacity: 1; transform: translateY(0); } + + /* ── SCROLL TO TOP ── */ + #scroll-top { + position: fixed; bottom: 2rem; left: 2rem; z-index: 999; + width: 42px; height: 42px; + border: 1px solid var(--gold); + background: var(--surface); + color: var(--gold); + font-size: 1.2rem; + cursor: pointer; + border-radius: 4px; + display: flex; align-items: center; justify-content: center; + opacity: 0; + transform: translateY(12px); + pointer-events: none; + transition: opacity 0.3s, transform 0.3s, background 0.2s; + line-height: 1; + } + + #scroll-top.visible { + opacity: 1; + transform: translateY(0); + pointer-events: auto; + } + + #scroll-top:hover { + background: var(--gold); + color: #0a0a0f; + } @@ -808,36 +944,36 @@
Pokémon TCG
-
💔
-
K10
+
+
HVAD
-
+
One Piece TCG
-
☠️
-
K9
+
+
BØJ
-
+
Pokémon TCG
-
🔥
-
K8
-
-
-
-
-
One Piece TCG
-
+
💥
KNÆK
-
+
+
+
One Piece TCG
+
💧
+
VÅD
+
+
+
Pokémon TCG
-
💧
-
V10
+
⚰️
+
RIP
@@ -879,7 +1015,6 @@

Fra en let bøjning til total, uigenkaldelig destruktion — her er hvad du kan forvente.

-
💀
@@ -897,7 +1032,7 @@
V10Vandbad Premium
V7Vandbad Standard
R5Ridset m. Kærlighed
-
M1Mild Berøring
+
M1Mistet på lager
@@ -1131,6 +1266,7 @@ +
@@ -1156,13 +1292,41 @@
✓ Din forespørgsel er modtaget — vi knækker dem snart!
+ + \ No newline at end of file diff --git a/primegrading-web/html/index.html.old b/primegrading-web/html/index.html.old deleted file mode 100644 index 0f855ca..0000000 --- a/primegrading-web/html/index.html.old +++ /dev/null @@ -1,793 +0,0 @@ - - - - - - PrimeGrading.dk — Professionel Kortgradering - - - - - - - - - - -
-
-
Pokémon · One Piece · Kortgradering
-

- Dine kort. - Officielt bedømt. -

-

PrimeGrading.dk grader dine samlerkort professionelt — og beskytter dem i en forseglet slab, så de holder sin værdi.

- - -
-
-
-
-
Pokémon TCG
-
-
10
-
-
-
-
-
One Piece TCG
-
☠️
-
9
-
-
-
-
-
Pokémon TCG
-
🔥
-
8
-
-
-
-
-
One Piece TCG
-
-
9
-
-
-
-
-
Pokémon TCG
-
💧
-
10
-
-
-
- - -
-
-

Sådan virker det

-

Fire enkle trin fra din brevkasse til en certificeret slab.

-
-
-
01
-

Indsend dine kort

-

Udfyld formularen med kortoplysninger og send dem afsted i sikker emballage.

-
-
-
02
-

Professionel inspektion

-

Hvert kort inspiceres under lup for centering, hjørner, kanter og overflade.

-
-
-
03
-

Karakter tildeles

-

Kortet får en score fra 1–10 baseret på vores standardiserede graderingsskala.

-
-
-
04
-

Forseglet slab

-

Kortet forsegles i en UV-beskyttende slab med din score og en unik serienummer.

-
-
-
-
- - -
-
-

Vores karakterskala

-

Fra Poor til den ekslusive PRIME GRADE — vores højeste og mest prestigefyldte vurdering.

-
- - -
-
-
- PRIME GRADE — Ultra Premium - Fire perfekte 10'ere plus en ekstra visuel vurdering: eye appeal, printkvalitet og ingen fabriksfejl. Kun tildelt de absolut bedste kort med guld/grøn label. -
-
- -
10Gem Mint
-
9.5Mint+
-
9Mint
-
8.5Near Mint+
-
8Near Mint
-
7.5Excellent+
-
7Excellent
-
6Very Good
-
5Good
-
4Fair
-
3Poor
-
-
-
- - -
-
-

Special Labels

-

Udover standardskalaen tildeler vi særlige labels til kort, der fortjener ekstra anerkendelse.

- -
-
-
-
-

Prime Standard

-

Vores grundlæggende label for godkendte og vurderede kort.

-
-
-
-
-
-

Gold Label

-

Tildelt kort med særlig høj score og fremragende stand.

-
-
-
-
-
-

Founder Edition

-

Eksklusivt label til de første kort vurderet af PrimeGrading.

-
-
-
-
-
-

Black Label

-

Kræver perfekte 10'ere i alle subgrades — centering, hjørner, kanter og overflade.

-
-
-
-
-
-

⭐ PRIME GRADE

-

Det absolut højeste label. Kun til kort der er perfekte i alle subgrades og består den visuelle vurdering.

-
-
-
- -

Black Label vs PRIME GRADE

-
-
-

Black Label

-
    -
  • Fire 10'ere i alle subgrades
  • -
  • Sort label
  • -
-
-
-

PRIME GRADE

-
    -
  • Fire perfekte 10'ere i alle subgrades
  • -
  • Ekstra visuel vurdering: eye appeal, printkvalitet, ingen fabriksfejl
  • -
  • Guld/grøn label
  • -
  • Kun de absolut bedste kort opnår dette
  • -
-
-
-
-
- - -
-
-

Indsend dine kort

-

Udfyld formularen herunder, så vender vi tilbage med en fragtlabel og bekræftelse.

-
-
- - -
-
- - -
-
- - -
-
- - -
-
- - -
-
- -

* Dette er en demosformular — der sendes ikke rigtige data nogen steder.

-
-
-
-
- - - -
✓ Din forespørgsel er forsøgt sendt — vi vender ALDRIG tilbage!
- - - - diff --git a/primegrading-web/html/preview.png b/primegrading-web/html/preview.png new file mode 100644 index 0000000..e995231 Binary files /dev/null and b/primegrading-web/html/preview.png differ diff --git a/primegrading-web/html/primegrading-logo.svg b/primegrading-web/html/primegrading-logo.svg new file mode 100644 index 0000000..0eb732e --- /dev/null +++ b/primegrading-web/html/primegrading-logo.svg @@ -0,0 +1,70 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + PRIME + GRADING + + + + + VI DEGRADERE DINE KORT + + + + + + + +