
/* NM-AMELIA-SERVICE-CHOICE-V1
   Servicevalg med billeder inspireret af Amelia.
   NordicMix' officielle farvepalette.
*/

#nm-unified-services .nm-amelia-picker {
    display:block;
    width:100%;
    min-width:0;
    margin:10px 0 0;
    padding:0;
    background:transparent;
}

#nm-unified-services .nm-amelia-tools {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(180px,240px);
    gap:14px;
    margin-bottom:18px;
}

#nm-unified-services .nm-amelia-tools:has(> :only-child) {
    grid-template-columns:minmax(0,1fr);
}

#nm-unified-services .nm-amelia-tool-label {
    display:block;
    margin:0 0 8px;
    font-size:12px;
    font-weight:750;
    color:var(--nm-brand-deep,#14323D);
}

#nm-unified-services .nm-amelia-input-wrap {
    display:flex;
    align-items:center;
    gap:9px;
    width:100%;
    padding:0 13px;
    background:#fff;
    border:1px solid #C4D7E0;
    border-radius:12px;
}

#nm-unified-services .nm-amelia-input-wrap input,
#nm-unified-services .nm-amelia-category-wrap select {
    width:100%!important;
    height:52px!important;
    min-height:52px!important;
    padding:0 12px!important;
    background:#fff!important;
    color:var(--nm-brand-text,#2C3E43)!important;
    border:1px solid #C4D7E0!important;
    border-radius:12px!important;
    box-sizing:border-box!important;
    font-size:15px!important;
}

#nm-unified-services .nm-amelia-input-wrap input {
    min-width:0;
    border:0!important;
    box-shadow:none!important;
    outline:0;
}

#nm-unified-services .nm-amelia-input-wrap:focus-within,
#nm-unified-services .nm-amelia-category-wrap select:focus {
    outline:2px solid var(--nm-brand-deep,#14323D);
    outline-offset:2px;
}

#nm-unified-services .nm-amelia-resultline {
    display:flex;
    justify-content:space-between;
    gap:12px;
    flex-wrap:wrap;
    margin:10px 0 15px;
    color:var(--nm-brand-muted,#425961);
    font-size:13px;
}

#nm-unified-services .nm-amelia-resultline span:first-child {
    color:var(--nm-brand-deep,#14323D);
    font-weight:800;
}

#nm-unified-services .nm-amelia-service-grid {
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:11px!important;
    max-height:540px;
    overflow-y:auto;
    overscroll-behavior:contain;
    padding:3px 8px 8px 3px;
}

#nm-unified-services .nm-amelia-service-grid
.nm-amelia-service-card {
    display:block!important;
    width:100%!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    border:1px solid #D5E1E6!important;
    border-radius:15px!important;
    background:#FFFFFF!important;
    box-shadow:0 3px 9px rgba(20,50,61,.035)!important;
}

#nm-unified-services .nm-amelia-service-grid
.nm-amelia-service-card.selected {
    border:2px solid var(--nm-brand-deep,#14323D)!important;
    background:#F4F8F9!important;
    box-shadow:0 9px 22px rgba(20,50,61,.12)!important;
}

#nm-unified-services .nm-amelia-service-card[hidden],
#nm-unified-services .nm-amelia-empty[hidden] {
    display:none!important;
}

#nm-unified-services .nm-amelia-service-card
.nm-amelia-service-select {
    display:grid!important;
    grid-template-columns:76px minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:15px!important;
    width:100%!important;
    min-height:112px!important;
    margin:0!important;
    padding:16px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:var(--nm-brand-deep,#14323D)!important;
    box-shadow:none!important;
    text-align:left!important;
    cursor:pointer;
    filter:none!important;
}

#nm-unified-services .nm-amelia-service-card
.nm-amelia-service-select:hover {
    background:#F4F8FA!important;
    filter:none!important;
}

#nm-unified-services .nm-amelia-image {
    display:block;
    width:76px;
    height:76px;
    border-radius:50%;
    overflow:hidden;
    background:#C4D7E0;
}

#nm-unified-services .nm-amelia-image img {
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

#nm-unified-services .nm-amelia-image-placeholder {
    display:grid;
    place-items:center;
    height:100%;
    color:#14323D;
    font-size:32px;
}

#nm-unified-services .nm-amelia-service-info {
    display:flex;
    flex-direction:column;
    gap:9px;
    min-width:0;
}

#nm-unified-services .nm-amelia-service-info > strong {
    color:#14323D;
    font-size:17px;
    font-weight:750;
    line-height:1.3;
    overflow-wrap:anywhere;
}

#nm-unified-services .nm-amelia-service-meta {
    display:flex;
    flex-wrap:wrap;
    gap:7px 14px;
    color:#607580;
    font-size:13px;
}

#nm-unified-services .nm-amelia-service-price {
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:9px;
    white-space:nowrap;
}

#nm-unified-services .nm-amelia-service-price > strong {
    color:#14323D;
    font-size:16px;
}

#nm-unified-services .nm-amelia-selected-mark {
    display:grid;
    place-items:center;
    width:24px;
    height:24px;
    border-radius:50%;
    color:#fff;
    background:#2E7D32;
    opacity:0;
}

#nm-unified-services .selected .nm-amelia-selected-mark {
    opacity:1;
}

#nm-unified-services .nm-amelia-service-card
.nm-amelia-read {
    display:inline-block!important;
    width:auto!important;
    min-height:30px!important;
    margin:0 0 12px 107px!important;
    padding:4px 0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:var(--nm-brand-deep,#14323D)!important;
    font-size:12px!important;
    font-weight:700!important;
    text-decoration:underline;
    text-underline-offset:3px;
    text-align:left;
}

#nm-unified-services .nm-amelia-footer {
    position:sticky;
    bottom:0;
    z-index:3;
    display:flex;
    align-items:center;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:12px;
    margin-top:15px;
    padding:17px 0 6px;
    border-top:1px solid #D5E1E6;
    background:#fff;
}

#nm-unified-services .nm-amelia-footer > span {
    color:#425961;
    font-size:13px;
}

#nm-unified-services .nm-amelia-footer
.nm-amelia-continue {
    width:auto!important;
    min-height:50px!important;
    padding:12px 24px!important;
    border:0!important;
    border-radius:11px!important;
    background:var(--nm-brand-cta,#2E7D32)!important;
    color:#fff!important;
    font-size:14px!important;
    font-weight:750!important;
}

#nm-unified-services .nm-amelia-continue:disabled {
    opacity:.48!important;
    cursor:not-allowed;
}

#nm-unified-services .nm-amelia-empty {
    padding:22px;
    text-align:center;
    color:#425961;
}

@media(max-width:700px) {
    #nm-unified-services .nm-amelia-tools {
        grid-template-columns:minmax(0,1fr);
    }

    #nm-unified-services .nm-amelia-service-grid {
        max-height:none;
        overflow:visible;
        padding-right:3px;
    }

    #nm-unified-services .nm-amelia-service-card
    .nm-amelia-service-select {
        grid-template-columns:62px minmax(0,1fr)!important;
        gap:12px!important;
        padding:13px!important;
    }

    #nm-unified-services .nm-amelia-image {
        width:62px;
        height:62px;
    }

    #nm-unified-services .nm-amelia-service-price {
        grid-column:2;
        align-items:flex-start;
        flex-direction:row;
    }

    #nm-unified-services .nm-amelia-service-card
    .nm-amelia-read {
        margin-left:87px!important;
    }

    #nm-unified-services .nm-amelia-footer {
        align-items:stretch;
    }

    #nm-unified-services .nm-amelia-footer
    .nm-amelia-continue {
        width:100%!important;
    }
}


/* NM-AMELIA-ISOLATED-CARDS-V3
   Selvstaendige bookingkort uden legacy service-card.
   Inspireret af Amelia, med NordicMix-farver.
*/

#nm-unified-services
.step-pane[data-pane="1"]
.nm-amelia-picker
.nm-amelia-service-grid {
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:11px!important;
    visibility:visible!important;
    opacity:1!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:2px 5px 8px 2px!important;
}

/* Rene hvide behandlingskort */
#nm-unified-services
.step-pane[data-pane="1"]
.nm-amelia-picker
.nm-amelia-service-grid
> article.nm-amelia-service-card {
    display:block!important;
    position:relative!important;
    min-width:0!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    border:1px solid #D7E2E7!important;
    border-radius:13px!important;
    background:#FFFFFF!important;
    color:#14323D!important;
    box-shadow:0 3px 10px rgba(20,50,61,.04)!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
}

#nm-unified-services
.step-pane[data-pane="1"]
.nm-amelia-picker
.nm-amelia-service-grid
> article.nm-amelia-service-card[hidden] {
    display:none!important;
}

/* Marker den valgte behandling diskret */
#nm-unified-services
.step-pane[data-pane="1"]
.nm-amelia-picker
article.nm-amelia-service-card.selected {
    border:2px solid #14323D!important;
    background:#F5F9FA!important;
    box-shadow:0 8px 20px rgba(20,50,61,.12)!important;
}

/* Selve valget skal ikke arve bookingens knapdesign */
#nm-unified-services
.step-pane[data-pane="1"]
.nm-amelia-picker
article.nm-amelia-service-card
> button.nm-amelia-service-select {
    display:grid!important;
    grid-template-columns:72px minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:14px!important;
    width:100%!important;
    min-height:98px!important;
    height:auto!important;
    margin:0!important;
    padding:14px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:#14323D!important;
    box-shadow:none!important;
    text-align:left!important;
    line-height:1.4!important;
    filter:none!important;
    transform:none!important;
}

#nm-unified-services
.step-pane[data-pane="1"]
.nm-amelia-picker
article.nm-amelia-service-card
> button.nm-amelia-service-select:hover {
    background:#F1F6F8!important;
    box-shadow:none!important;
    filter:none!important;
}

/* Rundt behandlingsbillede */
#nm-unified-services .nm-amelia-image {
    display:block!important;
    width:72px!important;
    height:72px!important;
    min-width:72px!important;
    border-radius:50%!important;
    overflow:hidden!important;
    background:#C4D7E0!important;
}

#nm-unified-services .nm-amelia-image img {
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    border-radius:50%!important;
}

/* Behandlingsnavn og varighed */
#nm-unified-services .nm-amelia-service-info {
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:8px!important;
    min-width:0!important;
    color:#14323D!important;
}

#nm-unified-services .nm-amelia-service-info > strong {
    display:block!important;
    color:#14323D!important;
    font-size:16px!important;
    font-weight:750!important;
    line-height:1.4!important;
}

#nm-unified-services .nm-amelia-service-meta,
#nm-unified-services .nm-amelia-service-meta span {
    color:#617580!important;
    font-size:13px!important;
    font-weight:400!important;
}

/* Prisen i hoejre side */
#nm-unified-services .nm-amelia-service-price {
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-end!important;
    gap:9px!important;
    color:#14323D!important;
    white-space:nowrap;
}

#nm-unified-services .nm-amelia-service-price > strong {
    color:#14323D!important;
    font-size:15px!important;
    font-weight:700!important;
}

/* Laes mere skal vaere et diskret tekstlink */
#nm-unified-services
.step-pane[data-pane="1"]
.nm-amelia-picker
article.nm-amelia-service-card
> button.nm-amelia-read {
    display:block!important;
    width:calc(100% - 101px)!important;
    min-height:0!important;
    height:auto!important;
    margin:0 14px 14px 87px!important;
    padding:8px 0 0!important;
    border:0!important;
    border-top:1px solid #E2E8EB!important;
    border-radius:0!important;
    background:transparent!important;
    color:#425961!important;
    box-shadow:none!important;
    font-size:12px!important;
    font-weight:650!important;
    line-height:1.5!important;
    text-align:left!important;
    text-decoration:none!important;
    filter:none!important;
}

#nm-unified-services
.step-pane[data-pane="1"]
.nm-amelia-picker
article.nm-amelia-service-card
> button.nm-amelia-read:hover {
    color:#14323D!important;
    text-decoration:underline!important;
    background:transparent!important;
    box-shadow:none!important;
}

/* Gamle individuelle tidsbokse maa ikke fylde servicekortene */
#nm-unified-services .nm-amelia-service-card .nm-first-slot,
#nm-unified-services .nm-amelia-service-card .nm-next-available,
#nm-unified-services .nm-amelia-service-card .nm-first-available,
#nm-unified-services .nm-amelia-service-card .nm-availability-overview,
#nm-unified-services .nm-amelia-service-card .service-slots {
    display:none!important;
}

/* Nederste Fortsaet-knap beholdes */
#nm-unified-services
.step-pane[data-pane="1"]
.nm-amelia-picker
.nm-amelia-footer
> button.nm-amelia-continue {
    display:inline-flex!important;
    justify-content:center!important;
    align-items:center!important;
    width:auto!important;
    min-height:49px!important;
    padding:12px 23px!important;
    border:0!important;
    border-radius:10px!important;
    background:var(--nm-brand-cta,#2E7D32)!important;
    color:#FFFFFF!important;
    font-weight:750!important;
}

#nm-unified-services
.step-pane[data-pane="1"]
.nm-amelia-picker
.nm-amelia-footer
> button.nm-amelia-continue:disabled {
    opacity:.5!important;
    cursor:not-allowed!important;
}

/* Mobil */
@media(max-width:700px) {
    #nm-unified-services
    .step-pane[data-pane="1"]
    .nm-amelia-picker
    .nm-amelia-service-grid {
        max-height:none!important;
        overflow:visible!important;
    }

    #nm-unified-services
    .step-pane[data-pane="1"]
    .nm-amelia-picker
    article.nm-amelia-service-card
    > button.nm-amelia-service-select {
        grid-template-columns:60px minmax(0,1fr)!important;
        gap:12px!important;
        padding:12px!important;
    }

    #nm-unified-services .nm-amelia-image {
        width:60px!important;
        height:60px!important;
        min-width:60px!important;
    }

    #nm-unified-services .nm-amelia-service-price {
        grid-column:2;
        align-items:flex-start!important;
        flex-direction:row!important;
    }

    #nm-unified-services
    .step-pane[data-pane="1"]
    .nm-amelia-picker
    article.nm-amelia-service-card
    > button.nm-amelia-read {
        width:calc(100% - 84px)!important;
        margin-left:72px!important;
        margin-right:12px!important;
    }

    #nm-unified-services
    .step-pane[data-pane="1"]
    .nm-amelia-picker
    .nm-amelia-footer
    > button.nm-amelia-continue {
        width:100%!important;
    }
}
