body.planning-poker-active .landing { grid-template-rows:minmax(0,1fr); }
body.planning-poker-active .roll-zone { display:none !important; }
body.planning-poker-active #discovery { min-height:0; height:100%; padding:0; display:block; overflow:hidden; }

.discovery-item[data-item-id="planning-poker"] .discovery-item-icon {
    background:url('/assets/img/planning_poker.png?v=planning-poker-v1-20260828-1') center/contain no-repeat;
    color:transparent;
    font-size:0;
}
.discovery-item[data-item-id="planning-poker"] .discovery-item-icon > * { visibility:hidden !important; }

.planning-poker-root {
    height:100%;
    min-height:0;
    display:grid;
    grid-template-rows:auto auto minmax(0,1fr);
    color:var(--text);
    font-family:var(--cubiri-content-font,"Nunito Sans",sans-serif);
}

.planning-poker-title {
    margin:8px 16px 4px;
    text-align:center;
    font-size:clamp(25px,5vw,34px);
    line-height:1.05;
    font-weight:800;
    letter-spacing:-.035em;
}

.planning-poker-tabs {
    min-width:0;
    display:grid;
    grid-template-columns:minmax(0,1fr) 52px;
    align-items:stretch;
    margin:0 10px;
    border-bottom:1px solid color-mix(in srgb,var(--text) 11%,transparent);
}

.planning-poker-tabs-scroll {
    min-width:0;
    display:flex;
    align-items:stretch;
    gap:2px;
    overflow-x:auto;
    scrollbar-width:none;
    overscroll-behavior-x:contain;
}
.planning-poker-tabs-scroll::-webkit-scrollbar,
.planning-poker-rail::-webkit-scrollbar,
.planning-poker-content::-webkit-scrollbar { display:none; }

.planning-poker-tab {
    position:relative;
    flex:0 0 auto;
    min-height:46px;
    padding:0 13px;
    border:0;
    background:transparent;
    color:color-mix(in srgb,var(--text) 70%,transparent);
    font:700 13px/1 var(--cubiri-content-font,"Nunito Sans",sans-serif);
    cursor:pointer;
}
.planning-poker-tab::after {
    content:"";
    position:absolute;
    left:10px;
    right:10px;
    bottom:-1px;
    height:3px;
    border-radius:3px 3px 0 0;
    background:#8b5cf6;
    transform:scaleX(0);
    transform-origin:center;
    transition:transform 140ms ease;
}
.planning-poker-tab[aria-selected="true"] { color:var(--text); }
.planning-poker-tab[aria-selected="true"]::after { transform:scaleX(1); }
.planning-poker-tab:focus-visible {
    outline:2px solid #8b5cf6;
    outline-offset:-2px;
}
.planning-poker-tab:disabled {
    opacity:.45;
    cursor:default;
}

.planning-poker-nav-back {
    border:0;
    border-left:1px solid color-mix(in srgb,var(--text) 10%,transparent);
    background:transparent;
    color:var(--text);
    font:700 24px/1 system-ui,sans-serif;
    cursor:pointer;
}
.planning-poker-nav-back:focus-visible {
    outline:2px solid #8b5cf6;
    outline-offset:-3px;
}

.planning-poker-workspace { min-height:0; overflow:hidden; }

.planning-poker-deck-screen {
    height:100%;
    min-height:0;
    display:grid;
    grid-template-rows:auto minmax(0,1fr);
    align-items:stretch;
}

.planning-poker-prompt {
    margin:18px 16px 0;
    text-align:center;
    color:color-mix(in srgb,var(--text) 68%,transparent);
    font:700 clamp(14px,2.4vw,16px)/1.2 var(--cubiri-content-font,"Nunito Sans",sans-serif);
}

.planning-poker-rail {
    width:100%;
    min-height:0;
    display:flex;
    align-items:center;
    overflow-x:auto;
    overflow-y:hidden;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x proximity;
    padding:28px max(18px,calc(50% - 64px)) 34px;
    scrollbar-width:none;
    cursor:grab;
    touch-action:pan-x;
}
.planning-poker-rail:active { cursor:grabbing; }

.planning-poker-mini-card {
    position:relative;
    isolation:isolate;
    flex:0 0 clamp(98px,27vw,132px);
    height:clamp(154px,42vw,204px);
    margin-left:clamp(-28px,-5vw,-14px);
    scroll-snap-align:center;
    border:2px solid transparent;
    border-radius:18px;
    background:linear-gradient(145deg,#191927,#101018) padding-box,linear-gradient(135deg,rgba(255,255,255,.12),rgba(139,92,246,.18)) border-box;
    color:#fff;
    box-shadow:0 14px 36px rgba(0,0,0,.30),inset 0 0 0 1px rgba(139,92,246,.10);
    cursor:pointer;
    transition:transform 150ms ease,box-shadow 150ms ease;
}
.planning-poker-mini-card:first-child { margin-left:0; }
.planning-poker-mini-card::after {
    content:"";
    position:absolute;
    inset:-14px;
    z-index:-1;
    border-radius:28px;
    background:radial-gradient(circle at 35% 45%,rgba(124,58,237,.32),transparent 48%),radial-gradient(circle at 72% 58%,rgba(255,90,0,.24),transparent 48%);
    filter:blur(10px);
    opacity:0;
    transition:opacity 150ms ease;
}
.planning-poker-mini-card:hover,
.planning-poker-mini-card:focus-visible,
.planning-poker-mini-card:active {
    z-index:3;
    transform:translateY(-10px) scale(1.015);
    outline:none;
    background:linear-gradient(145deg,#191927,#101018) padding-box,linear-gradient(135deg,#7c3aed 0%,#d000ff 32%,#ff1493 63%,#ff5a00 100%) border-box;
    box-shadow:0 18px 44px rgba(0,0,0,.38);
}
.planning-poker-mini-card:hover::after,
.planning-poker-mini-card:focus-visible::after,
.planning-poker-mini-card:active::after { opacity:1; }

.planning-poker-mini-value {
    font:850 clamp(36px,10vw,60px)/1 var(--cubiri-content-font,"Nunito Sans",sans-serif);
    letter-spacing:-.035em;
}

.planning-poker-vote-stage {
    height:100%;
    min-height:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:14px;
    perspective:1200px;
    padding:14px 12px 18px;
}

.planning-poker-vote-card {
    width:min(76vw,330px);
    height:min(60vh,500px);
    min-height:270px;
    max-height:calc(100% - 58px);
    padding:3px;
    border:0;
    border-radius:clamp(24px,5vw,36px);
    background:linear-gradient(135deg,#7c3aed 0%,#d000ff 32%,#ff1493 63%,#ff5a00 100%);
    box-shadow:0 0 34px rgba(124,58,237,.20),18px 22px 46px rgba(255,90,0,.08),0 24px 64px rgba(0,0,0,.42);
    perspective:1200px;
    cursor:pointer;
}

.planning-poker-flip {
    position:relative;
    display:block;
    width:100%;
    height:100%;
    transform-style:preserve-3d;
    transition:transform .46s cubic-bezier(.2,.72,.2,1);
}
.planning-poker-vote-card[data-phase="revealed"] .planning-poker-flip { transform:rotateY(180deg); }

.planning-poker-card-side {
    position:absolute;
    inset:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    border-radius:calc(clamp(24px,5vw,36px) - 3px);
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
    overflow:hidden;
}

.planning-poker-card-back {
    background:radial-gradient(circle at 50% 30%,rgba(124,58,237,.20),transparent 38%),linear-gradient(145deg,#171722,#09090f);
    color:#fff;
}
.planning-poker-card-back::before {
    content:"";
    position:absolute;
    inset:18px;
    border:1px solid rgba(255,255,255,.11);
    border-radius:22px;
}

.planning-poker-card-mark {
    position:relative;
    z-index:1;
    display:grid;
    place-items:center;
    width:clamp(82px,22vw,116px);
    aspect-ratio:1;
    border-radius:28%;
    background:linear-gradient(135deg,#7c3aed,#d000ff 34%,#ff1493 66%,#ff5a00);
    color:#fff;
    font:900 clamp(48px,13vw,72px)/1 var(--cubiri-content-font,"Nunito Sans",sans-serif);
    box-shadow:0 0 30px rgba(208,0,255,.22);
}

.planning-poker-reveal-label {
    position:relative;
    z-index:1;
    margin-top:24px;
    font:800 clamp(14px,3.5vw,18px)/1.2 var(--cubiri-content-font,"Nunito Sans",sans-serif);
}

.planning-poker-card-front {
    transform:rotateY(180deg);
    background:radial-gradient(circle at 50% 35%,rgba(208,0,255,.13),transparent 38%),linear-gradient(145deg,#191927,#0b0b11);
}
.planning-poker-card-front::before {
    content:"";
    position:absolute;
    inset:16px;
    border-radius:22px;
    border:1px solid rgba(255,255,255,.10);
}

.planning-poker-large-value {
    position:relative;
    z-index:1;
    max-width:92%;
    color:#fff;
    font:900 clamp(82px,28vw,170px)/.88 var(--cubiri-content-font,"Nunito Sans",sans-serif);
    letter-spacing:-.07em;
    text-align:center;
}

.planning-poker-another {
    min-height:42px;
    padding:10px 20px;
    border:1px solid color-mix(in srgb,var(--text) 13%,transparent);
    border-radius:999px;
    background:color-mix(in srgb,var(--text) 7%,transparent);
    color:inherit;
    font:700 14px/1 var(--cubiri-content-font,"Nunito Sans",sans-serif);
    cursor:pointer;
}

.planning-poker-content {
    height:100%;
    min-height:0;
    overflow-y:auto;
    scrollbar-width:none;
    padding:22px clamp(18px,5vw,34px) 28px;
    max-width:760px;
    margin:0 auto;
}

.planning-poker-content-title,
.planning-poker-content-section h2 {
    margin:0 0 7px;
    color:var(--text);
    font-weight:800;
    letter-spacing:-.02em;
}
.planning-poker-content-title { font-size:clamp(22px,4vw,30px); margin-bottom:18px; }
.planning-poker-content-section { padding:0 0 20px; }
.planning-poker-content-section + .planning-poker-content-section {
    padding-top:18px;
    border-top:1px solid color-mix(in srgb,var(--text) 9%,transparent);
}
.planning-poker-content-section h2 { font-size:clamp(17px,3vw,20px); }
.planning-poker-content-section p {
    margin:0;
    color:color-mix(in srgb,var(--text) 76%,transparent);
    font:600 clamp(14px,2.4vw,16px)/1.55 var(--cubiri-content-font,"Nunito Sans",sans-serif);
}

.planning-poker-vote-card.is-reduced-motion .planning-poker-flip { transition:none; }

@media (max-width:430px) {
    .planning-poker-title { margin-top:6px; }
    .planning-poker-tabs { margin-inline:8px; }
    .planning-poker-tab { min-height:44px; padding-inline:11px; font-size:12px; }
    .planning-poker-prompt { margin-top:15px; }
}

@media (max-height:700px) {
    .planning-poker-title { margin-block:3px 1px; font-size:24px; }
    .planning-poker-tab { min-height:40px; }
    .planning-poker-prompt { margin-top:10px; }
    .planning-poker-rail { padding-block:18px 22px; }
    .planning-poker-vote-card { height:min(55vh,390px); min-height:220px; }
    .planning-poker-large-value { font-size:clamp(72px,22vh,138px); }
}

@media (prefers-reduced-motion:reduce) {
    .planning-poker-flip,
    .planning-poker-mini-card,
    .planning-poker-mini-card::after,
    .planning-poker-tab::after { transition:none; }
}
