diff --git a/prototyp-app.html b/prototyp-app.html index 51ee0c1..c4b2cea 100644 --- a/prototyp-app.html +++ b/prototyp-app.html @@ -197,6 +197,129 @@ .asset svg{width:16px; height:16px; color:var(--mut); flex-shrink:0;} .asset .score{margin-left:auto;} + /* ---- 3D-Ordner (Profil) ---- */ + .folders{display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:4px;} + .fold{position:relative; background:var(--card); border:1px solid rgba(255,255,255,.07); border-radius:18px; + padding:6px 10px 22px; cursor:pointer; + transition:transform .7s cubic-bezier(.16,1,.3,1), border-color .4s, box-shadow .4s;} + .fold:hover{border-color:var(--border-strong);} + .fold.open{border-color:var(--border-strong); box-shadow:0 16px 36px rgba(0,0,0,.45); transform:scale(1.03) rotate(-1deg);} + .fold .glow{position:absolute; inset:0; border-radius:18px; opacity:0; transition:opacity .6s; pointer-events:none;} + .fold.open .glow{opacity:.16;} + .f-stage{position:relative; height:112px; perspective:900px;} + .f-piece{position:absolute; left:50%; transition:transform .7s cubic-bezier(.16,1,.3,1);} + .f-back{width:92px; height:66px; margin-left:-46px; top:calc(50% - 33px); border-radius:9px; + border:1px solid rgba(255,255,255,.1); filter:brightness(.82); transform-origin:bottom center; z-index:10;} + .fold.open .f-back{transform:rotateX(-20deg) scaleY(1.05);} + .f-tab{width:32px; height:11px; margin-left:-34px; top:calc(50% - 42px); border-radius:5px 5px 0 0; + border:1px solid rgba(255,255,255,.1); border-bottom:none; filter:brightness(.7); transform-origin:bottom center; z-index:10;} + .fold.open .f-tab{transform:rotateX(-30deg) translateY(-3px);} + .f-front{width:92px; height:66px; margin-left:-46px; top:calc(50% - 30px); border-radius:9px; + border:1px solid rgba(255,255,255,.18); transform-origin:bottom center; z-index:30; + box-shadow:0 10px 20px rgba(0,0,0,.45);} + .f-front::after{content:''; position:absolute; inset:0; border-radius:9px; + background:linear-gradient(135deg,rgba(255,255,255,.32),transparent 62%);} + .fold.open .f-front{transform:rotateX(35deg) translateY(11px);} + .f-stack{position:absolute; left:50%; top:50%; z-index:20;} + .f-card{position:absolute; width:50px; height:66px; left:-25px; top:-33px; border-radius:8px; overflow:hidden; + background:#1c1c1c; border:1px solid rgba(255,255,255,.08); opacity:0; cursor:pointer; + box-shadow:0 8px 18px rgba(0,0,0,.5); transform:translate(0,0) rotate(0deg) scale(.4); + transition:transform .7s cubic-bezier(.16,1,.3,1), opacity .45s ease, box-shadow .4s; + transition-delay:calc(var(--i) * 45ms);} + .fold.open .f-card{opacity:1; transform:translate(var(--tx), calc(-46px + var(--ty))) rotate(var(--rot)) scale(1);} + .fold.open .f-card:active{transform:translate(var(--tx), calc(-58px + var(--ty))) rotate(var(--rot)) scale(1.16); + box-shadow:0 16px 28px rgba(0,0,0,.6);} + .f-card img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover;} + .f-card .shade{position:absolute; inset:0; background:linear-gradient(to top,rgba(0,0,0,.92),rgba(0,0,0,.12) 58%,transparent);} + .f-card b{position:absolute; left:4px; right:4px; bottom:3px; font-size:8px; line-height:1.15; font-weight:800; + letter-spacing:-.01em; text-transform:uppercase; color:#fff; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;} + .f-meta{text-align:center; margin-top:2px; position:relative; z-index:2;} + .f-meta h4{font-size:13px; font-weight:700; letter-spacing:-.01em;} + .f-meta p{font-size:11.5px; color:var(--faint); margin-top:1px;} + .f-hint{position:absolute; left:0; right:0; bottom:7px; text-align:center; font-size:9px; font-weight:700; + letter-spacing:.14em; text-transform:uppercase; color:rgba(255,255,255,.26); transition:opacity .4s;} + .fold.open .f-hint{opacity:0;} + + .f-tile{position:relative; height:168px; border-radius:18px; overflow:hidden; cursor:pointer; + background:#1a1a1a; border:1px solid rgba(255,255,255,.08); transition:transform .12s, border-color .3s;} + .f-tile:hover{border-color:var(--border-strong);} + .f-tile:active{transform:scale(.97);} + .f-tile img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover;} + .f-tile .shade{position:absolute; inset:0; background:linear-gradient(to top,rgba(0,0,0,.88),rgba(0,0,0,.1) 62%,transparent);} + .f-tile .cap{position:absolute; left:11px; right:11px; bottom:9px;} + .f-tile .cap h4{font-size:12.5px; font-weight:800; letter-spacing:-.01em;} + .f-tile .cap p{font-size:10.5px; color:rgba(255,255,255,.6); margin-top:1px; line-height:1.35;} + .f-sub{position:absolute; top:9px; left:9px; font-size:9px; font-weight:800; letter-spacing:.1em; + text-transform:uppercase; color:rgba(255,255,255,.55);} + + /* ---- Ordner: Ghost, Menü, Dialog ---- */ + .fold.ghost{border-style:dashed; border-color:rgba(255,255,255,.16); background:rgba(255,255,255,.02);} + .fold.ghost .f-piece{background:rgba(255,255,255,.05) !important; border:1px dashed rgba(255,255,255,.2); filter:none !important; box-shadow:none;} + .fold.ghost .f-front::after{display:none;} + .fold.ghost .f-plus{position:absolute; left:50%; top:calc(50% - 4px); transform:translate(-50%,-50%); z-index:40; + color:rgba(255,255,255,.5); transition:color .3s, transform .5s cubic-bezier(.16,1,.3,1);} + .fold.ghost.open .f-plus{color:#fff; transform:translate(-50%,-50%) scale(1.12);} + .fold.ghost .f-meta h4{color:rgba(255,255,255,.66);} + .f-menu{position:absolute; top:7px; right:7px; z-index:45; width:26px; height:26px; border-radius:100px; + display:grid; place-items:center; color:rgba(255,255,255,.55); opacity:0; cursor:pointer; + transition:opacity .25s, background .2s, color .2s;} + .f-menu:hover{background:rgba(255,255,255,.12); color:#fff;} + .fold:hover .f-menu, .fold.open .f-menu, .f-menu.on{opacity:1;} + @media (hover:none){.f-menu{opacity:.85;}} + + .fmenu{position:fixed; z-index:70; width:208px; padding:7px; border-radius:19px; display:none; flex-direction:column; gap:1px; + background:rgba(255,255,255,.12); -webkit-backdrop-filter:blur(3px) saturate(1.15); backdrop-filter:blur(3px) saturate(1.15); + box-shadow:inset 2px 2px 1px 0 rgba(255,255,255,.4), inset -1px -1px 1px 1px rgba(255,255,255,.3), 0 16px 40px rgba(0,0,0,.5);} + .fmenu.open{display:flex;} + .fmenu .mi{display:flex; align-items:center; gap:11px; padding:10px 12px; border-radius:14px; + font-size:13.5px; font-weight:600; color:#fff; cursor:pointer; transition:background .15s;} + .fmenu .mi:hover{background:rgba(255,255,255,.16);} + .fmenu .mi svg{width:16px; height:16px;} + .fmenu .mi.del{color:#ff8b74;} + .fmenu .hd{font-size:9.5px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; + color:rgba(255,255,255,.55); padding:9px 12px 3px;} + .fmenu .sw{display:flex; gap:7px; padding:2px 12px 9px;} + .fmenu .sw i{width:23px; height:23px; border-radius:8px; cursor:pointer; border:1px solid rgba(255,255,255,.28); + transition:transform .15s;} + .fmenu .sw i:hover{transform:scale(1.12);} + .fmenu .sw i.on{box-shadow:0 0 0 2px rgba(255,255,255,.85);} + + .fdlg{position:fixed; inset:0; z-index:75; display:none; align-items:center; justify-content:center; padding:20px;} + .fdlg.open{display:flex;} + .fdlg .bd{position:absolute; inset:0; background:rgba(10,10,10,.72); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px);} + .fdlg .pane2{position:relative; width:100%; max-width:326px; border-radius:22px; padding:16px 16px 14px; + background:rgba(255,255,255,.12); -webkit-backdrop-filter:blur(3px) saturate(1.15); backdrop-filter:blur(3px) saturate(1.15); + box-shadow:inset 2px 2px 1px 0 rgba(255,255,255,.4), inset -1px -1px 1px 1px rgba(255,255,255,.3), 0 20px 46px rgba(0,0,0,.55);} + .fdlg h4{font-size:15px; font-weight:800; letter-spacing:-.01em; margin-bottom:10px;} + .fdlg input[type=text]{margin:0 0 10px; background:rgba(0,0,0,.35); border-color:rgba(255,255,255,.16);} + + /* ---- Ordner-Lightbox ---- */ + .fbox{position:fixed; inset:0; z-index:60; display:none; align-items:center; justify-content:center; padding:16px;} + .fbox.open{display:flex;} + .fbox .bd{position:absolute; inset:0; background:rgba(10,10,10,.92); -webkit-backdrop-filter:blur(18px); backdrop-filter:blur(18px);} + .fbox .pane{position:relative; width:100%; max-width:394px; border-radius:24px; overflow:hidden; + background:var(--card); border:1px solid rgba(255,255,255,.1); box-shadow:0 35px 60px -15px rgba(0,0,0,.65); + animation:fpop .5s cubic-bezier(.16,1,.3,1);} + @keyframes fpop{from{opacity:0; transform:scale(.88) translateY(16px);} to{opacity:1; transform:none;}} + .fbox .shot{position:relative; width:100%; height:min(52dvh,420px); background:#111;} + .fbox .shot img{width:100%; height:100%; object-fit:cover; display:block;} + .fbox .shot .veil{position:absolute; inset:0; background:linear-gradient(to bottom,rgba(0,0,0,.2),transparent 40%,rgba(0,0,0,.45));} + .fbox .info{padding:15px 17px 17px; border-top:1px solid rgba(255,255,255,.06);} + .fbox .info h4{font-size:17px; font-weight:800; letter-spacing:-.015em;} + .fbox .dots{display:flex; align-items:center; gap:7px; margin-top:11px;} + .fbox .dots i{width:6px; height:6px; border-radius:100px; background:rgba(255,255,255,.25); cursor:pointer; transition:transform .3s, background .3s;} + .fbox .dots i.on{background:#fff; transform:scale(1.4);} + .fbox .count{margin-left:auto; font-size:10.5px; font-weight:700; letter-spacing:.1em; color:var(--faint);} + .fbox .navb{position:absolute; top:calc(min(52dvh,420px) / 2 - 20px); width:40px; height:40px; border-radius:100px; display:grid; place-items:center; + background:rgba(18,18,18,.66); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); + border:1px solid rgba(255,255,255,.14); color:#fff; cursor:pointer; z-index:3; transition:opacity .25s, transform .12s;} + .fbox .navb:active{transform:scale(.9);} + .fbox .navb.off{opacity:0; pointer-events:none;} + .fbox .navb.prev{left:10px;} .fbox .navb.next{right:10px;} + .fbox .xb{position:absolute; top:10px; right:10px; z-index:3; width:36px; height:36px; border-radius:100px; display:grid; place-items:center; + background:rgba(18,18,18,.66); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); + border:1px solid rgba(255,255,255,.14); color:#fff; cursor:pointer;} + /* ---- Log & Code ---- */ .log{font-size:12.5px; color:var(--mut); border-left:2px solid var(--border-strong); padding:5px 0 5px 12px; margin:8px 0; line-height:1.5;} .code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:11px; line-height:1.7; color:var(--mut); @@ -548,20 +671,9 @@

Follower

+218

-
-
-
-

Asset verbessern

Gesicht, Produkt oder Szene weiterentwickeln – jederzeit.

- -
-
-
-
-
-

Zuletzt: „Roter Lippenstift – Close-up"

3 Videos generiert · Vote offen

- -
-
+

Ordner

+
+

Tippen öffnet den Ordner, tippen auf eine Karte zeigt sie groß.

Knowledge Base · Feste Regeln (kein Score, gelten immer)

@@ -570,26 +682,7 @@

Logo nie verzerren

-

Assets (freigegebene Versionen)

-
-
Mara v46120
-
Rouge No. 5 v26480
-
-

Attribute (Elo 0–10.000)

-
-
-
-

Location: Kaiserslautern 5240 ▲

12 Videos · 8 Siege · Unter-Attribut: Stadion 5560

- -
-
-
-
-
-

Location: Köln 4980 ▼ ARCHIVIERT

Historie bleibt erhalten – ein schlechter Score ist auch Wissen.

-
-
Licht: warmes Abendlicht6350 ▲
Voice: warm-weiblich5890
@@ -602,6 +695,17 @@
17.07. · LLM-Vergleich K'lautern vs. Köln: „Stadion war der Unterschied" → neues Unter-Attribut Stadion (Start: Ø 5480)
+ +
+
+ +

Ordner

+
+

+
+ +
+

Kaiserslautern

@@ -988,6 +1092,37 @@ TEXT-OVERLAY: keins (Brand-Stil: clean)
Klickpfad zum Präsentieren:
Feed (swipen) → ↺ Detail → Nachmachen → Editor → Profil (Knowledge) → Verbessern → Dev-Modus

+ +
+
+
+
+

Neuer Ordner

+ +
+
Speichern
+
Abbrechen
+
+
+
+ + +
+
+
+ + +
+
+
+

+

+
+ +
+
+
+