.footer{width:100%;background:#fff;border-top:2px solid #1A1A1A;padding:40px 24px 20px;margin-top:60px;box-shadow:0 -4px #1a1a1a0d}.footer__inner{max-width:800px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center}.footer__brand{display:flex;align-items:center;gap:10px}.footer__logo-circle{width:32px;height:32px;border-radius:50%;border:2px solid #1A1A1A;background:#e0e5ec;display:flex;align-items:center;justify-content:center}.footer__logo-svg{width:20px;height:20px;fill:#1a1a1a}.footer__brand-text{font-family:Montserrat,sans-serif;font-weight:700;font-size:18px;letter-spacing:1px;color:#1a1a1a}.footer__tagline{font-size:14px;color:#6b7280;font-weight:500}.footer__links{display:flex;flex-wrap:wrap;justify-content:center;gap:16px}.footer__link{padding:10px 20px;background:#fff;color:#1a1a1a;border:2px solid #1A1A1A;border-radius:12px;font-weight:600;font-family:Inter,sans-serif;box-shadow:2px 2px #1a1a1a;transition:all .15s ease;cursor:pointer}.footer__link:hover{background:#1a1a1a;color:#fff;transform:translate(-2px,-2px);box-shadow:4px 4px #1a1a1a}.footer__link:active{transform:translate(1px,1px);box-shadow:none}.footer__link{text-decoration:none;font-size:14px;text-transform:uppercase}.footer__copy{font-size:12px;color:#9ca3af;font-weight:500;padding-top:16px;border-top:1px solid #E5E7EB;width:100%}.header{width:100%;background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:2px solid #1A1A1A;padding:16px 24px;position:sticky;top:0;z-index:40;box-shadow:0 1px 4px #0000000d}.header__inner{max-width:1280px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;position:relative}.header__logo{display:flex;align-items:center;gap:12px;cursor:pointer}.header__logo:hover .header__logo-circle{transform:translate(2px,2px)}.header__logo-circle{width:64px;height:64px;flex-shrink:0;border-radius:50%;overflow:hidden}.header__logo-image{width:100%;height:100%;display:block;object-fit:cover}.header__logo-svg{width:28px;height:28px;fill:#1a1a1a}.header__logo-eye{fill:#f5f0e6}.header__logo-mouth{stroke:#f5f0e6}.header__logo-text{font-family:Montserrat,sans-serif;font-weight:900;font-size:20px;letter-spacing:1px;color:#1a1a1a}@media(max-width:640px){.header__logo-text{display:none}}.header__title{position:absolute;left:50%;transform:translate(-50%);font-family:Montserrat,sans-serif;font-weight:900;font-size:24px;letter-spacing:4px;text-transform:uppercase;color:#1a1a1a}@media(max-width:768px){.header__title{display:none}}.header__actions{display:flex;align-items:center;gap:12px}.header__profile-btn{margin-right:72px}.header__btn{padding:8px 16px;font-size:14px;font-weight:600;border:2px solid #1A1A1A;border-radius:12px;background:transparent;color:#1a1a1a;cursor:pointer;box-shadow:2px 2px #1a1a1a;transition:all .15s ease}.header__btn:hover{background:#1a1a1a;color:#fff}.header__btn:active{transform:translate(1px,1px);box-shadow:none}.header__btn--filled{background:#1a1a1a;color:#fff}.header__btn--filled:hover{background:transparent;color:#1a1a1a}@media(max-width:640px){.header__btn .header__profile-btn{margin-right:58px;padding:8px 10px}}.task-item{display:flex;align-items:center;justify-content:space-between;background:#f9f8f6;border:1px solid rgba(26,26,26,.2);border-radius:12px;padding:10px;font-size:12px;font-weight:500;transition:border-color .15s ease}.task-item:hover{border-color:#1a1a1a}.task-item__label{display:flex;align-items:center;gap:8px;cursor:pointer;flex-grow:1;overflow:hidden;margin-right:8px}.task-item__checkbox{width:16px;height:16px;border:1px solid #1A1A1A;border-radius:4px;accent-color:#D4AF37;cursor:pointer}.task-item__text{color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-item__text--done{text-decoration:line-through;color:#9ca3af}.task-item__delete{background:none;border:none;color:#9ca3af;font-size:18px;font-weight:700;cursor:pointer;padding:0 4px;transition:color .15s ease}.task-item__delete:hover{color:#ef4444}.day-card{background:#fff;border:2px solid #1A1A1A;border-radius:16px;box-shadow:4px 4px #1a1a1a;padding:20px;min-height:420px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .15s ease}.day-card:hover{transform:translateY(-4px)}.day-card__top{display:flex;flex-direction:column;flex-grow:1;overflow:hidden}.day-card__header{text-align:center;padding-bottom:12px;border-bottom:2px dashed #E5E7EB}.day-card__title{font-family:Montserrat,sans-serif;font-weight:900;font-size:14px;letter-spacing:2px;color:#1a1a1a;text-transform:uppercase}.day-card__progress{display:flex;justify-content:center;margin:20px 0}.day-card__progress-circle{position:relative;width:80px;height:80px;display:flex;align-items:center;justify-content:center}.day-card__progress-svg{width:100%;height:100%;transform:rotate(-90deg)}.day-card__progress-bg{stroke:#e0e5ec;stroke-width:6;fill:transparent}.day-card__progress-fill{stroke:#d4af37;stroke-width:6;fill:transparent;stroke-linecap:round;transition:stroke-dashoffset .5s ease}.day-card__progress-text{position:absolute;font-family:Montserrat,sans-serif;font-weight:700;font-size:14px;color:#1a1a1a}.day-card__tasks{flex-grow:1;overflow-y:auto;max-height:160px;padding-right:4px;display:flex;flex-direction:column;gap:10px}.day-card__empty{font-size:12px;color:#9ca3af;text-align:center;font-style:italic;padding:16px 0}.day-card__bottom{padding-top:12px;border-top:1px solid #F3F4F6}.day-card__add-btn{width:100%;padding:10px;border:2px dashed #D1D5DB;border-radius:12px;background:transparent;color:#6b7280;font-size:12px;font-weight:700;cursor:pointer;transition:all .15s ease}.day-card__add-btn:hover{border-color:#1a1a1a;color:#1a1a1a;background:#f9fafb}.auth-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.auth-modal__window{background:#fff;border:2px solid #1A1A1A;border-radius:16px;box-shadow:6px 6px #1a1a1a;padding:32px;max-width:440px;width:100%;margin:0 16px;position:relative}.auth-modal__close{position:absolute;top:16px;right:16px;width:32px;height:32px;border:2px solid #1A1A1A;border-radius:50%;background:transparent;font-size:20px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.auth-modal__close:hover{background:#1a1a1a;color:#fff}.auth-modal__title{font-family:Montserrat,sans-serif;font-weight:700;font-size:24px;text-align:center;margin-bottom:24px;color:#1a1a1a}.auth-modal__form{display:flex;flex-direction:column;gap:16px}.auth-modal__field{display:flex;flex-direction:column;gap:4px}.auth-modal__label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#374151}.auth-modal__field input{width:100%;padding:12px 16px;border:2px solid #1A1A1A;border-radius:12px;background:#f9f8f6;font-size:14px;font-weight:500;outline:none;transition:box-shadow .15s ease}.auth-modal__field input:focus{box-shadow:0 0 0 3px #d4af374d}.auth-modal__submit{width:100%;padding:12px;background:#1a1a1a;color:#fff;border:2px solid #1A1A1A;border-radius:12px;font-weight:700;font-size:14px;cursor:pointer;box-shadow:2px 2px #1a1a1a;transition:all .15s ease}.auth-modal__submit:hover{background:transparent;color:#1a1a1a}.auth-modal__submit:active{transform:translate(1px,1px);box-shadow:none}.auth-modal__switch{margin-top:24px;text-align:center;font-size:14px;font-weight:500;color:#6b7280}.auth-modal__switch button{background:none;border:none;color:#1a1a1a;font-weight:700;text-decoration:underline;cursor:pointer;margin-left:4px}.auth-modal__switch button:hover{color:#d4af37}.toast{position:fixed;bottom:24px;right:24px;z-index:50;background:#1a1a1a;color:#fff;padding:12px 24px;border:2px solid #D4AF37;border-radius:12px;box-shadow:4px 4px #d4af37;font-family:Inter,sans-serif;font-size:14px;font-weight:500;transform:translateY(100px);opacity:0;transition:all .3s ease;pointer-events:none}.toast--visible{transform:translateY(0);opacity:1}*{margin:0;padding:0;box-sizing:border-box}body{background-color:var(--bg);font-family:Inter,sans-serif;color:var(--text);min-height:100vh;-webkit-font-smoothing:antialiased;transition:background-color .2s ease,color .2s ease}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;text-align:center}.login-page__content{width:min(100%,440px);padding:40px 32px;background:var(--card-bg);border:2px solid var(--card-border);border-radius:16px;box-shadow:6px 6px #1a1a1a}.login-page__content h1{margin-bottom:12px;color:var(--text)}.login-page__content p{margin-bottom:28px;color:var(--muted)}.login-page__actions{display:flex;justify-content:center;gap:12px}.login-page__button{min-width:130px;padding:12px 18px;border:2px solid var(--card-border);border-radius:12px;background:transparent;color:var(--text);font:inherit;font-weight:700;cursor:pointer;box-shadow:2px 2px 0 var(--card-border);transition:transform .15s ease,background-color .15s ease}.login-page__button:hover{transform:translate(-2px,-2px);background:var(--card-border);color:var(--bg)}.login-page__button--filled{background:var(--btn-primary);color:var(--bg)}@media(max-width:600px){.login-page{padding:16px}.login-page__content{padding:32px 20px}.login-page__actions{flex-direction:column}.login-page__button{width:100%}}h1,h2,h3,h4,h5,h6{font-family:Montserrat,sans-serif;font-weight:800}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.ghost-container{position:fixed;top:50%;left:0;width:100%;height:200px;pointer-events:none;z-index:999;overflow:hidden}.ghost-body{position:absolute;width:40px;height:60px;background-color:#e7e6e6;border-radius:100%/70% 70% 0% 0%;animation:ghostMove 6s linear 1 forwards;opacity:.8;left:0;top:50%}.ghost-body:before,.ghost-body:after{content:"";position:absolute;top:22px;width:7px;height:10px;border-radius:50%;background-color:#1a1a1a;z-index:1}.ghost-body:before{left:10px}.ghost-body:after{right:10px}.ghost-body div{position:absolute;width:8px;background-color:#e7e6e6}.ghost-body div:nth-child(1){height:25px;left:0;bottom:-22px;border-radius:100%/0% 0% 50% 50%}.ghost-body div:nth-child(2),.ghost-body div:nth-child(4){height:18px;left:8px;bottom:-15px;border-radius:100%/50% 50% 0% 0%;background-color:transparent}.ghost-body div:nth-child(3){height:18px;left:16px;bottom:-17px;border-radius:100%/0% 0% 60% 60%;background-color:#e7e6e6}.ghost-body div:nth-child(4){left:24px}.ghost-body div:nth-child(5){height:15px;left:32px;bottom:-14px;border-radius:100%/0% 0% 70% 70%;background-color:#e7e6e6}@keyframes ghostMove{0%{transform:translate(-120px,-50%) scale(1.8) rotate(-5deg)}50%{transform:translate(50vw,-50%) scale(1.8) rotate(5deg)}to{transform:translate(calc(100vw + 120px),-50%) scale(1.8) rotate(-5deg)}}:root{--bg: #F5F0E6;--text: #1A1A1A;--card-bg: #FFFFFF;--card-border: #1A1A1A;--header-color: #1A1A1A;--task-bg: #F9F8F6;--progress-bg: #E0E5EC;--progress-fill: #D4AF37;--input-bg: #F9F8F6;--input-border: #1A1A1A;--btn-primary: #1A1A1A;--btn-primary-hover: #1A1A1A;--border: #E5E7EB;--muted: #6B7280}.dark-theme{--bg: #0d0414;--text: #e7d9ff;--card-bg: #160a24;--card-border: #3a1f5e;--header-color: #b388ff;--task-bg: #1e0f36;--progress-bg: #261543;--progress-fill: #9b30ff;--input-bg: #120720;--input-border: #4a1d78;--btn-primary: #7b1fa2;--btn-primary-hover: #9b30ff;--border: #3a1f5e;--muted: #ad9bc7}.gothic-theme{--bg: #0a0a0a;--text: #c0c0c0;--card-bg: #111111;--card-border: #333333;--header-color: #8b0000;--task-bg: #1a1a1a;--progress-bg: #1a1a1a;--progress-fill: #8b0000;--input-bg: #111111;--input-border: #8b0000;--btn-primary: #8b0000;--btn-primary-hover: #ff0000;--border: #333333;--muted: #999999;font-family:Cinzel,serif}.week-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:20px;max-width:1200px;margin:0 auto;padding:0 20px;align-items:flex-start}@media(max-width:1000px){.week-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:600px){.week-grid{grid-template-columns:repeat(2,1fr)}}.page-header{text-align:center;margin-bottom:40px}.page-header h1{font-size:36px;font-weight:900;color:var(--text);margin-bottom:8px}.page-header p{font-size:16px;color:var(--muted);font-weight:500}.add-task-form{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:var(--card-bg);border:2px solid var(--card-border);border-radius:16px;box-shadow:4px 4px #1a1a1a;padding:16px;z-index:50}.add-task-form form{display:flex;gap:8px}.add-task-form input{padding:10px 16px;border:2px solid var(--card-border);background:var(--input-bg);color:var(--text);border-radius:12px;font-size:14px;outline:none;min-width:200px}.add-task-form button{padding:10px 20px;background:#fff;color:#1a1a1a;border:2px solid #1A1A1A;border-radius:12px;font-weight:600;font-family:Inter,sans-serif;box-shadow:2px 2px #1a1a1a;transition:all .15s ease;cursor:pointer}.add-task-form button:hover{background:#1a1a1a;color:#fff;transform:translate(-2px,-2px);box-shadow:4px 4px #1a1a1a}.add-task-form button:active{transform:translate(1px,1px);box-shadow:none}.add-task-form button{font-size:14px}.profile-page{max-width:640px;margin:0 auto;padding:48px 20px}.profile-card{display:flex;flex-direction:column;gap:18px;padding:28px;background:var(--card-bg);border:2px solid var(--card-border);border-radius:16px;box-shadow:4px 4px #1a1a1a;color:var(--text)}.profile-card h2{margin:0}.profile-card button{padding:10px 20px;background:#fff;color:#1a1a1a;border:2px solid #1A1A1A;border-radius:12px;font-weight:600;font-family:Inter,sans-serif;box-shadow:2px 2px #1a1a1a;transition:all .15s ease;cursor:pointer}.profile-card button:hover{background:#1a1a1a;color:#fff;transform:translate(-2px,-2px);box-shadow:4px 4px #1a1a1a}.profile-card button:active{transform:translate(1px,1px);box-shadow:none}.profile-card button{align-self:flex-start}.profile-card .danger{background:#c0392b;color:#fff}.profile-card .secondary{background:transparent;color:var(--text)}.profile-row,.profile-actions{display:flex;align-items:center;gap:12px}.profile-actions{flex-wrap:wrap}.field{display:flex;flex-direction:column;gap:6px}.field input{width:100%;padding:10px 12px;border:2px solid var(--card-border);border-radius:12px;background:var(--input-bg);color:var(--text);font:inherit}.error{color:#c0392b}.success{color:#218c5a}.theme-toggle{position:fixed;top:20px;right:20px;z-index:100;display:flex;flex-direction:column;align-items:flex-end}.theme-toggle__current{width:58px;height:42px;display:flex;align-items:center;justify-content:center;gap:6px;background:var(--card-bg);border:2px solid var(--card-border);border-radius:12px;color:var(--text);font-size:22px;cursor:pointer}.theme-toggle__arrow{font-size:11px;transition:transform .15s ease}.theme-toggle--open .theme-toggle__arrow{transform:rotate(180deg)}.theme-toggle__menu{display:none;flex-direction:column;gap:6px;margin-top:6px}.theme-toggle--open .theme-toggle__menu{display:flex}.theme-toggle__button{width:42px;height:42px;background:var(--card-bg);border:2px solid var(--card-border);border-radius:50%;color:var(--text);font-size:22px;cursor:pointer;transition:transform .15s ease,background-color .15s ease}.theme-toggle__button:hover{transform:scale(1.1)}.theme-toggle__button--active{background:var(--progress-bg);box-shadow:2px 2px 0 var(--card-border)}.App{background:var(--bg);color:var(--text);min-height:100vh;transition:background-color .2s ease,color .2s ease}.header,.footer{background:var(--card-bg);border-color:var(--card-border);color:var(--text)}.header__logo-circle,.footer__logo-circle{background:var(--progress-bg);border-color:var(--card-border)}.header__logo-svg,.header__logo-text,.header__title,.footer__logo-svg,.footer__brand-text,.day-card__title,.day-card__progress-text,.auth-modal__title{color:var(--text);fill:var(--text)}.header__btn,.auth-modal__close,.auth-modal__submit{border-color:var(--card-border);color:var(--text)}.header__btn--filled,.auth-modal__submit{background:var(--btn-primary);color:var(--bg)}.day-card,.auth-modal__window{background:var(--card-bg);border-color:var(--card-border);color:var(--text)}.day-card__header{border-color:var(--border)}.day-card__progress-bg{stroke:var(--progress-bg)}.day-card__progress-fill{stroke:var(--progress-fill)}.day-card__add-btn,.auth-modal__field input{border-color:var(--border);background:var(--input-bg);color:var(--text)}.task-item{background:var(--task-bg);border-color:var(--border)}.task-item__text{color:var(--text)}.footer__tagline,.auth-modal__switch{color:var(--muted)}.footer__copy{border-color:var(--border)}.gothic-theme{background:#080808;color:#c9c9c9;font-family:Cinzel,serif}.gothic-theme .page-header{margin-bottom:32px}.gothic-theme .page-header h1,.gothic-theme .header__title,.gothic-theme .header__logo-text,.gothic-theme .footer__brand-text{color:#8b0000;font-family:Cinzel,serif;letter-spacing:3px}.gothic-theme .page-header p,.gothic-theme .footer__tagline{color:#888}.gothic-theme .header,.gothic-theme .footer{background:#080808;border-color:#333}.gothic-theme .day-card{min-height:435px;background:#111;border:2px solid #333333;border-radius:0;box-shadow:6px 6px #050505}.gothic-theme .day-card__header{border-bottom:2px solid #8b0000}.gothic-theme .day-card__title{color:#b00000;font-family:Cinzel,serif;letter-spacing:3px}.gothic-theme .day-card__progress-bg{stroke:#1b1b1b}.gothic-theme .day-card__progress-fill{stroke:#8b0000}.gothic-theme .day-card__progress-text,.gothic-theme .day-card__empty{color:#bdbdbd}.gothic-theme .day-card__add-btn{border:1px solid #8b0000;border-radius:0;background:transparent;color:#c9c9c9}.gothic-theme .day-card__add-btn:hover{background:#8b0000;color:#fff}.gothic-theme .task-item{background:#151515;border-color:#333}.gothic-theme .task-item__text{color:#c9c9c9}.gothic-theme .task-item__checkbox{accent-color:#8b0000}.gothic-theme .footer__copy{border-color:#333}
