:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#61222a;background:#f8f0e9;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2rem,5vw,3rem);letter-spacing:-.045em}h2{font-size:1.28rem}h3{font-size:1.05rem}p{line-height:1.55}small,.muted{color:#92666c}.shell{max-width:1150px;margin:auto;min-height:100dvh;padding:0 22px 40px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:26px 0;border-bottom:1px solid #ead9d3}.logo{font-size:1.48rem;font-weight:900;letter-spacing:-.06em;display:flex;gap:10px;align-items:center}.logo .icon{font-size:1.7rem}.top-actions{display:flex;align-items:center;gap:10px}.muted-btn{background:transparent;border:1px solid #dfc3c0;color:#61222a;padding:10px 16px;border-radius:14px}.hero{padding:48px 0 28px}.hero p{max-width:600px;color:#93656b}.toolbar{display:flex;gap:12px;margin:20px 0 24px;flex-wrap:wrap}.toolbar input{flex:1;min-width:180px}.card{background:#fffaf7;border:1px solid #e9d8d0;border-radius:24px;box-shadow:0 6px 24px #62212909;padding:24px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.project{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:13px;width:100%;min-height:210px;color:inherit;transition:transform .2s,border-color .2s}.project:hover{transform:translateY(-2px);border-color:#be8080}.project h2{font-size:1.36rem;margin:0}.project p{margin:0}.project .footer{display:flex;gap:10px;flex-wrap:wrap;margin-top:auto;font-size:.87rem;color:#90646d}.pill{display:inline-block;padding:6px 11px;background:#f1e3e1;color:#7a3038;border-radius:50px;font-size:.82rem;font-weight:700}.pill.done{background:#e2f4e9;color:#237a4f}.pill.active{background:#ffe7dc;color:#ae522e}.btn{background:#6b202a;color:#fff;padding:13px 19px;border:1px solid #6b202a;border-radius:15px;font-weight:700;min-height:46px}.btn.secondary{background:#fffaf7;color:#6b202a}.btn.ghost{background:transparent;color:#6b202a;border-color:transparent}.btn.big{font-size:1.1rem;padding:16px 25px}.btn.danger{background:#a83f48;border-color:#a83f48}.empty{border:2px dashed #dfbab6;padding:54px 28px;border-radius:24px;text-align:center;color:#8d565e}.empty .emoji{font-size:3rem}.back{display:inline-flex;gap:8px;align-items:center;background:none;border:0;color:#7f3b43;padding:0;margin:26px 0 20px;font-weight:700}.detail-head{background:linear-gradient(130deg,#c0dff5,#e5e9f2);border-radius:24px;padding:30px;margin-bottom:24px}.detail-head h1{margin:0 0 16px}.badges{display:flex;gap:10px;flex-wrap:wrap}.layout{display:grid;grid-template-columns:1.2fr .8fr;gap:20px}.stack{display:grid;gap:20px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:12px}.counter{text-align:center;padding:23px 5px}.counter-number{font-size:clamp(4rem,9vw,7rem);font-weight:800;line-height:1.2;letter-spacing:-.06em;font-variant-numeric:tabular-nums}.counter-buttons{display:flex;gap:12px;justify-content:center}.counter-buttons button{min-width:78px;min-height:62px;font-size:1.8rem}.timer-clock{font-size:clamp(2rem,5vw,3.2rem);font-variant-numeric:tabular-nums;font-weight:750;text-align:center;letter-spacing:-.04em;margin:18px 0}.row{display:flex;gap:12px;align-items:center;justify-content:space-between}.entry{border-top:1px solid #eee0da;padding:15px 0;display:flex;gap:12px;align-items:flex-start;justify-content:space-between}.entry:first-child{border-top:0}.entry strong{display:block}.entry small{display:block;margin-top:5px}.entry-actions{display:flex;gap:5px}.icon-button{border:1px solid #e7d2cf;background:#fffaf7;border-radius:12px;padding:8px 12px;color:#702631}.field{display:flex;flex-direction:column;gap:7px;font-weight:650;font-size:.9rem}.field input,.field textarea,.field select,input.search{width:100%;border:1px solid #ddc5c1;background:#fff;padding:12px 14px;border-radius:13px;color:#57212a;outline:none;font-weight:400}.field input:focus,.field textarea:focus,.field select:focus,input.search:focus{border-color:#a94a5a;box-shadow:0 0 0 3px #a94a5a22}.field textarea{resize:vertical;min-height:100px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:13px}.fields .full{grid-column:1/-1}.button-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.notice{padding:13px 16px;border-radius:14px;background:#fbe6e4;color:#8b2834;margin:12px 0}.success{background:#e6f4e9;color:#21683f}.auth{max-width:440px;margin:12vh auto 0}.auth h1{margin-bottom:10px}.auth .fields{grid-template-columns:1fr}.statline{display:grid;grid-template-columns:1fr 1fr;gap:12px}.stat{background:#fffaf7;border:1px solid #eadbd5;border-radius:18px;padding:18px;text-align:center}.stat strong{font-size:1.7rem;display:block}.dialog-bg{position:fixed;inset:0;background:#31141aba;display:flex;align-items:center;justify-content:center;z-index:10;padding:18px;overflow-y:auto}.dialog{background:#fffaf7;color:#61222a;width:min(100%,540px);max-height:calc(100dvh - 36px);overflow:auto;border-radius:22px;padding:23px;box-shadow:0 18px 60px #200c1266}.dialog h2{margin-bottom:16px}.dialog .fields{margin-bottom:18px}.dialog .button-row{justify-content:flex-end}.hint{font-size:.88rem;color:#95666d}.statusbar{font-size:.88rem;color:#8d6268}.wide{width:100%}@media(max-width:900px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.layout{grid-template-columns:1fr 1fr}.shell{padding:0 20px 36px}}@media(max-width:680px){.shell{padding:0 15px 28px}.topbar{padding:18px 0}.top-actions small{display:none}.hero{padding:30px 0 8px}.grid,.layout{grid-template-columns:1fr}.card{border-radius:20px;padding:20px}.project{min-height:145px}.detail-head{padding:23px}.counter-number{font-size:5.3rem}.statline{grid-template-columns:1fr 1fr}.toolbar{flex-direction:column}.toolbar input,.toolbar select,.toolbar button{width:100%}.fields{grid-template-columns:1fr}.fields .full{grid-column:auto}.entry{align-items:center}.entry .entry-actions{flex-shrink:0}.dialog{padding:20px}.btn{touch-action:manipulation}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
