:root{--color-purple:#7b4fd6;--color-purple-dark:#5c3bab;--color-purple-light:#9b6fe8;--color-amber:#f5c542;--color-amber-dark:#c9962a;--color-amber-bar:#f7d060;--color-score-text:#1a1a2e;--color-white:#fff;--color-gray-light:#e0e0e0;--color-gray:#9e9e9e;--color-gray-dark:#555;--color-orange:#ff6b35;--color-orange-dark:#e05a28;--color-overlay:#0000008c;--btn-gold-bg:#f5c542;--btn-gold:#7b4000;--font-size-score:clamp(72px, 20vw, 110px);--font-size-team:clamp(13px, 3.5vw, 16px);--font-size-small:11px;--font-size-base:14px;--btn-large:72px;--btn-medium:52px;--btn-small:40px;--btn-icon:36px;--header-height:56px;--ad-height:84px;--history-height:52px;--bottom-height:96px;--radius-full:9999px;--radius-md:12px;--radius-sm:8px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:#000;width:100%;height:100%;font-family:system-ui,-apple-system,Segoe UI,sans-serif;overflow:hidden}#root{background:#000;justify-content:center;align-items:stretch;width:100%;height:100%;display:flex}.app{background:var(--color-purple);flex-direction:column;width:100%;max-width:430px;height:100%;display:flex;position:relative;overflow:hidden}.no-select{-webkit-user-select:none;user-select:none}.ad-banner{height:var(--ad-height);letter-spacing:.06em;color:#888;text-transform:uppercase;background:#f0f0f0;border-bottom:1px solid #ddd;flex-shrink:0;justify-content:center;align-items:center;font-size:10px;font-weight:600;display:flex}.header{height:var(--header-height);background:var(--color-purple);flex-shrink:0;justify-content:space-between;align-items:center;padding:0 12px;display:flex}.header__title{color:var(--color-white);letter-spacing:.02em;font-size:16px;font-weight:800}.header__buttons{align-items:center;gap:14px;display:flex}.icon-btn{width:var(--btn-icon);height:var(--btn-icon);border-radius:var(--radius-full);cursor:pointer;background:var(--btn-gold-bg);color:var(--btn-gold);-webkit-tap-highlight-color:transparent;border:none;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;transition:transform .1s,opacity .15s;display:flex}.icon-btn:active{transform:scale(.92)}.icon-btn--active{background:var(--color-white);color:var(--color-purple)}.icon-btn--reset-inactive{color:#fff;opacity:.45;cursor:default;background:#aaa}.icon-btn--reset-step1{color:#fff;background:#f5a623}.icon-btn--reset-step2{color:#fff;background:#e8821a}.icon-btn--reset-step3{color:#fff;background:#d94f1e}.history-bar{height:var(--history-height);background:var(--color-amber-bar);border-bottom:2px solid var(--color-amber-dark);flex-shrink:0;align-items:center;gap:8px;padding:0 10px;display:flex}.history-bar__scroll{scrollbar-width:none;flex-direction:row;flex:1;align-items:center;gap:8px;display:flex;overflow:auto hidden}.history-bar__scroll::-webkit-scrollbar{display:none}.chip--add{border-radius:var(--radius-full);background:var(--color-purple);color:#0009;cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:22px;font-weight:400;line-height:1;transition:transform .1s;display:flex}.chip--add:active{transform:scale(.9)}.chip--add-disabled{opacity:.35;cursor:default}.chip--saved{border-radius:var(--radius-full);white-space:nowrap;background:#0000001f;flex-shrink:0;align-items:center;gap:10px;padding:6px 8px 6px 6px;display:flex}.chip__number{color:#0000008c;font-variant-numeric:tabular-nums;background:#0000002e;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;font-weight:700;display:flex}.chip__score{color:var(--color-score-text);font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}.chip__delete{cursor:pointer;color:#0006;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:50%;margin-left:2px;padding:2px 3px;font-size:14px;line-height:1}.chip__delete:active{color:#000c}.history-bar__empty{color:#0006;white-space:nowrap;margin-left:8px;font-size:12px;font-style:italic}.score-area{flex:1;display:flex;position:relative;overflow:hidden}.score-half{flex-direction:column;flex:1;align-items:center;display:flex;position:relative;overflow:hidden}.score-half:before{content:"";background:var(--half-color);opacity:.7;z-index:0;position:absolute;inset:0}.score-half>*{z-index:1;position:relative}.score-half__top{flex-direction:column;flex-shrink:0;align-items:center;gap:6px;width:100%;padding:34px 4px 0;display:flex}.score-half__minus-zone,.score-half__lower{flex:1;justify-content:center;align-items:center;display:flex}.score-btn{cursor:pointer;border-radius:var(--radius-full);-webkit-tap-highlight-color:transparent;border:none;flex-shrink:0;justify-content:center;align-items:center;font-weight:300;line-height:1;transition:transform .1s,opacity .15s;display:flex}.score-btn:active{transform:scale(.9)}.score-btn--minus{width:var(--btn-large);height:var(--btn-large);color:#0000008c;background:#ffffff2e;font-size:36px;transform:translateY(-36px)}.score-btn--minus:active{transform:translateY(-36px)scale(.9)}.score-half--right .score-btn--minus{color:#0000008c;background:#0000001f}.team-name{font-size:var(--font-size-team);letter-spacing:.08em;text-transform:uppercase;text-align:center;color:#000000b3;word-break:break-word;width:100%;padding:0 6px;font-weight:700;line-height:1.25}.team-name-input{font-size:var(--font-size-team);letter-spacing:.08em;text-transform:uppercase;text-align:center;border-radius:var(--radius-sm);color:#fff;background:#fff3;border:2px solid #ffffff80;outline:none;width:calc(100% - 8px);padding:4px 6px;font-family:inherit;font-weight:700}.score-half--right .team-name-input{color:var(--color-score-text);background:#0000001a;border-color:#0000004d}.color-swatch-btn{cursor:pointer;background:0 0;border:2px solid #ffffffb3;border-radius:50%;flex-shrink:0;width:22px;height:22px;padding:0;position:relative;overflow:hidden}.score-half--right .color-swatch-btn{border-color:#0000004d}.color-swatch-btn input[type=color]{opacity:0;cursor:pointer;border:none;width:calc(100% + 8px);height:calc(100% + 8px);padding:0;position:absolute;inset:-4px}.score-overlay{pointer-events:none;z-index:10;align-items:center;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.score-overlay__num,.score-overlay__colon{font-size:var(--font-size-score);color:var(--color-score-text);text-shadow:0 2px 16px #ffffff4d;align-items:center;font-weight:900;line-height:1;display:inline-flex}.score-overlay__num{font-variant-numeric:tabular-nums;justify-content:center;min-width:1.3ch}.score-overlay__colon{padding:0 6px;transform:translateY(-.08em)}.score-btn--plus{color:#0009;background:#fff3;width:94px;height:94px;font-size:47px}.score-half--right .score-btn--plus{color:#0009;background:#00000024}.modal-backdrop{background:var(--color-overlay);z-index:200;justify-content:center;align-items:flex-end;padding:0;animation:.2s fade-in;display:flex;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.modal-card{background:#fff;border-radius:20px 20px 0 0;flex-direction:column;width:100%;max-width:430px;max-height:92vh;animation:.25s slide-up;display:flex;overflow:hidden auto}@keyframes slide-up{0%{opacity:0;transform:translateY(60px)}to{opacity:1;transform:translateY(0)}}.modal-header{background:var(--color-purple);flex-direction:column;flex-shrink:0;align-items:center;gap:10px;padding:28px 20px 24px;display:flex;position:relative}.modal-header__close-x{color:#ffffffe6;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#ffffff26;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;line-height:1;display:flex;position:absolute;top:10px;right:12px}.modal-header__icon{background:#ffffff2e;border-radius:16px;justify-content:center;align-items:center;width:64px;height:64px;font-size:30px;display:flex}.modal-header__title{color:#fff;letter-spacing:.02em;font-size:24px;font-weight:800}.modal-header__subtitle{color:#ffffffbf;text-align:center;font-size:13px}.modal-body{flex-direction:column;flex:1;gap:16px;padding:20px 20px 32px;display:flex}.modal-info{border-radius:var(--radius-md);background:#f0f4ff;align-items:flex-start;gap:12px;padding:14px;display:flex}.modal-info__icon{border:2px solid var(--color-purple);width:30px;height:30px;color:var(--color-purple);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.modal-info__text strong{color:var(--color-score-text);margin-bottom:4px;font-size:14px;font-weight:700;display:block}.modal-info__text p{color:#555;font-size:13px;line-height:1.5}.form-group{flex-direction:column;gap:6px;display:flex}.form-label{letter-spacing:.08em;text-transform:uppercase;color:#666;font-size:11px;font-weight:700}.form-input{border:1.5px solid var(--color-gray-light);border-radius:var(--radius-sm);color:var(--color-score-text);background:#fff;outline:none;padding:10px 12px;font-family:inherit;font-size:15px;transition:border-color .15s}.form-input:focus{border-color:var(--color-purple)}.form-input--error{border-color:#d32f2f}.form-error{color:#d32f2f;font-size:12px;font-weight:500}.form-textarea{resize:none;height:90px;line-height:1.5}.btn-primary{background:var(--color-purple);color:#fff;border-radius:var(--radius-full);cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;justify-content:center;align-items:center;gap:8px;width:100%;padding:14px;font-family:inherit;font-size:15px;font-weight:700;transition:opacity .15s,transform .1s;display:flex}.btn-primary:active{opacity:.88;transform:scale(.98)}.btn-coffee{width:100%;color:var(--color-amber-dark);border:2px solid var(--color-amber);border-radius:var(--radius-full);cursor:pointer;background:#fff9e0;justify-content:center;align-items:center;gap:8px;padding:14px;font-family:inherit;font-size:15px;font-weight:700;text-decoration:none;transition:background .15s;display:flex}.btn-coffee:active{background:#fff0b3}.btn-close{color:#888;cursor:pointer;text-align:center;-webkit-tap-highlight-color:transparent;background:0 0;border:none;width:100%;padding:12px;font-family:inherit;font-size:15px;font-weight:600}.form-success{border-radius:var(--radius-md);text-align:center;color:#2e7d32;background:#e8f5e9;padding:14px;font-size:14px;font-weight:600}.share-modal-card{background:#fff;border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:430px;padding:24px 20px 32px;animation:.25s slide-up;display:flex;position:relative}.share-modal__close-x{color:#00000080;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#00000012;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;display:flex;position:absolute;top:10px;right:12px}.share-modal__title{color:var(--color-score-text);text-align:center;font-size:18px;font-weight:800}.share-modal__score{color:var(--color-purple);text-align:center;font-variant-numeric:tabular-nums;font-size:36px;font-weight:900}.share-modal__teams{color:#888;text-align:center;font-size:13px;font-weight:500}.share-options{flex-direction:column;gap:10px;display:flex}.share-option-btn{border-radius:var(--radius-md);cursor:pointer;color:var(--color-score-text);text-align:left;-webkit-tap-highlight-color:transparent;background:#f7f7f7;border:1.5px solid #e5e5e5;align-items:center;gap:12px;width:100%;padding:14px 16px;font-family:inherit;font-size:14px;font-weight:600;transition:background .15s;display:flex}.share-option-btn:active{background:#eee}.share-option-btn__icon{text-align:center;flex-shrink:0;width:28px;font-size:22px}.share-divider{color:#aaa;align-items:center;gap:10px;font-size:12px;font-weight:500;display:flex}.share-divider:before,.share-divider:after{content:"";background:#e5e5e5;flex:1;height:1px}
