*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Arial,Helvetica,sans-serif;background:#f5efe2;color:#2b2118}a{color:#7c2d1d}.topbar{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:14px 24px;background:#3f261b;color:#fff;box-shadow:0 3px 12px rgba(0,0,0,.2)}.brand{font-size:1.35rem;font-weight:900}.topbar nav{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.topbar a{color:#fff;text-decoration:none;font-weight:700}.container{width:min(1100px,calc(100% - 30px));margin:24px auto}.card{background:#fffaf0;border:2px solid #d4af72;border-radius:18px;padding:22px;box-shadow:0 8px 22px rgba(72,45,18,.13);margin-bottom:20px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}h1,h2,h3{color:#7a2e1c;margin-top:0}.muted{color:#6e6257}.notice{padding:13px 16px;border-radius:12px;margin-bottom:16px;font-weight:700}.notice.error{background:#ffe1dc;color:#8d1f16;border:1px solid #e7a199}.notice.success{background:#e4f7df;color:#276822;border:1px solid #9fd093}.notice.warning{background:#fff0bd;color:#6c4b00;border:1px solid #e6c25f}label{display:block;font-weight:800;margin:12px 0 6px}input,select{width:100%;padding:12px;border:2px solid #c9a66c;border-radius:10px;font-size:1rem;background:#fff}button,.button{display:inline-block;border:0;border-radius:11px;padding:12px 18px;background:#8b321f;color:#fff;text-decoration:none;font-weight:900;cursor:pointer;box-shadow:0 4px 0 #572014}button.secondary,.button.secondary{background:#5a6d49;box-shadow:0 4px 0 #34402b}button.danger,.button.danger{background:#b52a20;box-shadow:0 4px 0 #72170f}.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.auth-wrap{width:min(520px,calc(100% - 30px));margin:50px auto}.status-pill{display:inline-block;padding:7px 11px;border-radius:999px;background:#f1d891;color:#654600;font-weight:800}.preset{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:15px 0;border-bottom:1px solid #e2cfab}.preset:last-child{border-bottom:0}.big-number{font-size:2.5rem;font-weight:900;color:#8b321f}.timer-page{background:linear-gradient(135deg,#2d1d17,#6d3b24);min-height:100vh;color:#fff;padding:18px}.timer-shell{width:min(1100px,100%);margin:auto;background:rgba(18,14,12,.78);border:3px solid #c99a51;border-radius:26px;padding:24px;box-shadow:0 18px 50px rgba(0,0,0,.45)}.timer-header{text-align:center}.phase{font-size:clamp(2rem,5vw,4rem);font-weight:900;color:#ffd76a}.countdown{font-family:"Courier New",monospace;font-size:clamp(4rem,16vw,10rem);font-weight:900;line-height:1;text-align:center;margin:22px 0;color:#f6ffdd;text-shadow:0 0 12px rgba(177,255,127,.6)}.progress{height:28px;border-radius:14px;background:#2d2d2d;overflow:hidden;border:2px solid #7e6a4b}.progress>div{height:100%;width:100%;background:linear-gradient(90deg,#44c467,#d6d33d,#ee8d32);transition:width .2s linear}.timer-controls{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:22px}.timer-controls button{font-size:1.2rem;min-width:150px}.session-info{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;font-size:1.1rem;font-weight:800;margin-top:16px}.fullscreen-btn{position:fixed;right:18px;bottom:18px}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:10px;border-bottom:1px solid #dbc9a8;text-align:left}@media(max-width:760px){.grid,.grid-3{grid-template-columns:1fr}.topbar{align-items:flex-start;flex-direction:column}.countdown{font-size:19vw}.container{width:min(100% - 18px,1100px)}}.wide-container{width:min(1320px,calc(100% - 24px))}.routine-top{display:grid;grid-template-columns:1fr 220px;gap:20px;align-items:end}.routine-total{background:#f0dfb9;border:2px solid #c9a66c;border-radius:12px;padding:12px;text-align:center}.routine-total span{display:block;font-size:1.25rem;color:#7a2e1c;margin-top:4px}.activity-head,.activity-row{display:grid;grid-template-columns:38px minmax(320px,1fr) 95px 100px 92px;gap:10px;align-items:start}.activity-head{font-weight:800;padding:0 8px 6px}.activity-row{background:#fff;border:2px solid #dec69d;border-radius:14px;padding:10px;margin-bottom:10px}.activity-row.dragging{opacity:.45}.drag-handle{font-size:1.5rem;cursor:move;text-align:center;padding-top:10px}.activity-main>input{font-weight:800}.activity-details{display:none;background:#f8f1e4;border-radius:10px;padding:10px;margin-top:8px}.activity-row.details-open .activity-details{display:grid;grid-template-columns:1fr 1fr;gap:8px}.activity-details label:last-child{grid-column:1/-1}.activity-details label{margin:0}.activity-details textarea{width:100%;padding:10px;border:2px solid #c9a66c;border-radius:10px;font:inherit;resize:vertical}.minutes-input{text-align:center}.color-input{height:48px;padding:4px}.small{padding:10px 11px}.options-title{margin-top:26px}.option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.check-option{display:flex;align-items:center;gap:10px;background:#f7ead1;border:1px solid #dec69d;border-radius:10px;padding:12px;margin:0}.check-option input{width:auto;transform:scale(1.35)}.save-actions{margin-top:22px}.routine-name{text-align:center;color:#dbc9aa;font-weight:800;font-size:1.15rem}.next-activity{text-align:center;font-size:1.3rem;color:#fff2bd;min-height:1.6em;margin-top:5px}.directions-panel{max-width:850px;margin:18px auto 0;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.35);border-radius:14px;padding:14px;text-align:center;font-size:1.15rem}.directions-panel strong{display:block;color:#ffe18b;margin-bottom:5px}.positive-reminder{max-width:850px;margin:12px auto 0;text-align:center;font-size:1.35rem;font-weight:900;color:#fff0a8;min-height:1.5em}.status{text-align:center;color:#ffe18b;font-weight:800;margin-top:14px}@media(max-width:850px){.activity-head{display:none}.activity-row{grid-template-columns:30px 1fr 75px}.activity-row>div:nth-child(4),.activity-row>div:nth-child(5){grid-column:2/-1}.activity-row.details-open .activity-details{grid-template-columns:1fr}.activity-details label:last-child{grid-column:auto}.option-grid,.routine-top{grid-template-columns:1fr}}
