:root{
    --glr-bg:#101010;
    --glr-panel:#191919;
    --glr-panel-2:#222;
    --glr-text:#e8e8e8;
    --glr-muted:#b8b8b8;
    --glr-gold:#d7b35a;
    --glr-red:#7c1823;
    --glr-border:rgba(215,179,90,.35);
}
.glr-page{max-width:1180px;margin:0 auto;padding:28px 18px 56px;color:var(--glr-text)}
.glr-hero,.glr-panel{background:linear-gradient(135deg,rgba(28,28,28,.96),rgba(12,12,12,.96));border:1px solid var(--glr-border);border-radius:18px;padding:24px;margin:0 0 22px;box-shadow:0 10px 35px rgba(0,0,0,.3)}
.glr-hero h1,.glr-panel h1,.glr-panel h2{margin:.2rem 0 .7rem;color:#f3f3f3;letter-spacing:.02em}.glr-hero p,.glr-panel p{color:var(--glr-muted);line-height:1.55}.glr-kicker,.glr-season-tag{display:inline-block;background:#050505;border:1px solid var(--glr-border);color:var(--glr-gold);border-radius:999px;padding:5px 10px;font-size:.82rem;font-weight:700}.glr-muted{color:var(--glr-muted)}
.glr-search-form,.glr-memory-form{display:grid;gap:16px}.glr-search-form{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end}.glr-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.glr-search-form label,.glr-memory-form label{display:flex;flex-direction:column;gap:7px;font-weight:700;color:#eee}.glr-search-form input,.glr-search-form select,.glr-memory-form input,.glr-memory-form select,.glr-memory-form textarea,.glr-inline-form input{background:#0d0d0d;color:#e8e8e8;border:1px solid rgba(255,255,255,.16);border-radius:12px;padding:12px 13px;font:inherit;width:100%;box-sizing:border-box}.glr-memory-form textarea{resize:vertical;line-height:1.48}.glr-memory-form small{color:var(--glr-muted);font-weight:400}.glr-check{flex-direction:row!important;align-items:flex-start;font-weight:500!important}.glr-check input{width:auto!important;margin-top:3px}.glr-upload-box{border:1px dashed var(--glr-border);border-radius:14px;padding:16px;background:rgba(0,0,0,.18)}.glr-upload-box legend{color:var(--glr-gold);font-weight:800;padding:0 8px}.glr-form-actions,.glr-inline-form{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.glr-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 15px;border:1px solid var(--glr-border);border-radius:999px;background:#151515;color:#eee;text-decoration:none;font-weight:800;cursor:pointer}.glr-btn:hover{border-color:var(--glr-gold);color:#fff}.glr-btn-gold{background:linear-gradient(135deg,#b58b2e,#e0c372);color:#111;border-color:#e0c372}.glr-danger{background:#3b1015;border-color:#8c1f2d}.glr-info-box{border:1px solid rgba(215,179,90,.5);background:rgba(215,179,90,.12);color:#f1dfac;border-radius:14px;padding:13px 15px;margin:12px 0}.glr-error-box{border:1px solid #a72d39;background:#311014;color:#ffd5d8;border-radius:14px;padding:13px 15px;margin:12px 0}
.glr-game-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.glr-game-card{background:#111;border:1px solid rgba(255,255,255,.12);border-radius:15px;padding:16px}.glr-game-date{color:var(--glr-gold);font-weight:800}.glr-game-title{font-size:1.08rem;font-weight:900;margin:8px 0}.glr-game-meta{color:var(--glr-muted);font-size:.92rem;margin-bottom:12px}.glr-selected-game{text-align:center}.glr-score-line{display:flex;align-items:center;justify-content:center;gap:16px;font-size:1.3rem}.glr-score-line img{width:58px;height:58px;object-fit:contain;filter:drop-shadow(0 2px 6px rgba(0,0,0,.4))}.glr-latest-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.glr-latest-card{background:#111;border:1px solid rgba(255,255,255,.12);border-radius:15px;padding:16px}.glr-latest-card span{color:var(--glr-gold);font-weight:800}.glr-latest-card h3{margin:.4rem 0}.glr-latest-card p{font-size:.94rem}.glr-memory-preview{background:#111;border:1px solid var(--glr-border);border-radius:16px;padding:18px;overflow:hidden}.glr-memory-head h2{margin:.5rem 0}.glr-memory-text{line-height:1.62}.glr-memory-img{margin:10px 0 18px;max-width:420px}.glr-memory-img img{width:100%;height:auto;border-radius:12px;border:1px solid var(--glr-border);display:block}.glr-memory-img figcaption{font-size:.85rem;color:var(--glr-muted);margin-top:6px}.glr-pos-oben_rechts,.glr-pos-unten_rechts{float:right;margin-left:18px}.glr-pos-oben_links,.glr-pos-unten_links{float:left;margin-right:18px}.glr-pos-mitte,.glr-pos-unter_text_gross{max-width:760px;margin:18px auto;float:none}.glr-pos-unter_text_gross{max-width:100%}
.glr-admin-body{background:#0b0b0b;color:var(--glr-text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}.glr-admin-wrap{max-width:1280px;margin:0 auto;padding:24px 16px}.glr-admin-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.glr-admin-nav a,.glr-tabs a{color:#eee;text-decoration:none;border:1px solid var(--glr-border);padding:9px 12px;border-radius:999px;background:#151515}.glr-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 18px}.glr-tabs a.active{background:var(--glr-gold);color:#111}.glr-admin-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:16px 0}.glr-admin-card{display:block;background:#151515;border:1px solid var(--glr-border);border-radius:16px;padding:20px;text-decoration:none;color:#eee}.glr-admin-card strong{display:block;color:var(--glr-gold);font-size:2rem}.glr-admin-card span{color:var(--glr-muted)}.glr-admin-item{background:#151515;border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:16px;margin:14px 0}.glr-admin-text{max-height:360px;overflow:auto;background:#0e0e0e;padding:12px;border-radius:12px}.glr-admin-image-item{display:grid;grid-template-columns:180px 1fr;gap:16px}.glr-admin-image-item img{max-width:180px;border-radius:12px;border:1px solid var(--glr-border)}.glr-table-wrap{overflow:auto}.glr-admin-table{width:100%;border-collapse:collapse;background:#151515}.glr-admin-table th,.glr-admin-table td{padding:10px;border-bottom:1px solid rgba(255,255,255,.12);text-align:left}.glr-admin-table th{color:var(--glr-gold);background:#111}
@media (max-width:800px){.glr-page{padding:16px 10px 40px}.glr-hero,.glr-panel{border-radius:14px;padding:16px}.glr-search-form,.glr-form-grid,.glr-game-list,.glr-latest-grid,.glr-admin-grid,.glr-admin-image-item{grid-template-columns:1fr}.glr-score-line{font-size:1rem;gap:8px}.glr-score-line img{width:44px;height:44px}.glr-form-actions,.glr-inline-form{align-items:stretch}.glr-btn{width:100%;box-sizing:border-box}.glr-pos-oben_rechts,.glr-pos-unten_rechts,.glr-pos-oben_links,.glr-pos-unten_links{float:none;margin:14px auto;max-width:100%}.glr-admin-nav{position:sticky;top:0;background:#0b0b0b;padding:8px 0;z-index:10}.glr-admin-nav a{flex:1 1 45%;text-align:center}.glr-admin-image-item img{max-width:100%;width:100%}}

/* Vereinssuche / Autocomplete */
.glr-autocomplete-wrap{position:relative;display:block;width:100%}
.glr-autocomplete-box{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:9999;background:#0b0b0b;border:1px solid var(--glr-border);border-radius:12px;box-shadow:0 14px 34px rgba(0,0,0,.55);overflow:hidden;max-height:280px;overflow-y:auto}
.glr-autocomplete-item{display:block;width:100%;text-align:left;background:#0d0d0d;color:#e8e8e8;border:0;border-bottom:1px solid rgba(255,255,255,.09);padding:10px 12px;font:inherit;cursor:pointer}
.glr-autocomplete-item:hover,.glr-autocomplete-item.is-active{background:#241a09;color:#fff}
.glr-search-help{margin-top:12px;font-size:.92rem;color:var(--glr-muted)}
.glr-search-help a{color:var(--glr-gold)}

/* Vereinslogos in Spielsuche und Schreibansicht */
.glr-game-match,
.glr-score-line{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
    align-items:center;
    gap:12px;
    margin:10px 0 12px;
}
.glr-team{
    display:flex;
    align-items:center;
    gap:8px;
    min-width:0;
}
.glr-team-home{
    justify-content:flex-end;
    text-align:right;
}
.glr-team-away{
    justify-content:flex-start;
    text-align:left;
}
.glr-team-name{
    min-width:0;
    overflow-wrap:anywhere;
    font-weight:900;
    color:#f2f2f2;
}
.glr-team-logo{
    width:38px;
    height:38px;
    flex:0 0 38px;
    object-fit:contain;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:rgba(255,255,255,.04);
    border:1px solid rgba(215,179,90,.24);
    filter:drop-shadow(0 2px 6px rgba(0,0,0,.45));
}
.glr-team-logo-placeholder{
    color:var(--glr-gold);
    font-weight:900;
    font-size:.95rem;
}
.glr-game-result{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:62px;
    padding:6px 10px;
    border:1px solid rgba(215,179,90,.55);
    border-radius:999px;
    background:rgba(215,179,90,.08);
    color:var(--glr-gold);
    font-weight:900;
    font-variant-numeric:tabular-nums;
    white-space:nowrap;
}
.glr-selected-game .glr-team-logo{
    width:58px;
    height:58px;
    flex-basis:58px;
}
.glr-selected-game .glr-game-result{
    font-size:1.2rem;
    min-width:74px;
}

/* Vereinssuche mit Logo */
.glr-autocomplete-item{
    display:flex;
    align-items:center;
    gap:9px;
}
.glr-autocomplete-logo{
    width:28px;
    height:28px;
    flex:0 0 28px;
    object-fit:contain;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    border:1px solid rgba(215,179,90,.26);
    background:rgba(255,255,255,.04);
    color:var(--glr-gold);
    font-size:.82rem;
    font-weight:900;
}
.glr-autocomplete-label{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

@media (max-width:800px){
    .glr-game-card .glr-team-name,
    .glr-selected-game .glr-team-name{
        display:none;
    }
    .glr-game-match,
    .glr-score-line{
        grid-template-columns:1fr auto 1fr;
        gap:10px;
        justify-items:center;
    }
    .glr-team,
    .glr-team-home,
    .glr-team-away{
        justify-content:center;
        text-align:center;
        width:100%;
    }
    .glr-game-card .glr-team-logo{
        width:46px;
        height:46px;
        flex-basis:46px;
    }
    .glr-selected-game .glr-team-logo{
        width:58px;
        height:58px;
        flex-basis:58px;
    }
    .glr-game-result{
        min-width:58px;
        padding:6px 9px;
        font-size:1rem;
    }
    .glr-game-card .glr-game-meta{
        text-align:center;
    }
}


/* Letzte Erinnerungen als aufklappbare Karten */
.glr-section-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}
.glr-section-row h2{margin-top:0}.glr-section-row p{margin:.2rem 0 0}
.glr-latest-accordion{display:grid;gap:12px}
.glr-latest-memory{border:1px solid rgba(215,179,90,.28);border-radius:16px;background:rgba(12,12,14,.94);overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.22)}
.glr-latest-memory[open]{border-color:rgba(215,179,90,.55);background:linear-gradient(135deg,rgba(15,15,17,.98),rgba(30,22,12,.88))}
.glr-latest-summary{display:grid;grid-template-columns:72px minmax(0,1fr)86px;gap:12px;align-items:center;min-height:86px;padding:10px 12px;cursor:pointer;list-style:none;color:#eee}
.glr-latest-summary::-webkit-details-marker{display:none}.glr-latest-summary::after{content:'▾';position:absolute;right:10px;top:10px;width:24px;height:24px;display:grid;place-items:center;border-radius:999px;border:1px solid rgba(215,179,90,.34);color:var(--glr-gold);background:rgba(0,0,0,.28);transition:transform .15s ease}.glr-latest-memory[open]>.glr-latest-summary::after{transform:rotate(180deg)}
.glr-latest-summary{position:relative}.glr-latest-logo{width:66px;height:66px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(215,179,90,.32);background:rgba(255,255,255,.055);overflow:hidden}.glr-latest-logo img{max-width:54px;max-height:54px;object-fit:contain}.glr-latest-logo span{color:var(--glr-gold);font-size:28px;font-weight:900}
.glr-latest-summary-main{min-width:0;padding-right:24px}.glr-latest-summary-main strong{display:block;color:#fff;font-size:clamp(16px,2vw,22px);line-height:1.12;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.glr-latest-summary-main em{display:block;margin-top:6px;color:rgba(215,179,90,.95);font-size:12px;font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.glr-latest-thumb{width:78px;height:58px;border-radius:11px;border:1px solid rgba(255,255,255,.14);background:#050505;display:grid;place-items:center;overflow:hidden}.glr-latest-thumb img{width:100%;height:100%;object-fit:cover;display:block}.glr-latest-thumb-empty{color:rgba(215,179,90,.82);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.glr-latest-body{border-top:1px solid rgba(215,179,90,.20);padding:12px 14px 14px 96px}.glr-latest-body p{margin:0 0 12px;color:rgba(238,238,238,.86);line-height:1.5}.glr-latest-actions{display:flex;flex-wrap:wrap;gap:8px}.glr-latest-actions .glr-btn{padding:8px 12px;font-size:12px}
@media(max-width:800px){.glr-section-row{display:grid}.glr-latest-summary{grid-template-columns:56px minmax(0,1fr)64px;gap:8px;min-height:72px;padding:8px}.glr-latest-logo{width:52px;height:52px}.glr-latest-logo img{max-width:43px;max-height:43px}.glr-latest-logo span{font-size:22px}.glr-latest-thumb{width:60px;height:48px;border-radius:9px}.glr-latest-summary-main strong{font-size:15px}.glr-latest-summary-main em{font-size:11px}.glr-latest-body{padding:10px 10px 12px}.glr-latest-body p{font-size:13px}.glr-latest-actions .glr-btn{width:auto;min-width:0;flex:1 1 46%;font-size:11px;padding:7px 8px}.glr-latest-summary::after{right:6px;top:6px;width:20px;height:20px;font-size:12px}}

/* Schreibseite: große Vereinslogo-Auswahl statt Dropdown */
.glr-team-choice-fieldset{
    border:1px solid rgba(215,179,90,.35);
    border-radius:18px;
    padding:16px;
    background:linear-gradient(135deg,rgba(12,12,14,.94),rgba(28,20,10,.62));
    margin:4px 0 10px;
}
.glr-team-choice-fieldset legend{
    padding:0 10px;
    color:var(--glr-gold);
    font-weight:1000;
    letter-spacing:.02em;
}
.glr-team-choice-fieldset p{
    margin:0 0 14px;
    color:var(--glr-muted);
    font-size:.94rem;
}
.glr-team-choice-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}
.glr-team-choice-card{
    position:relative;
    display:block!important;
    cursor:pointer;
    min-width:0;
}
.glr-team-choice-card input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}
.glr-team-choice-inner{
    display:grid;
    justify-items:center;
    align-content:start;
    gap:8px;
    min-height:210px;
    padding:16px 12px 14px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:18px;
    background:rgba(255,255,255,.035);
    color:#eee;
    text-align:center;
    transition:border-color .16s ease, background .16s ease, transform .16s ease, box-shadow .16s ease;
}
.glr-team-choice-card:hover .glr-team-choice-inner,
.glr-team-choice-card:focus-within .glr-team-choice-inner{
    border-color:rgba(215,179,90,.65);
    background:rgba(215,179,90,.10);
    transform:translateY(-1px);
    box-shadow:0 10px 28px rgba(0,0,0,.28);
}
.glr-team-choice-card input:checked + .glr-team-choice-inner{
    border-color:#e0c372;
    background:linear-gradient(135deg,rgba(215,179,90,.20),rgba(124,24,35,.18));
    box-shadow:0 0 0 2px rgba(224,195,114,.20),0 12px 32px rgba(0,0,0,.34);
}
.glr-team-choice-side{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:24px;
    padding:4px 9px;
    border:1px solid rgba(215,179,90,.35);
    border-radius:999px;
    color:var(--glr-gold);
    background:rgba(0,0,0,.22);
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.06em;
}
.glr-team-choice-logo{
    width:112px;
    height:112px;
    display:grid;
    place-items:center;
    border-radius:50%;
    border:1px solid rgba(215,179,90,.34);
    background:rgba(255,255,255,.055);
    box-shadow:inset 0 0 18px rgba(255,255,255,.035),0 8px 18px rgba(0,0,0,.28);
    overflow:hidden;
}
.glr-team-choice-logo img{
    width:92px;
    height:92px;
    object-fit:contain;
    display:block;
    filter:drop-shadow(0 2px 6px rgba(0,0,0,.45));
}
.glr-team-choice-placeholder{
    color:var(--glr-gold);
    font-size:44px;
    font-weight:1000;
}
.glr-team-choice-inner strong{
    display:block;
    max-width:100%;
    color:#fff;
    font-size:clamp(17px,2vw,23px);
    line-height:1.08;
    overflow-wrap:anywhere;
}
.glr-team-choice-inner em{
    color:rgba(238,238,238,.72);
    font-size:12px;
    font-style:normal;
}
.glr-team-choice-card input:checked + .glr-team-choice-inner em::before{
    content:'✓ ';
    color:#e0c372;
    font-weight:1000;
}

/* Schreibseite: ausgewähltes Spiel mit sichtbaren Logos stärker darstellen */
.glr-selected-game .glr-score-line{
    gap:22px;
}
.glr-selected-game .glr-team-logo{
    width:76px;
    height:76px;
    flex-basis:76px;
}
.glr-selected-game .glr-team-logo img,
.glr-selected-game img.glr-team-logo{
    max-width:76px;
    max-height:76px;
}

@media(max-width:800px){
    .glr-team-choice-grid{
        grid-template-columns:1fr 1fr;
        gap:10px;
    }
    .glr-team-choice-fieldset{
        padding:13px 10px;
    }
    .glr-team-choice-inner{
        min-height:172px;
        padding:12px 7px;
    }
    .glr-team-choice-logo{
        width:86px;
        height:86px;
    }
    .glr-team-choice-logo img{
        width:72px;
        height:72px;
    }
    .glr-team-choice-inner strong{
        font-size:13px;
        line-height:1.12;
    }
    .glr-team-choice-inner em{
        font-size:10px;
    }
    .glr-selected-game .glr-team-logo{
        width:64px;
        height:64px;
        flex-basis:64px;
    }
}
