html,body{height:100%;margin:0;background:#111827;color:#f9fafb;overflow-x:hidden}*,*:before,*:after{box-sizing:border-box}#app{min-height:100%}.tg-container{font-family:Inter,Manrope,system-ui,-apple-system,Segoe UI,Roboto,Arial;color:#f9fafb;background:#111827;min-height:100vh}.tg-shell{width:100%;max-width:480px;margin:0 auto;padding:20px}.tg-card{background:#1f2937;border-radius:24px;box-shadow:0 8px 24px #00000040;padding:20px}.tg-grid-2,.tg-grid-2-responsive{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 420px){.tg-grid-2-responsive{grid-template-columns:1fr}}.tg-input{background:#111827;border:1px solid #374151;color:#f9fafb;border-radius:16px;padding:12px 14px;font-size:16px}.tg-stepper{display:flex;align-items:center;justify-content:space-between;background:#111827;border:1px solid #374151;border-radius:16px}.tg-stepper button{background:#374151;color:#f9fafb;border:0;border-radius:12px;width:40px;height:40px;font-weight:700}.tg-label{font-size:12px;color:#9ca3af;margin-bottom:6px}.tg-btn-primary{background:#3b82f6;border:0;color:#fff;width:100%;padding:14px 16px;border-radius:16px;font-weight:700;font-size:16px;box-shadow:0 6px 16px #3b82f666}.tg-btn-secondary{background:transparent;border:1px solid #374151;color:#e5e7eb;width:100%;padding:12px 16px;border-radius:16px;font-weight:600;font-size:15px}.tg-pills{display:flex;gap:8px;overflow-x:auto;padding:8px 0}.tg-pill{background:#111827;color:#e5e7eb;border:1px solid #374151;padding:8px 12px;border-radius:999px;white-space:nowrap;font-weight:600}.tg-header-bar{gap:8px}.tg-list{display:flex;flex-direction:column;gap:12px}.tg-plan-card{position:relative;display:flex;align-items:center;justify-content:space-between;padding:16px;border-radius:16px;background:#111827;border:1px solid #374151}.tg-fab{position:fixed;right:16px;bottom:16px;background:#22c55e;color:#052e12;border:0;width:64px;height:64px;border-radius:32px;font-size:28px;box-shadow:0 10px 24px #22c55e80}.runner{min-height:100svh;width:100%;display:flex;flex-direction:column}.runner-inner{width:100%;max-width:480px;margin:0 auto;display:flex;flex-direction:column;min-height:100svh}.runner-header{display:flex;justify-content:space-between;align-items:center;padding:16px calc(16px + env(safe-area-inset-right)) 16px calc(16px + env(safe-area-inset-left));color:#111827}.runner-center{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center}.runner-time{font-size:96px;font-weight:900;letter-spacing:2px}.runner-subtitle{font-size:18px;font-weight:700;opacity:.9}.runner-footer{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;padding:16px calc(16px + env(safe-area-inset-right)) calc(16px + env(safe-area-inset-bottom)) calc(16px + env(safe-area-inset-left))}.runner-btn{border:0;padding:12px;border-radius:16px;font-weight:800;font-size:16px}.bg-getready{background:#fbbf24}.bg-work{background:#22c55e}.bg-rest,.bg-final{background:#3b82f6}@media (min-width: 768px){.runner-time{font-size:128px}}.tg-ex-row{display:flex;align-items:center;justify-content:space-between;padding:12px;border:1px solid #374151;background:#111827;border-radius:16px}.tg-ex-left{display:flex;align-items:center;gap:10px}.tg-ex-chip{padding:2px 8px;border-radius:999px;background:#0b1220;border:1px solid #374151;font-weight:700;font-size:12px}.tg-ex-name{font-weight:800}.tg-ex-meta{font-size:12px;opacity:.8}.tg-stepper-value{padding:0 12px}.tg-space-12{height:12px}.tg-space-8{height:8px}.tg-space-16{height:16px}.tg-row-center{display:flex;align-items:center}.tg-gap-12{gap:12px}.tg-gap-8{gap:8px}.tg-actions{display:flex;gap:6px}.tg-kebab{background:#111827;border:1px solid #374151;color:#e5e7eb;border-radius:12px;width:40px;height:40px;font-weight:900}.tg-menu{position:absolute;right:12px;margin-top:8px;background:#111827;border:1px solid #374151;border-radius:12px;padding:8px;display:flex;flex-direction:column;gap:6px;z-index:10}.tg-menu button{background:transparent;color:#e5e7eb;border:0;text-align:left;padding:8px 12px;border-radius:10px}.tg-menu button:hover{background:#0f172a}.tg-card-title{font-weight:800}.tg-card-meta{font-size:12px;opacity:.8}.tg-avatar{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;font-size:18px}.tg-mb-8{margin-bottom:8px}.tg-w-100{width:100%}.tg-inset-card{background:#111827;border-radius:16px;padding:20px;border:1px solid #374151}.tg-total-time{font-size:32px;font-weight:900}.runner-title{font-weight:800}.runner-header-actions{display:flex;gap:8px}.tg-sticky-modal{position:fixed;left:16px;right:16px;bottom:16px}.tg-modal-title{font-weight:900;font-size:18px}.tg-app-title{font-size:22px;font-weight:900;margin:8px 0}.tg-justify-between{justify-content:space-between}.tg-center,.tg-input-center{text-align:center}.tg-input-lg{font-size:28px;font-weight:800;letter-spacing:1px}.tg-quick-group{margin-bottom:12px}.tg-shell{padding-bottom:calc(96px + env(safe-area-inset-bottom))}.tg-card.tg-center{text-align:center}.tg-card.tg-center .tg-btn-primary{margin-left:auto;margin-right:auto}.tg-bottom-nav{position:fixed;left:0;right:0;bottom:0;height:64px;padding:8px 16px calc(8px + env(safe-area-inset-bottom));background:#1f2937;border-top:1px solid #374151;display:flex;justify-content:space-around;z-index:50}.tg-bottom-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#9ca3af;background:transparent;border:0;font-weight:700;font-size:12px}.tg-bottom-item svg{width:22px;height:22px}.tg-bottom-item.active{color:#f9fafb}.tg-chip{background:#111827;border:1px solid #374151;color:#e5e7eb;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:700}.tg-card-btn{background:transparent;border:0;color:inherit;text-align:left;padding:0;display:flex;align-items:center;gap:12px;cursor:pointer}.tg-savebar{position:sticky;bottom:0;left:0;right:0;background:#1f2937;border-top:1px solid #374151;padding:12px;display:grid;grid-template-columns:1fr 1fr;gap:12px;border-bottom-left-radius:16px;border-bottom-right-radius:16px}.tg-savebar .tg-total-time{font-size:20px;text-align:center}.tg-sheet{position:fixed;top:0;right:0;bottom:0;left:0;background:#0b1220;padding:20px;z-index:60;overflow:auto}.tg-sheet .tg-block{background:#111827;border:1px solid #374151;border-radius:16px;padding:20px;margin-bottom:12px}:root{--tg-bg:#111827;--tg-card:#1F2937;--tg-text:#0f172a;--tg-text-inv:#F9FAFB;--tg-border:#E5E7EB;--tg-accent:#3B82F6;--tg-success:#22C55E;--tg-warn:#FBBF24;--tg-shadow:0 8px 24px rgba(0,0,0,.12)}@media (prefers-color-scheme: dark){:root{--tg-bg:#0B1220;--tg-card:#0F172A;--tg-text:#E5E7EB;--tg-text-inv:#E5E7EB;--tg-border:#1f2937;--tg-shadow:0 10px 30px rgba(0,0,0,.35)}}.tg-container{background:var(--tg-bg);color:var(--tg-text-inv)}.tg-card{background:var(--tg-card);box-shadow:var(--tg-shadow)}.tg-btn-primary{background:var(--tg-accent)}.responsive-time{font-size:clamp(96px,24vw,260px)}.tg-header-bar{margin-bottom:8px}.tg-row-between{display:flex;align-items:center;justify-content:space-between}.tg-checkbox{width:44px;height:28px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#374151;border-radius:999px;position:relative;outline:none;cursor:pointer;transition:.2s background}.tg-checkbox:checked{background:var(--tg-success)}.tg-checkbox:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:.2s transform}.tg-checkbox:checked:after{transform:translate(16px)}.tg-switch-row{display:flex;align-items:center;justify-content:space-between}.tg-switch{width:48px;height:28px;background:#374151;border-radius:999px;position:relative;box-shadow:inset 0 0 0 1px #ffffff14}.tg-switch[data-state=checked]{background:var(--tg-success)}.tg-switch-thumb{display:block;width:22px;height:22px;background:#fff;border-radius:50%;transform:translate(3px);transition:transform .2s ease;will-change:transform}.tg-switch[data-state=checked] .tg-switch-thumb{transform:translate(23px)}@media (min-width: 768px){.tg-shell,.runner-inner{max-width:720px}}@media (min-width: 1024px){.tg-shell,.runner-inner{max-width:960px}}@media (max-width: 430px){.tg-stepper button{width:48px;height:48px;font-size:18px}.tg-input{font-size:18px;padding:14px 16px}.tg-app-title{font-size:20px}}
