:root{--sak-ease:cubic-bezier(0.22,0.61,0.36,1);--sak-ease-soft:cubic-bezier(0.4,0,0.2,1)}::selection{background:var(--sk-accent-soft)}.sk-serif{font-family:var(--font-cormorant),serif}.sk-sans{font-family:var(--font-inter),system-ui,sans-serif}.sk-mono{font-family:ui-monospace,JetBrains Mono,monospace}.sk-ar-display{font-family:var(--font-amiri),serif}.sk-ar-body{font-family:var(--font-naskh),serif}.sk-btn{transition:transform .22s var(--sak-ease),background-color .22s var(--sak-ease),border-color .22s var(--sak-ease),box-shadow .3s var(--sak-ease),color .22s var(--sak-ease);cursor:pointer;user-select:none}.sk-btn:hover{transform:translateY(-1px)}.sk-btn:active{transform:translateY(0)}.sk-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--sk-focus)}.sk-btn[data-loading=true]{pointer-events:none;opacity:.85}.sk-btn-primary{box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 2px rgba(14,22,38,.1),0 6px 16px -8px rgba(14,22,38,.2)}.sk-btn-primary:hover{box-shadow:0 1px 0 rgba(255,255,255,.14) inset,0 2px 4px rgba(14,22,38,.14),0 14px 32px -10px var(--sk-accent-glow),0 24px 48px -24px var(--sk-accent-glow)}.sk-btn-ghost:hover{background:var(--sk-chip)}.sk-btn-outline:hover{border-color:var(--sk-accent-line);color:var(--sk-accent);background:var(--sk-accent-soft);box-shadow:0 6px 18px -10px var(--sk-accent-glow)}.sk-card{transition:transform .35s var(--sak-ease),border-color .35s var(--sak-ease),box-shadow .45s var(--sak-ease);box-shadow:var(--sk-shadow)}.sk-card.sk-hoverable:hover{transform:translateY(-3px);border-color:var(--sk-accent-line);box-shadow:var(--sk-shadow-hover)}.sk-nav-item{position:relative;transition:color .18s var(--sak-ease)}.sk-nav-item:after{content:"";position:absolute;inset-inline:12px;bottom:6px;height:1px;background:currentColor;transform-origin:100% 50%;transform:scaleX(0);transition:transform .25s var(--sak-ease)}.sk-nav-item:hover:after{transform:scaleX(1);transform-origin:0 50%}.sk-nav-item[data-active=true]:after{transform:scaleX(1);background:var(--sk-accent);height:2px}.sk-chip{transition:background-color .18s var(--sak-ease),border-color .18s var(--sak-ease),color .18s var(--sak-ease)}.sk-chip:hover{border-color:var(--sk-accent-line);color:var(--sk-accent)}.sk-input{transition:border-color .18s var(--sak-ease),box-shadow .25s var(--sak-ease),background-color .18s var(--sak-ease)}.sk-input:hover{border-color:var(--sk-line-strong)}.sk-input:focus-within{border-color:var(--sk-accent-line);box-shadow:0 0 0 4px var(--sk-focus);background:var(--sk-paper)}.sk-pulse{position:relative}.sk-pulse:before{content:"";position:absolute;inset:-2px;border-radius:50%;background:currentColor;opacity:.4;animation:skPulse 1.6s var(--sak-ease) infinite}@keyframes skPulse{0%{transform:scale(.6);opacity:.6}to{transform:scale(2.6);opacity:0}}.sk-caret{display:inline-block;width:8px;height:1.05em;background:currentColor;margin-inline-start:4px;vertical-align:-1px;animation:skCaret 1s steps(2) infinite}@keyframes skCaret{50%{opacity:0}}.sk-spin{animation:skSpin 1s linear infinite}@keyframes skSpin{to{transform:rotate(1turn)}}.sk-shimmer{background:linear-gradient(90deg,transparent 0,var(--sk-chip) 30%,var(--sk-line) 50%,var(--sk-chip) 70%,transparent 100%);background-size:220% 100%;animation:skShimmer 1.6s var(--sak-ease) infinite}@keyframes skShimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.sk-wave>span{display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;margin-inline-end:4px;animation:skWave 1.2s var(--sak-ease) infinite}.sk-wave>span:nth-child(2){animation-delay:.15s}.sk-wave>span:nth-child(3){animation-delay:.3s}@keyframes skWave{0%,60%,to{transform:translateY(0);opacity:.55}30%{transform:translateY(-5px);opacity:1}}.sk-fade-up{animation:skFadeUp .5s var(--sak-ease) both}@keyframes skFadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.sk-progress{position:relative;overflow:hidden}.sk-progress>i{position:absolute;inset:0;background:linear-gradient(90deg,transparent,var(--sk-accent),transparent);width:40%;animation:skProg 1.4s var(--sak-ease) infinite}@keyframes skProg{0%{transform:translateX(-100%)}to{transform:translateX(280%)}}.sk-tip{position:relative}.sk-tip:before{content:attr(data-tip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%) translateY(2px);white-space:nowrap;background:var(--sk-ink);color:var(--sk-bg);padding:4px 8px;border-radius:3px;font-size:11px;font-family:var(--font-cormorant),serif;font-style:italic;opacity:0;pointer-events:none;transition:opacity .18s,transform .18s}.sk-tip:hover:before{opacity:1;transform:translateX(-50%) translateY(0)}