:root{--ink:#171b18;--muted:#646960;--paper:#f3f0e7;--surface:#fffdf8;--line:#d8d5ca;--green:#2f6049;--green-dark:#1f4333;--orange:#df6b43;--blue-soft:#dfe9f2;--green-soft:#dfeade;--orange-soft:#f3dfd5;--danger:#9b362e;--danger-soft:#f7e3df;--shadow:10px 10px 0 var(--ink);--serif:"Poppins", system-ui, sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#f1efe8;--muted:#adb5ad;--paper:#111612;--surface:#1a211c;--line:#39423b;--green:#8bc2a3;--green-dark:#153526;--orange:#f09a72;--blue-soft:#273743;--green-soft:#253a2d;--orange-soft:#432d25;--danger:#f08d83;--danger-soft:#3c2523;--shadow:10px 10px 0 #070a08}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:3px;outline:3px solid #2f604947}.brand{color:var(--ink);align-items:center;gap:11px;font-weight:750;text-decoration:none;display:inline-flex}.brand--light{color:#fffdf8}.brand-logo,.preview-logo,.loading-mark{color:#fff;background:var(--green);border-radius:4px;flex:none;place-items:center;width:38px;height:38px;font-size:.88rem;font-weight:800;display:inline-grid}.brand-logo--light{color:var(--green-dark);background:#fffdf8}.eyebrow{color:var(--green);letter-spacing:.13em;text-transform:uppercase;margin:0;font-size:.76rem;font-weight:800}.eyebrow--light{color:#bcd3c4}.button{border:1px solid var(--ink);min-height:44px;font:inherit;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;padding:0 19px;font-size:.9rem;font-weight:750;line-height:1;text-decoration:none;transition:transform .15s,background-color .15s,color .15s,box-shadow .15s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button:active{transform:translateY(0)}.button:disabled{cursor:not-allowed;opacity:.58;transform:none}.button--dark{color:#fff;background:var(--ink)}.button--dark:hover{background:#303630}.button--green{color:#fff;border-color:var(--green);background:var(--green)}.button--green:hover{background:var(--green-dark)}.button--ghost{color:var(--ink);background:0 0}.button--ghost:hover{background:var(--surface)}.button--large{min-height:51px;padding-inline:24px}.button--full{width:100%;min-height:50px}.marketing-page{min-height:100vh;color:var(--ink);background:var(--paper)}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;width:min(1180px,100% - 40px);height:76px;margin:0 auto;display:flex}.header-actions{align-items:center;gap:22px;display:flex}.text-link{color:var(--ink);font-size:.9rem;font-weight:700;text-decoration:none}.text-link:hover{text-underline-offset:5px;text-decoration:underline}.hero-section{grid-template-columns:minmax(0,.95fr) minmax(500px,1.05fr);align-items:center;gap:56px;width:min(1180px,100% - 40px);min-height:670px;margin:0 auto;padding:78px 0 88px;display:grid}.hero-copy h1{max-width:100%;font-family:var(--serif);letter-spacing:-.055em;margin:20px 0 26px;font-size:clamp(3.5rem,5vw,4.75rem);font-weight:400;line-height:.94}.hero-copy h1 span{color:var(--green);font-style:italic;display:block}.hero-description{max-width:520px;color:var(--muted);margin:0;font-size:1.05rem;line-height:1.7}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.product-preview{border:1px solid var(--ink);box-shadow:var(--shadow);background:#eeeee8;border-radius:5px;overflow:hidden;transform:rotate(1.1deg)}.preview-toolbar{border-bottom:1px solid var(--line);background:var(--surface);grid-template-columns:auto 1fr auto;align-items:center;gap:13px;min-height:64px;padding:12px 16px;font-weight:750;display:grid}.preview-logo{width:32px;height:32px;font-size:.74rem}.preview-count{color:var(--muted);font-size:.75rem;font-weight:650}.preview-board{grid-template-columns:repeat(3,1fr);gap:11px;padding:22px;display:grid}.preview-board article>p{margin:0 0 10px;font-size:.74rem;font-weight:800}.preview-task{border:1px solid var(--line);background:var(--surface);border-radius:4px;flex-direction:column;align-items:flex-start;min-height:175px;padding:16px;display:flex}.preview-task--active{border-top:4px solid var(--orange)}.preview-task strong{font-family:var(--serif);margin-top:13px;font-size:1.05rem;line-height:1.25}.preview-task small{color:var(--muted);margin-top:auto}.task-label{letter-spacing:.05em;text-transform:uppercase;border-radius:3px;padding:4px 7px;font-size:.57rem;font-weight:850}.task-label--blue{background:var(--blue-soft)}.task-label--orange{background:var(--orange-soft)}.task-label--green{background:var(--green-soft)}.workflow-section{border-top:1px solid var(--line);grid-template-columns:.75fr 1.25fr;gap:80px;width:min(1180px,100% - 40px);margin:0 auto;padding:100px 0;display:grid}.workflow-section h2{max-width:430px;font-family:var(--serif);letter-spacing:-.04em;margin:15px 0 0;font-size:clamp(2.2rem,4vw,4rem);font-weight:400;line-height:1}.workflow-list{margin:0;padding:0;list-style:none}.workflow-list li{border-top:1px solid var(--line);grid-template-columns:54px 1fr;gap:18px;padding:24px 0;display:grid}.workflow-list li:last-child{border-bottom:1px solid var(--line)}.workflow-list li>span{color:var(--orange);font-family:var(--serif);font-size:1.15rem}.workflow-list h3{margin:0 0 7px;font-size:1rem}.workflow-list p{color:var(--muted);margin:0;line-height:1.55}.site-footer{border-top:1px solid var(--line);width:min(1180px,100% - 40px);color:var(--muted);justify-content:space-between;gap:20px;margin:0 auto;padding:30px 0;font-size:.8rem;display:flex}.auth-page{background:var(--surface);grid-template-columns:minmax(390px,.9fr) minmax(500px,1.1fr);min-height:100vh;display:grid}.auth-brand-panel{color:#fffdf8;background:var(--green-dark);flex-direction:column;justify-content:space-between;min-height:100vh;padding:clamp(30px,5vw,64px);display:flex}.auth-brand-copy{max-width:520px;padding-block:80px}.auth-brand-copy h2{font-family:var(--serif);letter-spacing:-.055em;margin:18px 0 22px;font-size:clamp(3rem,5.5vw,5.7rem);font-weight:400;line-height:.96}.auth-brand-copy>p:last-child{color:#c8d8cc;max-width:410px;margin:0;line-height:1.65}.auth-brand-footer{color:#9fbaa7;margin:0;font-size:.78rem}.auth-form-panel{place-items:center;padding:54px 24px;display:grid}.auth-form-container{width:min(100%,440px)}.auth-form-container>h1{font-family:var(--serif);letter-spacing:-.045em;margin:12px 0;font-size:clamp(2.4rem,5vw,4rem);font-weight:400;line-height:1}.auth-description{color:var(--muted);margin:0;line-height:1.6}.auth-form{gap:20px;margin-top:34px;display:grid}.form-field{gap:8px;display:grid}.form-field>span{font-size:.82rem;font-weight:750}.form-field small{color:var(--muted);font-size:.72rem}.form-field input{width:100%;min-height:48px;color:var(--ink);font:inherit;background:#fff;border:1px solid #aaa99f;border-radius:3px;padding:0 13px}.form-field input::placeholder{color:#969990}.form-field input:hover{border-color:var(--ink)}.form-field input:focus{border-color:var(--green);outline:3px solid #2f604924}.password-field{position:relative}.password-field input{padding-right:68px}.password-toggle{color:var(--green);cursor:pointer;background:0 0;border:0;padding:6px;font-size:.72rem;font-weight:800;position:absolute;top:50%;right:11px;transform:translateY(-50%)}.form-message{border:1px solid;border-radius:3px;padding:12px 14px;font-size:.82rem;line-height:1.45}.form-message--error{color:var(--danger);background:var(--danger-soft);border-color:#d8a39d}.auth-footer{border-top:1px solid var(--line);color:var(--muted);margin-top:28px;padding-top:22px;font-size:.84rem}.auth-footer p{margin:0}.auth-footer a{color:var(--green);text-underline-offset:4px;font-weight:800}.loading-screen{min-height:100vh;color:var(--muted);background:var(--paper);place-content:center;justify-items:center;gap:15px;display:grid}.loading-screen p{margin:0;font-size:.86rem}.loading-mark{animation:1.2s ease-in-out infinite alternate loading-pulse}@keyframes loading-pulse{to{opacity:.45;transform:translateY(-4px)}}.workspace-shell{min-height:100vh;color:var(--ink);background:var(--paper);grid-template-columns:270px 1fr;display:grid}.workspace-sidebar{color:#fff;background:var(--green-dark);flex-direction:column;justify-content:space-between;min-height:100vh;padding:26px 20px 20px;display:flex}.workspace-brand{align-items:center;gap:11px;padding:0 8px;font-weight:800;display:flex}.workspace-nav{gap:6px;margin-top:46px;display:grid}.workspace-nav__item{color:#bed0c2;border-radius:4px;padding:12px 14px;font-size:.88rem;font-weight:700;text-decoration:none}.workspace-nav__item:hover,.workspace-nav__item--active{color:#fff;background:#ffffff1a}.workspace-user{border-top:1px solid #ffffff24;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;padding-top:18px;display:grid}.user-avatar{width:36px;height:36px;color:var(--green-dark);background:#f1c7ac;border-radius:50%;place-items:center;font-size:.78rem;font-weight:850;display:grid}.workspace-user div{gap:2px;min-width:0;display:grid}.workspace-user strong,.workspace-user span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.workspace-user strong{font-size:.76rem}.workspace-user div span{color:#a9c0af;font-size:.65rem}.logout-button{color:#d2ded5;font:inherit;cursor:pointer;background:0 0;border:0;padding:7px 3px;font-size:.68rem;font-weight:750}.logout-button:hover{color:#fff;text-decoration:underline}.workspace-main{min-width:0;padding:clamp(30px,5vw,72px)}.workspace-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:24px;padding-bottom:28px;display:flex}.workspace-header h1{font-family:var(--serif);letter-spacing:-.055em;margin:8px 0 0;font-size:clamp(2.8rem,6vw,5.5rem);font-weight:400;line-height:.95}.workspace-main>.form-message{margin-top:22px}.empty-state{border:1px solid var(--line);background:var(--surface);text-align:center;max-width:720px;box-shadow:7px 7px 0 var(--ink);border-radius:4px;margin:clamp(60px,10vw,130px) auto 0;padding:clamp(30px,6vw,60px)}.empty-state__number{color:var(--orange);font-family:var(--serif);font-size:1.1rem}.empty-state h2{font-family:var(--serif);margin:15px 0 13px;font-size:clamp(2rem,5vw,3.4rem);font-weight:400;line-height:1}.empty-state p{max-width:510px;color:var(--muted);margin:0 auto 26px;line-height:1.65}.not-found-page{min-height:100vh;color:var(--ink);background:var(--paper);flex-direction:column;justify-content:space-between;padding:clamp(26px,5vw,64px);display:flex}.not-found-page>div{max-width:760px;margin:auto 0}.not-found-page h1{font-family:var(--serif);letter-spacing:-.065em;margin:15px 0 20px;font-size:clamp(3.7rem,10vw,8rem);font-weight:400;line-height:.9}.not-found-page p:not(.eyebrow){max-width:470px;color:var(--muted);margin:0 0 28px;line-height:1.65}@media (width<=980px){.hero-section{grid-template-columns:1fr;gap:58px;padding-top:64px}.hero-copy{max-width:720px}.product-preview{justify-self:center;width:min(100%,720px);transform:none}.workflow-section{grid-template-columns:1fr;gap:48px}.auth-page{grid-template-columns:1fr}.auth-brand-panel{min-height:auto;padding:26px 28px}.auth-brand-copy,.auth-brand-footer{display:none}.workspace-shell{grid-template-columns:1fr}.workspace-sidebar{grid-template-columns:1fr auto;align-items:center;min-height:auto;padding:14px 20px;display:grid}.workspace-nav{display:none}.workspace-user{border:0;grid-template-columns:34px auto;padding:0}.workspace-user div,.logout-button{display:none}}@media (width<=680px){.site-header{width:min(100% - 28px,1180px);height:68px}.header-actions{gap:13px}.header-actions .text-link{display:none}.hero-section,.workflow-section,.site-footer{width:min(100% - 28px,1180px)}.hero-section{min-height:auto;padding:56px 0 70px}.hero-copy h1{font-size:clamp(2.85rem,13.5vw,4rem);line-height:.96}.hero-actions{display:grid}.hero-actions .button{width:100%}.product-preview{overflow-x:auto}.preview-board{width:660px}.workflow-section{padding:74px 0}.site-footer{flex-direction:column}.auth-form-panel{padding:45px 20px 60px}.auth-brand-panel{padding:14px 20px}.workspace-main{padding:30px 18px 60px}.workspace-header{align-items:flex-start}.workspace-header .button{min-width:44px;padding-inline:13px;font-size:0}.workspace-header .button:after{content:"+";font-size:1.4rem}.empty-state{box-shadow:5px 5px 0 var(--ink);margin-top:50px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.form-field textarea{resize:vertical;width:100%;color:var(--ink);font:inherit;background:#fff;border:1px solid #aaa99f;border-radius:3px;padding:12px 13px;line-height:1.55}.form-field textarea::placeholder{color:#969990}.form-field textarea:hover{border-color:var(--ink)}.form-field textarea:focus{border-color:var(--green);outline:3px solid #2f604924}.dialog-backdrop{z-index:100;background:#111612a3;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow-y:auto}.dialog-card{border:1px solid var(--ink);background:var(--surface);width:min(100%,610px);max-height:calc(100vh - 48px);box-shadow:10px 10px 0 var(--ink);border-radius:4px;padding:clamp(25px,5vw,42px);overflow-y:auto}.dialog-card--small{width:min(100%,500px)}.dialog-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:24px;padding-bottom:23px;display:flex}.dialog-header h2{font-family:var(--serif);letter-spacing:-.04em;margin:8px 0 0;font-size:clamp(2rem,5vw,3.2rem);font-weight:400;line-height:1}.dialog-close{border:1px solid var(--line);width:38px;height:38px;color:var(--ink);cursor:pointer;background:0 0;border-radius:50%;flex:none;place-items:center;padding:0;font-size:1.5rem;line-height:1;display:grid}.dialog-close:hover{border-color:var(--ink);background:var(--paper)}.dialog-form{gap:20px;padding-top:25px;display:grid}.dialog-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:10px;margin-top:5px;padding-top:22px;display:flex}.dialog-message{color:var(--muted);margin:24px 0;line-height:1.65}.eyebrow--danger{color:var(--danger)}.button--danger{color:#fff;border-color:var(--danger);background:var(--danger)}.button--danger:hover{background:#7f2a24}.projects-loading{grid-template-columns:repeat(3,1fr);align-content:center;gap:18px;min-height:360px;display:grid}.projects-loading span{border:1px solid var(--line);background:linear-gradient(90deg,#e8e5dc 25%,#f4f2eb 50%,#e8e5dc 75%) 0 0/200% 100%;border-radius:4px;height:220px;animation:1.4s infinite project-skeleton}.projects-loading p{color:var(--muted);text-align:center;grid-column:1/-1;margin:4px 0 0;font-size:.8rem}@keyframes project-skeleton{0%{background-position:200% 0}to{background-position:-200% 0}}.content-error{background:var(--danger-soft);border:1px solid #d5a19b;border-radius:4px;max-width:650px;margin:70px auto 0;padding:35px}.content-error h2{font-family:var(--serif);margin:11px 0;font-size:2.2rem;font-weight:400}.content-error>p:not(.eyebrow){color:#71352f;margin:0 0 22px}.projects-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding-top:36px;display:grid}.project-card{border:1px solid var(--line);background:var(--surface);border-radius:4px;min-width:0;transition:transform .15s,box-shadow .15s,border-color .15s}.project-card:hover{border-color:var(--ink);box-shadow:5px 5px 0 var(--ink);transform:translate(-2px,-2px)}.project-card>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;padding:14px 17px;display:flex}.project-number{color:var(--orange);font-family:var(--serif);font-size:.9rem}.project-actions{gap:12px;display:flex}.project-actions button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:3px 0;font-size:.67rem;font-weight:750}.project-actions button:hover{color:var(--ink);text-underline-offset:4px;text-decoration:underline}.project-actions .project-delete:hover{color:var(--danger)}.project-card__link{flex-direction:column;min-height:245px;padding:24px 19px 18px;text-decoration:none;display:flex}.project-card__link h2{font-family:var(--serif);letter-spacing:-.03em;margin:0;font-size:1.75rem;font-weight:400;line-height:1.05}.project-card__link>p{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:16px 0 26px;font-size:.85rem;line-height:1.55;display:-webkit-box;overflow:hidden}.project-card__link footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:14px;margin-top:auto;padding-top:15px;font-size:.67rem;display:flex}.project-card__link footer span:last-child{color:var(--green);font-size:1.15rem}@media (width<=1180px){.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.projects-loading{grid-template-columns:repeat(2,1fr)}.projects-loading span:nth-child(3){display:none}}@media (width<=680px){.dialog-backdrop{align-items:end;padding:0}.dialog-card{width:100%;max-height:92vh;box-shadow:none;border-width:1px 0 0;border-radius:14px 14px 0 0;padding:26px 20px 30px}.dialog-actions{grid-template-columns:1fr 1fr;display:grid}.projects-grid,.projects-loading{grid-template-columns:1fr}.projects-loading span:nth-child(2),.projects-loading span:nth-child(3){display:none}.project-card__link{min-height:220px}}.workspace-brand{color:inherit;text-decoration:none}.project-error-page{background:var(--paper);min-height:100vh;padding:clamp(26px,5vw,64px)}.project-error-page .content-error{margin-top:clamp(70px,12vw,150px)}.workspace-main--project{overflow:hidden}.back-link{color:var(--muted);margin-bottom:28px;font-size:.8rem;font-weight:750;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--green)}.project-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:36px;padding-bottom:32px;display:flex}.project-header>div{min-width:0}.project-header h1{overflow-wrap:anywhere;font-family:var(--serif);letter-spacing:-.055em;margin:9px 0 14px;font-size:clamp(2.8rem,6vw,5.6rem);font-weight:400;line-height:.94}.project-header>div>p:last-child{max-width:680px;color:var(--muted);margin:0;line-height:1.6}.task-filters{grid-template-columns:minmax(220px,1fr) 170px 170px auto;gap:10px;padding:22px 0;display:grid}.task-filters input,.task-filters select,.form-field select{width:100%;min-height:44px;color:var(--ink);background:var(--surface);font:inherit;border:1px solid #aaa99f;border-radius:3px;padding:0 12px;font-size:.82rem}.task-filters input:hover,.task-filters select:hover,.form-field select:hover{border-color:var(--ink)}.task-filters input:focus,.task-filters select:focus,.form-field select:focus{border-color:var(--green);outline:3px solid #2f604924}.task-search{position:relative}.task-search input{padding-left:38px}.task-search:before{content:"⌕";z-index:1;color:var(--muted);pointer-events:none;font-size:1.15rem;position:absolute;top:50%;left:13px;transform:translateY(-52%)}.clear-filters{color:var(--green);font:inherit;cursor:pointer;background:0 0;border:0;padding:0 9px;font-size:.75rem;font-weight:800}.clear-filters:hover{text-underline-offset:4px;text-decoration:underline}.visually-hidden{white-space:nowrap;clip:rect(0 0 0 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.board-loading{min-height:420px;color:var(--muted);place-items:center;font-size:.85rem;display:grid}.filtered-empty-state{border:1px solid var(--line);background:var(--surface);text-align:center;max-width:580px;margin:70px auto;padding:35px}.filtered-empty-state h2{font-family:var(--serif);margin:0;font-size:2.2rem;font-weight:400}.filtered-empty-state p{color:var(--muted);margin:12px 0 22px}.task-board{grid-template-columns:repeat(3,minmax(250px,1fr));align-items:start;gap:14px;display:grid}.task-column{border:1px solid var(--line);background:#e9e8e1;border-radius:4px;min-width:0}.task-column__header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:62px;padding:12px 15px;display:flex}.task-column__header>div{align-items:center;gap:11px;display:flex}.task-column__header>div>span{color:var(--orange);font-family:var(--serif);font-size:.84rem}.task-column__header h2{margin:0;font-size:.82rem}.task-column__header>span{min-width:25px;height:25px;color:var(--muted);background:var(--surface);border-radius:50%;place-items:center;font-size:.66rem;font-weight:750;display:grid}.task-column__body{align-content:start;gap:10px;min-height:280px;padding:10px;display:grid}.task-card{border:1px solid var(--line);background:var(--surface);border-radius:3px;padding:16px;transition:border-color .15s,transform .15s}.task-card:hover{border-color:#979a91;transform:translateY(-1px)}.task-card>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.priority-badge{letter-spacing:.06em;text-transform:uppercase;border-radius:3px;padding:4px 7px;font-size:.56rem;font-weight:850}.priority-badge--low{color:#466153;background:var(--green-soft)}.priority-badge--medium{color:#71571d;background:#f4e6b9}.priority-badge--high{color:#8b3627;background:var(--orange-soft)}.status-dot{border-radius:50%;width:8px;height:8px}.status-dot--todo{background:#8a8f88}.status-dot--in-progress{background:var(--orange)}.status-dot--done{background:var(--green)}.task-card h3{overflow-wrap:anywhere;font-family:var(--serif);margin:14px 0 0;font-size:1.22rem;font-weight:400;line-height:1.18}.task-card>p{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:10px 0 0;font-size:.76rem;line-height:1.5;display:-webkit-box;overflow:hidden}.task-card>footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:10px;margin-top:18px;padding-top:12px;font-size:.61rem;display:flex}.task-card>footer>span{min-width:0}.task-card>footer>div{flex:none;gap:8px;display:flex}.task-card>footer button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:2px 0;font-size:.61rem;font-weight:750}.task-card>footer button:hover{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.task-card>footer .project-delete:hover{color:var(--danger)}.task-due--overdue{color:var(--danger);font-weight:800}.task-column__empty{min-height:74px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:1px dashed #b7b7af;border-radius:3px;padding:14px;font-size:.72rem}.task-column__empty:hover{color:var(--green);border-color:var(--green);background:#fffdf88c}.form-grid{grid-template-columns:1fr 1fr;gap:13px;display:grid}@media (width<=1180px){.task-board{grid-template-columns:repeat(3,minmax(290px,1fr));padding-bottom:12px;overflow-x:auto}.task-filters{grid-template-columns:1fr 1fr}.task-search{grid-column:1/-1}}@media (width<=680px){.project-header{align-items:flex-start}.project-header .button{min-width:44px;padding:0;font-size:0}.project-header .button:after{content:"+";font-size:1.4rem}.task-filters{grid-template-columns:1fr}.task-search{grid-column:auto}.clear-filters{justify-self:start;min-height:38px}.task-board{scroll-snap-type:x mandatory;grid-template-columns:repeat(3,minmax(82vw,1fr));width:calc(100vw - 18px);margin-right:-18px}.task-column{scroll-snap-align:start}.form-grid{grid-template-columns:1fr}}.project-progress{border-bottom:1px solid var(--line);gap:12px;padding:20px 0;display:grid}.project-progress__summary{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.project-progress__summary>div{gap:4px;display:grid}.project-progress__summary span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:800}.project-progress__summary strong{font-family:var(--serif);font-size:1.45rem;font-weight:400}.project-progress__summary p{color:var(--muted);margin:0;font-size:.72rem}.project-progress__track{background:var(--line);border-radius:999px;height:8px;overflow:hidden}.project-progress__track>span{border-radius:inherit;background:var(--green);height:100%;transition:width .24s;display:block}@media (width<=680px){.project-progress__summary{flex-direction:column;align-items:flex-start;gap:8px}}.theme-toggle{z-index:200;border:1px solid var(--line);min-height:42px;color:var(--ink);background:var(--surface);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:0 13px;font-size:.7rem;font-weight:750;transition:color .16s,background-color .16s,border-color .16s,transform .16s;display:inline-flex;position:fixed;bottom:18px;right:18px;box-shadow:0 8px 30px #00000029}.theme-toggle:hover{border-color:var(--ink);transform:translateY(-2px)}.theme-toggle svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:17px;height:17px}:root[data-theme=dark] body{color:var(--ink);background:var(--paper)}:root[data-theme=dark] .button--dark{color:#111612;background:#f1efe8;border-color:#f1efe8}:root[data-theme=dark] .button--dark:hover{background:#d9ddd6}:root[data-theme=dark] .button--ghost{color:#f1efe8;border-color:#c8cec7}:root[data-theme=dark] .button--ghost:hover{color:#f1efe8;background:#202821}:root[data-theme=dark] .product-preview{background:#151b17}:root[data-theme=dark] .form-field input,:root[data-theme=dark] .form-field textarea{border-color:var(--line);color:var(--ink);background:var(--surface)}:root[data-theme=dark] .form-field input::placeholder,:root[data-theme=dark] .form-field textarea::placeholder{color:#899188}:root[data-theme=dark] .task-column{background:#161c18}:root[data-theme=dark] .projects-loading span{background:linear-gradient(90deg,#1a211c 25%,#273029 50%,#1a211c 75%) 0 0/200% 100%}:root[data-theme=dark] .content-error>p:not(.eyebrow){color:#efb4ae}:root[data-theme=dark] .product-preview,:root[data-theme=dark] .dialog-card,:root[data-theme=dark] .project-card,:root[data-theme=dark] .task-card{color:var(--ink)}@media (width<=680px){.theme-toggle{bottom:12px;right:12px}}.legal-page{min-height:100vh;color:var(--ink);background:var(--paper)}.legal-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;width:min(920px,100% - 40px);min-height:76px;margin:0 auto;display:flex}.legal-main{width:min(760px,100% - 40px);margin:0 auto;padding:80px 0 100px}.legal-main>h1{font-family:var(--serif);letter-spacing:-.055em;margin:16px 0 20px;font-size:clamp(3.4rem,8vw,6.6rem);font-weight:400;line-height:.95}.legal-main>.legal-title--long{overflow-wrap:anywhere;letter-spacing:-.045em;font-size:clamp(3rem,5vw,4rem);line-height:1}.legal-intro{max-width:650px;color:var(--muted);margin:0;font-size:1.05rem;line-height:1.7}.legal-content{border-top:1px solid var(--line);gap:0;margin-top:58px;display:grid}.legal-content section{border-bottom:1px solid var(--line);padding:30px 0}.legal-content h2{margin:0 0 14px;font-size:1.05rem}.legal-content p,.legal-content li,.legal-content address{color:var(--muted);line-height:1.75}.legal-content p{margin:0}.legal-content p+p{margin-top:14px}.legal-content ul{gap:8px;margin:14px 0 0;padding-left:22px;display:grid}.legal-content address{gap:5px;font-style:normal;display:grid}.legal-content address strong{color:var(--ink)}.legal-content a,.legal-links a{color:var(--green);text-underline-offset:4px;font-weight:700}.legal-notice{background:var(--orange-soft);margin:0;border:1px solid var(--orange)!important;padding:24px!important}.legal-updated{font-size:.76rem;margin-top:32px!important}.legal-footer{width:min(920px,100% - 40px)}.legal-links{flex-wrap:wrap;gap:18px;display:flex}@media (width<=680px){.legal-header,.legal-main,.legal-footer{width:min(100% - 28px,920px)}.legal-header{min-height:68px}.legal-header .text-link{font-size:.76rem}.legal-main{padding:56px 0 72px}.legal-main>h1{font-size:clamp(2.8rem,15vw,4.4rem)}.legal-main>.legal-title--long{letter-spacing:-.035em;font-size:clamp(1.9rem,9vw,2.8rem);line-height:1.04}.legal-content{margin-top:42px}}.settings-main{max-width:1240px}.settings-header{align-items:flex-end}.settings-header__copy{max-width:620px;color:var(--text);margin-top:12px}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.settings-card{border:1px solid var(--border);background:var(--surface,var(--bg));border-radius:24px;padding:clamp(24px,4vw,38px);box-shadow:0 20px 55px #171f1b0f}.settings-card--wide{grid-column:1/-1}.settings-card--danger{border-color:color-mix(in srgb, var(--danger) 32%, var(--border))}.settings-card>header{margin-bottom:28px}.settings-card h2{margin:8px 0;font-size:clamp(1.35rem,2.2vw,1.8rem)}.settings-card header>p:last-child,.settings-action-row span{color:var(--text)}.settings-form{gap:20px;display:grid}.settings-form input:disabled{cursor:not-allowed;opacity:.72}.settings-actions{justify-content:flex-end;padding-top:4px;display:flex}.settings-action-row{justify-content:space-between;align-items:center;gap:24px;padding-top:4px;display:flex}.settings-action-row>div{gap:5px;display:grid}.settings-action-row strong{color:var(--text-h)}.form-message--success{color:#176a46;background:#31a66f1a;border-color:#227d5547}:root[data-theme=dark] .settings-card{box-shadow:0 20px 55px #00000038}:root[data-theme=dark] .form-message--success{color:#93ddb8;background:#31a66f24}@media (width<=860px){.settings-grid{grid-template-columns:1fr}.settings-card--wide{grid-column:auto}}@media (width<=620px){.settings-card{border-radius:18px;padding:22px}.settings-action-row{flex-direction:column;align-items:stretch}.settings-action-row .button,.settings-actions .button{width:100%}}.view-toggle{border:1px solid var(--border);background:var(--bg);border-radius:12px;gap:4px;margin-left:auto;padding:4px;display:inline-flex}.view-toggle button{color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 14px}.view-toggle button:hover,.view-toggle .view-toggle__active{color:var(--text-h);background:var(--code-bg)}.task-column{transition:border-color .16s,background-color .16s,transform .16s}.task-column--drop-target{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--bg));transform:translateY(-3px)}.task-card[draggable=true]{cursor:grab}.task-card[draggable=true]:active{cursor:grabbing}.task-card--moving{opacity:.58;pointer-events:none}.task-card__drag-hint{color:var(--text);letter-spacing:-3px;-webkit-user-select:none;user-select:none}.task-card__content{min-width:0}.task-card__controls{justify-content:space-between;align-items:center;gap:12px;display:flex}.task-card__actions{gap:10px;display:flex}.task-status-control select{border:1px solid var(--border);max-width:130px;color:var(--text-h);background:var(--bg);font:inherit;cursor:pointer;border-radius:9px;padding:7px 28px 7px 9px;font-size:.75rem}.task-list{gap:12px;display:grid}.task-card--list{grid-template-columns:110px minmax(0,1fr) minmax(330px,auto);align-items:center;gap:22px;padding:18px 20px;display:grid}.task-card--list>header,.task-card--list>footer{margin:0}.task-card--list>header{justify-content:flex-start;gap:12px}.task-card--list>footer{align-items:center}.task-card--list h3{margin:0}.task-card--list .task-card__content p{margin-top:4px}:root[data-theme=dark] .task-column--drop-target{background:color-mix(in srgb, var(--accent) 13%, var(--bg))}@media (width<=1060px){.task-card--list{grid-template-columns:100px minmax(0,1fr)}.task-card--list>footer{grid-column:1/-1}}@media (width<=720px){.view-toggle{width:100%;margin-left:0}.view-toggle button{flex:1}.task-card--list{display:block}.task-card--list>header{justify-content:space-between;margin-bottom:16px}.task-card--list>footer{margin-top:18px}.task-card__controls{flex-direction:column;align-items:stretch;width:100%}.task-status-control select{width:100%;max-width:none}.task-card__actions{justify-content:flex-end}}.planning-main{max-width:1180px}.planning-header{align-items:flex-end}.planning-header>div:first-child>p:last-child{max-width:650px;color:var(--text);margin-top:12px}.planning-date{text-align:right;gap:4px;display:grid}.planning-date span{color:var(--text);font-size:.85rem}.planning-date strong{color:var(--text-h)}.planning-groups{gap:34px;display:grid}.planning-group>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;margin-bottom:14px;padding-bottom:12px;display:flex}.planning-group>header h2{margin:0;font-size:1.2rem}.planning-group>header>span{min-width:30px;min-height:30px;color:var(--text-h);background:var(--code-bg);border-radius:50%;place-items:center;font-size:.75rem;font-weight:700;display:grid}.planning-task-list{border:1px solid var(--border);background:var(--bg);border-radius:20px;overflow:hidden}.planning-task{grid-template-columns:150px minmax(0,1fr) 150px;align-items:center;gap:24px;padding:18px 20px;display:grid}.planning-task+.planning-task{border-top:1px solid var(--border)}.planning-task__date{align-items:center;gap:10px;display:flex}.planning-task__date time{color:var(--text);white-space:nowrap;font-size:.78rem}.planning-task__content{min-width:0}.planning-task__content h3{color:var(--text-h);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1rem;overflow:hidden}.planning-task__content a{color:var(--text);margin-top:4px;font-size:.78rem;text-decoration:none;display:inline-block}.planning-task__content a:hover{color:var(--accent)}.planning-task__status select{border:1px solid var(--border);width:100%;color:var(--text-h);background:var(--bg);font:inherit;border-radius:10px;padding:9px 30px 9px 10px;font-size:.78rem}.planning-empty{margin-top:12px}@media (width<=820px){.planning-task{grid-template-columns:130px minmax(0,1fr)}.planning-task__status{grid-column:1/-1}}@media (width<=620px){.planning-header{align-items:flex-start}.planning-date{text-align:left}.planning-task{grid-template-columns:1fr;gap:14px;padding:17px}.planning-task__status{grid-column:auto}.planning-task__content h3{white-space:normal}}.calendar-main{max-width:1500px}.calendar-header{align-items:flex-end}.calendar-header>div:first-child>p:last-child{color:var(--text);margin-top:12px}.calendar-view-toggle{border:1px solid var(--border);background:var(--bg);border-radius:12px;gap:4px;padding:4px;display:inline-flex}.calendar-view-toggle button,.calendar-toolbar button{color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0}.calendar-view-toggle button{border-radius:8px;padding:8px 14px}.calendar-view-toggle button:hover,.calendar-view-toggle .calendar-toggle--active{color:var(--text-h);background:var(--code-bg)}.calendar-toolbar{grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;margin-bottom:18px;display:grid}.calendar-toolbar>div{gap:6px;display:flex}.calendar-toolbar button{border:1px solid var(--border);border-radius:10px;min-width:38px;min-height:38px;padding:7px 12px}.calendar-toolbar button:hover{color:var(--text-h);background:var(--code-bg)}.calendar-toolbar h2{text-align:center;margin:0;font-size:1.25rem}.calendar-toolbar>span{color:var(--text);text-align:right;font-size:.82rem}.calendar-scroll{padding-bottom:8px;overflow-x:auto}.calendar-grid{border:1px solid var(--border);background:var(--border);border-radius:20px;grid-template-columns:repeat(7,minmax(115px,1fr));gap:1px;min-width:805px;display:grid;overflow:hidden}.calendar-weekday{color:var(--text);background:var(--code-bg);letter-spacing:.06em;text-align:center;text-transform:uppercase;padding:12px;font-size:.74rem;font-weight:700}.calendar-day{background:var(--bg);min-height:132px;padding:10px}.calendar-grid--week .calendar-day{min-height:420px}.calendar-day--outside{opacity:.46}.calendar-day--today{box-shadow:inset 0 0 0 2px var(--accent)}.calendar-day>header{justify-content:space-between;align-items:center;margin-bottom:9px;display:flex}.calendar-day time{width:28px;height:28px;color:var(--text-h);border-radius:50%;place-items:center;font-size:.78rem;font-weight:700;display:grid}.calendar-day--today time{color:#fff;background:var(--accent)}.calendar-day>header span{color:var(--text);font-size:.7rem}.calendar-day__tasks{gap:6px;display:grid}.calendar-task{border-left:3px solid var(--accent);color:var(--text-h);background:var(--code-bg);border-radius:7px;gap:2px;padding:7px 8px;font-size:.7rem;line-height:1.3;text-decoration:none;display:grid;overflow:hidden}.calendar-task--done{opacity:.66;border-left-color:#4d9d70}.calendar-task--in-progress{border-left-color:#d58b38}.calendar-task span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calendar-task small{color:var(--text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calendar-task:hover{filter:brightness(.97);transform:translateY(-1px)}.calendar-day__more{color:var(--text);font-size:.68rem;font-weight:600}@media (width<=760px){.calendar-header{align-items:flex-start}.calendar-view-toggle{width:100%}.calendar-view-toggle button{flex:1}.calendar-toolbar{grid-template-columns:1fr}.calendar-toolbar h2{text-align:left;grid-row:1}.calendar-toolbar>span{text-align:left}}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/poppins-latin-400-normal-cpxAROuN.woff2)format("woff2"),url(/assets/poppins-latin-400-normal-BOb3E3N0.woff)format("woff")}@font-face{font-family:Poppins;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/poppins-latin-400-italic-B4GYq972.woff2)format("woff2"),url(/assets/poppins-latin-400-italic-BPejoDS-.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/poppins-latin-500-normal-C8OXljZJ.woff2)format("woff2"),url(/assets/poppins-latin-500-normal-DGXqpDMm.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/poppins-latin-600-normal-zEkxB9Mr.woff2)format("woff2"),url(/assets/poppins-latin-600-normal-BJdTmd5m.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/poppins-latin-700-normal-Qrb0O0WB.woff2)format("woff2"),url(/assets/poppins-latin-700-normal-BVuQR_eA.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/poppins-latin-800-normal-Bd8-pIP1.woff2)format("woff2"),url(/assets/poppins-latin-800-normal-YoItoZZV.woff)format("woff")}:root{color:var(--ink,#181b18);background:var(--paper,#f5f2e9);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Poppins,system-ui,sans-serif}*{box-sizing:border-box}html{background:var(--paper,#f5f2e9);min-width:320px}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}#root{min-height:100vh}
