/* Original native UI, inspired by layered cards and restrained light treatments. */
.puzzle-experience{--puzzle-gap:8px;position:relative;border:1px solid var(--line);border-radius:24px;background:var(--surface);overflow:hidden;box-shadow:0 18px 70px #071a4406;isolation:isolate}
.puzzle-experience:before{content:'';position:absolute;top:0;left:15%;right:15%;height:1px;background:linear-gradient(90deg,transparent,var(--teal),transparent);opacity:.65;pointer-events:none}
.puzzle-service{margin-top:52px}.puzzle-heading{display:grid;grid-template-columns:1.15fr 1fr;align-items:end;gap:64px;padding:38px 40px 30px}.puzzle-heading .eyebrow{font:10px/1.6 Consolas,monospace;letter-spacing:.13em;margin-bottom:14px}.puzzle-heading h2{font-size:clamp(2rem,3.1vw,3rem);line-height:1.14;max-width:560px}.puzzle-heading>p{font-size:.92rem;line-height:1.8;max-width:470px;padding-bottom:3px}.puzzle-mono{font:10px/1.6 Consolas,monospace;letter-spacing:.1em;color:var(--muted)}
.puzzle-topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 40px;border-block:1px solid var(--line);background:color-mix(in srgb,var(--bg) 60%,var(--surface))}.puzzle-live{display:inline-flex;align-items:center;gap:9px;color:var(--teal);font:10px/1.5 Consolas,monospace;letter-spacing:.07em}.puzzle-live:before{content:'';width:6px;height:6px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px color-mix(in srgb,var(--teal) 8%,transparent)}.puzzle-cases{display:flex;gap:3px;align-items:center}.puzzle-case{background:transparent;color:var(--muted);font:12px var(--body);padding:9px 13px;border:1px solid transparent;border-radius:8px;min-height:40px;transition:background .2s,box-shadow .2s}.puzzle-case[aria-pressed=true]{background:var(--surface);color:var(--ink);border-color:var(--line);box-shadow:0 2px 4px #071a4406}.puzzle-case.case-completed:after{content:' ✓';color:var(--teal)}.puzzle-case:hover{color:var(--teal)}
.puzzle-workspace{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(270px,1fr)}.puzzle-scene{position:relative;min-width:0;padding:55px 42px 26px;background:radial-gradient(ellipse at 50% 40%,color-mix(in srgb,var(--teal) 5%,var(--bg)),var(--bg) 75%);border-right:1px solid var(--line);isolation:isolate}.puzzle-scene:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(var(--line) .7px,transparent .7px);background-size:18px 18px;opacity:.6;mask-image:linear-gradient(transparent,black 20%,black 80%,transparent)}
.puzzle-field{position:relative;max-width:420px;margin:5px auto 40px}.puzzle-grid{position:relative;aspect-ratio:1;isolation:isolate;border-radius:16px;background:color-mix(in srgb,var(--line) 52%,var(--bg));box-shadow:0 0 0 1px var(--line),0 0 0 8px var(--surface),0 0 0 9px var(--line),0 20px 50px #071a4410;transition:box-shadow .5s}.puzzle-cell{position:absolute;width:calc(100% / var(--size));height:calc(100% / var(--size));border:1px solid color-mix(in srgb,var(--line) 45%,transparent);pointer-events:none}.puzzle-terminal{position:absolute;z-index:3;transform:translateX(-50%);font:9px/1.5 Consolas,monospace;letter-spacing:.11em;color:var(--muted);white-space:nowrap;text-align:center;transition:color .3s}.puzzle-source{bottom:calc(100% + 20px)}.puzzle-destination{top:calc(100% + 20px)}.puzzle-terminal:after{content:'';position:absolute;left:50%;width:1px;height:15px;background:var(--muted);opacity:.6}.puzzle-source:after{top:100%}.puzzle-destination:after{bottom:100%}.terminal-active{color:var(--teal)}.terminal-active:after{background:var(--teal);box-shadow:0 0 10px var(--teal);opacity:1}
.puzzle-tile{--w:1;--h:1;position:absolute;left:calc(var(--x) * 100% / var(--size) + var(--puzzle-gap) / 2);top:calc(var(--y) * 100% / var(--size) + var(--puzzle-gap) / 2);width:calc(var(--w) * 100% / var(--size) - var(--puzzle-gap));height:calc(var(--h) * 100% / var(--size) - var(--puzzle-gap));padding:0;border:1px solid color-mix(in srgb,var(--line) 80%,var(--muted));border-radius:11px;background:linear-gradient(155deg,var(--surface),color-mix(in srgb,var(--surface) 88%,var(--soft)));color:var(--muted);box-shadow:0 2px 0 color-mix(in srgb,var(--line) 80%,var(--surface)),inset 0 1px 0 color-mix(in srgb,var(--surface) 80%,white);transform:translate(var(--drag-x,0px),var(--drag-y,0px));transition:left .24s cubic-bezier(.2,.8,.2,1),top .24s cubic-bezier(.2,.8,.2,1),box-shadow .25s,border-color .25s;touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab;overflow:visible;z-index:2;font-family:var(--body)}
.puzzle-tile:focus-visible{outline:2px solid var(--teal);outline-offset:-4px;z-index:7}.puzzle-tile:hover{border-color:var(--muted);z-index:3}.puzzle-tile.tile-movable:hover{border-color:var(--teal);box-shadow:0 4px 16px #071a4412,inset 0 1px 0 color-mix(in srgb,var(--teal) 15%,var(--surface))}.puzzle-tile.tile-dragging{transition:none;z-index:9;cursor:grabbing;box-shadow:0 8px 20px #071a4422;border-color:var(--teal)}.puzzle-tile[aria-disabled=true]{cursor:default}.puzzle-tile>svg{position:absolute;inset:-1px;width:calc(100% + 2px);height:calc(100% + 2px);overflow:visible;pointer-events:none;fill:none;stroke-linecap:round;stroke-linejoin:round}.pipe-bed{stroke:var(--line);stroke-width:9}.pipe-line{stroke:var(--muted);stroke-width:1.4;opacity:.52;transition:stroke .3s,opacity .3s}.pipe-stream{stroke:var(--teal);stroke-width:2;stroke-dasharray:4 70;opacity:0}.pipe-port{fill:var(--muted);stroke:var(--surface);stroke-width:1;opacity:.6}.tile-live .pipe-line{stroke:var(--teal);opacity:1;stroke-width:2}.tile-live .pipe-bed{stroke:color-mix(in srgb,var(--teal) 13%,var(--surface))}.tile-live .pipe-stream{opacity:1;animation:puzzle-flow 2.8s linear 3;animation-play-state:paused}.puzzle-in-view .tile-live .pipe-stream{animation-play-state:running}.tile-live.tile-reverse .pipe-stream{animation-direction:reverse}.tile-live .pipe-port{fill:var(--teal);opacity:1}.tile-node{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:9px;height:9px;background:var(--surface);border:1.5px solid var(--muted);border-radius:50%;display:grid;place-items:center;pointer-events:none;font:11px Consolas,monospace}.tile-node:not(:empty){width:31px;height:31px;border:1px solid var(--line);color:var(--ink);box-shadow:0 0 0 5px var(--surface)}.tile-live .tile-node{border-color:var(--teal);color:var(--teal)}.tile-label{position:absolute;left:4px;right:4px;bottom:9px;font-size:12px;line-height:1.1;color:var(--ink);text-align:center;pointer-events:none}.tile-id{position:absolute;top:7px;left:9px;font:8px Consolas,monospace;color:var(--muted);opacity:.8}.tile-hint{position:absolute;top:7px;right:7px;font-size:19px;color:var(--teal);line-height:1;pointer-events:none}.puzzle-tile.tile-suggested{border-color:var(--teal);box-shadow:0 0 0 2px var(--teal),0 0 22px color-mix(in srgb,var(--teal) 25%,transparent);z-index:6}.puzzle-vacancy{position:absolute;width:calc(100% / var(--size));height:calc(100% / var(--size));display:flex;align-items:center;justify-content:center;flex-direction:column;gap:9px;font:20px Consolas,monospace;color:var(--muted);pointer-events:none;opacity:.7}.puzzle-vacancy:before{content:'';position:absolute;inset:9px;border:1px dashed var(--muted);border-radius:7px;opacity:.35}.puzzle-vacancy small{font:8px Consolas,monospace;letter-spacing:.12em}
.puzzle-aside{padding:36px 34px;min-width:0;display:flex;flex-direction:column;align-items:stretch}.puzzle-aside>.puzzle-mono{color:var(--teal);margin-bottom:14px}.puzzle-aside h3{font-size:1.4rem;line-height:1.35;max-width:300px;margin-bottom:12px}.puzzle-side-copy{font-size:.82rem;line-height:1.75;margin-bottom:25px}.puzzle-checks{padding:0;margin:0 0 24px;list-style:none}.puzzle-checks li{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:9px;min-height:48px;border-bottom:1px solid var(--line);padding:8px 0}.puzzle-checks li>span{height:24px;width:24px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;font:9px Consolas,monospace;color:var(--muted)}.puzzle-checks li>strong{font-size:.85rem;font-weight:500}.puzzle-checks li>small{font-size:.68rem;color:var(--muted)}.puzzle-checks li.check-reached>span{background:var(--soft);border-color:var(--teal);color:var(--teal)}.puzzle-checks li.check-reached>small{color:var(--teal)}.puzzle-stats{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding-bottom:21px}.puzzle-stats>div+div{border-left:1px solid var(--line);padding-left:22px}.puzzle-stats span{font:9px Consolas,monospace;letter-spacing:.1em;color:var(--muted);display:block;margin-bottom:7px}.puzzle-stats strong{font:2rem var(--heading);letter-spacing:-.05em;color:var(--ink);font-variant-numeric:tabular-nums}.puzzle-status{padding:15px 0;border-top:1px solid var(--line);font-size:.78rem;line-height:1.75;min-height:78px}.puzzle-strategy{font-size:.75rem;line-height:1.75;color:var(--muted);margin-top:auto;padding-top:15px}.puzzle-strategy summary{color:var(--ink);cursor:pointer;min-height:32px}.puzzle-strategy p{padding-top:10px}.puzzle-controls{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:35px}.puzzle-button{position:relative;isolation:isolate;overflow:hidden;min-height:44px;padding:11px 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);font-size:.78rem;line-height:1.35;box-shadow:0 2px 3px #071a4405;transition:border-color .2s,box-shadow .2s,transform .2s}.puzzle-button:hover:enabled{border-color:var(--teal);box-shadow:0 3px 14px color-mix(in srgb,var(--teal) 10%,transparent);transform:translateY(-1px)}.puzzle-button:active:enabled{transform:translateY(1px)}.puzzle-button:disabled,.puzzle-direction:disabled{opacity:.42;cursor:default}.puzzle-shine{background:linear-gradient(150deg,var(--soft),var(--surface));border-color:color-mix(in srgb,var(--teal) 38%,var(--line))}.puzzle-shine:after{content:'';position:absolute;inset:-50% auto -50% -70%;width:45%;background:linear-gradient(100deg,transparent,color-mix(in srgb,var(--teal) 13%,transparent),transparent);transform:skewX(-20deg);transition:left .6s;pointer-events:none;z-index:-1}.puzzle-shine:hover:after{left:130%}.puzzle-primary{background:var(--ink);color:var(--surface);border-color:var(--ink)}.puzzle-guidance{font-size:.71rem;line-height:1.75;text-align:center;max-width:450px;margin:16px auto 0}.puzzle-foot{padding:15px 40px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:.68rem;color:var(--muted)}.puzzle-foot span:first-child{display:flex;gap:8px;align-items:center;color:var(--teal)}.puzzle-foot span:first-child:before{content:'✳';font-size:14px}.puzzle-result{border:1px solid color-mix(in srgb,var(--teal) 40%,var(--line));background:var(--soft);border-radius:10px;padding:18px;margin:0 0 14px}.puzzle-result>strong{font:1.1rem var(--heading);color:var(--teal)}.puzzle-result>p{font-size:.78rem;line-height:1.75;margin:10px 0 15px}.puzzle-result .puzzle-button{width:100%}.puzzle-solved{box-shadow:0 0 0 1px var(--teal),0 0 0 8px var(--surface),0 0 0 9px color-mix(in srgb,var(--teal) 60%,var(--line)),0 12px 70px color-mix(in srgb,var(--teal) 16%,transparent)}
/* Interlocking blocks have physical axes and lengths; arrows have matching controls. */
[data-puzzle-type=block]{--puzzle-gap:6px}[data-puzzle-type=block] .puzzle-scene{padding-top:56px}[data-puzzle-type=block] .puzzle-field{max-width:460px}[data-puzzle-type=block] .puzzle-source{left:50%!important;color:var(--muted);font-size:8px}[data-puzzle-type=block] .puzzle-source:after{display:none}.block-tile{display:flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;padding:5px;color:var(--muted)}.block-tile strong{font-size:12px;line-height:1.1;font-weight:500}.block-vertical{flex-direction:column;gap:8px}.block-vertical strong{writing-mode:vertical-rl}.block-grip{color:var(--muted);font:14px Consolas,monospace;opacity:.65}.block-id{font:7px Consolas,monospace;position:absolute;bottom:5px;right:6px;opacity:.65}.block-target{background:linear-gradient(150deg,var(--teal),color-mix(in srgb,var(--teal) 75%,var(--ink)));color:var(--bg);border-color:var(--teal);box-shadow:inset 0 1px 0 #ffffff50,0 3px 10px #071a4420}.block-target .block-grip{color:inherit;opacity:1;font-size:23px}.block-target strong{letter-spacing:.08em;font-size:13px}.block-target .block-id{color:inherit;opacity:.8}.block-target .tile-hint{color:var(--bg)}.block-tile.tile-selected{outline:2px solid var(--teal);outline-offset:-4px}.block-target.tile-selected{outline-color:var(--bg)}[data-puzzle-type=block] .puzzle-checks li{grid-template-columns:28px 1fr;row-gap:3px;padding:10px 0}[data-puzzle-type=block] .puzzle-checks li>small{grid-column:2;line-height:1.5;font-size:.7rem}.puzzle-selection{padding:12px 0 18px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:6px;align-items:center}.puzzle-selection>strong{font-size:.83rem;grid-column:1;font-weight:500}.puzzle-selection>.puzzle-mono{font-size:8px}.puzzle-directions{grid-column:2;grid-row:1/3;display:grid;grid-template-columns:repeat(4,32px);gap:4px}.puzzle-direction{min-height:36px;border:1px solid var(--line);background:var(--bg);border-radius:6px;font-size:16px}.puzzle-direction:hover:enabled{border-color:var(--teal);color:var(--teal)}
/* Secondary analytical cases remain available without competing with the puzzle. */
.analytical-case{border:1px solid var(--line);border-radius:14px;margin-top:22px;background:var(--surface);overflow:hidden}.analytical-case>summary{padding:22px 26px;cursor:pointer;display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:.9rem;font-weight:600;list-style:none}.analytical-case>summary:after{content:'+';font:22px var(--body);color:var(--teal)}.analytical-case[open]>summary:after{content:'−'}.analytical-case>summary span{display:block;color:var(--muted);font-size:.75rem;font-weight:400;margin-top:5px}.analytical-case .mini-experience{margin:0;border:0;border-top:1px solid var(--line);border-radius:0}.analytical-case .experience-heading h2{font-size:1.8rem}
/* Component polish is scoped away from the protected hero. */
.service-card{position:relative;isolation:isolate;overflow:hidden;transition:transform .3s,border-color .3s,box-shadow .3s!important}.service-card:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(260px circle at var(--spot-x,50%) var(--spot-y,0%),color-mix(in srgb,var(--teal) 8%,transparent),transparent 75%);opacity:0;transition:opacity .3s;pointer-events:none}.service-card:hover:before,.service-card:focus-visible:before{opacity:1}.service-card:hover{box-shadow:0 12px 30px #071a4409;transform:translateY(-4px)}.service-card .service-icon{border-radius:11px;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--teal) 14%,transparent);transition:background .3s,box-shadow .3s}.service-card:hover .service-icon{background:var(--tint);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--teal) 30%,transparent)}.service-card .card-link .icon{transition:transform .25s}.service-card:hover .card-link .icon{transform:translate(3px,-3px)}.portal-entry,#iletisim .button,.service-page .button{border-radius:10px;box-shadow:inset 0 1px 0 #ffffff15,0 2px 6px #071a4410}.service-filters{gap:5px}.service-filters button{border-radius:8px;transition:background .25s,box-shadow .25s}.service-filters button[aria-pressed=true]{box-shadow:0 2px 7px #071a440d}
@keyframes puzzle-flow{to{stroke-dashoffset:-148}}
.motion-paused .pipe-stream{animation-play-state:paused!important}
@media(min-width:1500px){.puzzle-field{max-width:445px}.puzzle-aside{padding:42px}}
@media(max-width:1050px){.puzzle-heading{gap:30px;padding:30px}.puzzle-topbar{padding:15px 30px}.puzzle-workspace{grid-template-columns:1.25fr 1fr}.puzzle-scene{padding:52px 28px 24px}.puzzle-aside{padding:28px 24px}.puzzle-aside h3{font-size:1.2rem}.puzzle-foot{padding:14px 30px}.puzzle-button{padding:11px 13px}.puzzle-cases{gap:1px}.puzzle-case{padding:8px 9px}.puzzle-live{font-size:9px}.puzzle-directions{grid-template-columns:repeat(4,28px)}}
@media(max-width:760px){.puzzle-workspace{grid-template-columns:1fr}.puzzle-heading{grid-template-columns:1fr;gap:16px;padding:28px}.puzzle-heading h2{font-size:2.1rem}.puzzle-heading>p{max-width:100%;font-size:.88rem}.puzzle-scene{border-right:0;border-bottom:1px solid var(--line);padding:51px 34px 25px}.puzzle-topbar{padding:15px 24px;flex-wrap:wrap;gap:14px}.puzzle-cases{width:100%;justify-content:space-between}.puzzle-case{flex:1}.puzzle-aside{padding:27px}.puzzle-aside h3{max-width:none;font-size:1.35rem}.puzzle-side-copy{margin-bottom:15px}.puzzle-checks{margin-bottom:18px}.puzzle-checks li{min-height:46px}.puzzle-stats{padding-bottom:16px}.puzzle-status{min-height:0}.puzzle-strategy{padding-top:8px}.puzzle-foot{flex-direction:column;gap:5px;padding:16px 27px}.puzzle-experience{border-radius:18px}.puzzle-result{margin-top:5px}.puzzle-selection{grid-template-columns:1fr auto}.puzzle-directions{grid-template-columns:repeat(4,42px);gap:6px}.puzzle-direction{min-height:42px}.puzzle-service{margin-top:32px}.analytical-case>summary{padding:20px}.play-section-label>span:last-child{display:none}}
@media(max-width:420px){.puzzle-heading{padding:25px 21px}.puzzle-heading h2{font-size:1.85rem}.puzzle-heading>p{font-size:.84rem}.puzzle-topbar{padding:15px 20px}.puzzle-scene{padding:47px 23px 22px}.puzzle-case{font-size:11px;padding:8px 5px}.puzzle-aside{padding:24px 21px}.puzzle-controls{gap:6px}.puzzle-button{font-size:11px;padding:11px 10px}.tile-node:not(:empty){width:25px;height:25px;font-size:9px;box-shadow:0 0 0 3px var(--surface)}.tile-label{font-size:10px;bottom:6px}.puzzle-tile{border-radius:8px}.tile-id{font-size:7px;left:6px;top:5px}.puzzle-vacancy small{font-size:7px}.block-tile{gap:5px}.block-tile strong{font-size:10px}.block-id{font-size:6px;bottom:3px;right:3px}.block-grip{font-size:11px}.block-target strong{font-size:11px}.block-target .block-grip{font-size:17px}.puzzle-experience{--puzzle-gap:6px}[data-puzzle-type=block]{--puzzle-gap:4px}.puzzle-terminal{font-size:8px}.puzzle-guidance{font-size:10px}.puzzle-foot{padding:15px 21px}.puzzle-heading .eyebrow{font-size:9px}.puzzle-directions{grid-template-columns:repeat(4,36px)}}
@media(prefers-reduced-motion:reduce){.puzzle-experience *,.service-card,.service-card *{animation:none!important;transition:none!important}.puzzle-shine:after{display:none}}
