:root{--color-primary:#005DB7;--color-on-primary:#FFFFFF;--color-primary-container:#D6E3FF;--color-on-primary-container:#00468C;--color-surface:#F9F9FF;--color-surface-container-low:#F0F3FF;--color-surface-container:#EAEEFA;--color-surface-container-high:#E4E8F5;--color-surface-container-highest:#DFE2EF;--color-on-surface:#171C24;--color-on-surface-variant:#414753;--color-outline:#717785;--color-outline-variant:#C1C6D6;--color-navy:#1F2A44;--color-navy-container:#2B3858;--color-navy-track:#3B4868;--color-on-navy-variant:#C9D2E8;--color-action:#C24D00;--color-label:#FFE14D;--color-error:#BA1A1A;--color-white:#FFFFFF}body{margin:0;font-family:Noto Sans JP,sans-serif;background:var(--color-surface);color:var(--color-on-surface)}a{color:var(--color-primary)}a:hover{color:var(--color-on-primary-container)}button,input,select,textarea{font-family:inherit}ul{margin:0;padding:0}svg.i{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}svg.s{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}.tag{display:inline-flex;align-items:center;align-self:flex-start;background:var(--color-primary);color:var(--color-white);padding:4px 12px 5px;font-size:12px;font-weight:700}.pn{background:var(--color-white);border-radius:4px;border-top:6px solid var(--color-primary);padding:0 20px 20px;display:flex;flex-direction:column;gap:14px}.fd{display:flex;flex-direction:column;gap:6px}.fd label,.lb{font-size:13px;font-weight:700;color:var(--color-on-surface)}.ht{font-size:12px;line-height:18px;color:var(--color-on-surface-variant)}.in{height:50px;border:2px solid var(--color-outline);border-radius:4px;background:var(--color-white);padding:0 12px;font-size:16px;color:var(--color-on-surface);box-sizing:border-box;width:100%}.pw{display:flex;gap:0}.pw .in{border-radius:4px 0 0 4px}.pw button{height:50px;flex:none;border:2px solid var(--color-outline);border-left:0;border-radius:0 4px 4px 0;background:var(--color-surface-container-low);color:var(--color-on-primary-container);font-size:13px;font-weight:700;padding:0 14px}.pb{height:52px;border:0;border-radius:4px;background:var(--color-action);color:var(--color-white);font-size:16px;font-weight:700;width:100%;cursor:pointer}.ob{height:44px;border:2px solid var(--color-primary);border-radius:4px;background:var(--color-white);color:var(--color-primary);font-size:14px;font-weight:700;padding:0 16px;cursor:pointer}.tb{height:44px;border:0;background:transparent;color:var(--color-primary);font-size:14px;font-weight:700;padding:0 8px;cursor:pointer}.db{height:44px;border:0;border-radius:4px;background:var(--color-error);color:var(--color-white);font-size:14px;font-weight:700;padding:0 18px;cursor:pointer}.ts{height:66px;background:var(--color-surface-container-low);border-radius:4px;display:flex;align-items:center;gap:12px;padding:0 14px;font-size:13px;color:var(--color-on-surface-variant)}.ts span.b{width:24px;height:24px;border:2px solid var(--color-outline);border-radius:2px;background:var(--color-white);flex:none}.bl{background:var(--color-surface-container-low);border-radius:4px;padding:12px 14px;font-size:13px;line-height:20px;color:var(--color-on-surface)}.ck{display:flex;align-items:center;gap:10px;min-height:44px;font-size:14px}.ck input{width:20px;height:20px;accent-color:var(--color-primary);margin:0}.ri{display:flex;flex-direction:column;align-items:center;gap:4px;text-decoration:none;color:var(--color-on-surface-variant);font-size:12px;font-weight:500;width:80px;min-height:56px}.rp{width:56px;height:32px;border-radius:4px;display:flex;align-items:center;justify-content:center}.tr{flex-grow:1;height:6px;background:var(--color-surface-container-highest);overflow:hidden}.fl{height:6px;background:var(--color-primary)}.tab{height:52px;padding:0 24px;display:flex;align-items:center;text-decoration:none;color:var(--color-on-surface-variant);font-size:14px;font-weight:700;box-sizing:border-box}.tab.on{background:var(--color-surface-container-high);color:var(--color-on-primary-container);border-top:4px solid var(--color-primary)}.it{display:flex;align-items:center;gap:14px;background:var(--color-white);border-radius:4px;padding:10px 8px 10px 14px;list-style:none;min-height:56px}.lt{width:40px;height:40px;border-radius:4px;background:var(--color-navy);color:var(--color-white);display:flex;align-items:center;justify-content:center;font-size:17px;font-weight:900;flex:none}.ib{width:44px;height:44px;border:0;background:transparent;border-radius:4px;color:var(--color-on-surface-variant);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex:none}.sg{height:44px;border:0;background:var(--color-surface-container-high);color:var(--color-on-surface);font-size:14px;font-weight:700;padding:0 18px;cursor:pointer}.sg.on{background:var(--color-primary);color:var(--color-white)}.chip{font-size:12px;font-weight:700;background:var(--color-surface-container-low);color:var(--color-on-surface-variant);padding:3px 8px;border-radius:2px}.nav-rail{flex:none;width:80px;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;gap:12px;padding-top:24px;background:var(--color-surface)}.ri.on{color:var(--color-on-primary-container)}.ri.on .rp{background:var(--color-primary);color:var(--color-white)}.bottom-nav{flex:none;width:100%;height:80px;display:flex;background:var(--color-surface-container)}.bn-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding-top:12px;text-decoration:none;font-size:12px;font-weight:700;color:var(--color-on-surface-variant);box-sizing:border-box}.bn-item.on{color:var(--color-on-primary-container)}.bn-pill{width:64px;height:32px;border-radius:4px;display:flex;align-items:center;justify-content:center}.bn-item.on .bn-pill{background:var(--color-primary);color:var(--color-white)}.goal-panel{flex:none;width:300px;background:var(--color-surface-container-high);padding:24px 20px;box-sizing:border-box;display:flex;flex-direction:column;gap:16px;overflow-y:auto}.gp-main{background:var(--color-white);border-radius:4px;border-top:6px solid var(--color-primary);padding:0 16px 16px;display:flex;flex-direction:column;gap:10px}.gp-sub{background:var(--color-white);border-radius:4px;padding:16px;display:flex;flex-direction:column;gap:8px}.gp-bar{display:flex;align-items:center;gap:8px}.gp-switcher{height:52px;border-radius:4px;border:2px solid var(--color-outline);background:var(--color-white);padding:0 10px 0 14px;display:flex;align-items:center;justify-content:space-between;font-size:16px;font-weight:700;color:var(--color-on-surface);font-family:inherit;cursor:pointer;width:100%;position:relative}.gp-switcher-menu{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--color-white);border-radius:4px;box-shadow:0 4px 12px #0003;z-index:10;overflow:hidden}.gp-switcher-menu button{display:block;width:100%;text-align:left;padding:12px 14px;border:0;background:var(--color-white);font-size:14px;font-weight:700;cursor:pointer;color:var(--color-on-surface)}.gp-switcher-menu button:hover{background:var(--color-surface-container-low)}.gp-boards{display:flex;flex-direction:column;gap:6px}.gp-board-link{height:48px;border-radius:4px;padding:0 12px 0 16px;display:flex;align-items:center;justify-content:space-between;text-decoration:none;font-size:14px;font-weight:700;background:var(--color-surface-container-low);color:var(--color-on-surface)}.gp-board-link[aria-current=page]{background:var(--color-primary);color:var(--color-white)}.gp-edit{width:32px;height:32px;border:0;background:transparent;border-radius:4px;color:var(--color-on-surface-variant);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex:none}.goal-list{flex:none;width:300px;background:var(--color-surface-container-high);padding:24px 16px;box-sizing:border-box;display:flex;flex-direction:column;gap:12px;overflow-y:auto}.gl-item{display:flex;flex-direction:column;gap:8px;padding:14px 16px 16px;border-radius:4px;background:var(--color-white);border-top:4px solid var(--color-primary);text-decoration:none;color:var(--color-on-surface)}.goal-bar{flex:none;width:100%;height:64px;display:flex;align-items:center;gap:12px;padding:0 16px;border:0;background:var(--color-navy);text-align:left;box-sizing:border-box;color:var(--color-white);cursor:pointer}.goal-expanded-scrim{position:fixed;inset:0;background:#171c2480;z-index:90}.goal-expanded{position:fixed;left:0;top:0;width:100%;max-width:390px;background:var(--color-navy);color:var(--color-white);border-radius:0 0 8px 8px;box-sizing:border-box;display:flex;flex-direction:column;z-index:91}.goal-expanded-close{height:64px;display:flex;align-items:center;gap:12px;padding:0 16px;border:0;background:transparent;color:var(--color-white);text-align:left;width:100%;cursor:pointer}.goal-expanded-body{padding:0 20px 20px;display:flex;flex-direction:column;gap:14px}.gx-sub{display:flex;flex-direction:column;gap:8px;background:var(--color-navy-container);border-radius:4px;padding:12px}.gx-boards{display:flex;flex-direction:column;gap:6px}.goal-edit-progress{background:var(--color-surface-container-low);border-radius:4px;padding:14px 16px;display:flex;flex-direction:column;gap:10px}.goal-edit-mode{display:flex;gap:2px}.goal-edit-mode button{height:40px;flex:1;border:0;background:var(--color-surface-container-high);color:var(--color-on-surface);font-size:14px;font-weight:700;cursor:pointer}.goal-edit-mode button.on{background:var(--color-primary);color:var(--color-white)}.goal-edit-mode button:first-child{border-radius:4px 0 0 4px}.goal-edit-mode button:last-child{border-radius:0 4px 4px 0}.goal-edit-footer{display:flex;align-items:center;gap:4px;padding:14px 20px 20px 18px;background:var(--color-surface)}.auth-page{min-height:100vh;display:flex;flex-direction:column;background:var(--color-surface-container-high)}.auth-header{height:56px;flex:none;background:var(--color-navy);display:flex;align-items:center;padding:0 20px}.auth-header .brand{color:var(--color-white);font-size:17px;font-weight:900}.auth-main{flex-grow:1;display:flex;flex-direction:column;align-items:center;padding:24px 16px 40px;gap:16px;box-sizing:border-box}.auth-card{width:100%;max-width:400px;display:flex;flex-direction:column;gap:16px}.auth-footer{margin:0;text-align:center;font-size:14px}.auth-error{background:var(--color-error-container,#FFDAD6);color:var(--color-on-error-container,#410002);border-radius:4px;padding:10px 14px;font-size:13px;line-height:20px}.ob-page{min-height:100vh;display:flex;flex-direction:column;background:var(--color-surface)}.ob-head{padding:20px 20px 0;display:flex;flex-direction:column;gap:10px;max-width:520px;width:100%;margin:0 auto;box-sizing:border-box}.ob-step-label{font-size:13px;font-weight:700;color:var(--color-on-surface-variant)}.ob-progress{display:flex;gap:4px}.ob-progress span{flex:1;height:6px;background:var(--color-surface-container-highest)}.ob-progress span.on{background:var(--color-primary)}.ob-main{flex-grow:1;padding:24px 20px 0;display:flex;flex-direction:column;gap:16px;max-width:520px;width:100%;margin:0 auto;box-sizing:border-box}.ob-foot{padding:16px 20px 28px;display:flex;gap:10px;background:var(--color-surface);max-width:520px;width:100%;margin:0 auto;box-sizing:border-box}.ob-foot .pb{flex-grow:1;display:inline-flex;align-items:center;justify-content:center;gap:6px}.ob-back{height:52px;flex:none;border:2px solid var(--color-primary);border-radius:4px;background:var(--color-white);color:var(--color-primary);padding:0 20px;font-size:15px;font-weight:700;cursor:pointer}.ob-summary{background:var(--color-surface-container-high);border-radius:4px;padding:12px 14px;display:flex;flex-direction:column;gap:6px}.ob-summary-item{display:flex;flex-direction:column}.ob-summary-item span:first-child{font-size:12px;font-weight:700;color:var(--color-on-surface-variant)}.ob-preview{height:64px;background:var(--color-navy);border-radius:4px;display:flex;flex-direction:column;justify-content:center;padding:0 14px}.ob-preview strong{font-size:16px;font-weight:700;color:var(--color-white);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ob-preview span{font-size:12px;color:var(--color-on-navy-variant)}.ex{height:36px;border:0;background:var(--color-surface-container-high);color:var(--color-on-primary-container);border-radius:4px;padding:0 12px;font-size:13px;font-weight:700;text-align:left;cursor:pointer}.update-banner{display:flex;align-items:center;gap:16px;background:var(--color-navy);color:var(--color-white);padding:12px 20px;flex-wrap:wrap}.update-banner .tag{background:var(--color-label);color:var(--color-navy)}.update-banner .msg{flex-grow:1;font-size:15px;font-weight:700}.update-banner .later{height:40px;border:2px solid var(--color-on-navy-variant);border-radius:4px;background:transparent;color:var(--color-white);font-size:14px;font-weight:700;padding:0 16px;cursor:pointer}.update-banner .apply{height:40px;border:0;border-radius:4px;background:var(--color-white);color:var(--color-navy);font-size:14px;font-weight:700;padding:0 18px;cursor:pointer}.settings-nav{width:260px;flex:none;background:var(--color-surface-container-high);padding:24px 16px;box-sizing:border-box;display:flex;flex-direction:column;gap:6px}.sn{height:48px;display:flex;align-items:center;padding:0 16px;border-radius:4px;text-decoration:none;color:var(--color-on-surface);font-size:15px;font-weight:700}.sn.on{background:var(--color-primary);color:var(--color-white)}.settings-row{display:flex;align-items:center;gap:16px;background:var(--color-surface-container-low);border-radius:4px;padding:14px 16px}.settings-status{font-size:12px;font-weight:700;padding:3px 10px;border-radius:2px}.sp{background:var(--color-surface-container-low);border-radius:4px;padding:14px 16px;display:flex;flex-direction:column;gap:10px}.bt{height:56px;background:var(--color-white);border-radius:4px;display:flex;align-items:center;justify-content:space-between;padding:0 12px 0 16px;text-decoration:none;color:var(--color-on-surface);font-size:15px;font-weight:700}.ad{height:56px;border:0;background:var(--color-surface-container-highest);border-radius:4px;color:var(--color-on-primary-container);font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:6px;cursor:pointer}.lk{display:flex;align-items:center;gap:10px;background:var(--color-surface-container-low);border-radius:4px;padding:10px 12px;font-size:14px;list-style:none}.er{display:grid;grid-template-columns:96px minmax(0,1fr) 88px 88px;align-items:center;gap:8px;background:var(--color-surface-container-low);border-radius:4px;padding:4px 4px 4px 12px;font-size:14px;list-style:none}.rd{display:flex;align-items:flex-start;gap:10px;background:var(--color-surface-container-low);border-radius:4px;padding:12px 14px;font-size:14px}.rd input{width:20px;height:20px;accent-color:var(--color-primary);margin:2px 0 0}.board-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:0 40px 16px}.board-breadcrumb{font-size:13px;color:var(--color-on-surface-variant)}.board-columns{flex-grow:1;background:var(--color-surface-container-high);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:24px 40px;min-height:0;align-items:start;box-sizing:border-box}.board-column{display:flex;flex-direction:column;gap:10px;min-width:0}.board-column-list{display:flex;flex-direction:column;gap:8px}.column-empty-placeholder{height:72px;background:var(--color-surface-container-low);border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--color-on-surface-variant)}.timer-pill{display:flex;align-items:center;gap:10px;height:48px;padding:0 4px 0 0;border-radius:4px;background:var(--color-white);color:var(--color-primary)}.timer-pill-badge{height:48px;display:flex;align-items:center;gap:6px;padding:0 12px;background:var(--color-navy);color:var(--color-white);border-radius:4px 0 0 4px;font-size:13px;font-weight:700}.timer-pill-title{font-size:14px;font-weight:700;color:var(--color-on-surface)}.timer-pill-elapsed{font-size:20px;font-weight:900;font-variant-numeric:tabular-nums;color:var(--color-primary)}.timer-pill-stop{width:40px;height:40px;border:0;border-radius:4px;background:var(--color-primary);color:var(--color-white);display:flex;align-items:center;justify-content:center;cursor:pointer;flex:none}.board-empty-card{background:var(--color-white);border-radius:4px;border-top:6px solid var(--color-primary);padding:24px 28px;display:flex;align-items:center;gap:28px}.board-mobile-tabs{display:flex;flex:none}.board-mobile-fab{position:fixed;right:16px;bottom:96px;height:56px;border:0;border-radius:4px;background:var(--color-action);color:var(--color-white);padding:0 20px 0 16px;display:flex;align-items:center;gap:12px;font-size:16px;font-weight:500;box-shadow:0 3px 6px #00000026,0 1px 3px #0000004d;cursor:pointer;z-index:20}.timer-bar-mobile{height:64px;flex:none;display:flex;align-items:center;gap:12px;padding:0 8px 0 16px;background:var(--color-navy);color:var(--color-white)}.timer-bar-mobile-info{flex-grow:1;display:flex;flex-direction:column;min-width:0}.timer-bar-mobile-title{font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timer-bar-mobile-elapsed{font-size:12px;font-variant-numeric:tabular-nums}.timer-bar-mobile-stop{width:48px;height:48px;border:0;border-radius:4px;background:var(--color-primary);color:var(--color-white);display:flex;align-items:center;justify-content:center;flex:none;cursor:pointer}.board-tabs{flex:none;width:100%;height:52px;display:flex;padding:0 40px;box-sizing:border-box;background:var(--color-surface)}.board-tabs .tab.on{color:var(--color-primary)}.column-header{width:100%;box-sizing:border-box;display:flex;align-items:flex-end;gap:10px;border-bottom:4px solid var(--color-primary)}.column-header-tag{display:inline-flex;flex-direction:column;justify-content:center;background:var(--color-primary);color:var(--color-white);padding:6px 14px 8px;min-width:88px;box-sizing:border-box}.column-header-status{font-size:10px;font-weight:700;letter-spacing:.08em}.column-header-label{font-size:18px;line-height:24px;font-weight:900}.column-header-count{font-size:26px;line-height:30px;font-weight:900;color:var(--color-primary);flex-grow:1;padding-bottom:4px}.column-header-count-unit{font-size:13px;color:var(--color-on-surface-variant);font-weight:700}.column-header-add{height:40px;border:0;background:var(--color-action);color:var(--color-white);border-radius:4px;padding:0 12px 0 10px;display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:700;margin-bottom:6px;cursor:pointer}.task-card{width:100%;box-sizing:border-box;background:var(--color-white);border-radius:4px;display:flex;align-items:flex-start;padding:4px 0 12px;list-style:none;position:relative}.task-card.running{outline:3px solid var(--color-primary)}.task-card-running-badge{position:absolute;right:8px;top:-10px;background:var(--color-label);color:var(--color-navy);font-size:11px;font-weight:700;padding:2px 8px;border-radius:2px}.task-card-check{width:44px;height:44px;display:flex;align-items:center;justify-content:center;flex:none}.task-card-check input{width:18px;height:18px;margin:0;accent-color:var(--color-primary)}.task-card-body{flex-grow:1;min-width:0;display:flex;flex-direction:column;gap:2px;padding-top:10px}.task-card-title{font-size:15px;line-height:22px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-card-title.done{text-decoration:line-through;color:var(--color-on-surface-variant)}.task-card-meta{font-size:12px;line-height:18px;display:flex;align-items:center;gap:4px;color:var(--color-on-surface-variant)}.task-card-meta.overdue{color:var(--color-error);font-weight:700}.task-card-menu-btn{width:44px;height:44px;border:0;background:transparent;border-radius:4px;color:var(--color-on-surface-variant);display:flex;align-items:center;justify-content:center;flex:none;cursor:pointer}.task-card-menu-btn.open{background:var(--color-surface-container-highest)}.task-card-menu{position:absolute;right:8px;top:52px;width:220px;background:var(--color-white);border-radius:4px;border-top:4px solid var(--color-primary);padding:8px 0;box-shadow:0 4px 12px #0000002e;z-index:5}.task-card-menu button{height:44px;display:flex;align-items:center;padding:0 16px;font-size:14px;color:var(--color-on-surface);border:0;background:transparent;width:100%;text-align:left;cursor:pointer}.task-card-menu button:hover{background:var(--color-surface-container-low)}.task-card-menu button:disabled{color:var(--color-outline);cursor:default}.task-card-menu button:disabled:hover{background:transparent}.task-card-menu-divider{height:8px;background:var(--color-surface-container-low);margin:6px 0}.dialog-scrim{position:fixed;inset:0;background:#171c2480;display:flex;align-items:flex-start;justify-content:center;padding:40px 16px;overflow-y:auto;z-index:100}.dialog-box{width:100%;max-width:520px;background:var(--color-white);border-radius:4px;border-top:6px solid var(--color-primary);box-shadow:0 8px 24px #00000040;padding:20px 28px 24px;box-sizing:border-box;display:flex;flex-direction:column;gap:14px}.cf{display:flex;flex-direction:column;gap:6px}.cf textarea{height:84px;border:2px solid var(--color-outline);border-radius:4px;padding:10px 12px;font-size:18px;line-height:28px;font-weight:700;resize:none;box-sizing:border-box;font-family:inherit;color:var(--color-on-surface);width:100%}.cf textarea.over{border-color:var(--color-error)}.cf .count{font-size:12px;align-self:flex-end;color:var(--color-on-surface-variant)}.cf .count.over{color:var(--color-error)}
