:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,sans-serif;line-height:1.5;font-weight:400}a{color:inherit;text-decoration:none}a:hover{text-decoration:none}body{margin:0;min-width:320px;min-height:100vh}button{font-family:inherit}:root{--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--app-bg: #f2f3f5;--app-gradient: linear-gradient(180deg, #f2f3f5 0%, #f2f3f5 100%);--text-primary: #111111;--text-secondary: rgba(17, 17, 17, .72);--text-muted: rgba(17, 17, 17, .45);--key-bg: #ffffff;--key-bg-active: #f1f1f1;--key-text: #111111;--key-shadow: transparent;--wheel-highlight-bg: #ffffff;--saved-color: #2e7d32;--install-banner-bg: #ffffff;--install-banner-title: #111111;--install-banner-desc: rgba(17, 17, 17, .6);--install-banner-btn-bg: #4caf50;--install-banner-btn-text: #ffffff;--install-banner-close-bg: rgba(0, 0, 0, .08);--install-banner-close-color: rgba(0, 0, 0, .7);--install-modal-bg: #ffffff;--install-modal-text: #111111;--theme-btn-bg: #ffffff;--theme-btn-shadow: transparent}:root[data-theme=dark]{--app-bg: #000000;--app-gradient: radial-gradient(circle at top, #0f0f0f 0, #000000 60%);--text-primary: #ffffff;--text-secondary: rgba(255, 255, 255, .85);--text-muted: rgba(255, 255, 255, .55);--key-bg: #3a3a3c;--key-bg-active: #505053;--key-text: #ffffff;--key-shadow: rgba(0, 0, 0, .5);--wheel-highlight-bg: rgba(58, 58, 60, .92);--saved-color: #4caf50;--install-banner-bg: rgba(58, 58, 60, .92);--install-banner-title: rgba(255, 255, 255, .95);--install-banner-desc: rgba(255, 255, 255, .7);--install-banner-btn-bg: #4caf50;--install-banner-btn-text: #ffffff;--install-banner-close-bg: rgba(0, 0, 0, .35);--install-banner-close-color: rgba(255, 255, 255, .9);--install-modal-bg: rgba(58, 58, 60, .98);--install-modal-text: rgba(255, 255, 255, .95);--theme-btn-bg: #3a3a3c;--theme-btn-shadow: transparent}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,sans-serif;background-color:var(--app-bg);color:var(--text-primary);-webkit-user-select:none;user-select:none;transition:background-color .3s ease,color .3s ease}#root{width:100vw;height:100vh;height:100dvh;margin:0}.app-root{width:100%;height:100%;display:flex;align-items:stretch;justify-content:center;background:var(--app-gradient);color:var(--text-primary)}.app-inner{width:100%;max-width:480px;padding:calc(10px + var(--safe-top)) calc(18px + var(--safe-right)) calc(20px + var(--safe-bottom)) calc(18px + var(--safe-left));display:flex;flex-direction:column;justify-content:flex-end;gap:14px;position:relative}.install-banner{position:absolute;top:var(--safe-top);left:0;right:0;margin:10px 18px;z-index:100;background:var(--install-banner-bg);border-radius:14px;padding:10px 12px;display:flex;align-items:center;gap:12px;box-shadow:0 4px 12px #00000014}.install-banner-left{flex:1;min-width:0;display:flex;align-items:center;gap:10px}.install-banner-icon{width:40px;height:40px;border-radius:10px;flex:0 0 auto}.install-banner-text{min-width:0}.install-banner-title{font-size:16px;font-weight:700;color:var(--install-banner-title);line-height:1.1}.install-banner-desc{margin-top:2px;font-size:12px;color:var(--install-banner-desc);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.install-banner-btn{flex:0 0 auto;height:36px;padding:0 14px;border-radius:10px;border:none;background:var(--install-banner-btn-bg);color:var(--install-banner-btn-text);font-size:14px;font-weight:700}.install-banner-btn:active{transform:scale(.98);filter:brightness(.95)}.install-banner-close{position:absolute;top:-7px;right:-8px;width:22px;height:22px;border:none;border-radius:50px;background:var(--install-banner-close-bg);color:var(--install-banner-close-color);font-size:18px;font-weight:700;line-height:1;padding:0;display:flex;align-items:center;justify-content:center;box-shadow:none;cursor:pointer}.install-banner-close:active{transform:scale(.96)}.install-modal-backdrop{position:fixed;inset:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1000}.install-modal{width:min(320px,calc(100vw - 48px));background:var(--install-modal-bg);border-radius:16px;padding:18px 16px 14px;color:var(--install-modal-text)}.install-modal-text{font-size:16px;font-weight:700;text-align:center}.install-modal-btn{margin-top:14px;width:100%;height:40px;border:none;border-radius:12px;background:#4caf50;color:#fff;font-size:15px;font-weight:700}.install-modal-btn:active{transform:scale(.99);filter:brightness(.95)}.theme-toggle{position:absolute;top:calc(10px + var(--safe-top));left:calc(18px + var(--safe-left));width:44px;height:44px;border-radius:50%;border:none;background-color:var(--theme-btn-bg);color:var(--key-text);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;box-shadow:none;transition:transform .12s ease,background-color .3s ease,top .3s ease}.has-install-banner .theme-toggle{top:calc(85px + var(--safe-top))}.theme-toggle:active{transform:scale(.92)}.theme-toggle svg{width:28px;height:28px;display:block}.theme-toggle svg path{fill:currentColor}.display-panel{padding:6px 4px 0}.display-label{font-size:18px;color:var(--text-muted);text-align:right;letter-spacing:.02em}.display-value{text-align:right;line-height:1.05;margin-bottom:6px;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}.display-value::-webkit-scrollbar{display:none}.display-value{-ms-overflow-style:none;scrollbar-width:none}.display-value.primary{font-size:64px;font-weight:200;letter-spacing:.02em}.display-value.secondary{font-size:64px;font-weight:200;color:var(--text-primary)}.saved-inline{margin-top:-2px;margin-bottom:10px;text-align:right;font-size:18px;color:var(--saved-color)}.portrait-only-mask{position:fixed;inset:0;background:#000;display:flex;align-items:center;justify-content:center;z-index:2000;color:#fff}.mask-content{display:flex;flex-direction:column;align-items:center;gap:24px;text-align:center}.portrait-hint-img{width:140px;height:auto;opacity:.9}.portrait-hint-text{font-size:16px;font-weight:500;letter-spacing:.05em;color:#fff;margin:0}.debug-panel{position:fixed;bottom:20px;right:20px;z-index:9999;display:flex;flex-direction:column;align-items:flex-end;gap:10px}.debug-toggle-btn{background:#333;color:#fff;border:none;padding:8px 12px;border-radius:8px;font-size:12px;cursor:pointer;box-shadow:0 2px 8px #0003}.debug-content{background:#fff;border:1px solid #ddd;padding:15px;border-radius:12px;box-shadow:0 4px 20px #00000026;min-width:200px}:root[data-theme=dark] .debug-content{background:#1c1c1e;border-color:#333;color:#fff}.debug-info{font-size:12px;margin-bottom:15px;line-height:1.6}.debug-info p{margin:4px 0}.debug-reset-btn{width:100%;background:#ff3b30;color:#fff;border:none;padding:10px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer}.debug-reset-btn:active{filter:brightness(.9)}.discount-section{padding:0 0 4px}.discount-title{display:none}.wheel-shell{position:relative;padding:4px 0 0}.wheel{position:relative;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;display:flex;align-items:center;gap:10px;padding:4px 0 6px}.wheel::-webkit-scrollbar{display:none}.wheel{-ms-overflow-style:none;scrollbar-width:none}.wheel-highlight{position:absolute;left:50%;top:0;bottom:0;width:85px;transform:translate(-50%);border-radius:999px;background:var(--wheel-highlight-bg);pointer-events:none}.wheel-pad{flex:0 0 auto;width:0px}.wheel-item{flex:0 0 auto;min-width:64px;padding:10px 0;border-radius:999px;border:none;outline:none;background:transparent;color:var(--text-secondary);font-size:20px;cursor:default;-webkit-user-select:none;user-select:none;scroll-snap-align:center;transition:transform .12s ease,opacity .12s ease,color .12s ease,background-color .12s ease;transform:scale(var(--scale, 1));opacity:var(--opacity, 1)}.wheel-item-active{color:var(--text-primary);background-color:transparent;box-shadow:none}.wheel-item:active{transform:scale(var(--scale, 1))}.number-pad{margin-top:8px;padding:4px 4px 0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.number-key{height:72px;border-radius:999px;border:none;outline:none;background:var(--key-bg);color:var(--key-text);font-size:28px;font-weight:400;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:none;transition:background-color .12s ease,transform .08s ease,box-shadow .12s ease}.number-key:active{transform:scale(1.06);background:var(--key-bg-active);box-shadow:none}.special-key{color:var(--key-text)}button:focus{outline:none}button:focus-visible{outline:none}@media(min-height:700px){.display-value.primary,.display-value.secondary{font-size:64px}.number-key{height:72px;font-size:24px}}@media(max-width:360px){.display-value.primary,.display-value.secondary{font-size:38px}.number-key{height:56px;font-size:20px}}
