:root{--primary-bg:linear-gradient(135deg,#667eea,#764ba2);--card-bg:hsla(0,0%,100%,.15);--card-hover-bg:hsla(0,0%,100%,.25);--text-primary:#fff;--text-secondary:hsla(0,0%,100%,.9);--border-radius:16px;--border-radius-small:12px;--shadow-light:0 8px 32px rgba(31,38,135,.37);--shadow-hover:0 12px 40px rgba(31,38,135,.5);--backdrop-blur:blur(10px);--transition:all 0.3s cubic-bezier(0.25,0.46,0.45,0.94);--accent-color-1:#667eea;--accent-color-2:#764ba2;--icon-size:clamp(32px,5vw,48px);--card-size:clamp(90px,12vw,120px);--grid-gap:clamp(16px,3vw,24px);--padding-sm:clamp(8px,2vw,16px);--padding-md:clamp(16px,3vw,24px);--font-size-sm:clamp(11px,2vw,13px);--font-size-md:clamp(13px,2.5vw,16px)}body.theme-ocean{--primary-bg:linear-gradient(135deg,#00c6ff,#0072ff);--card-bg:hsla(0,0%,100%,.15);--card-hover-bg:hsla(0,0%,100%,.25);--shadow-light:0 8px 32px rgba(0,114,255,.37);--shadow-hover:0 12px 40px rgba(0,114,255,.5);--accent-color-1:#00c6ff;--accent-color-2:#0072ff}body.theme-ocean:before{background:radial-gradient(circle at 20% 50%,rgba(0,198,255,.3) 0,transparent 50%),radial-gradient(circle at 80% 20%,rgba(0,114,255,.3) 0,transparent 50%),radial-gradient(circle at 40% 80%,rgba(135,206,250,.3) 0,transparent 50%)}body.theme-sunset{--primary-bg:linear-gradient(135deg,#ff9a56,#ff6b9d);--card-bg:hsla(0,0%,100%,.15);--card-hover-bg:hsla(0,0%,100%,.25);--shadow-light:0 8px 32px rgba(255,154,86,.37);--shadow-hover:0 12px 40px rgba(255,154,86,.5);--accent-color-1:#ff9a56;--accent-color-2:#ff6b9d}body.theme-sunset:before{background:radial-gradient(circle at 20% 50%,rgba(255,154,86,.3) 0,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,107,157,.3) 0,transparent 50%),radial-gradient(circle at 40% 80%,rgba(255,183,77,.3) 0,transparent 50%)}body.theme-forest{--primary-bg:linear-gradient(135deg,#56ab2f,#a8e6cf);--card-bg:hsla(0,0%,100%,.15);--card-hover-bg:hsla(0,0%,100%,.25);--shadow-light:0 8px 32px rgba(86,171,47,.37);--shadow-hover:0 12px 40px rgba(86,171,47,.5);--accent-color-1:#56ab2f;--accent-color-2:#a8e6cf}body.theme-forest:before{background:radial-gradient(circle at 20% 50%,rgba(86,171,47,.3) 0,transparent 50%),radial-gradient(circle at 80% 20%,rgba(168,230,207,.3) 0,transparent 50%),radial-gradient(circle at 40% 80%,rgba(124,179,66,.3) 0,transparent 50%)}body.theme-dark{--primary-bg:linear-gradient(135deg,#2c2c2c,#1a1a1a);--card-bg:hsla(0,0%,100%,.1);--card-hover-bg:hsla(0,0%,100%,.15);--shadow-light:0 8px 32px rgba(0,0,0,.6);--shadow-hover:0 12px 40px rgba(0,0,0,.8);--accent-color-1:#6c6c6c;--accent-color-2:#333}body.theme-dark:before{background:radial-gradient(circle at 20% 50%,hsla(0,0%,42%,.15) 0,transparent 50%),radial-gradient(circle at 80% 20%,rgba(51,51,51,.15) 0,transparent 50%),radial-gradient(circle at 40% 80%,rgba(75,75,75,.15) 0,transparent 50%)}body.theme-space{--primary-bg:linear-gradient(45deg,transparent 25%,hsla(0,0%,100%,.02) 35%,rgba(190,180,255,.04) 45%,hsla(0,0%,100%,.03) 55%,transparent 65%),linear-gradient(135deg,#050515,#0b1426 15%,#1b2951 40%,#1f2b69 60%,#1a2440 80%,#0f1a35);--card-bg:hsla(0,0%,100%,.08);--card-hover-bg:rgba(139,192,255,.15);--shadow-light:0 8px 32px rgba(59,130,246,.25);--shadow-hover:0 16px 48px rgba(59,130,246,.4);--accent-color-1:#3b82f6;--accent-color-2:#8b92ff;--text-primary:#e2e8f0;--text-secondary:rgba(226,232,240,.9)}body.theme-space:before{background:radial-gradient(2px 2px at 15% 25%,#fff,transparent),radial-gradient(2px 2px at 85% 35%,hsla(0,0%,100%,.9),transparent),radial-gradient(1px 1px at 45% 15%,#fff,transparent),radial-gradient(2px 2px at 75% 85%,hsla(0,0%,100%,.8),transparent),radial-gradient(1px 1px at 25% 75%,#fff,transparent),radial-gradient(2px 2px at 65% 45%,hsla(0,0%,100%,.7),transparent),radial-gradient(1px 1px at 35% 55%,#fff,transparent),radial-gradient(2px 2px at 5% 65%,hsla(0,0%,100%,.9),transparent),radial-gradient(1px 1px at 95% 15%,#fff,transparent),radial-gradient(1px 1px at 55% 95%,hsla(0,0%,100%,.8),transparent),radial-gradient(1px 1px at 82% 12%,hsla(0,0%,100%,.6),transparent),radial-gradient(2px 2px at 28% 38%,#fff,transparent),radial-gradient(1px 1px at 52% 72%,hsla(0,0%,100%,.7),transparent),radial-gradient(1px 1px at 18% 48%,#fff,transparent),radial-gradient(2px 2px at 88% 68%,hsla(0,0%,100%,.8),transparent),radial-gradient(1px 1px at 62% 22%,hsla(0,0%,100%,.9),transparent),radial-gradient(1px 1px at 8% 82%,#fff,transparent),radial-gradient(2px 2px at 72% 58%,hsla(0,0%,100%,.6),transparent),radial-gradient(1px 1px at 38% 8%,hsla(0,0%,100%,.8),transparent),radial-gradient(1px 1px at 92% 92%,#fff,transparent),radial-gradient(1px 1px at 12% 62%,hsla(0,0%,100%,.7),transparent),radial-gradient(2px 2px at 48% 88%,hsla(0,0%,100%,.9),transparent),radial-gradient(1px 1px at 8% 12%,hsla(0,0%,100%,.7),transparent),radial-gradient(1px 1px at 22% 32%,#fff,transparent),radial-gradient(.5px .5px at 38% 52%,hsla(0,0%,100%,.6),transparent),radial-gradient(1px 1px at 52% 22%,hsla(0,0%,100%,.8),transparent),radial-gradient(.5px .5px at 68% 42%,#fff,transparent),radial-gradient(1px 1px at 78% 62%,hsla(0,0%,100%,.7),transparent),radial-gradient(.5px .5px at 88% 82%,hsla(0,0%,100%,.6),transparent),radial-gradient(1px 1px at 92% 18%,#fff,transparent),radial-gradient(.8px .8px at 5% 8%,hsla(0,0%,100%,.5),transparent),radial-gradient(1px 1px at 15% 18%,hsla(0,0%,100%,.6),transparent),radial-gradient(.8px .8px at 25% 28%,hsla(0,0%,100%,.4),transparent),radial-gradient(1px 1px at 35% 38%,hsla(0,0%,100%,.7),transparent),radial-gradient(.8px .8px at 45% 48%,hsla(0,0%,100%,.5),transparent),radial-gradient(1px 1px at 55% 58%,hsla(0,0%,100%,.6),transparent),radial-gradient(.8px .8px at 65% 68%,hsla(0,0%,100%,.4),transparent),radial-gradient(1px 1px at 75% 78%,hsla(0,0%,100%,.7),transparent),radial-gradient(.8px .8px at 85% 88%,hsla(0,0%,100%,.5),transparent),radial-gradient(1px 1px at 95% 98%,hsla(0,0%,100%,.6),transparent),radial-gradient(.8px .8px at 10% 90%,hsla(0,0%,100%,.4),transparent),radial-gradient(1px 1px at 20% 80%,hsla(0,0%,100%,.5),transparent),radial-gradient(.8px .8px at 30% 70%,hsla(0,0%,100%,.7),transparent),radial-gradient(1px 1px at 40% 60%,hsla(0,0%,100%,.4),transparent),radial-gradient(.8px .8px at 50% 50%,hsla(0,0%,100%,.6),transparent),radial-gradient(1px 1px at 60% 40%,hsla(0,0%,100%,.5),transparent),radial-gradient(.8px .8px at 70% 30%,hsla(0,0%,100%,.7),transparent),radial-gradient(1px 1px at 80% 20%,hsla(0,0%,100%,.4),transparent),radial-gradient(.8px .8px at 90% 10%,hsla(0,0%,100%,.6),transparent),radial-gradient(ellipse 400px 250px at 25% 40%,rgba(147,99,255,.1) 0,rgba(99,130,246,.08) 30%,rgba(59,130,246,.06) 60%,transparent 85%),radial-gradient(ellipse 300px 180px at 75% 25%,rgba(99,130,246,.15) 0,rgba(139,146,255,.1) 40%,rgba(99,102,241,.05) 70%,transparent 90%),radial-gradient(ellipse 250px 150px at 60% 80%,rgba(196,72,200,.08) 0,rgba(147,51,234,.05) 50%,transparent 80%),radial-gradient(ellipse 200px 300px at 85% 60%,rgba(6,182,212,.08) 0,rgba(14,165,233,.04) 60%,transparent 85%),radial-gradient(circle 120px at 15% 75%,rgba(119,81,234,.06) 0,transparent 70%);background-size:100vw 100vh}body.theme-space:after,body.theme-space:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;z-index:-1}body.theme-space:after{background:radial-gradient(1px 1px at 12% 45%,hsla(0,0%,100%,.6),transparent),radial-gradient(1px 1px at 68% 12%,#fff,transparent),radial-gradient(1px 1px at 92% 67%,hsla(0,0%,100%,.8),transparent),radial-gradient(1px 1px at 38% 83%,#fff,transparent),radial-gradient(1px 1px at 78% 28%,hsla(0,0%,100%,.7),transparent),radial-gradient(1px 1px at 23% 18%,#fff,transparent),radial-gradient(1px 1px at 57% 72%,hsla(0,0%,100%,.9),transparent),radial-gradient(1px 1px at 8% 88%,hsla(0,0%,100%,.6),transparent),radial-gradient(1px 1px at 88% 8%,#fff,transparent),radial-gradient(1px 1px at 42% 38%,hsla(0,0%,100%,.5),transparent),radial-gradient(1px 1px at 72% 58%,#fff,transparent),radial-gradient(1px 1px at 18% 62%,hsla(0,0%,100%,.7),transparent),radial-gradient(1px 1px at 33% 28%,hsla(0,0%,100%,.4),transparent),radial-gradient(1px 1px at 87% 43%,hsla(0,0%,100%,.8),transparent),radial-gradient(1px 1px at 13% 78%,#fff,transparent),radial-gradient(1px 1px at 63% 8%,hsla(0,0%,100%,.6),transparent),radial-gradient(1px 1px at 47% 53%,hsla(0,0%,100%,.5),transparent),radial-gradient(1px 1px at 77% 73%,#fff,transparent),radial-gradient(1px 1px at 27% 93%,hsla(0,0%,100%,.7),transparent),radial-gradient(1px 1px at 97% 23%,hsla(0,0%,100%,.4),transparent),radial-gradient(1px 1px at 7% 33%,hsla(0,0%,100%,.8),transparent),radial-gradient(1px 1px at 53% 18%,#fff,transparent),radial-gradient(1px 1px at 83% 88%,hsla(0,0%,100%,.6),transparent),radial-gradient(1px 1px at 17% 8%,hsla(0,0%,100%,.5),transparent),radial-gradient(1px 1px at 67% 63%,#fff,transparent),radial-gradient(1px 1px at 37% 43%,hsla(0,0%,100%,.7),transparent),radial-gradient(1px 1px at 93% 3%,hsla(0,0%,100%,.4),transparent),radial-gradient(1px 1px at 3% 53%,hsla(0,0%,100%,.8),transparent),radial-gradient(1px 1px at 73% 38%,#fff,transparent),radial-gradient(1px 1px at 43% 78%,hsla(0,0%,100%,.6),transparent),radial-gradient(1px 1px at 28% 13%,hsla(0,0%,100%,.5),transparent),radial-gradient(1px 1px at 58% 33%,#fff,transparent),radial-gradient(1px 1px at 98% 58%,hsla(0,0%,100%,.7),transparent),radial-gradient(1px 1px at 48% 98%,hsla(0,0%,100%,.4),transparent),radial-gradient(1px 1px at 22% 52%,hsla(0,0%,100%,.8),transparent),radial-gradient(.5px .5px at 14% 24%,hsla(0,0%,100%,.5),transparent),radial-gradient(1px 1px at 34% 44%,hsla(0,0%,100%,.7),transparent),radial-gradient(.5px .5px at 54% 64%,#fff,transparent),radial-gradient(1px 1px at 74% 84%,hsla(0,0%,100%,.6),transparent),radial-gradient(.5px .5px at 84% 14%,hsla(0,0%,100%,.8),transparent),radial-gradient(1px 1px at 94% 34%,hsla(0,0%,100%,.5),transparent),radial-gradient(.5px .5px at 64% 94%,#fff,transparent),radial-gradient(1px 1px at 44% 74%,hsla(0,0%,100%,.7),transparent),radial-gradient(.8px .8px at 6% 16%,hsla(0,0%,100%,.5),transparent),radial-gradient(1px 1px at 16% 26%,hsla(0,0%,100%,.6),transparent),radial-gradient(.8px .8px at 26% 36%,hsla(0,0%,100%,.4),transparent),radial-gradient(1px 1px at 36% 46%,hsla(0,0%,100%,.7),transparent),radial-gradient(.8px .8px at 46% 56%,hsla(0,0%,100%,.5),transparent),radial-gradient(1px 1px at 56% 66%,hsla(0,0%,100%,.6),transparent),radial-gradient(.8px .8px at 66% 76%,hsla(0,0%,100%,.4),transparent),radial-gradient(1px 1px at 76% 86%,hsla(0,0%,100%,.7),transparent),radial-gradient(.8px .8px at 86% 96%,hsla(0,0%,100%,.5),transparent),radial-gradient(1px 1px at 96% 6%,hsla(0,0%,100%,.6),transparent),radial-gradient(.8px .8px at 11% 91%,hsla(0,0%,100%,.4),transparent),radial-gradient(1px 1px at 21% 81%,hsla(0,0%,100%,.5),transparent),radial-gradient(.8px .8px at 31% 71%,hsla(0,0%,100%,.7),transparent),radial-gradient(1px 1px at 41% 61%,hsla(0,0%,100%,.4),transparent),radial-gradient(.8px .8px at 51% 51%,hsla(0,0%,100%,.6),transparent),radial-gradient(1px 1px at 61% 41%,hsla(0,0%,100%,.5),transparent),radial-gradient(.8px .8px at 71% 31%,hsla(0,0%,100%,.7),transparent),radial-gradient(1px 1px at 81% 21%,hsla(0,0%,100%,.4),transparent),radial-gradient(.8px .8px at 91% 11%,hsla(0,0%,100%,.6),transparent),radial-gradient(1px 1px at 1% 51%,hsla(0,0%,100%,.5),transparent),radial-gradient(.8px .8px at 99% 49%,hsla(0,0%,100%,.4),transparent),radial-gradient(3px 3px at 45% 20%,hsla(0,0%,100%,.9),rgba(173,216,230,.3) 0,transparent 4px),radial-gradient(2.5px 2.5px at 80% 70%,hsla(0,0%,100%,.95),rgba(183,156,235,.25) 0,transparent 3px),radial-gradient(2px 2px at 20% 60%,hsla(0,0%,100%,.9),rgba(119,81,234,.2) 0,transparent 3px);background-size:100vw 100vh}*{box-sizing:border-box}body,html{margin:0;padding:0;height:100vh;overflow-x:hidden}body{background:var(--primary-bg);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;color:var(--text-primary);display:flex;flex-direction:column;min-height:100vh;position:relative}.header{padding:var(--padding-md);display:flex;justify-content:space-between;align-items:center;backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:var(--backdrop-blur)}.logo{font-size:clamp(18px,4vw,24px);font-weight:600;color:var(--text-primary);text-shadow:0 2px 4px rgba(0,0,0,.3)}.grid-container{flex:1;padding:0 var(--padding-md) var(--padding-md);display:flex;flex-direction:column;align-items:center;justify-content:center;overflow-y:auto;scrollbar-width:thin;scrollbar-color:hsla(0,0%,100%,.3) transparent}.tabs-container{width:100%;max-width:min(1200px,90vw);margin-bottom:var(--padding-md)}.tabs-nav{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding:0 var(--padding-sm)}.tab-button{background:var(--card-bg);border:none;border-radius:var(--border-radius-small);padding:10px 18px;color:var(--text-primary);font-size:16px;font-weight:500;cursor:pointer;transition:var(--transition);backdrop-filter:var(--backdrop-blur);border:1px solid hsla(0,0%,100%,.15);position:relative;overflow:hidden;line-height:1.2}.tab-button:hover{background:var(--card-hover-bg);transform:translateY(-2px);box-shadow:var(--shadow-light)}.tab-button.active{background:hsla(0,0%,100%,.25);border-color:hsla(0,0%,100%,.4);box-shadow:0 0 12px hsla(0,0%,100%,.2),var(--shadow-light);color:hsla(0,0%,100%,.95)}.tab-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.1),transparent);transition:left .5s}.tab-button:hover:before{left:100%}.tab-button{letter-spacing:.5px}@supports (unicode-range:U+1F300-1F5FF){.tab-button{font-feature-settings:"liga" 1}}.grid-container::-webkit-scrollbar{width:6px}.grid-container::-webkit-scrollbar-track{background:transparent}.grid-container::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.3);border-radius:3px}.grid{display:grid;grid-template-columns:repeat(auto-fit,var(--card-size));gap:var(--grid-gap);width:100%;max-width:min(1200px,90vw);padding:var(--padding-md) 0;place-items:center}.grid,.shortcut{justify-content:center}.shortcut{display:flex;flex-direction:column;align-items:center;text-decoration:none;color:var(--text-primary);background:var(--card-bg);padding:var(--padding-sm);border-radius:var(--border-radius);border:1px solid hsla(0,0%,100%,.2);backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:var(--backdrop-blur);box-shadow:var(--shadow-light);transition:var(--transition);font-size:var(--font-size-sm);font-weight:500;width:var(--card-size);height:var(--card-size);position:relative;overflow:hidden}.shortcut:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.1),transparent);transition:left .5s}.shortcut:hover:before{left:100%}.shortcut:hover{transform:translateY(-4px);background:var(--card-hover-bg);box-shadow:var(--shadow-hover);border-color:hsla(0,0%,100%,.4)}.shortcut:active{transform:translateY(-2px);transition:var(--transition)}.shortcut img{width:var(--icon-size);height:var(--icon-size);margin-bottom:8px;border-radius:6px;transition:var(--transition);filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));background:transparent!important}.shortcut:hover img{transform:scale(1.1)}.shortcut-title{text-align:center;line-height:1.2;word-wrap:break-word;hyphens:auto;max-width:100%;text-shadow:0 1px 2px rgba(0,0,0,.5)}body.card-size-small{--card-size:clamp(70px,8vw,90px);--icon-size:clamp(24px,3vw,32px);--grid-gap:clamp(12px,2vw,16px);--padding-sm:clamp(6px,1.5vw,12px);--font-size-sm:clamp(10px,1.8vw,12px)}body.card-size-medium{--card-size:clamp(90px,12vw,120px);--icon-size:clamp(32px,5vw,48px);--grid-gap:clamp(16px,3vw,24px);--padding-sm:clamp(8px,2vw,16px);--font-size-sm:clamp(11px,2vw,13px)}body.card-size-large{--card-size:clamp(120px,16vw,160px);--icon-size:clamp(48px,7vw,64px);--grid-gap:clamp(20px,4vw,32px);--padding-sm:clamp(12px,3vw,20px);--font-size-sm:clamp(12px,2.5vw,15px)}body.grid-columns-auto .grid{grid-template-columns:repeat(auto-fit,var(--card-size))}body.grid-columns-4 .grid{grid-template-columns:repeat(4,1fr);max-width:calc(4 * var(--card-size) + 3 * var(--grid-gap))}body.grid-columns-4 .shortcut{width:var(--card-size);height:var(--card-size)}body.grid-columns-6 .grid{grid-template-columns:repeat(6,1fr);max-width:calc(6 * var(--card-size) + 5 * var(--grid-gap))}body.grid-columns-6 .shortcut{width:var(--card-size);height:var(--card-size)}body.grid-columns-8 .grid{grid-template-columns:repeat(8,1fr);max-width:calc(8 * var(--card-size) + 7 * var(--grid-gap))}body.grid-columns-8 .shortcut{width:var(--card-size);height:var(--card-size)}body.grid-columns-full .grid{display:grid;grid-template-columns:repeat(auto-fill,var(--card-size));gap:var(--grid-gap);max-width:100%;width:100%;justify-content:center}body.grid-columns-full .shortcut{width:var(--card-size);height:var(--card-size);flex-shrink:0}body.grid-columns-full .shortcut .title{word-wrap:break-word;word-break:break-word;overflow-wrap:break-word;hyphens:auto;line-height:1.2;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2}@media (max-width:1200px){body.grid-columns-8 .grid{grid-template-columns:repeat(6,1fr);max-width:calc(6 * var(--card-size) + 5 * var(--grid-gap))}}@media (max-width:900px){body.grid-columns-6 .grid,body.grid-columns-8 .grid{grid-template-columns:repeat(4,1fr);max-width:calc(4 * var(--card-size) + 3 * var(--grid-gap))}}@media (max-width:600px){body.grid-columns-4 .grid,body.grid-columns-6 .grid,body.grid-columns-8 .grid{grid-template-columns:repeat(3,1fr);max-width:calc(3 * var(--card-size) + 2 * var(--grid-gap))}}@media (max-width:480px){body.grid-columns-4 .grid,body.grid-columns-6 .grid,body.grid-columns-8 .grid{grid-template-columns:repeat(auto-fit,minmax(70px,1fr))}body.grid-columns-full .grid{grid-template-columns:repeat(auto-fill,minmax(70px,1fr))}}#edit{background:var(--card-bg);border:1px solid hsla(0,0%,100%,.2);border-radius:50%;color:var(--text-primary);width:44px;height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition);backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:var(--backdrop-blur);box-shadow:var(--shadow-light);font-size:18px}#edit:hover{background:var(--card-hover-bg);transform:scale(1.1);box-shadow:var(--shadow-hover)}@media (max-width:768px){:root{--grid-gap:16px;--padding-md:16px}.grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr));padding:16px 0}.logo{font-size:18px}}@media (max-width:480px){:root{--card-size:70px;--icon-size:28px;--grid-gap:12px;--padding-md:12px}.grid{grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:12px}.shortcut{padding:8px}#edit{width:36px;height:36px;font-size:16px}}#editor{display:none}