:root{--bg: #f5f5fb;--card: #ffffff;--text: #1e1b3a;--muted: #6b6a85;--line: #e4e3f0;--accent: #4f46e5;--accent-2: #7c3aed;--accent-text: #ffffff;--plus: #059669;--minus: #dc2626;--warn: #d97706;--pending-bg: #fff7e6;--mama: #fbcfe8;--tato: #bfdbfe;--artur: #bbf7d0;--shadow: 0 2px 10px rgb(30 27 58 / .07);color-scheme:light}@media(prefers-color-scheme:dark){:root{--bg: #12111c;--card: #1d1c2b;--text: #ecebf7;--muted: #9b9ab3;--line: #2e2d40;--accent: #818cf8;--accent-2: #a78bfa;--accent-text: #12111c;--plus: #34d399;--minus: #f87171;--warn: #fbbf24;--pending-bg: #2a2416;--mama: #9d174d;--tato: #1e40af;--artur: #166534;--shadow: none;color-scheme:dark}}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;-webkit-tap-highlight-color:transparent}button,input,select{font:inherit;color:inherit}button{cursor:pointer}h1,h2,h3{margin:0}.muted{color:var(--muted)}.small{font-size:.82rem}.grow{flex:1;min-width:0}.row{display:flex;gap:8px;align-items:center}.error{color:var(--minus);margin:0}.strike{text-decoration:line-through}.avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0;line-height:1}.btn{border:0;border-radius:12px;padding:10px 16px;background:var(--line);font-weight:600}.btn:disabled{opacity:.5;cursor:default}.btn.primary{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:var(--accent-text)}.btn.danger{background:transparent;border:2px solid var(--minus);color:var(--minus)}.btn.ghost{background:transparent;border:2px solid var(--line)}.btn.big{padding:14px 18px;font-size:1.1rem}.btn.small{padding:6px 12px;font-size:.85rem}.btn.round{width:44px;height:44px;padding:0;border-radius:50%;font-size:1.4rem}.icon-btn{border:0;background:none;font-size:1.1rem;padding:4px 8px;color:var(--muted)}.input{width:100%;border:2px solid var(--line);border-radius:12px;padding:10px 12px;background:var(--card);outline:none}.input:focus{border-color:var(--accent)}.input.big{font-size:1.5rem;font-weight:700}.input.center{text-align:center}.login{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:24px 16px;text-align:center;position:relative}.logo{font-size:1.9rem;font-weight:800;background:linear-gradient(135deg,var(--accent),var(--accent-2));-webkit-background-clip:text;background-clip:text;color:transparent}.logo span{-webkit-text-fill-color:initial}.logo.small{font-size:1.1rem}.lang-btn{position:absolute;top:16px;right:16px;border:2px solid var(--line);background:var(--card);border-radius:999px;padding:6px 14px}.login-users{display:flex;gap:16px;flex-wrap:wrap;justify-content:center}.login-user{display:flex;flex-direction:column;align-items:center;gap:8px;border:0;background:var(--card);border-radius:24px;padding:16px;box-shadow:var(--shadow);font-weight:700;font-size:1.1rem;transition:transform .15s}.login-user:hover{transform:translateY(-3px)}.pin-form{display:flex;flex-direction:column;align-items:center;gap:14px;width:min(320px,100%)}.pin-form label{display:flex;flex-direction:column;gap:6px;width:100%;color:var(--muted)}.pin-form .btn{width:100%}.pin-input{font-size:2rem;letter-spacing:.6em;text-align:center;border:2px solid var(--line);border-radius:14px;padding:10px;background:var(--card);outline:none;width:100%}.pin-input:focus{border-color:var(--accent)}.app{max-width:640px;margin:0 auto;padding-bottom:150px}.top{padding:12px 16px 0;position:relative}.top-row{display:flex;align-items:center;justify-content:space-between}.me-btn{border:0;background:none;padding:0}.menu{position:absolute;right:16px;top:56px;background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:0 8px 30px #00000026;z-index:20;display:flex;flex-direction:column;min-width:180px;overflow:hidden}.menu-name{padding:12px 16px;font-weight:700;border-bottom:1px solid var(--line)}.menu button{border:0;background:none;text-align:left;padding:12px 16px}.menu button:hover{background:var(--bg)}.balance{margin:12px 0;border-radius:24px;padding:18px 20px;color:#fff;background:linear-gradient(135deg,#059669,#10b981 60%,#34d399);text-align:center;box-shadow:var(--shadow)}.balance.neg{background:linear-gradient(135deg,#b91c1c,#ef4444)}.balance-label{font-weight:600;opacity:.9}.balance-value{font-size:3.2rem;font-weight:800;line-height:1.1}.balance-value small{font-size:1.2rem}.balance-sub{font-size:.85rem;opacity:.9}main{padding:0 16px}.page{display:flex;flex-direction:column;gap:12px}.empty{text-align:center;color:var(--muted);padding:40px 0}.fab{position:fixed;left:50%;transform:translate(-50%);bottom:calc(76px + env(safe-area-inset-bottom));border:0;border-radius:999px;padding:14px 26px;font-size:1.1rem;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 8px 24px #4f46e566;z-index:10;white-space:nowrap}.fab.usage{background:linear-gradient(135deg,#ea580c,#f59e0b);box-shadow:0 8px 24px #ea580c59}.tabs{position:fixed;bottom:0;left:0;right:0;display:flex;background:var(--card);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);z-index:10}.tabs a{flex:1;border:0;background:none;padding:8px 0 10px;display:flex;flex-direction:column;align-items:center;font-size:.78rem;color:var(--muted);position:relative}.tabs a span{font-size:1.4rem}.tabs a.on{color:var(--accent);font-weight:700}.dot{position:absolute;top:4px;left:calc(50% + 10px);background:var(--minus);color:#fff;font-style:normal;font-size:.7rem;border-radius:999px;padding:1px 6px}.feed{display:flex;flex-direction:column;gap:12px}.pending{display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:20px;background:var(--pending-bg)}.pending h3{font-size:1rem;color:var(--warn)}.card{background:var(--card);border-radius:20px;padding:14px;box-shadow:var(--shadow);border:1px solid var(--line);display:flex;flex-direction:column;gap:10px}.card.status-approved{border-left:5px solid var(--plus)}.card.status-rejected{opacity:.75}.card.status-pending{border-left:5px solid var(--warn)}.card-usage{border-left:5px solid var(--minus)}.card-badge{background:linear-gradient(135deg,#facc152e,#7c3aed1f),var(--card)}.card-head{display:flex;gap:10px;align-items:center}.chip{font-size:.75rem;font-weight:700;border-radius:999px;padding:3px 10px;text-transform:uppercase}.chip-pending{background:var(--warn);color:#fff}.chip-approved{background:var(--plus);color:#fff}.chip-rejected{background:var(--line);color:var(--muted)}.claim-main{display:flex;gap:12px;align-items:center}.claim-emoji{font-size:2rem;width:44px;text-align:center;flex-shrink:0}.claim-title{font-weight:700;font-size:1.05rem}.minutes{font-weight:800;font-size:1.25rem;white-space:nowrap;text-align:right}.minutes.plus{color:var(--plus)}.minutes.minus{color:var(--minus)}.note{margin:0;padding:8px 12px;border-radius:12px;background:var(--bg)}.photo{width:100%;max-height:260px;object-fit:cover;border-radius:14px;cursor:zoom-in}.photo.zoom{max-height:none;object-fit:contain;cursor:zoom-out}.decision{display:flex;gap:8px;align-items:center;font-size:.9rem;color:var(--muted)}.decide{display:flex;flex-direction:column;gap:8px;padding-top:10px;border-top:1px dashed var(--line)}.decide .row:first-child{justify-content:center}.minutes-input{width:90px;text-align:center;font-size:1.5rem;font-weight:800;border:2px solid var(--line);border-radius:12px;padding:6px;background:var(--card)}.badge-big{font-size:2.6rem}.badge-name{font-weight:800;font-size:1.1rem}.reactions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.reaction{border:1px solid var(--line);background:var(--bg);border-radius:999px;padding:3px 10px;font-size:.9rem}.reaction.mine{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 15%,transparent)}.reaction-add{position:relative}.reaction-picker{position:absolute;bottom:110%;left:0;display:flex;gap:2px;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:4px 6px;box-shadow:0 6px 20px #00000026;z-index:5}.reaction-picker button{border:0;background:none;font-size:1.4rem;padding:2px 4px}.comments{display:flex;flex-direction:column;gap:6px}.comment{display:flex;gap:8px;align-items:flex-start;font-size:.92rem}.comment-form{display:flex;gap:6px}.comment-form .input{padding:6px 12px;border-radius:999px;font-size:.9rem}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:flex-end;justify-content:center;z-index:30}.modal{background:var(--card);width:min(640px,100%);max-height:92dvh;overflow-y:auto;border-radius:24px 24px 0 0;padding:16px 16px calc(20px + env(safe-area-inset-bottom))}@media(min-width:700px){.modal-bg{align-items:center}.modal{border-radius:24px}}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.form{display:flex;flex-direction:column;gap:12px}.form label{display:flex;flex-direction:column;gap:6px;font-weight:600}.form label.check{flex-direction:row;align-items:center}.form .narrow{width:80px}.label{font-weight:600}.exercise-pick{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}.pick{display:flex;flex-direction:column;align-items:center;gap:4px;border:2px solid var(--line);border-radius:16px;background:var(--card);padding:10px 8px;font-weight:600;text-align:center}.pick.on{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--card))}.pick-emoji{font-size:1.8rem}.preview-minutes{text-align:center;font-size:1.15rem;color:var(--plus)}.ex-list{display:flex;flex-direction:column;gap:10px}.ex-row{flex-direction:row;align-items:center;text-align:left}.ex-row:disabled{cursor:default;opacity:1}.ex-row.off{opacity:.55}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.stat{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:10px 4px;display:flex;flex-direction:column;align-items:center;font-size:.85rem}.stat span{font-size:1.4rem}.badge-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.badge-tile{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:14px 10px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px}.badge-tile:not(.got) .badge-emoji{filter:grayscale(1);opacity:.35}.badge-tile.got{border:2px solid #facc15;background:linear-gradient(160deg,rgb(250 204 21 / .2),transparent 70%),var(--card)}.badge-emoji{font-size:2.6rem}.got-date{color:var(--plus);font-weight:600}.progress{width:100%;height:6px;border-radius:999px;background:var(--line);overflow:hidden;margin-top:4px}.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-2))}.toast{position:fixed;top:16px;left:50%;transform:translate(-50%);background:var(--text);color:var(--bg);padding:12px 20px;border-radius:14px;z-index:40;max-width:calc(100% - 32px);font-weight:600;box-shadow:0 8px 30px #00000040}.spinner{width:36px;height:36px;margin:60px auto;border:4px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.card>.btn.small{align-self:flex-end;border:0;color:var(--muted);padding:2px 6px}.emoji-btn{width:100%;height:46px;font-size:1.7rem;border:2px solid var(--line);border-radius:12px;background:var(--card)}.emoji-btn:hover{border-color:var(--accent)}.emoji-popup{display:flex;flex-direction:column;gap:10px}.emoji-groups{display:flex;gap:2px;overflow-x:auto;border-bottom:1px solid var(--line)}.emoji-groups button{border:0;background:none;font-size:1.3rem;padding:6px 8px;border-bottom:3px solid transparent;flex-shrink:0}.emoji-groups button.on{border-bottom-color:var(--accent)}.emoji-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:2px;height:min(50dvh,360px);overflow-y:auto;align-content:start}.emoji-grid button{border:0;background:none;font-size:1.7rem;height:44px;border-radius:10px}.emoji-grid button:hover,.emoji-grid button.on{background:color-mix(in srgb,var(--accent) 18%,transparent)}.emoji-grid .spinner,.emoji-grid p{grid-column:1 / -1}.modal-bg~.modal-bg{z-index:35}a{color:inherit}.tabs a,.logo,.me-btn,.time-link,.back-link{text-decoration:none}.time-link:hover,.back-link:hover{text-decoration:underline}.back-link{color:var(--accent);font-weight:600}.avatar{overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover;display:block}.profile-head{display:flex;flex-direction:column;align-items:center;gap:10px;padding:8px 0}.profile .card .btn{width:100%}.pin-small{font-size:1.3rem;letter-spacing:.4em}.ok-text{color:var(--plus);margin:0}.cropper-wrap{display:flex;flex-direction:column;align-items:center;gap:12px}.cropper{position:relative;overflow:hidden;border-radius:16px;background:#000;touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none}.cropper img{position:absolute;max-width:none;pointer-events:none}.cropper-mask{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle closest-side,transparent calc(100% - 2px),rgb(255 255 255 / .9) calc(100% - 2px),rgb(255 255 255 / .9) 100%,rgb(0 0 0 / .6) 100%);pointer-events:none}.zoom-slider{width:min(260px,100%);accent-color:var(--accent)}.cropper-wrap .btn{width:100%}:root{--c-earn: #059669;--c-use: #dc2626;--c-main: #4f46e5}@media(prefers-color-scheme:dark){:root{--c-earn: #059669;--c-use: #ef4444;--c-main: #7c74f0}}.tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.tile{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:12px 14px;display:flex;flex-direction:column;gap:2px}.tile-label{color:var(--muted);font-size:.85rem}.tile-value{font-size:1.5rem;font-weight:800}.tile-sub{color:var(--muted);font-size:.8rem}.chart-card h3,.stats-page .card h3{font-size:1rem}.legend{display:flex;gap:14px;font-size:.82rem;color:var(--muted)}.legend i{display:inline-block;width:10px;height:10px;border-radius:2px;vertical-align:-1px}.chart{position:relative;width:100%}.chart svg{display:block;overflow:visible}.chart .grid{stroke:var(--line);stroke-width:1}.chart .baseline{stroke:var(--muted);stroke-width:1}.chart .axis{fill:var(--muted);font-size:10px}.chart .bar-earn{fill:var(--c-earn)}.chart .bar-use{fill:var(--c-use)}.chart .bar-main{fill:var(--c-main)}.chart .hit{fill:transparent}.chart .hot rect:not(.hit){opacity:.75}.chart .line-main{fill:none;stroke:var(--c-main);stroke-width:2;stroke-linejoin:round}.chart .dot-main{fill:var(--c-main);stroke:var(--card);stroke-width:2}.chart .crosshair{stroke:var(--muted);stroke-width:1;stroke-dasharray:3 3}.chart-tip{position:absolute;pointer-events:none;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:6px 10px;font-size:.82rem;display:flex;flex-direction:column;box-shadow:0 6px 20px #00000026;white-space:nowrap;z-index:2}.chart-tip .key{display:inline-block;width:10px;height:2px;vertical-align:middle}.table-view summary{cursor:pointer;color:var(--muted);font-size:.85rem}.table-view table{width:100%;border-collapse:collapse;font-size:.85rem;margin-top:6px}.table-view th,.table-view td{text-align:left;padding:4px 6px;border-bottom:1px solid var(--line)}.hbars{display:grid;grid-template-columns:minmax(0,max-content) minmax(60px,1fr) auto;gap:8px 10px;align-items:center;font-size:.9rem}.hbar-row{display:contents}.hbar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hbar-track{height:12px;background:var(--bg);border-radius:4px;overflow:hidden}.hbar-fill{display:block;height:100%;background:var(--c-main);border-radius:0 4px 4px 0}.hbar-value{white-space:nowrap;font-weight:600}.facts{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.approvers{display:flex;gap:12px;justify-content:space-around}.approver{display:flex;flex-direction:column;align-items:center;gap:4px}.facts .progress{display:block;margin-top:6px}.top-right{display:flex;align-items:center;gap:12px}.lang-switch{display:inline-flex;align-items:center;font-size:.85rem;font-weight:600}.lang-switch button{border:0;background:none;padding:4px 6px;color:var(--muted);font-weight:inherit}.lang-switch button.on{color:var(--accent)}.lang-sep{color:var(--line)}.login-lang{position:absolute;top:16px;right:16px}
