:root{--bg: #f8fafc;--card: #fff;--shadow: #e2e8f0;--primary: #3b82f6;--hover: #2563eb;--text: #1e293b;--text-light: #64748b;--bar-height: 44px;--gap-size: clamp(12px, 2vh, 20px);--container-width: min(800px, 92vw)}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{height:100%;height:-webkit-fill-available;overflow:hidden}body{height:100%;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;color:var(--text);line-height:1.5;-webkit-text-size-adjust:100%;overflow:hidden;overscroll-behavior:none}a{text-decoration:none;color:inherit;-webkit-tap-highlight-color:transparent}#app{width:100%;height:100%}.page-wrapper{width:100%;height:100%;display:flex;flex-direction:column;background:linear-gradient(135deg,var(--bg),#f1f5f9);transform:translateZ(0);-webkit-transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}@supports (height: 100dvh){body,.page-wrapper{height:100dvh}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.card[data-v-d8fa71db]{background:var(--card);border-radius:12px;text-decoration:none;color:inherit;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;padding:clamp(16px,2vh,24px);transform:translateZ(0);-webkit-transform:translateZ(0);will-change:transform,box-shadow;touch-action:manipulation;height:100%}.card[data-v-d8fa71db]:hover{transform:translateY(-2px) translateZ(0);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.icon-wrap[data-v-d8fa71db]{width:clamp(40px,min(8vh,8vw),56px);height:clamp(40px,min(8vh,8vw),56px);margin-bottom:max(8px,1vh);display:flex;align-items:center;justify-content:center;border-radius:10px;background:var(--card);box-shadow:inset 0 2px 4px #ffffffe6,0 2px 4px #0000001a;transition:transform .3s ease;will-change:transform}.icon[data-v-d8fa71db]{width:clamp(24px,min(5vh,5vw),32px);height:clamp(24px,min(5vh,5vw),32px);stroke:var(--primary);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;fill:none;transition:all .3s ease;will-change:transform}.card:hover .icon-wrap[data-v-d8fa71db]{transform:scale(1.05)}.card:hover .icon[data-v-d8fa71db]{stroke:var(--hover);transform:scale(1.1)}.title[data-v-d8fa71db]{font-size:clamp(.9375rem,min(2.5vh,2.5vw),1rem);font-weight:600;margin-bottom:max(4px,.5vh);color:var(--text)}.desc[data-v-d8fa71db]{font-size:clamp(.8125rem,min(2.2vh,2.2vw),.875rem);color:var(--text-light);line-height:1.4;max-width:90%;text-align:center}.page-wrapper[data-v-04a3a403]{display:flex;flex-direction:column;height:100vh;background-color:var(--bg)}.header-bar[data-v-04a3a403]{height:var(--bar-height);background:#fffffff2;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;box-shadow:0 1px 3px #0000001a;flex-shrink:0;position:relative;z-index:10}.header-title[data-v-04a3a403]{font-size:.875rem;color:var(--text-light);opacity:.8;font-weight:500;letter-spacing:.02em;padding:0 var(--gap-size);text-align:center}.main-wrapper[data-v-04a3a403]{flex:1;overflow:hidden;position:relative;display:flex;align-items:center;justify-content:center}.container[data-v-04a3a403]{width:var(--container-width);display:grid;grid-template-columns:1fr;gap:var(--gap-size);padding:calc(var(--gap-size) * .8);margin:auto}.card-wrapper[data-v-04a3a403]{cursor:pointer}.icp[data-v-04a3a403]{height:var(--bar-height);background:#fffffff2;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;box-shadow:0 -1px 3px #0000001a;flex-shrink:0;position:relative;z-index:10}.icp a[data-v-04a3a403]{color:var(--text-light);text-decoration:none;transition:color .2s ease,opacity .2s ease;opacity:.8;font-size:.875rem}.icp a[data-v-04a3a403]:hover{color:var(--primary);opacity:1}@media (max-width: 480px){[data-v-04a3a403]:root{--container-width: 94vw;--gap-size: clamp(10px, 1.8vh, 16px)}}
