/* --- Grunnleggende struktur --- */
body {
    transition: all 0.4s ease;
    min-height: 100vh;
    padding: 2rem;
    margin: 0;
}

.kategori-container {
    margin-bottom: 2rem;
}

.kategori-tittel {
    cursor: pointer;
    font-size: 1.5rem;
    font-weight: bold;
    display: flex;
    align-items: center;
    padding-bottom: 0.5rem;
    margin-bottom: 1rem;
    background: none;
    border: none;
    width: 100%;
    text-align: left;
}

.lenke-grid {
    display: grid;
    /* På mobil: 1 kolonne. På større skjermer: automatisk antall kolonner */
    grid-template-columns: 1fr; 
    gap: 1rem;
    padding-top: 0.5rem;
}

/* Når skjermen er bredere enn 600px (typisk nettbrett/desktop) */
@media (min-width: 600px) {
    .lenke-grid {
        grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    }
}

.lenke-kort {
    padding: 1rem;
    display: flex;
    align-items: center;
    text-decoration: none;
    transition: transform 0.2s, background 0.2s;
}

.lenke-kort:hover {
    transform: translateY(-2px);
}

/* --- Typografisk Header (Kubelert) --- */
.kubelert-boks {
    margin-bottom: 3rem;
    padding: 1rem 0;
    border-bottom: 1px solid rgba(128,128,128,0.2);
    display: flex;
    align-items: baseline;
    gap: 1rem;
}

.kubelert-tittel {
    font-size: 1.2rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin: 0;
}

.kubelert-definisjon {
    font-size: 0.9rem;
    opacity: 0.7;
    font-style: italic;
    margin: 0;
}

/* --- MALER --- */

/* 1. Brutalist */
body.theme-brutalist { background: #e0e0e0; color: #000; font-family: 'Courier New', monospace; }
body.theme-brutalist .lenke-kort { background: #fff; border: 4px solid #000; box-shadow: 6px 6px 0px #000; color: #000; }
body.theme-brutalist .kubelert-boks { border-bottom: 3px solid #000; }

/* 2. Kjempeorganisk */
body.theme-organisk { background: #f4eee0; color: #5f6f52; font-family: 'Georgia', serif; }
body.theme-organisk .lenke-kort { background: #b99470; border-radius: 50px 20px; color: #fff; }
body.theme-organisk .kubelert-boks { border-bottom: 1px dashed #5f6f52; }

/* 3. Pastell */
body.theme-pastell { background: #fdf2f8; color: #9d174d; font-family: 'Arial', sans-serif; }
body.theme-pastell .lenke-kort { background: #fbcfe8; border-radius: 15px; border: 1px solid #f9a8d4; color: #9d174d; }
body.theme-pastell .kubelert-boks { color: #db2777; }

/* --- Knapper for mal-velger --- */
nav { 
	margin-bottom: 2rem; 
	display: flex; 
	gap: 1rem;
	flex-wrap: wrap;
	gap: 0.5rem;
 }
nav button { 
    padding: 0.5rem 1rem; 
    cursor: pointer; 
    background: transparent; 
    border: 1px solid currentColor; 
    color: inherit; 
    font-family: inherit;
}
nav button:hover { background: rgba(128,128,128,0.1); }
