*{margin:0;padding:0;box-sizing:border-box}:root{color-scheme:dark}:root[data-theme=light]{color-scheme:light}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#0c0c0f;color:#b0b0b8;min-height:100vh;min-height:100dvh;display:flex;justify-content:center;padding:1.5rem 1rem;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;line-height:1.55;transition:background .3s ease,color .3s ease}body[data-theme=light]{background:linear-gradient(180deg,#f8f9fc,#eef2f7);color:#1a1f2e}#root{width:100%;max-width:560px}@media(max-width:480px){body{padding:1rem .75rem;font-size:12px}}.app{display:flex;flex-direction:column;gap:1rem}.main-shell{display:flex;flex-direction:column;gap:.9rem}.tab-panel{width:100%}.tab-panel-hidden{display:none}.tab-panel-active{display:block}header{text-align:left;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.1)}header h1{font-size:1.15rem;font-weight:800;color:#f0f0f0;letter-spacing:-.03em}header h1:before{content:""}.date{margin-top:.3rem;font-size:.82rem;color:#9090a8;font-weight:500}.streak{margin-top:.3rem;font-size:.88rem;font-weight:700;color:#4ade80;display:flex;align-items:center;gap:.35rem}.streak:before{content:"🔥";font-size:.9rem}.streak-quality{margin-top:.2rem;font-size:.72rem;color:#a0a0b4}.streak-quality-sub{margin-top:.15rem;color:#9a9ab0}.header-detail-toggle{margin-top:.35rem;padding:0;border:0;background:transparent;color:#9a9ab0;font-size:.72rem;font-family:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.header-detail-toggle:hover{color:#a8a8bc}.streak-verified{color:#93c5fd;font-weight:500;font-size:.75rem}.streak-paused{color:#f59e0b;font-weight:600;font-size:.72rem}.card{background:#ffffff0e;border-radius:14px;padding:1.1rem 1.2rem;border:1px solid rgba(255,255,255,.1);transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}.card h2{font-size:.78rem;font-weight:700;color:#a0a0b8;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.35rem}.subtitle{font-size:.8rem;color:#9090a0;margin-bottom:.75rem}.blocks{display:flex;flex-direction:column;gap:2px}.block{display:flex;align-items:center;gap:.625rem;padding:.6rem .7rem;background:transparent;border-radius:10px;cursor:pointer;border:1px solid transparent;transition:background .15s ease,transform .15s cubic-bezier(.175,.885,.32,1.275)}.block:active{transform:scale(.97)}.block:hover{background:#ffffff0a}.block.done{background:#4ade800f}.block input[type=checkbox]{display:none}.checkmark{width:20px;height:20px;border-radius:6px;border:2px solid #333;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:background .2s ease,border-color .2s ease,transform .25s cubic-bezier(.175,.885,.32,1.275),box-shadow .2s ease}.block.done .checkmark{background:linear-gradient(135deg,#4ade80,#22c55e);border-color:transparent;transform:scale(1.1);box-shadow:0 0 12px #4ade804d}.block.done .checkmark:after{content:"";width:5px;height:9px;border:solid #fff;border-width:0 2.5px 2.5px 0;transform:rotate(45deg) translate(-1px,-1px)}.block-name{font-size:.85rem;font-weight:400;color:#9a9ab0}.block.done .block-name{color:silver}.problems{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-top:.5rem}.pm-btn{width:36px;height:36px;border-radius:3px;border:1px solid #222;background:#0a0a0a;color:#a8a8bc;font-size:1.125rem;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center}.pm-btn:hover:not(:disabled){border-color:#4ade80;color:#4ade80}.pm-btn:disabled{opacity:.2;cursor:not-allowed}.problems-input{width:64px;text-align:center;font-size:1.75rem;font-weight:700;font-family:inherit;background:transparent;border:none;color:#e0e0e0;outline:none;-moz-appearance:textfield}.problems-input::-webkit-outer-spin-button,.problems-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.mood-current{font-size:.8rem;color:#a78bfa;font-weight:600;margin-bottom:.5rem}.mood-current:before{content:"= ";color:#8a8a9a}.mood-scale{display:flex;gap:4px;margin-top:.375rem}.mood-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.55rem .125rem;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:transparent;cursor:pointer;font-family:inherit;transition:background .15s ease,border-color .15s ease,transform .2s cubic-bezier(.175,.885,.32,1.275)}.mood-btn:active{transform:scale(.92)}.mood-btn:hover{background:#ffffff0a}.mood-btn.active{border-color:#a78bfa4d;background:#a78bfa14;box-shadow:0 0 16px #a78bfa1a}.mood-num{font-size:1rem;font-weight:700;color:#9090a0}.mood-btn.active .mood-num{color:#a78bfa}.mood-label{font-size:.55rem;color:#9090a0;text-transform:uppercase;letter-spacing:.03em;font-weight:600}.mood-btn.active .mood-label{color:#a78bfab3}.missed-card{border-color:#ef444433}.missed-date{font-size:.85rem;font-weight:600;color:#ef4444;margin-bottom:.375rem}.missed-prompt{font-size:.85rem;color:#9a9ab0;margin-bottom:.75rem;line-height:1.5}.missed-textarea{width:100%;padding:.75rem .875rem;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;color:#c0c0c8;font-family:inherit;font-size:.85rem;resize:vertical;outline:none;line-height:1.5;transition:border-color .15s ease}.missed-textarea:focus{border-color:#ffffff26}.missed-textarea::placeholder{color:#9090a0}.char-count{font-size:.75rem;color:#ef4444;margin-top:.375rem;margin-bottom:.5rem;font-weight:500}.deadline-extension-section{margin-bottom:.75rem}.deadline-extension-section .field-input{margin-top:0}.deadline-extension-section .settings-item-sub{margin-top:.375rem;color:#9a9ab0}.avoidable-section{margin-bottom:.75rem}.avoidable-label{font-size:.8rem;color:#9a9ab0;font-weight:600;margin-bottom:.375rem}.avoidable-toggle{display:flex;gap:4px}.toggle-btn{flex:1;padding:.55rem;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:transparent;color:#9a9ab0;font-family:inherit;font-size:.8rem;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s cubic-bezier(.175,.885,.32,1.275)}.toggle-btn:active{transform:scale(.95)}.toggle-btn:hover{background:#ffffff0a}.toggle-active.toggle-yes{border-color:#ef444444;background:#ef44440d;color:#ef4444}.toggle-active.toggle-no{border-color:#4ade8044;background:#4ade800d;color:#4ade80}.missed-error{font-size:.8rem;color:#ef4444;margin-bottom:.5rem;font-weight:500}.char-count.met{color:#4ade80}.save-btn{width:100%;padding:.75rem;border-radius:12px;border:none;background:linear-gradient(135deg,#4ade80,#22c55e);color:#fff;font-size:.85rem;font-weight:700;font-family:inherit;cursor:pointer;letter-spacing:.01em;transition:transform .2s cubic-bezier(.175,.885,.32,1.275),box-shadow .2s ease,opacity .15s ease;box-shadow:0 2px 12px #4ade8033}.save-btn:active:not(:disabled){transform:scale(.96)}.save-btn:hover:not(:disabled){box-shadow:0 4px 20px #4ade8059;transform:translateY(-1px)}.save-btn:disabled{opacity:.3;cursor:not-allowed}.dot-grid{display:flex;flex-wrap:wrap;gap:4px;margin-top:.5rem}.dot{width:12px;height:12px;border-radius:4px;flex-shrink:0;transition:transform .15s cubic-bezier(.175,.885,.32,1.275)}.dot:hover{transform:scale(1.5)}.dot-completed{background:#4ade80}.dot-missed{background:#ef4444}.dot-partial{background:#eab308}.dot-none{background:#1a1a1a}.dot-inline{display:inline-block;vertical-align:middle;margin-right:4px}.dot-legend{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.5rem;font-size:.7rem;color:#9090a0;font-weight:400}.history-toggle{width:100%;padding:.5rem;border-radius:3px;border:1px solid #1a1a1a;background:transparent;color:#555;font-size:.8rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.history-toggle:hover{border-color:#8a8a9a;color:#a8a8bc}.history-card{padding:1rem 1.125rem}.history-empty{color:#9090a0;font-size:.8rem}.history-entry{padding:.625rem 0;border-bottom:1px solid #1a1a1a}.history-entry:last-child{border-bottom:none;padding-bottom:0}.history-entry:first-of-type{padding-top:0}.history-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem}.history-date{font-size:.75rem;font-weight:600;color:#a8a8bc}.history-badge{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:.1rem .4rem;border-radius:2px}.badge-done{background:#4ade800d;color:#4ade80;border:1px solid #4ade8022}.badge-missed{background:#ef44440d;color:#ef4444;border:1px solid #ef444422}.history-reason{font-size:.8rem;color:#555;font-style:italic;line-height:1.45}.history-details{display:flex;flex-direction:column;gap:.125rem;font-size:.75rem;color:#9090a0}.field-textarea{width:100%;padding:.75rem .875rem;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;color:#c0c0c8;font-family:inherit;font-size:.85rem;resize:vertical;outline:none;line-height:1.5;margin-top:.5rem;transition:border-color .15s ease}.field-textarea:focus{border-color:#ffffff26}.field-textarea::placeholder{color:#9090a0}.field-input{width:100%;padding:.6rem .875rem;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;color:#c0c0c8;font-family:inherit;font-size:.85rem;outline:none;margin-top:.375rem;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.field-input:focus{box-shadow:0 0 0 3px #4ade8014;border-color:#ffffff26}.field-input::placeholder{color:#9090a0}.history-learned{color:#555;line-height:1.4;margin-top:.125rem}.history-built{color:#555;line-height:1.4}.history-link{color:#a78bfa;text-decoration:none;word-break:break-all}.history-link:hover{color:#c4b5fd}.vote-excuse{font-size:.85rem;color:silver;line-height:1.6;white-space:pre-wrap}.vote-status{font-size:.85rem;color:#9a9ab0}.vote-prompt{font-size:.85rem;color:#a8a8bc;margin-bottom:.75rem}.vote-buttons{display:flex;gap:.5rem}.vote-btn{flex:1;padding:.75rem;border-radius:3px;border:1px solid;font-family:inherit;font-size:.9rem;font-weight:700;cursor:pointer;text-transform:uppercase;letter-spacing:.06em;transition:background .15s ease,transform .1s ease}.vote-btn:active:not(:disabled){transform:scale(.97)}.vote-btn:disabled{opacity:.4;cursor:not-allowed}.vote-accept{border-color:#4ade8044;background:#4ade800d;color:#4ade80}.vote-accept:hover:not(:disabled){background:#4ade8018}.vote-reject{border-color:#ef444444;background:#ef44440d;color:#ef4444}.vote-reject:hover:not(:disabled){background:#ef444418}.vote-thanks{font-size:.9rem;color:#a8a8bc;font-weight:600}.vote-result{font-weight:700}.vote-result.accept{color:#4ade80}.vote-result.reject{color:#ef4444}.vote-sub{font-size:.8rem;color:#9090a0;margin-top:.375rem}.punishment-card{border-color:#ef4444;background:#111}.punishment-date{font-size:.85rem;font-weight:600;color:#ef4444;margin-bottom:.75rem}.punishment-verdict{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:1.1rem;font-weight:700}.verdict-reject{color:#ef4444}.verdict-accept{color:#4ade80}.verdict-sep{color:#8a8a9a}.punishment-excuse{font-size:.85rem;color:#9a9ab0;font-style:italic;line-height:1.5;padding:.625rem .75rem;background:#0a0a0a;border-radius:3px;border-left:2px solid #ef444444;margin-bottom:1rem}.punishment-message{margin-bottom:1.25rem}.punishment-message p{font-size:.85rem;color:silver;line-height:1.6;font-weight:600}.punishment-message p:last-child{color:#ef4444}.punishment-gate{border-top:1px solid #1a1a1a;padding-top:1rem}.punishment-instruction{font-size:.8rem;color:#555;margin-bottom:.5rem}.punishment-instruction strong{color:#a8a8bc}.punishment-input{margin-top:0;margin-bottom:.625rem;font-size:.9rem}.punishment-match{border-color:#4ade8044!important;color:#4ade80!important}.goal-deadline{color:#555;font-size:.75rem}.proof-upload{margin-top:.5rem}.proof-upload-btn{margin-top:.375rem}.proof-preview{position:relative;margin-top:.5rem;display:inline-block}.proof-img{max-width:100%;max-height:200px;border-radius:3px;border:1px solid #1a1a1a}.proof-remove{position:absolute;top:4px;right:4px}.history-proof-img{max-width:100%;max-height:120px;border-radius:3px;border:1px solid #1a1a1a;margin-top:.25rem}.settings-list{display:flex;flex-direction:column;gap:2px;margin-bottom:.75rem}.settings-item{display:flex;align-items:center;justify-content:space-between;padding:.5rem .625rem;background:#0a0a0a;border-radius:2px}.settings-item-info{display:flex;flex-direction:column;gap:.125rem}.settings-item-name{font-size:.85rem;color:silver}.settings-item-sub{font-size:.7rem;color:#9090a0}.settings-toggle-sub{margin-top:.45rem}.settings-item-actions{display:flex;align-items:center;gap:.375rem}.settings-complete{border:1px solid #4ade8044;background:#4ade8012;color:#4ade80;border-radius:2px;font-family:inherit;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.22rem .45rem;cursor:pointer}.settings-complete:hover{background:#4ade8022;border-color:#4ade8066}.settings-remove{width:24px;height:24px;border-radius:2px;border:1px solid #ef444433;background:transparent;color:#ef4444;font-family:inherit;font-size:.75rem;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.settings-remove:hover{background:#ef44440d}.settings-remove:disabled{opacity:.4;cursor:not-allowed}.settings-add{display:flex;flex-direction:column;gap:.375rem}.settings-add .field-input{margin-top:0}.settings-add-btn{margin-top:.125rem}.login-form{display:flex;flex-direction:column;gap:.5rem}.login-form .field-input{margin-top:0}.auth-mode-toggle{display:flex;gap:4px;background:#ffffff0e;border-radius:14px;padding:4px;border:1px solid rgba(255,255,255,.1)}.auth-mode-btn{flex:1;padding:.55rem;border:none;border-radius:10px;background:transparent;color:#9a9ab0;font-family:inherit;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s ease}.auth-mode-btn:hover{color:#999}.auth-mode-active{background:#4ade801a;color:#4ade80}.ticker-wrap{overflow:hidden;width:100%;mask-image:linear-gradient(to right,transparent 0%,black 10%,black 90%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,black 10%,black 90%,transparent 100%);padding:.6rem 0}.ticker-track{display:flex;gap:2rem;white-space:nowrap;animation:ticker-scroll 35s linear infinite;width:max-content}.ticker-item{font-size:.72rem;font-style:italic;color:#4a4a5a;flex-shrink:0;letter-spacing:.01em}@keyframes ticker-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.landing{gap:.85rem}.landing-hero{text-align:center;padding:2.5rem 0 1.5rem;border-bottom:none;display:flex;flex-direction:column;align-items:stretch;gap:.5rem}.landing-hero h1{font-size:2rem;letter-spacing:-.04em;background:linear-gradient(135deg,#4ade80,#22d3ee);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing-hero h1:before{content:""}.landing-tagline{margin-top:.6rem;font-size:1.05rem;color:#e8e8ec;font-weight:700;letter-spacing:-.01em}.landing-sub{margin-top:.6rem;font-size:.85rem;color:#6b6b80;line-height:1.65;max-width:420px;margin-left:auto;margin-right:auto}.landing-cta{margin-top:1.25rem;font-size:.9rem;padding:.85rem 1.75rem;width:100%;max-width:100%;min-width:0;border-radius:14px}.landing-step{position:relative;display:grid;grid-template-columns:auto 1fr;column-gap:.75rem;align-items:flex-start}.landing-step-num{grid-row:1 / span 2;margin-top:.1rem;font-size:.75rem;font-weight:800;background:linear-gradient(135deg,#4ade80,#22d3ee);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing-step h2{text-transform:none;letter-spacing:-.01em;color:#d0d0d8;margin-bottom:.3rem;font-size:.88rem;font-weight:700}.landing-step p{font-size:.82rem;color:#6b6b80;line-height:1.55}.landing-bottom{text-align:center;padding:1.5rem 0 1rem;display:flex;flex-direction:column;align-items:stretch;gap:.75rem}.landing-bottom-text{font-size:.85rem;color:#6b6b80;font-style:normal;font-weight:500;margin-bottom:.25rem}.landing-signin-link{display:inline-block;margin-top:.75rem;background:none;border:none;color:#555;font-size:.75rem;font-family:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:2px;align-self:stretch}.landing-signin-link:hover{color:#a8a8bc}.landing-try-btn{display:inline-block;margin-top:.5rem;background:none;border:none;color:#555;font-size:.75rem;font-family:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:2px;transition:color .15s ease;align-self:stretch}.landing-try-btn:hover{color:#4ade80}.demo-banner{background:#4ade800f;border:1px solid rgba(74,222,128,.15);border-radius:12px;padding:.6rem .85rem;font-size:.78rem;color:#a8a8bc;text-align:center;cursor:pointer;transition:background .15s ease}.demo-banner:hover{background:#4ade801a}.demo-banner-link{color:#4ade80;text-decoration:underline;text-underline-offset:2px}.demo-prompt-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:demo-fade-in .2s ease-out}@keyframes demo-fade-in{0%{opacity:0}to{opacity:1}}.demo-prompt{background:#151518;border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:2rem 1.5rem;max-width:360px;width:100%;text-align:center;display:flex;flex-direction:column;gap:.85rem}.demo-prompt-text{font-size:.95rem;color:#e8e8ec;font-weight:700;letter-spacing:-.01em}.demo-prompt-dismiss{background:none;border:none;color:#555;font-size:.72rem;font-family:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.demo-prompt-dismiss:hover{color:#a8a8bc}.auth-card{overflow:hidden}.auth-slide-in{animation:auth-slide-in .25s ease-out}.auth-slide-out-right{animation:auth-slide-out-right .2s ease-in forwards}.auth-slide-out-left{animation:auth-slide-out-left .2s ease-in forwards}@keyframes auth-slide-in{0%{opacity:0;transform:translate(0)}to{opacity:1;transform:translate(0)}}@keyframes auth-slide-out-right{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(30px)}}@keyframes auth-slide-out-left{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-30px)}}.pw-strength{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.pw-requirements{width:100%;list-style:none;padding:0;margin:.25rem 0 0;display:grid;grid-template-columns:1fr 1fr;gap:.2rem .75rem;font-size:.7rem;color:#9a9ab0}.pw-requirements li:before{content:"○ "}.pw-requirements li.pw-met{color:#4ade80}.pw-requirements li.pw-met:before{content:"● "}.pw-strength-bar{flex:1;height:4px;background:#1a1a1a;border-radius:2px;overflow:hidden}.pw-strength-fill{height:100%;border-radius:2px;transition:width .3s ease,background-color .3s ease}.pw-weak{background-color:#ef4444;color:#ef4444}.pw-fair{background-color:#f59e0b;color:#f59e0b}.pw-good{background-color:#3b82f6;color:#3b82f6}.pw-strong{background-color:#4ade80;color:#4ade80}.pw-strength-label{font-size:.7rem;font-weight:600;min-width:3rem;text-align:right}.pw-input-wrap{position:relative;display:flex;align-items:center}.pw-input-wrap .pw-field{flex:1;padding-right:2.5rem}.pw-eye-btn{position:absolute;right:.5rem;background:none;border:none;color:#555;cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;transition:color .15s ease}.pw-eye-btn:hover{color:#a8a8bc}.change-pw-section{margin-top:1rem;padding-top:1rem;border-top:1px solid #1a1a1a}.change-pw-title{font-size:.85rem;color:#a8a8bc;margin-bottom:.75rem;font-weight:600}.change-pw-form{display:flex;flex-direction:column;gap:.5rem}.pw-success{color:#4ade80;font-size:.78rem;margin:.25rem 0}.auth-hint{margin-top:.75rem;font-size:.78rem;color:#555;text-align:center}.auth-hint-link{background:none;border:none;color:#4ade80;font-family:inherit;font-size:inherit;font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:2px;padding:0}.auth-hint-link:hover{color:#22c55e}.tab-nav{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.6rem;background:#ffffff0e;border-radius:14px;padding:.35rem;border:1px solid rgba(255,255,255,.1)}.tab-row{display:flex;gap:4px}.tab-btn{flex:1;padding:.55rem;border:none;border-radius:10px;background:transparent;color:#9a9ab0;font-family:inherit;font-size:.82rem;font-weight:600;cursor:pointer;letter-spacing:.01em;transition:background .2s ease,color .2s ease}.tab-btn:hover{color:#999}.tab-active{background:#ffffff14;color:#f0f0f0}.theme-toggle{display:inline-flex;align-items:center;gap:.45rem;border:1px solid #1a1a1a;border-radius:999px;background:#0a0a0a;color:#a8a8bc;padding:.2rem .5rem .2rem .3rem;font-family:inherit;font-size:.7rem;cursor:pointer}.theme-toggle:hover{border-color:#8a8a9a}.theme-toggle-switch{width:34px;height:18px;border-radius:999px;border:1px solid #333;background:#151515;position:relative;transition:border-color .2s ease,background .2s ease}.theme-toggle-switch-on{background:#4ade8020;border-color:#4ade8066}.theme-toggle-thumb{position:absolute;top:1px;left:1px;width:14px;height:14px;border-radius:50%;background:#a0a0a0;transition:transform .2s ease,background .2s ease}.theme-toggle-switch-on .theme-toggle-thumb{transform:translate(16px);background:#4ade80}.theme-toggle-label{font-weight:600;letter-spacing:.02em}.tab-logout{flex:0 0 auto;width:auto;border:1px solid #ef444433;background:#ef44440a;white-space:nowrap;color:#ef4444;font-size:.7rem;padding:.35rem .55rem;text-transform:none;letter-spacing:.02em}.tab-logout:hover{color:#f87171}.stats-detail-toggle{margin-top:.5rem}.settings-theme-row{display:flex;align-items:center;margin-top:.25rem}.settings-theme-row .theme-toggle{margin-top:.125rem}.settings-logout-btn{margin-top:.75rem;color:#ef4444;border-color:#ef444433;background:#ef44440a}.settings-logout-btn:hover{border-color:#ef444455;color:#f87171}.settings-reactivate{width:auto;flex:0 0 auto;padding:.32rem .6rem;font-size:.72rem}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px;margin-top:.75rem;background:#1a1a1a;border-radius:3px;overflow:hidden}.stat-block{display:flex;flex-direction:column;align-items:center;padding:.875rem .5rem;background:#0a0a0a}.stat-value{font-size:1.5rem;font-weight:700;color:#e0e0e0;line-height:1}.stat-value.stat-good{color:#4ade80}.stat-value.stat-bad{color:#ef4444}.stat-label{font-size:.65rem;color:#9090a0;text-transform:uppercase;letter-spacing:.06em;font-weight:600;margin-top:.375rem}.stat-sub{font-size:.75rem;color:#8a8a9a;margin-top:.625rem;text-align:center}.stats-empty{font-size:.8rem;color:#8a8a9a;margin-top:.5rem}.mood-chart{display:flex;gap:4px;align-items:flex-end;margin-top:.75rem;height:120px;padding-bottom:2.5rem;position:relative}.mood-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;position:relative}.mood-bar-track{flex:1;width:100%;max-width:28px;background:#111;border-radius:2px;position:relative;overflow:hidden;display:flex;align-items:flex-end}.mood-bar-fill{width:100%;border-radius:2px 2px 0 0;min-height:2px}.bar-low{background:#ef4444}.bar-mid{background:#eab308}.bar-high{background:#4ade80}.mood-bar-val{font-size:.65rem;font-weight:700;color:#9a9ab0;margin-top:.25rem;line-height:1}.mood-bar-label{font-size:.55rem;color:#8a8a9a;font-weight:600;text-transform:uppercase;margin-top:.125rem}.mood-bar-count{font-size:.5rem;color:#222;margin-top:.0625rem}.mood-chart-legend{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.625rem;font-size:.6rem;color:#8a8a9a;font-weight:500}.missed-list{margin-top:.5rem}.missed-row{padding:.5rem 0;border-bottom:1px solid #1a1a1a}.missed-row:last-child{border-bottom:none;padding-bottom:0}.missed-row:first-child{padding-top:0}.missed-row-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem}.missed-row-date{font-size:.75rem;font-weight:600;color:#a8a8bc}.badge-pending{background:#eab3080d;color:#eab308;border:1px solid #eab30822}.missed-row-excuse{font-size:.75rem;color:#9090a0;line-height:1.4;font-style:italic}.missed-row-votes{font-size:.65rem;color:#8a8a9a;margin-top:.1875rem}.toast{position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);padding:.625rem 1.25rem;border-radius:4px;font-size:.8rem;font-weight:600;font-family:inherit;z-index:100;animation:toast-in .2s ease-out;pointer-events:none}.toast-success{background:#4ade801a;color:#4ade80;border:1px solid #4ade8033}.toast-error{background:#ef44441a;color:#ef4444;border:1px solid #ef444433}@keyframes toast-in{0%{opacity:0;transform:translate(-50%) translateY(8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.autosave-indicator{font-size:.7rem;font-weight:600;text-align:right;padding:.25rem 0;letter-spacing:.03em;text-transform:uppercase;display:flex;align-items:center;justify-content:flex-end;gap:.5rem}.inline-save-btn{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.2rem .6rem;border-radius:6px;border:none;background:linear-gradient(135deg,#4ade80,#22c55e);color:#fff;cursor:pointer}.optional-tag{font-size:.6rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:#9a9ab0;margin-left:.3rem}.autosave-idle{color:#8a8a9a}.autosave-saving{color:#eab308}.autosave-saved{color:#4ade80}.autosave-error{color:#ef4444}.day-done-card{border-left:2px solid #4ade8070;background:linear-gradient(180deg,#4ade800f,#111)}.day-done-card h2{color:#4ade80}.day-done-text{margin-top:.4rem;font-size:.82rem;color:silver}.day-done-sub{margin-top:.25rem;font-size:.74rem;color:#9a9ab0}.day-done-edit{margin-top:.6rem;width:auto;padding:.4rem .8rem}.verification-summary-card{border-left:2px solid #f59e0b66}.verification-summary-line{margin-top:.35rem;font-size:.78rem;color:silver}.verification-summary-sub{margin-top:.2rem;font-size:.72rem;color:#9a9ab0}.goal-cycle-card{border-left:2px solid #f59e0b66}.goal-cycle-text{margin-top:.35rem;font-size:.82rem;color:silver}.goal-cycle-sub{margin-top:.2rem;font-size:.74rem;color:#a8a8bc}.offline-bar{background:#eab3081a;color:#eab308;border:1px solid #eab30833;border-radius:3px;padding:.5rem .75rem;font-size:.75rem;font-weight:600;text-align:center}.progress-ring{flex-shrink:0;margin-left:auto}.card-accent-green{border-left:2px solid #4ade8044}.card-accent-purple{border-left:2px solid #a78bfa44}.card-accent-red{border-left:2px solid #f8717144}.punish-form{display:flex;flex-direction:column;gap:.6rem}.punish-char-count{font-size:.75rem;color:#555;text-align:right;margin-top:-.3rem}.punishment-task-block{background:#1a1111;border:1px solid #3a1a1a;border-radius:8px;padding:.75rem;display:flex;flex-direction:column;gap:.5rem}.punishment-task-desc{font-size:.9rem;color:#e0e0e0;font-weight:600;line-height:1.4}.punishment-task-due{font-size:.78rem;color:#f87171}.punishment-task-inline{background:#1a1111;border:1px solid #3a1a1a;border-radius:8px;padding:.75rem;margin-top:.75rem;display:flex;flex-direction:column;gap:.5rem}.punishment-task-inline h3{font-size:.85rem;color:#f87171;text-transform:uppercase;letter-spacing:.05em;margin:0}.punishment-task-note{font-size:.75rem;color:#555;font-style:italic}.card-accent-cheer{border-left:2px solid #60a5fa44}.cheer-list{display:flex;flex-direction:column;gap:.625rem;margin-top:.375rem}.cheer-item{padding:.5rem .625rem;background:#0a1628;border:1px solid #1e3a5f;border-radius:6px}.cheer-message{font-size:.85rem;color:#c0d0e0;line-height:1.5;font-style:italic;margin:0}.cheer-sender{font-size:.7rem;color:#60a5fa;font-weight:600;display:block;margin-top:.25rem}.cheer-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:.5rem;margin-top:.5rem}.cheer-stat{display:flex;flex-direction:column;align-items:center;padding:.5rem;background:#0d1f3c;border-radius:6px;border:1px solid #1e3a5f}.cheer-stat-value{font-size:1.25rem;font-weight:700;color:#60a5fa}.cheer-stat-mood{font-size:.75rem}.cheer-stat-label{font-size:.6rem;color:#7099cc;text-transform:uppercase;letter-spacing:.05em;margin-top:.125rem}.cheer-since{font-size:.75rem;color:#58b;margin-top:.5rem;text-align:center}.cheer-highlight{font-size:.85rem;color:#4ade80;font-weight:600;text-align:center;margin-top:.375rem}.cheer-form{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.cheer-textarea{resize:vertical;min-height:60px}.cheer-locked-card{border-left:2px solid #6b728044;text-align:center}.cheer-locked-message{font-size:.85rem;color:#a8a8bc;line-height:1.5}.cheer-locked-message strong{color:#a78bfa}.feedback-form{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.feedback-textarea{resize:vertical;min-height:100px}.feedback-category{appearance:none;-webkit-appearance:none}.feedback-link{display:inline-block;margin-top:.25rem}.abandoned-goal-item{flex-direction:column;align-items:flex-start;gap:.5rem}.abandoned-overdue{color:#f87171;font-weight:600}.abandoned-reason-row{display:flex;gap:.4rem;margin-top:.25rem;width:100%}.abandoned-reason-input{flex:1;font-size:.78rem}.streak-milestone{color:#f59e0b;font-weight:700;animation:milestone-glow 2s ease-in-out infinite alternate}@keyframes milestone-glow{0%{opacity:.7}to{opacity:1}}.card-header{cursor:pointer;display:flex;align-items:center;gap:.5rem;-webkit-user-select:none;user-select:none}.card-header:hover{color:#a8a8bc}.card-header-count{font-size:.7rem;color:#4ade80;font-weight:700;margin-left:.25rem}.card-header-val{font-size:.7rem;color:#a78bfa;font-weight:600;margin-left:.25rem}.goal-step-hint{font-size:.76rem;color:#9a9ab0;margin:.35rem 0 .4rem}.goal-hint{font-size:.74rem;color:#ef4444;margin-bottom:.45rem;font-weight:600}.dot-mood-high{background:#4ade80}.dot-mood-mid{background:#eab308}.dot-mood-low{background:#ef4444aa}.dot-rest{background:#1a1a1a;border:1px solid #333;width:8px;height:8px}.goal-block{display:flex;flex-direction:column}.goal-proof{padding:.5rem .625rem .625rem 2.25rem;display:flex;flex-direction:column;gap:.375rem}.goal-proof-input{margin-top:0;font-size:.8rem}.goal-proof-actions{display:flex;align-items:center;gap:.5rem}.goal-proof-upload{flex:0 0 auto;width:auto;padding:.375rem .75rem;font-size:.75rem}.goal-proof-hint{font-size:.7rem;color:#ef4444aa;font-weight:500}.verification-chip{display:inline-flex;align-items:center;margin-left:.375rem;padding:.1rem .35rem;border:1px solid;border-radius:2px;font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.verification-verified{border-color:#4ade8033;background:#4ade800f;color:#4ade80}.verification-pending{border-color:#eab30833;background:#eab3080f;color:#eab308}.verification-failed{border-color:#ef444433;background:#ef44440f;color:#ef4444}.verification-challenged{border-color:#fb718533;background:#fb71850f;color:#fb7185}.verification-meta{display:flex;align-items:center;gap:.375rem}.verification-meta .verification-chip{margin-left:0}.verification-reason{font-size:.7rem;color:#777;line-height:1.4}.verification-audit-flag{font-size:.62rem;color:#f59e0b;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.card-accent-vote{border-left:2px solid #eab30844}.vote-progress-list{display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem}.vote-progress-item{padding:.5rem 0;border-bottom:1px solid #1a1a1a}.vote-progress-item:last-child{border-bottom:none;padding-bottom:0}.vote-progress-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem}.vote-progress-date{font-size:.8rem;font-weight:600;color:#a8a8bc}.vote-progress-tally{display:flex;align-items:center;gap:.25rem;font-size:.75rem;font-weight:700}.vote-tally-accept{color:#4ade80}.vote-tally-reject{color:#ef4444}.vote-tally-sep{color:#8a8a9a}.vote-tally-total{color:#555;font-weight:500;margin-left:.25rem}.vote-progress-excuse{font-size:.75rem;color:#555;font-style:italic;line-height:1.4;margin-bottom:.375rem}.vote-progress-partners{display:flex;flex-wrap:wrap;gap:4px}.vote-partner-chip{font-size:.65rem;font-weight:600;padding:.2rem .5rem;border-radius:2px;border:1px solid}.chip-accept{border-color:#4ade8033;background:#4ade800d;color:#4ade80}.chip-reject{border-color:#ef444433;background:#ef44440d;color:#ef4444}.chip-waiting{border-color:#1a1a1a;background:transparent;color:#9090a0}.empty-state{font-size:.8rem;color:#9090a0;line-height:1.5;margin-top:.375rem}.rest-day-grid{display:flex;gap:4px;margin-top:.5rem}.rest-day-btn{flex:1;padding:.5rem .25rem;border-radius:3px;border:1px solid #1a1a1a;background:transparent;color:#555;font-family:inherit;font-size:.7rem;font-weight:600;cursor:pointer;text-transform:uppercase;letter-spacing:.03em}.rest-day-btn:hover{background:#1a1a1a}.rest-day-active{border-color:#a78bfa44;background:#a78bfa0d;color:#a78bfa}.notif-settings{display:flex;flex-direction:column;gap:.375rem}.notif-label{font-size:.85rem;color:#a8a8bc;display:flex;align-items:center;gap:.5rem}.notif-hour-input{width:56px;text-align:center;margin-top:0;padding:.375rem .25rem}.settings-date-input{color-scheme:dark}.goal-stats-list{display:flex;flex-direction:column;gap:.625rem;margin-top:.75rem}.goal-stat-row{display:flex;align-items:center;gap:.75rem}.goal-stat-info{flex:1;min-width:0}.goal-stat-name{font-size:.8rem;color:silver;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.goal-stat-detail{font-size:.65rem;color:#9090a0}.goal-stat-bar-track{width:80px;height:6px;background:#1a1a1a;border-radius:3px;overflow:hidden;flex-shrink:0}.goal-stat-bar-fill{height:100%;border-radius:3px;min-width:2px}.goal-stat-pct{font-size:.75rem;font-weight:700;color:#a8a8bc;width:36px;text-align:right;flex-shrink:0}@media(max-width:480px){.card{padding:.875rem;border-radius:3px}.mood-scale{gap:3px}.mood-btn{padding:.375rem .125rem}.mood-label{font-size:.5rem}.mood-num{font-size:.875rem}.dot{width:8px;height:8px}.dot-grid{gap:3px}.pm-btn{width:32px;height:32px}.problems-input{font-size:1.5rem;width:56px}.history-date,.history-details{font-size:.7rem}.stat-value{font-size:1.25rem}.mood-chart{height:100px}.mood-bar-track{max-width:20px}.mood-chart-legend{font-size:.55rem}.toast{top:1rem;bottom:auto;animation-name:toast-in-mobile}.rest-day-btn{padding:.375rem .125rem;font-size:.6rem}.goal-stat-bar-track{width:60px}.tab-nav{padding:.375rem;gap:.3rem}.theme-toggle{font-size:.62rem;padding-right:.4rem}}@keyframes toast-in-mobile{0%{opacity:0;transform:translate(-50%) translateY(-8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}:root[data-theme=light] .tab-nav{background:#00000008;border-color:#0000000f}:root[data-theme=light] .tab-btn{color:#64748b}:root[data-theme=light] .tab-btn:hover{color:#1e293b}:root[data-theme=light] .tab-active{background:#0000000f;color:#0f172a}:root[data-theme=light] .tab-logout{background:#fee2e2;border-color:#fca5a5;color:#991b1b}:root[data-theme=light] header{border-bottom-color:#0000000f}:root[data-theme=light] header h1{color:#0f172a}:root[data-theme=light] .date{color:#334155}:root[data-theme=light] .streak{color:#166534}:root[data-theme=light] .streak-verified{color:#1d4ed8}:root[data-theme=light] .streak-paused{color:#92400e}:root[data-theme=light] .streak-quality,:root[data-theme=light] .streak-quality-sub,:root[data-theme=light] .header-detail-toggle{color:#334155}:root[data-theme=light] .card{background:#fffc;border-color:#0000000f;box-shadow:0 1px 3px #0000000a}:root[data-theme=light] .card h2{color:#475569}:root[data-theme=light] .subtitle,:root[data-theme=light] .vote-status,:root[data-theme=light] .goal-step-hint,:root[data-theme=light] .empty-state,:root[data-theme=light] .history-details,:root[data-theme=light] .settings-item-sub,:root[data-theme=light] .goal-stat-detail,:root[data-theme=light] .day-done-sub,:root[data-theme=light] .goal-cycle-sub{color:#334155}:root[data-theme=light] .goal-hint{color:#dc2626}:root[data-theme=light] .field-input,:root[data-theme=light] .field-textarea,:root[data-theme=light] .missed-textarea,:root[data-theme=light] .theme-toggle{background:#00000008;border-color:#00000014;color:#0f172a}:root[data-theme=light] .field-input::placeholder,:root[data-theme=light] .field-textarea::placeholder,:root[data-theme=light] .missed-textarea::placeholder{color:#64748b}:root[data-theme=light] .save-btn{background:linear-gradient(135deg,#22c55e,#16a34a);border:none;color:#fff;box-shadow:0 2px 12px #16a34a40}:root[data-theme=light] .save-btn:hover:not(:disabled){box-shadow:0 4px 20px #16a34a59;transform:translateY(-1px)}:root[data-theme=light] .history-toggle{border-color:#94a3b8;color:#1e293b;background:#f8fafc}:root[data-theme=light] .history-toggle:hover{border-color:#64748b;color:#0f172a;background:#eef2f7}:root[data-theme=light] .settings-item,:root[data-theme=light] .stat-block,:root[data-theme=light] .mood-bar-track,:root[data-theme=light] .goal-stat-bar-track{background:#f1f5f9}:root[data-theme=light] .stats-grid{background:#cbd5e1}:root[data-theme=light] .history-entry,:root[data-theme=light] .missed-row,:root[data-theme=light] .vote-progress-item{border-bottom-color:#cbd5e1}:root[data-theme=light] .dot-none,:root[data-theme=light] .dot-rest{background:#cbd5e1;border-color:#64748b}:root[data-theme=light] .chip-waiting{border-color:#94a3b8;color:#334155}:root[data-theme=light] .verification-verified{border-color:#16653466;background:#dcfce7;color:#166534}:root[data-theme=light] .verification-pending{border-color:#b4530966;background:#fef3c7;color:#92400e}:root[data-theme=light] .verification-failed{border-color:#b91c1c66;background:#fee2e2;color:#991b1b}:root[data-theme=light] .verification-challenged{border-color:#be185d66;background:#fce7f3;color:#9d174d}:root[data-theme=light] .verification-reason,:root[data-theme=light] .vote-progress-excuse,:root[data-theme=light] .history-reason,:root[data-theme=light] .missed-row-excuse{color:#334155}:root[data-theme=light] .verification-audit-flag{color:#92400e}:root[data-theme=light] .autosave-idle{color:#334155}:root[data-theme=light] .autosave-saving{color:#92400e}:root[data-theme=light] .autosave-saved{color:#166534}:root[data-theme=light] .autosave-error{color:#991b1b}:root[data-theme=light] .offline-bar{background:#fef3c7;border-color:#f59e0b66;color:#92400e}:root[data-theme=light] .settings-logout-btn{background:#fee2e2;border-color:#fca5a5;color:#991b1b}:root[data-theme=light] .settings-complete{border-color:#16653466;background:#dcfce7;color:#166534}:root[data-theme=light] .cheer-item{background:#eff6ff;border-color:#93c5fd}:root[data-theme=light] .cheer-message{color:#1e293b}:root[data-theme=light] .cheer-sender{color:#2563eb}:root[data-theme=light] .cheer-stat{background:#eff6ff;border-color:#93c5fd}:root[data-theme=light] .cheer-stat-value{color:#2563eb}:root[data-theme=light] .cheer-stat-label{color:#3b82f6}:root[data-theme=light] .cheer-since{color:#3b82f6}:root[data-theme=light] .cheer-highlight{color:#166534}:root[data-theme=light] .cheer-locked-message{color:#555}:root[data-theme=light] .cheer-locked-message strong{color:#7c3aed}:root[data-theme=light] .abandoned-overdue{color:#dc2626}:root[data-theme=light] .cheer-locked-card{border-left-color:#d1d5db}:root[data-theme=light] .auth-mode-toggle{background:#00000008;border-color:#0000000f}:root[data-theme=light] .auth-mode-btn{color:#94a3b8}:root[data-theme=light] .auth-mode-btn:hover{color:#475569}:root[data-theme=light] .auth-mode-active{background:#16a34a14;color:#16a34a;box-shadow:none}:root[data-theme=light] .pw-strength-bar{background:#e2e8f0}:root[data-theme=light] .pw-requirements{color:#94a3b8}:root[data-theme=light] .pw-requirements li.pw-met{color:#16a34a}:root[data-theme=light] .optional-tag{color:#94a3b8}:root[data-theme=light] .auth-hint{color:#64748b}:root[data-theme=light] .auth-hint-link{color:#166534}:root[data-theme=light] .auth-hint-link:hover{color:#14532d}:root[data-theme=light] .pw-eye-btn{color:#94a3b8}:root[data-theme=light] .pw-eye-btn:hover{color:#475569}:root[data-theme=light] .change-pw-section{border-top-color:#e2e8f0}:root[data-theme=light] .change-pw-title{color:#64748b}:root[data-theme=light] .pw-success{color:#16a34a}:root[data-theme=light] .block:hover{background:#f1f5f9}:root[data-theme=light] .block.done{background:#f0fdf4}:root[data-theme=light] .checkmark{border-color:#cbd5e1}:root[data-theme=light] .block.done .checkmark{background:#166534;border-color:#166534}:root[data-theme=light] .block.done .checkmark:after{border-color:#fff}:root[data-theme=light] .block-name{color:#475569}:root[data-theme=light] .block.done .block-name{color:#0f172a}:root[data-theme=light] .pm-btn{border-color:#cbd5e1;background:#f8fafc;color:#475569}:root[data-theme=light] .pm-btn:hover:not(:disabled){border-color:#166534;color:#166534}:root[data-theme=light] .problems-input{color:#0f172a}:root[data-theme=light] .mood-current{color:#7c3aed}:root[data-theme=light] .mood-current:before{color:#cbd5e1}:root[data-theme=light] .mood-btn{border-color:#e2e8f0}:root[data-theme=light] .mood-btn:hover{background:#f1f5f9}:root[data-theme=light] .mood-btn.active{border-color:#7c3aed44;background:#7c3aed0d}:root[data-theme=light] .mood-num{color:#94a3b8}:root[data-theme=light] .mood-btn.active .mood-num{color:#7c3aed}:root[data-theme=light] .mood-label{color:#94a3b8}:root[data-theme=light] .mood-btn.active .mood-label{color:#7c3aed99}:root[data-theme=light] .missed-card{border-color:#fca5a5}:root[data-theme=light] .missed-date{color:#dc2626}:root[data-theme=light] .missed-prompt{color:#475569}:root[data-theme=light] .missed-textarea{background:#f8fafc;border-color:#cbd5e1;color:#0f172a}:root[data-theme=light] .missed-textarea:focus{border-color:#94a3b8;box-shadow:0 0 0 2px #16653418}:root[data-theme=light] .missed-textarea::placeholder{color:#94a3b8}:root[data-theme=light] .char-count{color:#dc2626}:root[data-theme=light] .char-count.met{color:#166534}:root[data-theme=light] .missed-error{color:#dc2626}:root[data-theme=light] .avoidable-label{color:#475569}:root[data-theme=light] .toggle-btn{border-color:#e2e8f0;color:#64748b}:root[data-theme=light] .toggle-btn:hover{background:#f1f5f9}:root[data-theme=light] .toggle-active.toggle-yes{border-color:#fca5a5;background:#fef2f2;color:#dc2626}:root[data-theme=light] .toggle-active.toggle-no{border-color:#86efac;background:#f0fdf4;color:#166534}:root[data-theme=light] .vote-excuse{color:#1e293b}:root[data-theme=light] .vote-prompt{color:#475569}:root[data-theme=light] .vote-accept{border-color:#86efac;background:#f0fdf4;color:#166534}:root[data-theme=light] .vote-accept:hover:not(:disabled){background:#dcfce7}:root[data-theme=light] .vote-reject{border-color:#fca5a5;background:#fef2f2;color:#dc2626}:root[data-theme=light] .vote-reject:hover:not(:disabled){background:#fee2e2}:root[data-theme=light] .vote-thanks{color:#475569}:root[data-theme=light] .vote-result.accept{color:#166534}:root[data-theme=light] .vote-result.reject{color:#dc2626}:root[data-theme=light] .vote-sub{color:#64748b}:root[data-theme=light] .punishment-card{border-color:#fca5a5;background:#fff}:root[data-theme=light] .punishment-date{color:#dc2626}:root[data-theme=light] .verdict-reject{color:#dc2626}:root[data-theme=light] .verdict-accept{color:#166534}:root[data-theme=light] .verdict-sep{color:#cbd5e1}:root[data-theme=light] .punishment-excuse{background:#fef2f2;border-left-color:#fca5a5;color:#475569}:root[data-theme=light] .punishment-message p{color:#1e293b}:root[data-theme=light] .punishment-message p:last-child{color:#dc2626}:root[data-theme=light] .punishment-gate{border-top-color:#e2e8f0}:root[data-theme=light] .punishment-instruction{color:#64748b}:root[data-theme=light] .punishment-instruction strong{color:#334155}:root[data-theme=light] .punishment-match{border-color:#86efac!important;color:#166534!important}:root[data-theme=light] .punishment-task-block{background:#fef2f2;border-color:#fca5a5}:root[data-theme=light] .punishment-task-inline{background:#fef2f2;border-color:#fca5a5}:root[data-theme=light] .punishment-task-inline h3{color:#dc2626}:root[data-theme=light] .dot-completed{background:#166534}:root[data-theme=light] .dot-missed{background:#dc2626}:root[data-theme=light] .dot-partial{background:#ca8a04}:root[data-theme=light] .dot-none{background:#e2e8f0}:root[data-theme=light] .dot-legend{color:#64748b}:root[data-theme=light] .history-empty{color:#64748b}:root[data-theme=light] .history-date{color:#334155}:root[data-theme=light] .badge-done{background:#f0fdf4;color:#166534;border-color:#86efac}:root[data-theme=light] .badge-missed{background:#fef2f2;color:#dc2626;border-color:#fca5a5}:root[data-theme=light] .history-reason{color:#475569}:root[data-theme=light] .history-learned,:root[data-theme=light] .history-built{color:#475569}:root[data-theme=light] .history-link{color:#7c3aed}:root[data-theme=light] .history-link:hover{color:#6d28d9}:root[data-theme=light] .field-input:focus,:root[data-theme=light] .field-textarea:focus{border-color:#94a3b8;box-shadow:0 0 0 2px #16653418}:root[data-theme=light] .rest-day-btn{border-color:#e2e8f0;color:#64748b}:root[data-theme=light] .rest-day-btn:hover{background:#f1f5f9}:root[data-theme=light] .rest-day-active{border-color:#7c3aed44;background:#f5f3ff;color:#7c3aed}:root[data-theme=light] .proof-img,:root[data-theme=light] .history-proof-img{border-color:#cbd5e1}:root[data-theme=light] .settings-item-name{color:#0f172a}:root[data-theme=light] .settings-remove{border-color:#fca5a566}:root[data-theme=light] .settings-remove:hover{background:#fef2f2}:root[data-theme=light] .card-accent-green{border-left-color:#16653466}:root[data-theme=light] .card-accent-purple{border-left-color:#7c3aed44}:root[data-theme=light] .card-accent-red{border-left-color:#dc262644}:root[data-theme=light] .card-accent-cheer{border-left-color:#2563eb44}:root[data-theme=light] .card-accent-vote{border-left-color:#ca8a0444}:root[data-theme=light] .day-done-card{border-left-color:#16653470;background:linear-gradient(180deg,#f0fdf4,#fff)}:root[data-theme=light] .day-done-card h2{color:#166534}:root[data-theme=light] .day-done-text{color:#1e293b}:root[data-theme=light] .day-done-sub{color:#475569}:root[data-theme=light] .verification-summary-card,:root[data-theme=light] .goal-cycle-card{border-left-color:#ca8a0466}:root[data-theme=light] .goal-cycle-text{color:#1e293b}:root[data-theme=light] .goal-cycle-sub{color:#475569}:root[data-theme=light] .toast-success{background:#f0fdf4;color:#166534;border-color:#86efac}:root[data-theme=light] .toast-error{background:#fef2f2;color:#dc2626;border-color:#fca5a5}:root[data-theme=light] .theme-toggle{border-color:#e2e8f0;background:#f8fafc;color:#475569}:root[data-theme=light] .theme-toggle:hover{border-color:#cbd5e1}:root[data-theme=light] .theme-toggle-switch{border-color:#cbd5e1;background:#e2e8f0}:root[data-theme=light] .theme-toggle-switch-on{background:#dcfce7;border-color:#86efac}:root[data-theme=light] .theme-toggle-thumb{background:#64748b}:root[data-theme=light] .theme-toggle-switch-on .theme-toggle-thumb{background:#166534}:root[data-theme=light] .goal-stat-name{color:#0f172a}:root[data-theme=light] .goal-stat-pct{color:#475569}:root[data-theme=light] .goal-deadline{color:#64748b}:root[data-theme=light] .stat-value{color:#0f172a}:root[data-theme=light] .stat-value.stat-good{color:#166534}:root[data-theme=light] .stat-value.stat-bad{color:#dc2626}:root[data-theme=light] .stat-label{color:#475569}:root[data-theme=light] .stat-sub{color:#64748b}:root[data-theme=light] .stats-empty{color:#64748b}:root[data-theme=light] .mood-bar-track{background:#f1f5f9}:root[data-theme=light] .mood-bar-val{color:#475569}:root[data-theme=light] .mood-bar-label{color:#64748b}:root[data-theme=light] .mood-bar-count{color:#94a3b8}:root[data-theme=light] .mood-chart-legend{color:#64748b}:root[data-theme=light] .bar-low{background:#dc2626}:root[data-theme=light] .bar-mid{background:#ca8a04}:root[data-theme=light] .bar-high{background:#166534}:root[data-theme=light] .streak-milestone{color:#b45309}:root[data-theme=light] .punish-form .field-input,:root[data-theme=light] .cheer-form .field-input,:root[data-theme=light] .feedback-form .field-input,:root[data-theme=light] .feedback-form .feedback-category{background:#f8fafc;border-color:#cbd5e1;color:#0f172a}:root[data-theme=light] .card:hover{box-shadow:0 2px 8px #0000000a}:root[data-theme=light] .landing-tagline{color:#1e293b}:root[data-theme=light] .landing-sub{color:#64748b}:root[data-theme=light] .landing-step h2{color:#334155}:root[data-theme=light] .landing-step p{color:#64748b}:root[data-theme=light] .landing-step-num{background:linear-gradient(135deg,#16a34a,#0891b2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}:root[data-theme=light] .landing-bottom-text{color:#94a3b8}:root[data-theme=light] .landing-signin-link{color:#94a3b8}:root[data-theme=light] .landing-signin-link:hover{color:#475569}:root[data-theme=light] .landing-try-btn{color:#94a3b8}:root[data-theme=light] .landing-try-btn:hover{color:#16a34a}:root[data-theme=light] .demo-banner{background:#f0fdf4;border-color:#bbf7d0;color:#64748b}:root[data-theme=light] .demo-banner:hover{background:#dcfce7}:root[data-theme=light] .demo-banner-link{color:#16a34a}:root[data-theme=light] .demo-prompt-overlay{background:#0006}:root[data-theme=light] .demo-prompt{background:#fff;border-color:#e2e8f0;box-shadow:0 4px 24px #0000001f}:root[data-theme=light] .demo-prompt-text{color:#0f172a}:root[data-theme=light] .demo-prompt-dismiss{color:#94a3b8}:root[data-theme=light] .demo-prompt-dismiss:hover{color:#475569}:root[data-theme=light] .ticker-item{color:#94a3b8}
