:root{--bg-primary:#08080f;--bg-secondary:#12121e;--bg-tertiary:#1c1c30;--bg-hover:#a78bfa0f;--text-primary:#cdd6f4;--text-secondary:#94a3b8;--text-muted:#64748b;--accent-purple:#a78bfa;--accent-amber:#f59e0b;--accent-teal:#2dd4bf;--accent-blue:#38bdf8;--accent-green:#4ade80;--accent-pink:#f472b6;--border-primary:#1e293b;--border-subtle:#ffffff0f;--border-accent:#a78bfa4d;--font-mono:"JetBrains Mono", "Fira Code", "Cascadia Code", ui-monospace, monospace;--text-hero:clamp(2rem, 5vw, 3.5rem);--text-h1:1.5rem;--text-h2:1.125rem;--text-body:.9375rem;--text-small:.8125rem;--text-code:.875rem;--space-section:5rem;--space-block:2.5rem;--space-stack:1.25rem;--space-inline:1rem;--space-inset:1.5rem;--max-width:1120px;--nav-height:3.5rem;--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-glow:0 0 20px #a78bfa26;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--ease-out:cubic-bezier(.16, 1, .3, 1);--duration-fast:.15s;--duration-normal:.3s;--duration-slow:.5s}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:var(--nav-height)}body{font-family:var(--font-mono);font-size:var(--text-body);color:var(--text-primary);background:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;line-height:1.6;overflow-x:hidden}#root{max-width:var(--max-width);min-height:100svh;margin:0 auto;padding:0 1rem}@media (width<=639px){#root{padding:0 .5rem}}::selection{color:var(--text-primary);background:#a78bfa4d}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-primary);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}h1,h2,h3,h4,h5,h6{font-family:var(--font-mono);color:var(--text-primary);line-height:1.3}h1{font-size:var(--text-hero);letter-spacing:-.02em;font-weight:700}h2{font-size:var(--text-h1);letter-spacing:-.01em;font-weight:600}h3{font-size:var(--text-h2);font-weight:600}p{color:var(--text-secondary);line-height:1.7}a{color:var(--accent-purple);transition:color var(--duration-fast) var(--ease-out);text-decoration:none}a:hover{color:var(--accent-blue)}:focus-visible{outline:2px solid var(--accent-purple);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=1024px){:root{--space-section:3.5rem;--space-block:2rem}}@media (width<=639px){:root{--space-section:2.5rem;--space-block:1.5rem;--space-stack:1rem;--space-inset:1.25rem}body{font-size:.875rem}}.section{padding:var(--space-section) 2rem;position:relative}@media (width<=639px){.section{padding:var(--space-section) 1rem}}.section__inner{max-width:900px;margin:0 auto}.section-divider{margin-bottom:var(--space-block);color:var(--accent-green);font-size:var(--text-small);opacity:.8;white-space:nowrap;align-items:center;gap:.75rem;font-weight:500;display:flex;overflow:hidden}.section-divider:after{content:"";background:var(--border-primary);flex:1;min-width:2rem;height:1px}.card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:var(--space-inset);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out)}.card:hover{border-color:var(--border-accent);box-shadow:var(--shadow-glow)}.badge{font-family:var(--font-mono);font-size:var(--text-small);color:var(--text-primary);background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);transition:all var(--duration-fast) var(--ease-out);white-space:nowrap;align-items:center;gap:.4rem;padding:.35rem .75rem;font-weight:500;display:inline-flex}.badge:hover{border-color:var(--accent-purple);background:var(--bg-hover);transform:translateY(-1px)}.flex-wrap{flex-wrap:wrap;gap:.5rem;display:flex}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fade-in{animation:fadeInUp .6s var(--ease-out) both}.stagger-children>:first-child{animation-delay:0s}.stagger-children>:nth-child(2){animation-delay:.1s}.stagger-children>:nth-child(3){animation-delay:.2s}.stagger-children>:nth-child(4){animation-delay:.3s}.stagger-children>:nth-child(5){animation-delay:.4s}.stagger-children>:nth-child(6){animation-delay:.5s}.stagger-children>:nth-child(7){animation-delay:.6s}.stagger-children>:nth-child(8){animation-delay:.7s}.stagger-children>:nth-child(9){animation-delay:.8s}.stagger-children>:nth-child(10){animation-delay:.9s}.nav{z-index:100;height:var(--nav-height);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-subtle);background:#08080fcc;position:fixed;top:0;left:0;right:0}.nav__inner{max-width:var(--max-width);justify-content:space-between;align-items:center;height:100%;margin:0 auto;padding:0 1rem;display:flex}.nav__logo{font-family:var(--font-mono);font-size:var(--text-small);color:var(--accent-purple);letter-spacing:-.01em;font-weight:600}.nav__links{gap:1.5rem;list-style:none;display:flex}.nav__links a{font-family:var(--font-mono);font-size:var(--text-small);color:var(--text-secondary);transition:color var(--duration-fast) var(--ease-out);padding:.25rem 0;text-decoration:none;position:relative}.nav__links a:after{content:"";background:var(--accent-purple);width:0;height:1px;transition:width var(--duration-normal) var(--ease-out);position:absolute;bottom:0;left:0}.nav__links a:hover,.nav__links a.active{color:var(--text-primary)}.nav__links a:hover:after,.nav__links a.active:after{width:100%}.app-layout{padding-top:var(--nav-height);flex-direction:column;min-height:100svh;display:flex}.app-layout__main{flex:1}.footer{border-top:1px solid var(--border-subtle);font-family:var(--font-mono);font-size:var(--text-small);color:var(--text-muted);justify-content:space-between;align-items:center;padding:1rem;display:flex}.footer__left{align-items:center;gap:.75rem;display:flex}.footer__separator{color:var(--border-primary)}.generator-page{padding:var(--space-section) 0}.hero__prompt{font-family:var(--font-mono);color:var(--text-secondary);font-size:1rem;line-height:1.8}.hero__prompt-line{gap:.5rem;display:flex}.hero__prompt-char{color:var(--accent-green);flex-shrink:0;font-weight:600}.hero__cursor{background:var(--accent-purple);vertical-align:text-bottom;width:.6em;height:1.1em;animation:1s step-end infinite blink;display:inline-block}.generator-card{margin-top:var(--space-block)}.generator-card__tabs{margin-bottom:var(--space-stack);gap:.5rem;display:flex}.generator-card__tab{font-family:var(--font-mono);font-size:var(--text-small);color:var(--text-muted);border:1px solid var(--border-primary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);background:0 0;padding:.5rem 1.25rem;font-weight:500}.generator-card__tab:hover{color:var(--text-primary);border-color:var(--text-muted)}.generator-card__tab--active{color:var(--accent-purple);border-color:var(--accent-purple);background:var(--bg-hover)}.generator-card__tab--active:hover{color:var(--accent-purple);border-color:var(--accent-purple)}.generator-card__controls{gap:var(--space-stack);margin-top:var(--space-stack);flex-wrap:wrap;align-items:flex-end;display:flex}.generator-card__field{flex-direction:column;gap:.5rem;display:flex}.generator-card__label{font-family:var(--font-mono);font-size:var(--text-small);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:500}.generator-card__input{font-family:var(--font-mono);font-size:var(--text-body);color:var(--text-primary);background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);width:5rem;transition:border-color var(--duration-fast) var(--ease-out);outline:none;padding:.5rem .75rem}.generator-card__input:focus{border-color:var(--accent-purple)}.generator-card__toggle{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;display:flex}.generator-card__toggle-track{background:var(--border-primary);width:2.5rem;height:1.25rem;transition:background var(--duration-fast) var(--ease-out);border-radius:1rem;position:relative}.generator-card__toggle--active .generator-card__toggle-track{background:var(--accent-purple)}.generator-card__toggle-thumb{background:var(--text-primary);width:.9rem;height:.9rem;transition:transform var(--duration-fast) var(--ease-out);border-radius:50%;position:absolute;top:.175rem;left:.175rem}.generator-card__toggle--active .generator-card__toggle-thumb{transform:translate(1.25rem)}.generator-card__toggle-label{font-family:var(--font-mono);font-size:var(--text-small);color:var(--text-secondary)}.generator-card__actions{margin-left:auto;display:flex}.generator-card__btn{font-family:var(--font-mono);font-size:var(--text-small);color:var(--bg-primary);background:var(--accent-purple);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);letter-spacing:.02em;border:none;padding:.6rem 1.5rem;font-weight:600}.generator-card__btn:hover{box-shadow:var(--shadow-glow);background:#c4adff;transform:translateY(-1px)}.generator-card__btn:active{transform:translateY(0)}.result-display{margin-top:var(--space-block)}.result-display__items{flex-direction:column;gap:.75rem;display:flex}.result-display__item{background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-md);animation:fadeInUp .4s var(--ease-out) both;transition:border-color var(--duration-fast) var(--ease-out);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.result-display__item:hover{border-color:var(--border-accent)}.result-display__number{font-family:var(--font-mono);font-size:var(--text-h2);color:var(--accent-green);letter-spacing:.04em;line-height:1.4}.result-display__badge{font-family:var(--font-mono);font-size:var(--text-small);color:var(--accent-teal);border-radius:var(--radius-sm);background:#2dd4bf14;border:1px solid #2dd4bf4d;margin-left:1rem;padding:.2rem .6rem;font-weight:500}.result-display__copy-btn{font-family:var(--font-mono);font-size:var(--text-small);color:var(--text-muted);border:1px solid var(--border-primary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);white-space:nowrap;background:0 0;align-items:center;gap:.4rem;padding:.4rem .9rem;display:inline-flex}.result-display__copy-btn:hover{color:var(--accent-purple);border-color:var(--accent-purple);background:var(--bg-hover)}.result-display__copy-btn--copied{color:var(--accent-green);border-color:var(--accent-green)}.result-display__empty{font-family:var(--font-mono);font-size:var(--text-body);color:var(--text-muted);text-align:center;padding:3rem 0}.pomodoro-page__layout{gap:var(--space-block);grid-template-columns:1fr 1fr;align-items:start;display:grid}@media (width<=768px){.pomodoro-page__layout{grid-template-columns:1fr}}.pomodoro-card{align-items:center;gap:var(--space-stack);flex-direction:column;display:flex}.pomodoro-card__mode-indicator{font-family:var(--font-mono);font-size:var(--text-small);color:var(--accent-purple);background:var(--bg-hover);border-radius:var(--radius-sm);letter-spacing:.03em;border:1px solid #a78bfa4d;padding:.25rem .9rem;font-weight:500}.pomodoro-card__mode-indicator--focus{color:var(--accent-purple);background:#a78bfa14;border-color:#a78bfa4d}.pomodoro-card__mode-indicator--shortBreak{color:var(--accent-teal);background:#2dd4bf14;border-color:#2dd4bf4d}.pomodoro-card__mode-indicator--longBreak{color:var(--accent-blue);background:#38bdf814;border-color:#38bdf84d}.circular-timer{justify-content:center;align-items:center;width:240px;height:240px;display:flex;position:relative}.circular-timer__svg{position:absolute;inset:0}.circular-timer__progress{transition:stroke-dashoffset .9s linear, stroke .3s var(--ease-out)}.circular-timer__center{text-align:center;flex-direction:column;align-items:center;gap:.3rem;display:flex}.circular-timer__time{font-family:var(--font-mono);color:var(--text-primary);letter-spacing:.04em;font-size:2.5rem;font-weight:600;line-height:1}.circular-timer__time--done{color:var(--accent-green)}.circular-timer__status{font-family:var(--font-mono);font-size:var(--text-small);color:var(--text-muted)}.circular-timer__status--running{color:var(--accent-green)}.timer-controls{gap:var(--space-stack);flex-direction:column;align-items:center;width:100%;display:flex}.timer-controls__modes{flex-wrap:wrap;justify-content:center;gap:.35rem;display:flex}.timer-controls__mode{font-family:var(--font-mono);font-size:var(--text-small);color:var(--text-muted);border:1px solid var(--border-primary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);white-space:nowrap;background:0 0;padding:.35rem .75rem;font-weight:500}.timer-controls__mode:hover{color:var(--text-primary);border-color:var(--text-muted)}.timer-controls__mode--active{color:var(--accent-purple);border-color:var(--accent-purple);background:var(--bg-hover)}.timer-controls__actions{gap:.75rem;display:flex}.timer-controls__btn{font-family:var(--font-mono);font-size:var(--text-small);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);letter-spacing:.02em;border:1px solid #0000;padding:.55rem 1.5rem;font-weight:600}.timer-controls__btn--primary{color:var(--bg-primary);background:var(--accent-purple);border-color:var(--accent-purple)}.timer-controls__btn--primary:hover{box-shadow:var(--shadow-glow);background:#c4adff;transform:translateY(-1px)}.timer-controls__btn--pause{color:var(--accent-amber);background:#f59e0b14;border-color:#f59e0b4d}.timer-controls__btn--pause:hover{border-color:var(--accent-amber);background:#f59e0b20;transform:translateY(-1px);box-shadow:0 0 20px #f59e0b26}.timer-controls__btn--ghost{color:var(--text-muted);border-color:var(--border-primary);background:0 0}.timer-controls__btn--ghost:hover{color:var(--text-primary);border-color:var(--text-muted);background:var(--bg-hover);transform:translateY(-1px)}.task-list{gap:var(--space-stack);flex-direction:column;height:100%;display:flex}.task-list__title{font-family:var(--font-mono);font-size:var(--text-h2);color:var(--text-primary);font-weight:600}.task-list__form{display:flex}.task-list__input{font-family:var(--font-mono);font-size:var(--text-body);color:var(--text-primary);background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);width:100%;transition:border-color var(--duration-fast) var(--ease-out);outline:none;padding:.55rem .75rem}.task-list__input::placeholder{color:var(--text-muted)}.task-list__input:focus{border-color:var(--accent-purple)}.task-list__items{flex-direction:column;gap:.35rem;list-style:none;display:flex}.task-list__items--completed{border-top:1px solid var(--border-subtle);opacity:.6;padding-top:.75rem}.task-list__item{transition:opacity var(--duration-fast) var(--ease-out);align-items:center;gap:.6rem;padding:.35rem 0;display:flex}.task-list__checkbox{border:1.5px solid var(--border-primary);cursor:pointer;width:1.1rem;height:1.1rem;transition:all var(--duration-fast) var(--ease-out);background:0 0;border-radius:3px;flex-shrink:0;padding:0}.task-list__checkbox:hover{border-color:var(--accent-purple)}.task-list__checkbox--checked{background:var(--accent-purple);border-color:var(--accent-purple);position:relative}.task-list__checkbox--checked:after{content:"";border:solid var(--bg-primary);border-width:0 1.5px 1.5px 0;width:4px;height:8px;position:absolute;top:1px;left:4px;transform:rotate(45deg)}.task-list__text{font-family:var(--font-mono);font-size:var(--text-small);color:var(--text-primary);word-break:break-word;flex:1}.task-list__item--done .task-list__text{color:var(--text-muted);text-decoration:line-through}.task-list__remove{font-family:var(--font-mono);color:var(--text-muted);cursor:pointer;transition:color var(--duration-fast) var(--ease-out);opacity:0;background:0 0;border:none;padding:.15rem .35rem;font-size:1rem;line-height:1}.task-list__item:hover .task-list__remove{opacity:1}.task-list__remove:hover{color:var(--accent-pink)}.task-list__empty{font-family:var(--font-mono);font-size:var(--text-small);color:var(--text-muted);text-align:center;padding:2rem 0}
