/* ==========================================================
   LinkIt Profile v4
   Modern Linktree Style
========================================================== */

:root{
    --primary:#FED254;

    --profile-accent:var(--primary-color,#8852C9);
    --profile-bg:color-mix(in srgb,var(--profile-accent) 4%,#e6ecf6);
    --profile-card:#edf2fb;
    --profile-text:var(--linkit-text-primary, #111827);
    --profile-muted:var(--linkit-text-muted, #6b7280);
    --profile-disabled:var(--linkit-text-disabled, #94a3b8);
    --profile-border:#e5e7eb;
    --profile-link-border:color-mix(in srgb,var(--profile-accent) 12%,var(--profile-border));
    --profile-link-glow:color-mix(in srgb,var(--profile-accent) 72%,#ffffff);

    --bg:var(--profile-bg);
    --card:var(--profile-card);
    --text:var(--profile-text);
    --text-muted:var(--profile-muted);
    --border:var(--profile-border);

    --radius:24px;

    --shadow:
        0 15px 40px rgba(0,0,0,.08);
}



/* ==========================================================
   Reset
========================================================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    background:var(--profile-bg);
    color:var(--profile-text);
    overflow-x:clip;
}

/* ==========================================================
   Page
========================================================== */

.profile-page{
    min-height:100vh;
    padding:0;
    background:var(--profile-bg);
    color:var(--profile-text);
}

.profile-back-to-top.gl-btn{position:fixed;right:max(24px,calc((100vw - 640px)/2 + 24px));bottom:24px;z-index:1000;width:44px;height:44px;min-height:44px;padding:0;border-radius:50%;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .2s ease,visibility .2s ease}
.profile-back-to-top.gl-btn-primary{--button-primary-bg:var(--profile-accent)}
.profile-back-to-top.is-visible{visibility:visible;opacity:1;pointer-events:auto}

.profile-dashboard-mobile-nav{display:none}
@media(max-width:991.98px){
    .profile-dashboard-mobile-nav{position:fixed;inset-inline:0;bottom:0;z-index:1100;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:center;height:calc(62px + env(safe-area-inset-bottom));padding:4px 8px env(safe-area-inset-bottom);box-sizing:border-box;background:var(--gl-surface-bg);border-top:1px solid var(--gl-border,rgba(23,32,51,.12));box-shadow:0 -8px 24px rgba(15,23,42,.1)}
    .profile-dashboard-mobile-nav a{display:grid;place-items:center;min-width:0;min-height:46px;border-radius:14px;color:var(--gl-text-secondary,var(--gl-text-primary));font-size:1.35rem;text-decoration:none;transition:background-color .2s,color .2s}
    .profile-dashboard-mobile-nav a.active{color:var(--primary-color,#8e4ccf);background:color-mix(in srgb,var(--primary-color,#8e4ccf) 12%,transparent)}
    .profile-dashboard-mobile-nav a:focus-visible{outline:2px solid var(--primary-color,#8e4ccf);outline-offset:2px}
    .profile-page{padding-bottom:calc(62px + env(safe-area-inset-bottom))}
}

.profile-container{
    width:100%;
    max-width:640px;
    margin:0 auto;
    border-radius:var(--radius);
    background:var(--profile-bg);
    box-shadow:var(--shadow);
}

/* ==========================================================
   Cover
========================================================== */

.profile-cover,
.cover-wrapper-unified{
    height:auto;
    aspect-ratio:433 / 198;
    overflow:hidden;
    position:relative;
    width:100%;
    border-radius:var(--radius) var(--radius) 0 0;
    background:#f1f1f1;
}

.profile-add-contact{margin-top:1rem}
.is-showcase-program-detail .profile-add-contact,
.is-showcase-program-detail .profile-links{display:none !important}

.profile-cover-image,
.cover-image-unified{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    display:block;
}

/* ==========================================================
   Actions
========================================================== */

.profile-actions{
    position:absolute;
    top:20px;
    right:20px;

    display:flex;
    flex-direction:column;
    align-items:flex-end;

    gap:10px;

    z-index:20;
}

.action-btn{
    width:48px;
    height:48px;

    border:1px solid var(--profile-link-border);
    border-radius:16px;

    background:var(--gl-surface-bg);
    color:var(--profile-text);

    cursor:pointer;

    box-shadow:var(--gl-surface-shadow-sm);

    transition:.25s;
}

.action-btn:hover{
    transform:translateY(-2px);
    box-shadow:var(--gl-surface-shadow);
}

.profile-ai-action{position:relative;display:block;flex:0 0 48px;width:48px;height:48px;min-width:48px}
.gl-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.profile-ai-label{position:absolute;top:50%;right:56px;width:max-content;max-width:150px;padding:7px 10px;transform:translateY(-50%);border:1px solid var(--profile-link-border);border-radius:12px;background:var(--gl-surface-bg);box-shadow:var(--gl-surface-shadow-sm);color:var(--profile-text);font-size:.78rem;font-weight:700;line-height:1.2;text-align:start}
body.ai-assistant-open{overflow:hidden}
.ai-assistant-modal{box-sizing:border-box;overflow:hidden;padding:16px}
.qr-modal-content.ai-assistant-panel{
    box-sizing:border-box;
    width:min(400px,calc(100vw - 32px));
    height:min(680px,calc(100dvh - 32px));
    min-width:0;
    max-width:none;
    max-height:calc(100dvh - 32px);
    overflow:hidden;
    padding:0;
    align-items:stretch;
    justify-content:flex-start;
    gap:0;
    border-radius:22px;
    text-align:start;
}
.ai-assistant-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    flex:0 0 auto;
    gap:14px;
    min-width:0;
    padding:16px 18px;
    border-bottom:1px solid var(--profile-link-border);
    background:var(--gl-surface-bg);
}
.ai-assistant-heading{display:flex;align-items:center;gap:11px;min-width:0}
.ai-assistant-heading-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:12px;background:color-mix(in srgb,var(--profile-accent) 13%,var(--gl-surface-bg));color:var(--profile-accent);font-size:1.05rem}
.ai-assistant-heading>div{min-width:0}
.ai-assistant-header h2{margin:0;color:var(--profile-text);font-size:1.05rem;line-height:1.25}
.ai-assistant-header p{margin:3px 0 0;color:var(--profile-muted);font-size:.78rem;line-height:1.35;overflow-wrap:anywhere}
.ai-assistant-close.qr-close{
    position:static;
    display:grid;
    place-items:center;
    flex:0 0 40px;
    width:40px;
    height:40px;
    padding:0;
    transform:none;
    border:1px solid transparent;
    border-radius:12px;
    color:var(--profile-muted);
    font-size:1.65rem;
    line-height:1;
}
.ai-assistant-close.qr-close:hover{transform:none;border-color:var(--profile-link-border);background:var(--profile-card);color:var(--profile-text)}
.ai-assistant-close.qr-close:focus-visible{outline:2px solid var(--profile-accent);outline-offset:2px}
.ai-assistant-messages{
    direction:ltr;
    display:flex;
    flex:1 1 auto;
    flex-direction:column;
    gap:10px;
    min-width:0;
    min-height:0;
    overflow-x:hidden;
    overflow-y:auto;
    overscroll-behavior:contain;
    padding:16px;
    background:color-mix(in srgb,var(--profile-card) 60%,var(--gl-surface-bg));
    scrollbar-width:thin;
    scrollbar-color:color-mix(in srgb,var(--profile-accent) 24%,transparent) transparent;
}
.ai-assistant-message{
    box-sizing:border-box;
    width:fit-content;
    min-width:0;
    max-width:86%;
    margin:0;
    padding:10px 13px;
    border-radius:16px;
    font-size:.9rem;
    line-height:1.55;
    text-align:start;
    white-space:pre-wrap;
    overflow-wrap:anywhere;
    word-break:break-word;
}
.ai-assistant-message--assistant{align-self:flex-start;border:1px solid var(--profile-link-border);border-bottom-left-radius:5px;background:var(--gl-surface-bg);color:var(--profile-text);box-shadow:0 3px 10px rgba(15,23,42,.04)}
.ai-assistant-message--user{align-self:flex-end;max-width:80%;border-bottom-right-radius:5px;background:var(--profile-accent);color:var(--profile-button-text,var(--linkit-text-inverse,#fff))}
.ai-assistant-message a{color:var(--profile-accent);font-weight:700;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;overflow-wrap:anywhere;word-break:break-all}
.ai-assistant-message a:focus-visible{outline:2px solid var(--profile-accent);outline-offset:2px;border-radius:3px}
.ai-assistant-status{color:var(--profile-muted);font-size:.85rem}
.ai-assistant-status[hidden]{display:none}
.ai-assistant-status:not(.is-typing) .ai-assistant-typing{display:none}
.ai-assistant-status.is-typing .ai-assistant-status-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ai-assistant-typing{display:flex;align-items:center;gap:4px;min-height:14px;padding:1px 0}
.ai-assistant-typing span{width:6px;height:6px;border-radius:50%;background:var(--profile-muted);animation:ai-assistant-dot 1.1s infinite ease-in-out}
.ai-assistant-typing span:nth-child(2){animation-delay:.14s}
.ai-assistant-typing span:nth-child(3){animation-delay:.28s}
@keyframes ai-assistant-dot{0%,60%,100%{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}
.ai-assistant-form{
    display:flex;
    align-items:center;
    flex:0 0 auto;
    gap:8px;
    min-width:0;
    padding:12px;
    border-top:1px solid var(--profile-link-border);
    background:var(--gl-surface-bg);
}
.ai-assistant-form input{box-sizing:border-box;min-width:0;height:46px;flex:1;border:1px solid var(--profile-link-border);border-radius:15px;background:var(--profile-card);color:var(--profile-text);padding:10px 14px;font:inherit}
.ai-assistant-form input:focus{outline:2px solid var(--profile-accent);outline-offset:1px;border-color:transparent}
.ai-assistant-form input:disabled{opacity:.7;cursor:wait}
.ai-assistant-form .gl-btn{flex:0 0 auto;min-width:72px;min-height:44px;border-radius:14px;--button-primary-bg:var(--profile-accent)}
.ai-assistant-form .gl-btn:disabled{opacity:.6;cursor:wait}
@media(max-width:480px){
    .ai-assistant-modal{padding:12px}
    .qr-modal-content.ai-assistant-panel{width:calc(100vw - 24px);height:min(720px,calc(100dvh - 24px));max-height:calc(100dvh - 24px);border-radius:20px}
    .ai-assistant-header{padding:14px}
    .ai-assistant-messages{padding:14px 12px}
    .ai-assistant-message{max-width:88%;font-size:.88rem}
    .ai-assistant-message--user{max-width:82%}
    .ai-assistant-form{padding:10px max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))}
    .ai-assistant-form .gl-btn{min-width:68px;padding-inline:13px}
}
@media(prefers-reduced-motion:reduce){.ai-assistant-typing span{animation:none;opacity:.7}}

/* ==========================================================
   Avatar
========================================================== */

.profile-avatar{
    display:flex;
    justify-content:center;

    margin-top:-82px;

    position:relative;
    z-index:10;
}

.profile-avatar-image{
    width:166px;
    height:166px;

    border-radius:50%;
    object-fit:cover;

    border:3px solid #fff;

    box-shadow:0 15px 35px rgba(0,0,0,.15);
}

/* ==========================================================
   Header
========================================================== */

.profile-header{
    text-align:center;
    padding:20px 25px;
}

.profile-name-row{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
}

.profile-name{
    font-size:32px;
    font-weight:700;
}

.verified-badge{
width: 27px;
    height: 27px;

    border-radius:50%;

    background:#4f8be7;
    color:var(--linkit-text-inverse, #fff);

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:14px;
    font-weight:700;
}

.profile-bio{
    margin-top:12px;

    color:var(--text-muted);

    font-size:15px;
    line-height:1.7;

    max-width:500px;
    margin-left:auto;
    margin-right:auto;
}

/* ==========================================================
   Links
========================================================== */

.grid-icons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:20px;justify-items:stretch}.grid-icons>a{min-width:0}
@media(max-width:420px){.grid-icons{grid-template-columns:1fr}}

.profile-links{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));

    gap:16px;

    padding:25px 20px;
}

.profile-link-button{
    position:relative;
    isolation:isolate;
    display:flex;
    align-items:center;
    justify-content:space-between;

    min-height:72px;

    padding:0 22px;

    border-radius:22px;

    background:var(--gl-surface-bg);

    border:1px solid var(--profile-link-border);

    text-decoration:none;

    color:var(--profile-text);

    box-shadow:var(--gl-surface-shadow-sm);

    transition:.25s;
}

.profile-showcase{
    display:grid;
    gap:28px;
    min-width:0;
    padding:16px 20px 28px;
}
.showcase-section{min-width:0;color:var(--profile-text)}
.showcase-section-header{margin-bottom:13px}
.showcase-section-header h2{display:inline-flex;align-items:center;margin:0;padding:7px 16px;border:1px solid color-mix(in srgb,var(--profile-accent) 22%,transparent);border-radius:12px;background:var(--gl-surface-bg);color:var(--profile-text);font-size:1.18rem;line-height:1.35;box-shadow:0 4px 12px color-mix(in srgb,var(--profile-accent) 12%,transparent)}
.showcase-section-header p{margin:5px 0 0;color:var(--profile-muted);font-size:.9rem;line-height:3.55}
.showcase-program-breadcrumb-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px;direction:rtl}
.showcase-program-breadcrumbs{min-width:0;color:var(--profile-muted);font-size:.82rem;line-height:1.5}
.showcase-program-breadcrumbs ol{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:0;padding:0;list-style:none;direction:ltr}
.showcase-program-breadcrumbs a{color:var(--profile-accent);text-decoration:none}
.showcase-program-breadcrumbs a:hover{text-decoration:underline}
.showcase-program-breadcrumb-separator{color:var(--profile-muted);font-size:1rem}
.showcase-program-back{flex:0 0 auto;font-size:.8rem}
.showcase-program-carousel{position:relative;max-width:230px;margin:0 auto;padding:0}
.showcase-program-card{position:relative;display:block;overflow:hidden;border:1px solid var(--profile-link-border);border-radius:22px;background:var(--gl-surface-bg);box-shadow:var(--gl-surface-shadow-sm);color:var(--profile-text);text-decoration:none;transition:.25s}
.showcase-program-card:hover{transform:translateY(-2px);box-shadow:var(--gl-surface-shadow)}
.showcase-program-card[hidden]{display:none}
.showcase-program-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.showcase-program-card-body{padding:15px 22px 17px;text-align:right}
.showcase-program-card-label{display:block;margin-bottom:5px;color:var(--profile-muted);font-size:.72rem;font-weight:800}
.showcase-program-card-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.showcase-program-card h3{margin:0;color:var(--profile-text);font-size:1.15rem;line-height:1.4}
.showcase-program-card-view{display:inline-flex;align-items:center;gap:5px;flex:0 0 auto;padding:6px 10px;border-radius:999px;background:var(--profile-accent);color:var(--profile-button-text,#fff);font-size:.7rem;font-weight:800;line-height:1}
.showcase-program-card p{display:flex;align-items:center;gap:5px;margin:4px 0 0;color:var(--profile-muted);font-size:.82rem}
.showcase-program-card-meta{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:7px;direction:ltr}
.showcase-program-card-meta p{margin:0;direction:rtl}
.showcase-program-card-starting-price{display:grid;justify-items:center;gap:2px;min-width:90px;margin:0;color:var(--profile-muted);line-height:1.2;text-align:center;direction:rtl}
.showcase-program-card-starting-price span{font-size:.72rem}
.showcase-program-card-starting-price strong{color:#506bd7;font-size:2.9rem;font-weight:800}
.showcase-program-card-starting-price small{font-size:.72rem;font-weight:700}
.showcase-program-carousel-arrow{position:absolute;top:38%;z-index:2;display:grid;place-items:center;width:45px;height:45px;padding:0;border:3px solid color-mix(in srgb,var(--profile-accent) 25%,#fff);border-radius:50%;background:var(--profile-accent);color:var(--profile-button-text,#fff);font-size:1rem;font-weight:800;line-height:1;transform:translateY(-50%);cursor:pointer;touch-action:manipulation;user-select:none;-webkit-user-select:none;box-shadow:0 6px 14px rgba(15,23,42,.2);transition:transform .2s ease,filter .2s ease,box-shadow .2s ease}
.showcase-program-carousel-arrow--prev{inset-inline-end:-34px}
.showcase-program-carousel-arrow--next{inset-inline-start:-34px}
.showcase-program-carousel-arrow:hover{filter:brightness(.95);transform:translateY(-50%) scale(1.08);box-shadow:0 8px 16px rgba(15,23,42,.24)}
.showcase-section--programs{position:relative;overflow:visible;border:1px solid color-mix(in srgb,var(--profile-accent) 12%,var(--profile-border));border-radius:26px;background:var(--profile-card);box-shadow:var(--gl-surface-shadow-sm)}
.showcase-section--programs .showcase-program-group-header{position:relative;z-index:1;display:flex;align-items:center;gap:14px;min-height:140px;margin:0 0 -34px;padding:22px 24px 58px;background:linear-gradient(110deg,color-mix(in srgb,var(--profile-accent) 72%,#172033),color-mix(in srgb,var(--profile-accent) 24%,#172033));background-position:center;background-size:cover;color:#fff;isolation:isolate}
.showcase-section--programs .showcase-program-group-header::before{content:"";position:absolute;z-index:-2;inset:0 0 -88px;background-image:linear-gradient(110deg,rgba(20,16,53,.82),rgba(77,37,126,.34)),var(--showcase-group-image);background-position:center;background-size:cover;pointer-events:none}
.showcase-section--programs .showcase-program-group-header::after{content:"";position:absolute;z-index:-1;inset:0 0 -88px;background:linear-gradient(180deg,rgba(20,16,53,.08) 22%,color-mix(in srgb,var(--profile-card) 8%,transparent) 48%,var(--profile-card) 100%);pointer-events:none}
.showcase-section--programs .showcase-program-group-header>*{position:relative;z-index:2}
.showcase-section--programs .showcase-program-group-icon{display:grid;place-items:center;flex:0 0 58px;width:58px;height:58px;border-radius:18px;background:rgba(255,255,255,.2);box-shadow:inset 1px 1px 2px rgba(255,255,255,.3);font-size:1.7rem}
.showcase-section--programs .showcase-program-group-header h2{margin:0;color:#fff;font-size:1.35rem;line-height:1.3}
.showcase-section--programs .showcase-program-group-header p{margin:6px 0 0;color:rgba(255,255,255,.82);font-size:.88rem}
.showcase-section--programs .showcase-program-carousel{position:relative;z-index:3;max-width:min(620px,calc(100% - 38px));margin:0 auto 24px}
.showcase-section--programs .showcase-program-card{border-radius:24px}
.showcase-section--programs .showcase-program-card img{aspect-ratio:16/8;max-height:300px}
.showcase-section--programs .showcase-program-card-body{padding:17px 24px 20px}
.showcase-section--programs .showcase-program-card h3{font-size:1.2rem}
.showcase-section--programs .showcase-program-card-view{font-size:.68rem}
.showcase-section--programs .showcase-program-card p{margin-top:7px;font-size:.9rem}
.showcase-section--programs .showcase-program-carousel-arrow--prev{inset-inline-end:-18px}
.showcase-section--programs .showcase-program-carousel-arrow--next{inset-inline-start:-18px}
@media(max-width:560px){.showcase-section--programs .showcase-program-group-header{min-height:116px;margin-bottom:-28px;padding:18px 18px 48px}.showcase-section--programs .showcase-program-group-icon{flex-basis:48px;width:48px;height:48px;font-size:1.4rem}.showcase-section--programs .showcase-program-carousel{max-width:calc(100% - 24px);margin-bottom:18px}.showcase-section--programs .showcase-program-card-body{padding:14px 18px 17px}}
.showcase-section-price{display:block;margin-top:8px;color:var(--profile-text);font-size:.92rem}
.showcase-track{
    display:flex;
    gap:14px;
    max-width:100%;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    padding:2px 2px 12px;
    scroll-padding-inline:2px;
    scroll-snap-type:x mandatory;
    scrollbar-width:thin;
    scrollbar-color:var(--profile-border) transparent;
    -webkit-overflow-scrolling:touch;
}
[dir="rtl"] .showcase-track{direction:ltr}
[dir="rtl"] .showcase-item{direction:rtl;text-align:right}
.showcase-track:focus-visible{outline:3px solid var(--profile-accent);outline-offset:3px}
.showcase-item{
    flex:0 0 clamp(220px,36vw,280px);
    min-width:0;
    overflow:hidden;
    scroll-snap-align:start;
    border:1px solid var(--profile-border);
    border-radius:18px;
    background:var(--profile-card);
    color:var(--profile-text);
    box-shadow:0 10px 24px rgba(15,23,42,.08);
}
.showcase-item img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.showcase-card-content,.showcase-itinerary-item{padding:16px}
.showcase-itinerary-item>img{width:calc(100% + 32px);max-width:none;margin:-16px -16px 15px}
.showcase-item h3{margin:0 0 7px;color:var(--profile-text);font-size:1rem;line-height:1.4}
.showcase-item p{margin:0;color:var(--profile-muted);font-size:.86rem;line-height:1.6}
.showcase-item-price{display:block;margin-top:10px;color:var(--profile-text)}
.showcase-cta{display:inline-flex;margin-top:12px;color:var(--profile-accent);font-size:.9rem;font-weight:700;text-decoration:none}
.showcase-cta:hover{text-decoration:underline}
.showcase-gallery-item{flex-basis:clamp(230px,48vw,330px)}
.showcase-gallery-item img{aspect-ratio:auto;max-height:430px;object-fit:contain;background:color-mix(in srgb,var(--profile-card) 88%,var(--profile-bg))}
.showcase-gallery-item figcaption{padding:11px 14px;color:var(--profile-muted);font-size:.86rem;line-height:1.5}
.showcase-price-table-wrap{max-width:100%;overflow-x:auto;border:1px solid var(--profile-link-border);border-radius:22px;background:var(--gl-surface-bg);box-shadow:var(--gl-surface-shadow-sm);scrollbar-width:thin;scrollbar-color:var(--profile-border) transparent}
.showcase-price-table-wrap:focus-visible{outline:3px solid var(--profile-accent);outline-offset:3px}
.showcase-price-table{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse;color:var(--profile-text);font-size:.76rem}
.showcase-price-table th,.showcase-price-table td{padding:9px 7px;border-inline-end:1px solid var(--profile-border);border-bottom:1px solid var(--profile-border);text-align:start;vertical-align:middle;overflow-wrap:anywhere}
.showcase-price-table th:nth-child(1),.showcase-price-table td:nth-child(1){width:28%}
.showcase-price-table th:nth-child(2),.showcase-price-table td:nth-child(2){width:13%}
.showcase-price-table th:nth-child(3),.showcase-price-table td:nth-child(3){width:15%}
.showcase-price-table th:nth-child(n+4),.showcase-price-table td:nth-child(n+4){width:14.66%;text-align:center}
.showcase-price-table th:last-child,.showcase-price-table td:last-child{border-inline-end:0}
.showcase-price-table tbody tr:last-child td{border-bottom:0}
.showcase-price-table tfoot td{padding:8px 10px;border-top:1px solid var(--profile-border);border-inline-end:0;border-bottom:0;background:color-mix(in srgb,var(--profile-accent) 6%,var(--gl-surface-bg));color:var(--profile-muted);font-size:.76rem;text-align:center}
.showcase-price-table th{background:color-mix(in srgb,var(--profile-accent) 16%,var(--profile-card));font-weight:800;white-space:nowrap}
.showcase-price-table tbody tr:nth-child(even){background:color-mix(in srgb,var(--profile-card) 92%,var(--profile-accent))}
.showcase-table-currency{margin:9px 3px 0;color:var(--profile-muted);font-size:.78rem}
.showcase-table-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.showcase-table-details section{padding:15px;border-radius:22px;background:var(--gl-surface-bg);box-shadow:var(--gl-surface-shadow-sm)}
.showcase-table-details h3{margin:0 0 9px;color:var(--profile-text);font-size:.82rem}
.showcase-table-details ul{display:grid;gap:6px;margin:0;padding-inline-start:20px;color:var(--profile-muted);font-size:.7rem;line-height:1.5}
.showcase-table-note{display:flex;align-items:flex-start;gap:8px;margin:12px 0 0;padding:15px 22px;border-radius:22px;background:var(--gl-surface-bg);box-shadow:var(--gl-surface-shadow-sm);color:var(--profile-text);font-size:.6rem;line-height:1.5}
.showcase-table-note i{flex:0 0 auto;color:var(--profile-accent)}
.showcase-program-days{margin-block:14px}
.showcase-program-day{width:auto;overflow:hidden;padding:18px 22px;border-radius:22px;background:var(--gl-surface-bg);box-shadow:var(--gl-surface-shadow-sm)}
.showcase-program-day-header{display:flex;align-items:stretch;justify-content:flex-start;margin-bottom:18px}
.showcase-program-day-header .showcase-day{display:grid;place-items:center;margin:0;padding:10px 15px;border-radius:0 12px 12px 0;background:color-mix(in srgb,var(--profile-accent) 22%,var(--profile-card));color:var(--profile-text)}
.showcase-program-day-header h3{display:flex;align-items:center;min-width:min(330px,70%);margin:0;padding:10px 18px;border-radius:12px 0 0 12px;background:var(--profile-accent);color:var(--profile-button-text,#fff);font-size:.85rem}
.showcase-program-day-heading{min-width:min(330px,70%)}
.showcase-program-day-heading h3{min-width:0;width:100%;border-radius:12px 0 0 12px}
.showcase-program-day-breadcrumbs{display:flex;align-items:center;gap:6px;margin-top:6px;padding-inline:18px;color:var(--profile-muted);font-size:.72rem;line-height:1.4}
.showcase-public-activities{display:grid;gap:18px;margin:0;padding:0;list-style:none}
.showcase-public-activities li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;padding-inline-start:12px;border-inline-start:2px solid var(--profile-accent)}
.showcase-public-activities li>span{color:var(--profile-accent);font-size:1rem;font-weight:900}
.showcase-public-activities h4{margin:0;color:var(--profile-accent);font-size:.88rem}
.showcase-public-activities p{margin:6px 0 0;color:var(--profile-text);font-size:.7rem;line-height:1.85}
@media(max-width:640px){.showcase-price-table-wrap{overflow-x:auto;border:1px solid var(--profile-link-border);background:var(--gl-surface-bg);box-shadow:var(--gl-surface-shadow-sm)}.showcase-price-table{display:table;min-width:0;width:100%;table-layout:fixed;font-size:.62rem}.showcase-price-table thead{position:static;width:auto;height:auto;overflow:visible;clip:auto}.showcase-price-table tbody{display:table-row-group}.showcase-price-table tr{display:table-row;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.showcase-price-table th,.showcase-price-table td{display:table-cell;padding:7px 8px;white-space:normal;overflow-wrap:anywhere}.showcase-price-table td::before{content:none}.showcase-price-table th:nth-child(1),.showcase-price-table td:nth-child(1){width:28%}.showcase-price-table th:nth-child(2),.showcase-price-table td:nth-child(2){width:13%}.showcase-price-table th:nth-child(3),.showcase-price-table td:nth-child(3){width:15%}.showcase-price-table th:nth-child(n+4),.showcase-price-table td:nth-child(n+4){width:14.66%}.showcase-table-details{grid-template-columns:1fr}}
.showcase-day{display:inline-flex;margin-bottom:8px;color:var(--profile-accent);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.showcase-meta{display:grid;gap:6px;margin-top:12px;font-size:.8rem}
.showcase-meta div{display:grid;grid-template-columns:auto 1fr;gap:8px}
.showcase-meta dt{color:var(--profile-muted)}
.showcase-meta dd{margin:0;color:var(--profile-text);font-weight:600}

.profile-link-button::after{
    content:"";
    position:absolute;
    inset:-1.5px;
    z-index:1;
    padding:1.5px;
    border-radius:inherit;
    background:conic-gradient(from var(--profile-ring-angle),transparent 0 74%,color-mix(in srgb,var(--profile-accent) 72%,#fff) 81%,var(--profile-accent) 85%,#fff 88%,var(--profile-accent) 92%,transparent 98% 100%);
    -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
    -webkit-mask-composite:xor;
    mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
    mask-composite:exclude;
    filter:drop-shadow(0 0 7px color-mix(in srgb,var(--profile-link-glow) 68%,transparent));
    opacity:1;
    pointer-events:none;
    animation:profile-link-ring 5s linear infinite;
}

.profile-link-button > *{
    position:relative;
    z-index:2;
}

@property --profile-ring-angle{
    syntax:"<angle>";
    inherits:false;
    initial-value:0deg;
}

@keyframes profile-link-ring{to{--profile-ring-angle:360deg}}
.profile-link-button:focus-visible{outline:3px solid var(--primary);outline-offset:3px}
@media (prefers-reduced-motion:reduce){.profile-link-button::after{animation:none;opacity:.72}}

.profile-link-button:hover{
    transform:translateY(-3px);

    box-shadow:var(--gl-surface-shadow);
}

.profile-link-left{
    display:flex;
    align-items:center;
    gap:16px;
}

.profile-link-icon{
    width:32px;
    height:32px;
    object-fit:contain;
    flex-shrink:0;
}

.profile-link-label{
    font-size:15px;
    font-weight:600;
    color:var(--text);
}

.profile-link-arrow{
    font-size:20px;
    color:var(--text-muted);
}

/* ==========================================================
   Footer
========================================================== */

.profile-footer{
    text-align:center;
    padding:40px 20px;
}

.join-linkit-cta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:14px;
    margin-bottom:25px;
    padding:13px;
    border-radius:9px;
    background:var(--gl-surface-bg, var(--card));
}

.join-linkit-question{
    margin:0;
    color:var(--text-muted);
    font-size:.82rem;
    line-height:1.3;
    white-space:nowrap;
}

.join-linkit-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    padding:0 16px;
    border-radius:9px;
    background:#8e4ccf;
    color:#fff;
    text-decoration:none;
    font-size:0.78rem;
    transition:.25s;
}

.join-linkit-btn:hover{
    transform:translateY(-2px);
}

.join-linkit-btn:focus-visible{
    outline:3px solid color-mix(in srgb,var(--profile-accent) 48%,#fff);
    outline-offset:3px;
}

.joined-date,
.copyright-note{
    color:var(--text-muted);
    font-size:13px;
}

.joined-date{
    margin-bottom:8px;
}





/* ==========================================
   QR Modal
========================================== */

.qr-modal{
    position:fixed;
    inset:0;

    display:none;
    align-items:center;
    justify-content:center;

    background:rgba(0,0,0,.55);
    backdrop-filter:blur(6px);

    z-index:9999;

    padding:20px;
}

.qr-modal-content{
    position:relative;

    width:100%;
    max-width:340px;

    background:var(--gl-surface-bg);
    border:1px solid var(--profile-link-border);
    border-radius:28px;

    padding:34px 28px 24px;

    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;

    gap:18px;

    text-align:center;

    box-shadow:var(--gl-surface-shadow);
    color:var(--profile-text);
}

/* Close */

.qr-close{
    position:absolute;

    top:3px;
    left:50%;

    transform:translateX(-50%);

    background:none;
    border:none;

    color:#ef4444;

    font-size:36px;

    cursor:pointer;

    line-height:1;

    transition:.2s;
}

.qr-close:hover{
    color:#dc2626;
    transform:translateX(-50%) scale(1.12);
}

/* QR */

#qrArea{
    width:100%;
    margin-top:30px;
    padding:14px;
    border-radius:20px;
    background:var(--gl-surface-inset-bg);
    box-shadow:var(--gl-surface-well);
    display:flex;
    justify-content:center;
    align-items:center;
}

#qrArea img,
#qrArea canvas{
    display:block;

    margin:0 auto;
}

/* URL */

.qr-url{
    margin:0;

    font-size:14px;
    color:var(--profile-muted);
    direction:ltr;
    text-align:center;

    word-break:break-all;
}







/* ==========================================================
   Business Hours Popup
========================================================== */

.hours-list{

    width:100%;

    display:flex;
    flex-direction:column;

    gap:12px;

    margin-top:4px;
    padding:10px 16px;
    border-radius:20px;
    background:var(--gl-surface-inset-bg);
    box-shadow:var(--gl-surface-well);

}

.hours-row{

    display:flex;
    justify-content:space-between;
    align-items:center;

    padding:12px 0;

    border-bottom:1px solid var(--profile-link-border);

    font-size:15px;

}

.hours-row:last-child{

    border-bottom:none;

}

.hours-row span{

    color:var(--text-muted);
    font-weight:600;

}

.hours-row strong{

    color:var(--text);
    font-weight:700;

}

body.dark .hours-row{

    border-color:#1f2937;

}

body.dark .hours-row strong{

    color:var(--profile-text);

}

body.dark .hours-row span{

    color:#94a3b8;

}






/* ==========================================================
   Preview Badge
========================================================== */

.preview-badge{
    position:fixed;

    top:3px;
    left:15px;

    z-index:9999;

    padding:8px 14px;

    border-radius:999px;

    background:#111827;
    color:#fff;

    font-size:12px;
    font-weight:700;
}

/* ==========================================================
   Dark Mode
========================================================== */

body.dark{
    --profile-bg:#0f172a;
    --profile-card:#111827;
    --linkit-text-primary:#f8fafc;
    --linkit-text-secondary:#e2e8f0;
    --linkit-text-muted:#94a3b8;
    --linkit-text-disabled:#64748b;
    --linkit-text-inverse:#fff;
    --linkit-control-bg:#172033;
    --linkit-control-placeholder:#94a3b8;
    --profile-text:var(--linkit-text-primary);
    --profile-muted:var(--linkit-text-muted);
    --profile-border:#1f2937;
    --profile-link-border:color-mix(in srgb,var(--profile-accent) 18%,var(--profile-border));
    --profile-link-glow:color-mix(in srgb,var(--profile-accent) 86%,#ffffff);
    --gl-surface-bg:linear-gradient(145deg,#182238,#111827 58%,#0c1425);
    --gl-surface-shadow-sm:0 14px 24px -12px rgba(0,0,0,.72),inset 2px 2px 3px rgba(255,255,255,.08),inset -2px -3px 6px rgba(0,0,0,.34);
    --gl-surface-shadow:0 22px 38px -18px rgba(0,0,0,.82),inset 2px 3px 4px rgba(255,255,255,.09),inset -3px -5px 9px rgba(0,0,0,.38);

    --bg:var(--profile-bg);
    --card:var(--profile-card);
    --text:var(--profile-text);
    --text-muted:var(--profile-muted);
    --border:var(--profile-border);
}

.hours-modal-content h3{margin:0;color:var(--profile-text);font-size:1.15rem;font-weight:750;line-height:1.3}

body.dark .action-btn{
    background:var(--gl-surface-bg);
    color:var(--profile-text);
}

body.dark .profile-avatar-image{
    border-color:#111827;
}

body.dark .qr-modal-content{
    background:#111827;
}

body.dark .profile-link-label{
    color:var(--profile-text);
}

/* ==========================================================
   Mobile
========================================================== */

@media (max-width:768px){

    .profile-cover,
    .cover-wrapper-unified{
        height:auto;
        aspect-ratio:433 / 198;
        border-radius:0;
    }

    .profile-avatar-image{
        width:142px;
        height:142px;
    }

    .profile-avatar{margin-top:-70px}

    .profile-name{
        font-size:26px;
    }

    .profile-link-button{
        min-height:66px;
    }
    .profile-ai-label{max-width:110px;padding:5px 7px;font-size:.68rem}
}

@media (max-width:420px){.profile-links{grid-template-columns:1fr}}
/* Owner-only profile theme control. */
.profile-theme-control{
    position:absolute;
    top:20px;
    left:20px;
    z-index:20;
}
.profile-theme-feedback{
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap;
    border:0;
}
