@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700&display=swap');
:root{--ink:#3e3850;--muted:#827b90;--paper:#fff8f1;--card:rgba(255,255,255,.78);--line:rgba(79,68,103,.12);--accent:#7d65db;--phase:#7d65db;--shadow:0 24px 70px rgba(106,82,130,.13)}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 8% 14%,#ffe4ec 0 7%,transparent 22%),radial-gradient(circle at 91% 76%,#dcf5e9 0 8%,transparent 24%),linear-gradient(135deg,#fffaf2,#f8f2ff 54%,#f0fbf7);color:var(--ink);font-family:'DM Sans',sans-serif;overflow-x:hidden}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:3px}.hidden{display:none!important}#progress{position:fixed;inset:auto 0 0;height:7px;background:var(--phase);transform:scaleX(0);transform-origin:left;transition:background .5s,transform .25s linear;z-index:5}header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,5vw,70px);position:relative;z-index:2}.brand{display:flex;align-items:center;gap:11px;color:var(--ink);font:700 16px 'Manrope';text-decoration:none}.brand-mark{width:34px;height:34px;border-radius:12px 12px 12px 5px;display:grid;place-items:center;color:white;background:linear-gradient(145deg,#9c82ee,#6955c7);box-shadow:0 6px 18px rgba(98,89,232,.27);transform:rotate(-3deg)}.room-actions{display:flex;align-items:center;gap:14px}.button{border:0;border-radius:13px;padding:11px 17px;font-weight:600;transition:transform .15s,box-shadow .15s,background .15s}.button:hover{transform:translateY(-1px)}.primary{background:var(--accent);color:white;box-shadow:0 8px 22px rgba(98,89,232,.22)}.secondary{background:rgba(255,255,255,.65);border:1px solid var(--line);color:var(--ink)}.people{display:flex}.avatar{width:34px;height:34px;border:3px solid var(--paper);margin-left:-8px;border-radius:50%;display:grid;place-items:center;background:#dbd7f8;color:#393270;font-weight:700;font-size:12px}.avatar:first-child{margin-left:0}main{min-height:calc(100vh - 82px);padding:20px 20px 80px}.welcome{max-width:780px;margin:12vh auto;text-align:center}.eyebrow{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:700;margin:0 0 8px}.welcome h1{font:700 clamp(42px,7vw,76px)/1.04 'Manrope';letter-spacing:-.055em;margin:10px 0 24px}.welcome>p:not(.eyebrow){font-size:19px;line-height:1.6;color:var(--muted);max-width:620px;margin:0 auto 35px}.create-form{display:flex;gap:10px;max-width:540px;margin:auto;padding:10px;border-radius:20px;background:var(--card);border:1px solid white;box-shadow:var(--shadow);text-align:left}.create-form label{flex:1}.create-form label span{position:absolute;width:1px;height:1px;overflow:hidden}.create-form input{width:100%;height:48px;border:0;background:transparent;padding:0 14px;color:var(--ink);outline:0}.create-form .button{padding-inline:24px}.timer-view{max-width:960px;margin:0 auto}.room-label{text-align:center;color:var(--muted);font-size:13px;font-weight:600;margin:8px 0 20px}.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#27a277;margin-right:8px;box-shadow:0 0 0 4px rgba(39,162,119,.1)}.timer-card{background:var(--card);border:2px solid rgba(255,255,255,.88);box-shadow:var(--shadow);border-radius:42px 42px 42px 18px;min-height:455px;display:flex;flex-direction:column;align-items:center;justify-content:center;backdrop-filter:blur(18px);position:relative;overflow:hidden}.timer-card:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:color-mix(in srgb,var(--phase) 10%,transparent);filter:blur(12px);transition:background .5s}.timer-card>*{position:relative}.phase-icon{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;background:white;box-shadow:0 8px 26px rgba(81,66,102,.1);font-size:27px;margin:0 0 13px;transform:rotate(-3deg)}.phase-name{font:700 16px 'Manrope';color:var(--phase);margin:0 0 12px;transition:color .5s}.clock{font:600 clamp(78px,14vw,138px)/1 'Manrope';letter-spacing:-.07em;font-variant-numeric:tabular-nums}.next-up{color:var(--muted);font-size:14px;margin:18px 0 4px}.cheer{color:#a26980;font-size:13px;margin:0 0 25px;font-weight:600}.controls{display:flex;align-items:center;gap:18px}.big{min-width:160px;padding:15px 25px;border-radius:16px}.icon-button{width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.56);font-size:23px;color:var(--muted)}.sequence-wrap{padding:50px 4px 0}.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:17px}.section-head h2,.dialog-head h2{font:700 24px 'Manrope';margin:0}.sequence{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;list-style:none;padding:0;margin:0}.sequence li{background:rgba(255,255,255,.55);border:1px solid var(--line);border-radius:18px 18px 18px 8px;padding:17px;display:flex;align-items:center;gap:12px;color:var(--muted);transition:transform .18s}.sequence li:hover{transform:translateY(-2px)}.sequence li.active{background:white;box-shadow:0 8px 28px rgba(44,39,74,.08);color:var(--ink);border-color:transparent}.phase-dot{width:9px;height:9px;border-radius:50%;background:var(--dot);flex:0 0 auto}.sequence strong{display:block;font-size:14px}.sequence small{display:block;color:var(--muted);margin-top:2px}dialog{width:min(650px,calc(100vw - 30px));border:0;border-radius:28px;padding:0;background:#fcfbf8;color:var(--ink);box-shadow:0 30px 100px rgba(25,20,55,.25)}dialog.fallback-open{position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);z-index:50;max-height:90vh;overflow:auto}body.modal-open{overflow:hidden}dialog::backdrop{background:rgba(28,25,45,.32);backdrop-filter:blur(5px)}dialog form{padding:28px}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start}.close{border:0;background:transparent;font-size:30px;color:var(--muted);line-height:1}.hint{color:var(--muted);line-height:1.5;font-size:14px;margin:12px 0 22px}.phase-editor{display:flex;flex-direction:column;gap:9px;max-height:42vh;overflow:auto;padding:2px}.phase-row{display:grid;grid-template-columns:34px 1fr 96px 34px;gap:8px;align-items:center}.drag{color:#aaa;font-size:18px}.phase-row input{height:43px;border:1px solid var(--line);background:white;border-radius:11px;padding:0 12px;min-width:0}.phase-row .minutes{padding-right:5px}.remove{width:34px;height:34px;border:0;background:transparent;color:#ae5760;font-size:20px}.add{border:1px dashed rgba(98,89,232,.4);background:rgba(98,89,232,.04);color:var(--accent);border-radius:12px;width:100%;padding:12px;margin-top:12px;font-weight:600}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:24px}.error{color:#ad3e4b;font-size:13px;min-height:19px;margin-top:8px}.doodle{position:absolute;font-size:26px;color:color-mix(in srgb,var(--phase) 55%,#eaa4bd);opacity:.72}.doodle-one{left:11%;top:18%;transform:rotate(-13deg)}.doodle-two{right:12%;top:24%;transform:rotate(14deg)}.doodle-three{right:16%;bottom:15%;font-size:22px;transform:rotate(8deg)}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,30px);opacity:0;background:var(--ink);color:white;border-radius:12px;padding:11px 16px;font-size:13px;transition:.25s;z-index:10}.toast.show{transform:translate(-50%,0);opacity:1}@media(max-width:700px){header{height:70px;padding:0 16px}.room-actions{gap:7px}.room-actions .button{font-size:0;padding:10px}.room-actions .button:after{content:'Share';font-size:13px}.timer-card{min-height:380px;border-radius:27px}.clock{font-size:82px}.sequence{grid-template-columns:1fr 1fr}.welcome{margin-top:8vh}.welcome h1{font-size:46px}.create-form{display:block}.create-form .button{width:100%}.phase-row{grid-template-columns:24px 1fr 78px 26px}dialog form{padding:22px}.people .avatar:nth-child(n+4){display:none}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
