:root{--bg:#fcfaf6;--card:#fff;--line:#e8dfcf;--text:#292321;--muted:#786f65;--accent:#bd2235;--gold:#947128;--gold-light:#eee2c4;--blue:#947128;--green:#447653;--red:#bd2235;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg);color:var(--text);margin:0}body{font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Noto Sans JP,Meiryo,sans-serif;font-size:16px;line-height:1.6}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}button,input,select,textarea,summary{touch-action:manipulation}:focus-visible{outline:2px solid var(--gold);outline-offset:3px}h1{letter-spacing:.02em;margin:12px 0 18px;font-size:23px}h2{align-items:center;gap:10px;margin:28px 0 12px;font-size:17px;display:flex}h2:before{content:"";background:var(--gold);width:3px;height:17px}h3{margin:12px 0 8px;font-size:15px}.muted{color:var(--muted);font-size:14px}.center{text-align:center}.app{background:radial-gradient(at 100% 0,#eee2c433,#0000 45%);min-height:100dvh}.page{max-width:560px;padding:calc(20px + env(safe-area-inset-top)) 20px calc(92px + env(safe-area-inset-bottom));margin:0 auto}.entry-section{border-bottom:1px solid var(--gold-light);margin-top:28px;padding:0 0 24px}.entry-section h2{margin-top:0}.entry-section>.muted{margin-top:0;margin-bottom:18px}.entry-section .start-btn{margin-top:8px}.tabbar{border-top:1px solid var(--gold-light);padding-bottom:env(safe-area-inset-bottom);z-index:10;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff2;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #6f542606}.tabbar button{color:var(--muted);flex-direction:column;flex:1;align-items:center;gap:4px;padding:13px 0 10px;font-size:10px;font-weight:600;display:flex;position:relative}.tabbar button.on{color:var(--accent)}.tabbar button.on:before{content:"";background:var(--gold);width:24px;height:2px;position:absolute;top:0}.ti{width:21px;height:21px}.grid2{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}.tile,.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px;box-shadow:0 5px 20px #71521d06}.tile{border-top:3px solid var(--accent);background:linear-gradient(145deg,#fff,#fff9f8)}.tile:nth-child(2){border-top-color:var(--gold);background:linear-gradient(145deg,#fff,#fdf9ed)}.card{margin-bottom:14px}.card h3{margin-top:0}.tile-label{color:var(--muted);font-size:13px}.tile-value{letter-spacing:-.04em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;color:var(--accent);margin-top:12px;font-size:clamp(23px,7vw,36px);font-weight:750;line-height:1.3}.tile:nth-child(2) .tile-value{color:var(--gold)}.tile-value small{color:var(--muted);margin-left:4px;font-size:14px;font-weight:400}.start-btn{letter-spacing:.04em;color:#fff;background:linear-gradient(115deg,#ce2b3d,#ad1a2d);border:1px solid #d9b875;border-radius:14px;width:100%;margin:22px 0 8px;padding:18px;font-size:18px;font-weight:700;display:block;box-shadow:0 7px 20px #bd223520,inset 0 1px #ffffff25}.start-btn:disabled{opacity:.4}.start-btn:active{transform:scale(.98)}.back{color:var(--gold);min-height:44px;padding:8px 0;font-size:14px}.list{flex-direction:column;gap:10px;display:flex}.pick{text-align:left;background:var(--card);border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:14px;flex-direction:column;gap:4px;padding:20px 42px 20px 18px;display:flex;position:relative;box-shadow:0 4px 16px #71521d06}.pick:after{content:"›";color:var(--accent);font-size:25px;position:absolute;top:50%;right:18px;transform:translateY(-50%)}.pick b{font-size:17px}.pick span{color:var(--muted);font-size:13px}.row{text-align:left;background:var(--card);border:1px solid var(--line);border-radius:14px;gap:14px;width:100%;padding:16px 14px;display:flex}.row-date{color:var(--gold);font-variant-numeric:tabular-nums;min-width:44px;font-weight:700}.row-main{min-width:0}.row-title{font-weight:600}.row-sub{color:var(--muted);font-size:13px}.chips{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.chips span{color:#665337;background:#f7f3eb;border:1px solid #ede3d1;border-radius:6px;padding:2px 8px;font-size:12px}.kv{border-bottom:1px solid var(--line);text-align:left;justify-content:space-between;gap:12px;width:100%;padding:10px 0;display:flex}.kv:last-child{border-bottom:0}.kv span{color:var(--muted)}.kv b{text-align:right}.kv.pb:disabled{opacity:.6}.pre{white-space:pre-wrap}.up{color:var(--green);font-weight:600}.down{color:var(--red);font-weight:600}.flat{color:var(--muted)}.field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.field>span{color:#625749;font-size:13px;font-weight:600}.form-error{color:var(--red)}.form-success{color:var(--gold);margin-bottom:0;font-size:13px}input,select,textarea{background:#fff;border:1px solid #ddd0b9;border-radius:10px;width:100%;min-width:0;min-height:48px;padding:13px 12px}input::placeholder,textarea::placeholder{color:#a39685}input:focus,select:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px #eee2c466}@media (hover:hover){.pick:hover,.row:hover,.btn:hover{background:#fffdf8;border-color:#c5a057}.start-btn:hover{filter:brightness(1.04)}}.inline{align-items:center;gap:8px;display:flex}.inline em,.set-row em{color:var(--muted);white-space:nowrap;font-size:13px;font-style:normal}.check{align-items:center;gap:10px;margin:8px 0;display:flex}.check input{width:22px;height:22px}.rpe{grid-template-columns:repeat(10,1fr);gap:4px;display:grid}.rpe button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:10px 0}.rpe button.on{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700}.set-row{grid-template-columns:20px 1fr auto 1fr auto 1.2fr 32px;align-items:center;gap:6px;margin-bottom:8px;display:grid}.set-row input{text-align:center;padding:10px 6px}.x{color:var(--muted);font-size:18px}.actions{gap:10px;margin-top:16px;display:flex}.actions.wrap{flex-wrap:wrap}.btn{background:var(--card);min-width:120px;color:var(--gold);border:1px solid #d7c196;border-radius:12px;flex:1;padding:12px 16px;font-weight:600}.btn.danger{color:var(--red)}.btn:disabled{opacity:.4}.seg{gap:6px;margin-bottom:14px;display:flex}.seg.wrap{flex-wrap:wrap}.seg button{background:var(--card);border:1px solid var(--line);min-height:44px;color:var(--muted);white-space:nowrap;border-radius:9px;flex:1;padding:8px 6px;font-size:12px;font-weight:600}.seg.wrap button{flex:none}.seg button.on{color:#77551c;background:#f9f1de;border-color:#c5a057}.chart h3{font-size:14px}.chart-box{margin-top:4px}.cal-nav{justify-content:space-between;align-items:center;font-size:18px;display:flex}.cal-nav button{color:var(--accent);padding:0 16px;font-size:28px}.cal{grid-template-columns:repeat(7,1fr);gap:4px;margin-top:8px;display:grid}.cal-h{text-align:center;color:var(--muted);padding:4px 0;font-size:12px}.cal-d{aspect-ratio:1/1.1;background:var(--card);border:1px solid var(--line);border-radius:10px;flex-direction:column;justify-content:flex-start;align-items:center;gap:2px;padding:4px 0;font-size:13px;display:flex}.cal-d.has{background:#fff1ee;border-color:#eac0b7}.cal-d.today{border-color:var(--accent)}.cal-d.sel{outline:2px solid var(--blue)}.cal-i{font-size:14px;line-height:1}.legend{margin-top:12px;line-height:1.8}.timer{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:100dvh;padding:24px;transition:background .2s;display:flex}.timer.ready{background:#1f2937}.timer.work{background:#b91c1c}.timer.rest{background:#1d4ed8}.timer-top{opacity:.9;font-size:20px}.timer-phase{letter-spacing:4px;font-size:44px;font-weight:800}.timer-clock{font-variant-numeric:tabular-nums;font-size:25vw;font-weight:800;line-height:1}@media (width>=560px){.timer-clock{font-size:140px}}.timer-bar{background:#ffffff30;border-radius:99px;width:100%;max-width:420px;height:10px;overflow:hidden}.timer-bar div{background:#fff;height:100%}.timer-next{opacity:.85}.timer-ctrl{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:24px;display:flex}.timer-ctrl button{color:#fff;background:#00000040;border-radius:14px;padding:16px 20px;font-size:16px}
