@property --bounce-y{syntax: "<length>"; inherits: false; initial-value: 0px;}.text-serif{font-family:var(--font-serif)}.text-mono{font-family:var(--font-mono)}.eyebrow{font-size:.85rem;text-transform:uppercase;color:var(--harbor-mist);letter-spacing:.05em;margin-bottom:var(--space-md)}.floating-ui{position:fixed;top:var(--floating-ui-top, calc(50% + 430px) );left:50%;display:flex;justify-content:center;align-items:stretch;gap:var(--space-md);width:min(560px,90vw);opacity:0;pointer-events:none;transform:translate(-50%,20px);transition:opacity .4s ease,transform .4s ease;z-index:10001}.floating-ui .btn{flex:1;justify-content:center;text-align:center;white-space:nowrap}.floating-ui.is-visible{opacity:1;pointer-events:auto;transform:translate(-50%)}.intro-headline{font-family:var(--font-serif);font-size:2.5rem;color:var(--fjord-slate);font-style:italic;margin-bottom:var(--space-xs);line-height:1.2}.intro-subtext{font-family:var(--font-mono);font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-xl);line-height:1.4}.body-text{font-family:var(--font-body);font-size:1.1rem;line-height:1.6;margin-bottom:var(--space-lg);color:var(--text-on-light)}.closing-line{font-family:var(--font-body);font-size:1.2rem;color:var(--text-on-light);font-style:italic;margin-top:var(--space-2xl);line-height:1.5}.court-container{max-width:990px;margin:0 auto;padding:var(--space-3xl) 100px;min-height:100vh;overflow-x:hidden}@media(max-width:990px){.court-container{padding:0}.intro-section,.conclusion-section{padding:var(--space-xl) var(--mobile-padding)!important;border-radius:0!important}.intro-headline{font-size:1.8rem}}.board-grid{position:relative;height:625px;width:100%;margin-top:-40px;transform-origin:top center;animation:fadeIn var(--transition-med) forwards;overflow:visible;z-index:10}.intro-section{position:relative;z-index:1;background-color:var(--surface-warm);color:var(--text-on-light);padding:var(--space-3xl) 100px;border-radius:25px 25px 0 0}.board-view{background-color:var(--abyss-blue)}.conclusion-section{position:relative;z-index:1;color:var(--text-on-light);padding:var(--space-3xl) 100px;border-radius:0 0 25px 25px;background-color:var(--surface-warm)}.board-card{position:absolute;container-type:inline-size;container-name:card;background-color:var(--night-steel);border:3px solid transparent;background:linear-gradient(var(--abyss-blue),var(--quicksand-gold)) padding-box,linear-gradient(0deg,#b89343,#cdb178,#dfcba7) border-box;box-shadow:-8px 8px 32px #0009;border-radius:32px;overflow:hidden;cursor:pointer;width:720px;height:1250px;z-index:var(--base-z, 1);transform:translate(-50%) translateY(-34.375%) translate(var(--drag-x, 0px),var(--drag-y, 0px)) rotate(var(--card-rot)) translateY(var(--bounce-y, 0px)) scale(var(--drag-scale, .3125));transition:all .5s ease,transform .5s ease,opacity .3s ease}@media(hover:hover)and (pointer:fine){.board-card:not(.is-dragging):hover{z-index:50;transform:translate(-50%) translateY(-34.375%) translate(var(--drag-x, 0px),var(--drag-y, 0px)) rotate(var(--card-rot)) translateY(-16px) scale(.3);box-shadow:0 0 60px #e0c58fcc,0 26px 76px #0006}}@media(pointer:coarse){.board-card:not(.is-dragging):hover{z-index:var(--base-z, 1);transform:translate(-50%) translateY(-34.375%) translate(var(--drag-x, 0px),var(--drag-y, 0px)) rotate(var(--card-rot)) translateY(0) scale(var(--drag-scale, .3125));box-shadow:-8px 8px 32px #0009}}.card-front-inner{position:relative;display:flex;flex-direction:column;align-items:center;width:100%;height:100%}.board-card.is-dragging{cursor:grabbing;z-index:9999;transition:box-shadow .2s ease,transform 0s;box-shadow:0 0 76px #e0c58f80,0 76px 150px #0009;border-color:var(--card-accent)}.card-name{font-family:var(--font-serif);font-weight:700;font-size:clamp(1rem,6cqi,3.52rem);font-variant:small-caps;color:var(--text-on-dark);text-align:center;letter-spacing:.05em;margin-bottom:2cqi}.card-image-container{width:100%;flex-grow:1;border:.7cqi solid var(--quicksand-gold);border-radius:3.6cqi;position:relative;display:flex;flex-direction:column;align-items:center;background-color:var(--quicksand-gold)}.card-portrait-container{position:absolute;top:0;left:0;right:0;height:58%;overflow:hidden;border-radius:3.6cqi 3.6cqi 0 0}.card-portrait-container img{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:105%;height:105%;object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none}.image-placeholder-text{position:absolute;top:40%;transform:translateY(-58%);font-family:var(--font-mono);font-size:clamp(1.5rem,8cqi,4rem);color:var(--quicksand-gold);font-weight:700;opacity:.8}.surface-text-overlay{position:absolute;top:60%;left:clamp(16px,4cqi,38px);right:clamp(16px,4cqi,38px);font-family:var(--font-body);font-size:clamp(.85rem,4.1cqi,2.2rem);line-height:1.6;color:var(--text-on-light);text-align:left}.rot-card-1{--card-rot: -3deg}.rot-card-2{--card-rot: 1deg}.rot-card-3{--card-rot: -1deg}.rot-card-4{--card-rot: 2deg}.rot-card-5{--card-rot: 1.5deg}.rot-card-6{--card-rot: 4.5deg}.rot-card-7{--card-rot: .5deg}.rot-card-8{--card-rot: -2deg}.detail-view{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:10000;pointer-events:none}.backdrop-blur{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#02122266;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9900;opacity:0;transition:opacity .5s ease}.backdrop-blur.is-visible{opacity:1}.card-scene.is-flying{position:fixed;margin:0;transition:top .5s ease,left .5s ease,transform .5s ease,opacity .3s ease;will-change:top,left,transform;z-index:10000;pointer-events:auto}.board-card.is-hidden{opacity:0;pointer-events:none}.card-scene{perspective:4800px;container-type:inline-size;container-name:card;width:720px;height:1250px}.card-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform var(--transition-flip);transform-origin:center center}.card-inner.is-flipped{transform:rotateY(180deg)}.card-face{position:absolute;width:100%;height:100%;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:32px;border:3px solid transparent;background:linear-gradient(var(--night-steel),var(--night-steel)) padding-box,linear-gradient(0deg,#b89343,#cdb178,#dfcba7) border-box;background-color:var(--night-steel);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 38px 102px #00000080}.card-back{transform:rotateY(180deg);padding:clamp(24px,5cqi,76px);justify-content:flex-start}.card-front{padding:clamp(12px,4cqi,20px) clamp(12px,2.5cqi,26px) clamp(12px,2.5cqi,26px) clamp(12px,2.5cqi,26px);justify-content:flex-start;align-items:center}.detail-card-name{font-family:var(--font-serif);font-size:1.3rem;color:var(--card-accent);margin-bottom:var(--space-xs)}.back-occupant-label{font-family:var(--font-mono);font-size:clamp(.85rem,3cqi,2.08rem);text-transform:uppercase;color:var(--harbor-mist);letter-spacing:.05em;margin-bottom:12px}.back-tool-name{font-family:var(--font-serif);font-size:clamp(1.2rem,5.5cqi,4.48rem);color:var(--quicksand-gold);margin-bottom:clamp(16px,4cqi,38px);line-height:1.2}.back-divider{height:3px;background-color:#ffffff1a;margin-bottom:clamp(16px,4cqi,38px);width:100%}.detail-role-subtitle{font-family:var(--font-mono);font-size:clamp(.85rem,2.8cqi,1.92rem);text-transform:uppercase;color:var(--harbor-mist);margin-bottom:clamp(24px,5cqi,52px);letter-spacing:.05em}.back-modal-text{font-family:var(--font-body);font-size:clamp(.85rem,3.8cqi,2.2rem);font-style:italic;line-height:1.5;color:var(--text-on-dark);flex-grow:1;overflow-y:auto;margin-bottom:clamp(16px,4cqi,38px)}.card-actions{display:flex;gap:var(--space-sm);margin-top:auto;padding-top:var(--space-md)}.card-actions .btn-secondary{flex:1;justify-content:center}@media(max-width:1040px){.board-grid{transform:scale(.9)}}@media(max-width:950px){.board-grid{transform:scale(.85)}}@media(max-width:990px){.board-view{width:100%;overflow:visible}.board-grid{transform:scale(1)!important;overflow-x:clip;overflow-y:visible;height:940px;margin-top:-68px}.court-container{padding-left:0!important;padding-right:0!important;overflow:visible!important}}@media(max-width:430px){.card-portrait-container{height:52%}.surface-text-overlay{top:54%}}@media(max-width:380px){.card-portrait-container{height:48%}.surface-text-overlay{top:50%}}@keyframes bounce-hint{0%,to{--bounce-y: 0px}50%{--bounce-y: -24px}}.board-card.is-bouncing:not(.is-dragging){animation:bounce-hint .6s ease-in-out 1 forwards}.shimmer-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;border-radius:32px;background:linear-gradient(135deg,transparent 35%,rgba(255,255,255,.18) 50%,transparent 65%);background-size:300% 300%;background-position:200% 200%;opacity:0;z-index:10;will-change:background-position}@keyframes shimmer-sweep{0%{background-position:150% 150%;opacity:1}to{background-position:-50% -50%;opacity:1}}.shimmer-layer.is-shimmering{animation:shimmer-sweep .7s ease-in-out 1 forwards}
