:root{--color-bg-main: #FCFBF7;--color-card-bg: #FFFFFF;--color-text-main: #2D3436;--color-text-muted: #636E72;--color-safe: #62C4DA;--color-warning: #FFDE96;--color-primary: #FA855A;--color-danger: #C93638;--color-legendary: #FFD700;--color-excellent: #52C41A;--color-bad: #E67E22;--color-border: #2D3436;--color-shadow: #2D3436;--color-border-soft: rgba(45, 52, 54, .1);--color-border-medium: rgba(45, 52, 54, .15);--color-danger-soft: rgba(201, 54, 56, .05);--color-black-soft: rgba(0, 0, 0, .04);--color-black-medium: rgba(0, 0, 0, .05);--color-black-ultralight: rgba(0, 0, 0, .015)}.bg-safe{background-color:var(--color-safe)}.bg-warning{background-color:var(--color-warning)}.bg-primary{background-color:var(--color-primary)}.bg-danger{background-color:var(--color-danger)}.text-danger{color:var(--color-danger);font-weight:700}.text-primary{color:var(--color-primary)}@font-face{font-family:SmileySans;src:url(/assets/woff2/SmileySans-Oblique.ttf-BYTP4iXn.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{--font-fancy: "Fredoka", "SmileySans", "PingFang SC", "Microsoft YaHei", sans-serif;--font-body: "Quicksand", "SmileySans", "PingFang SC", "Segoe UI", sans-serif}body{font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5;color:var(--color-text-main)}button,input,textarea,select,.interactive-element,.button-font{font-family:var(--font-fancy)}h1,h2,h3,.title-font{font-family:var(--font-fancy);letter-spacing:.05em;font-weight:700}.btn-option,.btn-main-style{font-family:var(--font-fancy);font-size:1.1rem;font-weight:600}.number-display{font-family:Fredoka,sans-serif;font-variant-numeric:tabular-nums}.btn-text{font-family:var(--font-fancy);font-size:.9rem}:root{--border-width: 3px;--radius-lg: 24px;--radius-md: 12px;--transition: all .2s cubic-bezier(.175, .885, .32, 1.275)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{background-color:var(--color-bg-main);margin:0;min-height:100vh;font-family:Fredoka,Quicksand,SmileySans,PingFang SC,sans-serif;color:var(--color-text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5;overflow-y:overlay}button,input,textarea,select{font-family:Fredoka,SmileySans,sans-serif;font-size:inherit;color:inherit;outline:none}a{text-decoration:none;color:inherit}::-webkit-scrollbar{width:16px;height:16px}::-webkit-scrollbar-track{background-color:var(--color-bg-main);border-left:var(--border-width) solid var(--color-border)}::-webkit-scrollbar-thumb{background-color:var(--color-primary);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md)}::-webkit-scrollbar-thumb:hover{background-color:var(--color-warning)}::-webkit-scrollbar-thumb:active{background-color:var(--color-danger)}img,video{max-width:100%;height:auto;display:block}.app-layout{display:flex;flex-direction:column;min-height:100vh;width:100%;overflow-x:hidden}.global-bg-decor{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;background-color:var(--color-bg-main);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.06'/%3E%3C/svg%3E"),conic-gradient(#00000005 .25turn,transparent .25turn .5turn,#00000005 .5turn .75turn,transparent .75turn);background-size:120px 120px,200px 200px;pointer-events:none}.main-content{flex:1;margin-top:70px;padding:40px 20px;display:flex;flex-direction:column;align-items:center;width:100%;box-sizing:border-box;min-height:calc(100vh - 130px)}.container{width:100%;max-width:1000px;display:flex;flex-direction:column;align-items:center;justify-content:center;margin-bottom:20px;position:relative;z-index:5}.footer{background:var(--color-card-bg);border-top:var(--border-width) solid var(--color-border);padding:30px 0;margin-top:40px;z-index:10}.footer-container{display:flex;flex-direction:column;align-items:center;gap:20px}.footer-links{display:flex;gap:15px}.copyright-text{font-size:.75rem;color:var(--color-text-muted);margin-top:10px}@media(max-width:480px){.main-content{margin-top:60px;padding:20px 15px}.global-bg-decor{background-size:120px 120px,100px 100px}}.card{background:var(--color-card-bg);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);padding:2rem;width:100%;box-shadow:10px 10px 0 0 var(--color-shadow);display:flex;flex-direction:column;transition:var(--transition);position:relative;box-sizing:border-box;overflow:hidden;font-family:Quicksand,SmileySans,sans-serif}.interactive-element{cursor:pointer;transition:var(--transition);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-card-bg);font-family:Fredoka,SmileySans,sans-serif;display:flex;align-items:center;justify-content:center;gap:8px;box-sizing:border-box;text-decoration:none;color:var(--color-text-main);-webkit-user-select:none;user-select:none}.interactive-element:hover:not(:disabled){background-color:var(--color-warning);transform:translate(-4px,-4px);box-shadow:4px 4px 0 0 var(--color-shadow)}.interactive-element:active,.interactive-element.selected{transform:translate(2px,2px);box-shadow:0 0 0 0 var(--color-shadow)}.interactive-element:disabled{cursor:not-allowed;opacity:.4;filter:grayscale(1)}.btn-main-style{background-color:var(--color-primary);justify-content:center;font-size:1.2rem;font-weight:700;padding:1rem 2rem}.btn-text{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-family:Fredoka,SmileySans,sans-serif;font-size:.9rem;transition:color .2s;padding:5px 10px}.btn-text:hover{color:var(--color-primary);text-decoration:underline}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .4s ease-out forwards}@keyframes scaleUp{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.scale-up{animation:scaleUp .5s cubic-bezier(.175,.885,.32,1.275) forwards}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px) rotate(-1deg)}75%{transform:translate(5px) rotate(1deg)}}.danger-shake{animation:shake .2s infinite}
