:root{color:#2e2a24;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--bg:#f5eedf;--paper:#fffdf7;--paper-deep:#f8f2e6;--ink:#2e2a24;--muted:#6c6255;--line:#e6dcc8;--rule:#cfc3ad;--green:#1f4d47;--green-2:#2c6a62;--cream:#f1e8d4;--red:#cf3b26;--fail:#365d93;--fail-soft:#e3ebf6;--pass:#2f6f4c;--pass-soft:#e2efe6;--highlight:#f2c230;--s-unknown:#efe9dd;--t-unknown:#6c6255;--d-unknown:#cfc3ad;--s-planned:#d3e6f8;--t-planned:#1d4c78;--d-planned:#86b6e6;--s-developed:#ffe27e;--t-developed:#5f4300;--d-developed:#f2c230;--s-committed:#ffcaa6;--t-committed:#83340f;--d-committed:#f59361;--s-not_needed:#e6e8e3;--t-not_needed:#4a5550;--d-not_needed:#b9c0b8;--s-released:var(--paper);--t-released:var(--red);--d-released:var(--green-2);--shadow:0 14px 30px -20px #462d148c;--shadow-soft:0 6px 14px -12px #462d1499;--shadow-lift:0 24px 40px -22px #462d149e;--radius-tile:26px;--radius-card:22px;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in:cubic-bezier(.55, 0, 1, .45);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);interpolate-size:allow-keywords;--pj-1:#2c6a62;--pj-2:#1f4d47;--pj-accent:var(--cream);--pj-ink:#fffdf7;--pj-strong:var(--pj-2);background:var(--bg);font-family:Yu Gothic UI,Hiragino Kaku Gothic ProN,Meiryo,sans-serif;font-size:14px;line-height:1.65}*{box-sizing:border-box}body{background:var(--bg) radial-gradient(#ddd0b5 1.1px, transparent 1.3px) 11px 11px / 22px 22px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;border:0}button:disabled{cursor:not-allowed;opacity:.55}button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}:where(button,a,input,textarea,select,summary):focus-visible{outline:3px solid var(--green-2);outline-offset:3px}button svg,svg{vertical-align:middle;flex-shrink:0}h1,h2,h3,p{margin-top:0}h1,h2,h3,strong{font-weight:700}h1,h2,h3,p,dd,button{overflow-wrap:anywhere}p{line-height:1.8}a{color:var(--green);text-underline-offset:3px}input,textarea,select{min-width:0;max-width:100%;box-shadow:inset 0 0 0 1.5px var(--line);background:var(--paper);border:0;border-radius:14px;padding:9px 12px;line-height:1.5}input::placeholder,textarea::placeholder{color:#8a7f6f}input:disabled,select:disabled,textarea:disabled{background:var(--paper-deep);color:var(--muted)}select{cursor:pointer;min-height:44px}textarea{resize:vertical}fieldset{min-width:0}code{overflow-wrap:anywhere;font:12px/1.65 Consolas,Courier New,monospace}summary{cursor:pointer;min-height:44px;padding:9px 0}time,.release-row-date,.historical-date,.today,.count-chip,.project-pending,.count-value,.ring-text,.heat-stats dd{font-variant-numeric:tabular-nums}.subtle,.field-help,.small-text,.feature-description{color:var(--muted)}.small-text,.field-help{font-size:12px}.field-help{margin:0 0 12px;font-weight:400;line-height:1.75}.break-all{overflow-wrap:anywhere}.preserve-text{white-space:pre-wrap}.full{width:100%}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{color:var(--muted);letter-spacing:.06em;margin-bottom:4px;font-size:12px;font-weight:700;display:block}.button{min-height:44px;transition:background .2s, box-shadow .2s, color .2s, transform .3s var(--ease-spring);border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:9px 18px;font-size:14px;font-weight:700;line-height:1.4;text-decoration:none;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button:active:not(:disabled){transition-duration:80ms;transform:scale(.96)}.primary{color:var(--cream);background:var(--green)}.primary:hover:not(:disabled){background:#173f3a}.secondary{color:var(--ink);background:var(--paper);box-shadow:var(--shadow-soft), inset 0 0 0 1.5px var(--line)}.secondary:hover:not(:disabled){background:var(--cream)}.icon-button{width:44px;height:44px;color:var(--muted);background:0 0;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;padding:10px;display:inline-flex}.icon-button:hover{color:var(--green);background:var(--cream)}.text-button{color:var(--green);background:0 0;justify-content:center;align-items:center;gap:6px;min-height:44px;padding:8px 4px;font-size:13px;font-weight:700;display:inline-flex}.text-button:hover{text-underline-offset:4px;text-decoration:underline}.tile{background:var(--paper);border-radius:var(--radius-tile);min-width:0;box-shadow:var(--shadow);padding:20px 22px;position:relative;overflow:hidden}.tile-title{color:var(--muted);margin:0;font-size:14px;font-weight:700;line-height:1.5}.tile-note{color:var(--muted);margin:10px 0 0;font-size:12px;line-height:1.6}.stitch{pointer-events:none;border:1.5px dashed #f1e8d45c;border-radius:18px;position:absolute;inset:10px}.panel{border-radius:var(--radius-card)}.state-confirmed{color:var(--red)}.state-unknown{color:var(--muted)}.search{background:var(--paper);color:var(--muted);width:280px;min-width:0;box-shadow:var(--shadow-soft), inset 0 0 0 1.5px var(--line);border-radius:999px;align-items:center;gap:8px;padding:0 14px;display:flex}.search input{box-shadow:none;background:0 0;border:0;border-radius:0;width:100%;min-width:0;min-height:42px;padding:9px 0;font-size:14px}.search:focus-within{outline:3px solid var(--green-2);outline-offset:2px}.search input:focus-visible{outline:none}.segmented{background:var(--cream);border-radius:999px;flex-wrap:wrap;gap:4px;padding:4px;display:flex}.segmented button{min-height:40px;color:var(--muted);background:0 0;border-radius:999px;padding:6px 16px;font-size:14px;font-weight:700}.segmented button:hover{background:#fffdf7b3}.segmented button.selected{color:var(--cream);background:var(--green)}.has-indicator{isolation:isolate;overflow-clip-margin:6px;position:relative;overflow:clip}.has-indicator:before{content:"";z-index:-1;width:var(--ind-w,0px);height:var(--ind-h,0px);translate:var(--ind-x,0px) var(--ind-y,0px);background:var(--green);opacity:0;transition:translate .5s var(--ease-spring), width .5s var(--ease-spring), height .4s var(--ease-out), opacity .2s;border-radius:999px;position:absolute;top:0;left:0;box-shadow:0 6px 14px -8px #1f4d47d9}.has-indicator[data-indicator]:before{opacity:1}.has-indicator[data-indicator-still]:before{transition:opacity .2s}.has-indicator[data-indicator]>:is(.selected,.active){background:0 0}.empty-state{text-align:center;background:var(--paper);border-radius:var(--radius-card);box-shadow:var(--shadow-soft);padding:34px 22px}.empty-state h3{margin:0 0 8px;font-size:15px}.empty-state p{color:var(--muted);max-width:520px;margin:0 auto;font-size:13px}.notice{color:#5c4600;overflow-wrap:anywhere;background:#fbf0cc;border-radius:16px;margin-bottom:18px;padding:11px 16px;font-size:13px;line-height:1.8}.notice p{margin:7px 0 0}.notice ul{margin:0;padding-left:20px}.notice.confirmed{background:var(--pass-soft);color:var(--pass);font-weight:700}.notice.error{color:#8f2f16;background:#fbe1d2}.notice.warning{color:#7a3410;background:#ffe7d4}.notice details{margin-top:7px}.error-row{align-items:flex-start;gap:12px;display:flex}.error-row .notice{flex:1}.badge{white-space:nowrap;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;gap:4px;width:max-content;max-width:100%;padding:2px 11px;font-size:12px;font-weight:700;line-height:1.6;display:inline-flex}.badge.success{color:var(--red);background:var(--paper);box-shadow:inset 0 0 0 1.5px var(--red)}.badge.neutral{color:var(--t-unknown);background:var(--s-unknown)}.badge.warning{color:var(--t-committed);background:var(--s-committed)}.badge.danger{color:var(--fail);background:var(--fail-soft)}.badge.pass{color:var(--pass);background:var(--pass-soft)}.tag{background:var(--paper-deep);color:var(--muted);border-radius:999px;flex-wrap:wrap;align-items:baseline;gap:4px;padding:2px 11px;font-size:13px;display:inline-flex}.tag b{color:var(--ink);font-weight:700}[data-project=mapory]{--pj-1:#28866b;--pj-2:#1e6b58;--pj-accent:#f2b134}[data-project=nurimachi]{--pj-1:#4572c4;--pj-2:#2a4a8c;--pj-accent:#5fe0f5}[data-project=hitosaji-care]{--pj-1:#c85430;--pj-2:#a8401e;--pj-accent:#8be3c4}[data-project=shared-timer]{--pj-1:#a06e3a;--pj-2:#7e552b;--pj-accent:#5fe0e0}[data-project=jikan-techo]{--pj-1:#4a64a0;--pj-2:#2b3a5e;--pj-accent:#f0905a}[data-project=project-allocation]{--pj-1:#f2c54a;--pj-2:#e0a92a;--pj-accent:#234e41;--pj-ink:#3d2e05;--pj-strong:#6e5200}[data-project=release-techo]{--pj-1:#23788f;--pj-2:#155761;--pj-accent:#fa8068}.project-icon{object-fit:contain;background:var(--paper);border-radius:22%;flex:none;display:block}.app-icon{border-radius:22%;flex:none;display:block}.ring{flex:none;place-items:center;display:inline-grid;position:relative}.ring svg{width:100%;height:100%;position:absolute;inset:0}.ring-track{fill:none;stroke:color-mix(in srgb, var(--pj-ink) 26%, transparent)}.ring-value{fill:none;stroke:var(--pj-accent);stroke-linecap:round}.ring-text{font-size:14px;font-weight:700;line-height:1;position:relative}@media (width<=720px){.search{width:100%}.search input{font-size:16px}.segmented{width:100%}.segmented button{flex:1;padding:6px 8px}.notice{padding:11px 13px}.error-row{flex-direction:column;margin-bottom:18px}.error-row .notice{margin-bottom:0}.tile{border-radius:24px;padding:18px}}@media (prefers-reduced-motion:reduce){*,:before,:after,::backdrop{scroll-behavior:auto!important;transition:none!important;animation:none!important}::details-content{transition:none!important}}[data-project=kodomo-techo]{--pj-1:#c2553a;--pj-2:#a6402b;--pj-accent:#ffe0bd}[data-project=ashiato]{--pj-1:#7252a3;--pj-2:#55397e;--pj-accent:#ffd7b8}.skip-link{z-index:100;background:var(--paper);border-radius:12px;padding:12px;position:fixed;top:-70px;left:18px}.skip-link:focus{top:10px}.app-shell{max-width:1340px;margin:0 auto;padding:16px 28px 0}main{padding:22px 0 0}main:focus{outline:none}main,main *{scroll-margin-top:calc(var(--sticky-header-height,0px) + 12px)}.app-header{z-index:50;background:var(--paper);box-shadow:0 -24px 0 8px var(--bg), var(--shadow);border-radius:30px;grid-template-columns:auto auto minmax(0,1fr) auto auto;grid-template-areas:"brand nav.status profile";align-items:center;gap:10px 16px;padding:8px 10px 8px 12px;display:grid;position:sticky;top:8px}.brand{text-align:left;color:var(--ink);white-space:nowrap;background:0 0;border-radius:999px;grid-area:brand;align-items:center;gap:10px;padding:2px 6px 2px 2px;font-size:18px;font-weight:700;line-height:1.25;display:flex}.brand small{color:var(--muted);font-size:11px;font-weight:400;display:block}.main-nav{grid-area:nav;align-items:center;gap:12px;min-width:0;display:flex}.nav-bar{align-items:center;gap:8px;min-width:0;display:flex}.project-toggle{display:none}.nav-pills{background:var(--cream);border-radius:999px;gap:4px;padding:4px;display:flex}.nav-link{min-height:40px;color:var(--muted);white-space:nowrap;background:0 0;border-radius:999px;padding:6px 16px;font-size:14px;font-weight:700}.nav-link:hover{color:var(--ink);background:#fffdf7b3}.nav-link.active{color:var(--cream);background:var(--green)}.project-switcher{flex-wrap:wrap;gap:2px;min-width:0;display:flex}.project-nav{background:0 0;border-radius:999px;place-items:center;width:44px;height:44px;padding:0;display:grid}.project-nav .project-icon{width:34px;height:34px;transition:transform .12s;box-shadow:0 2px 6px #462d1433}.project-nav:hover .project-icon{transform:translateY(-2px)}.project-nav.active{background:var(--cream);box-shadow:inset 0 0 0 2.5px var(--green)}.header-status{color:var(--muted);white-space:nowrap;grid-area:status;align-items:center;gap:10px;margin:0;font-size:12px;display:flex}.local-pill{align-items:center;gap:6px;font-weight:700;display:inline-flex}.local-pill:before{content:"";background:var(--green-2);border-radius:50%;width:8px;height:8px}.last-fetched{margin:0}.profile{grid-area:profile;align-items:center;gap:4px;min-width:0;display:flex}.profile>span{border-left:1.5px dashed var(--line);max-width:150px;padding-left:12px;line-height:1.35;display:block}.profile strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.profile small{color:var(--muted);font-size:11px;display:block}.page-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 20px;margin:0 0 18px;display:flex}.page-heading h1{margin:0;font-size:28px;line-height:1.35}.page-heading p{color:var(--muted);margin:2px 0 0;font-size:13px}.today{color:var(--muted);font-size:13px;font-weight:700}.section-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:34px 0 12px;display:flex}.section-heading>div{align-items:baseline;gap:10px;min-width:0;display:flex}.section-heading h2{margin:0;font-size:21px;line-height:1.5}.count-chip{color:var(--muted);font-size:13px;font-weight:700}.page-footer{border-top:1.5px dashed var(--line);color:var(--muted);justify-content:space-between;gap:20px;margin-top:40px;padding:18px 0 28px;font-size:12px;display:flex}.page-footer>span:first-child{flex-shrink:0}.toast{z-index:99;background:var(--green);color:var(--cream);max-width:min(720px,100vw - 36px);box-shadow:var(--shadow);border-radius:999px;align-items:center;gap:10px;padding:8px 10px 8px 18px;font-size:13px;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.toast .icon-button{color:var(--cream)}.toast .icon-button:hover{color:var(--cream);background:#f1e8d42e}.loading-line{color:var(--muted);background:var(--paper);border-radius:var(--radius-card);min-height:90px;box-shadow:var(--shadow-soft);padding:24px;font-size:14px}.initial-screen{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:100dvh;padding:24px;display:flex}.initial-screen h1{margin:0;font-size:24px}.initial-screen .notice{max-width:480px}@media (width<=1300px){.app-header{border-radius:28px;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"brand status profile""nav nav nav";padding:10px 12px}.header-status{justify-self:end}.main-nav{flex-wrap:wrap;justify-content:space-between}}@media (width<=720px){.app-shell{padding:10px 14px 0}main{padding-top:18px}.app-header{top:calc(-1 * var(--header-collapse,0px));border-radius:24px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand profile""status status""nav nav";gap:8px;padding:10px}.brand{font-size:17px}.header-status{flex-wrap:wrap;justify-self:start;gap:4px 10px;padding:0 4px}.profile>span{display:none}.main-nav{flex-direction:column;align-items:stretch;gap:8px}.nav-link,.nav-bar .nav-pills{flex:1}.project-toggle{background:var(--cream);min-width:64px;min-height:48px;color:var(--ink);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;gap:2px;padding:0 10px 0 8px;display:inline-flex}.project-toggle.current{box-shadow:inset 0 0 0 2.5px var(--green)}.project-toggle>svg:last-child{color:var(--muted);transition:transform .12s}.project-toggle[aria-expanded=true]>svg:last-child{transform:rotate(180deg)}.project-switcher[data-open=false]{display:none}.project-switcher{justify-content:space-between}.page-heading h1{font-size:24px}.section-heading{gap:8px;margin-top:28px}.section-heading h2{font-size:18px}.toast{border-radius:22px;max-width:none;font-size:12px;bottom:12px;left:12px;right:12px;transform:none}.page-footer{flex-direction:column;gap:6px;margin-top:30px}}@media (width<=380px){.app-shell{padding-left:10px;padding-right:10px}.brand small{display:none}.project-nav{width:42px}.project-nav .project-icon{width:32px;height:32px}}.bento{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.ledger-note{color:var(--muted);margin:12px 4px 0;font-size:12px}.week-tile{color:var(--cream);background:linear-gradient(150deg, #2f6f66 0%, var(--green) 55%, #173f3a 100%);flex-direction:column;grid-area:span 2/span 2;min-height:330px;padding:26px 28px;display:flex}.week-tile:before,.week-tile:after{content:"";pointer-events:none;background:#f1e8d412;border-radius:50%;position:absolute}.week-tile:before{width:260px;height:260px;top:-90px;right:-70px}.week-tile:after{width:150px;height:150px;bottom:-80px;right:130px}.week-tile .tile-title{color:var(--cream);font-size:15px;position:relative}.week-count{margin:6px 0 0;font-size:22px;font-weight:700;line-height:1;position:relative}.week-count b{letter-spacing:-.02em;margin-right:6px;font-size:92px}.week-sub{margin:8px 0 0;font-size:14px;position:relative}.week-bars{z-index:1;align-items:flex-end;gap:10px;height:96px;margin:auto 0 16px;padding:0;list-style:none;display:flex;position:relative}.week-bars li{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:4px;height:100%;font-size:12px;display:flex}.week-bars i{background:#f1e8d438;border-radius:8px;width:100%;min-height:8px;display:block}.week-bars .on i{background:var(--highlight)}.week-bars .future{opacity:.45}.week-bars .today>span:not(.sr-only){text-underline-offset:3px;font-weight:700;text-decoration:underline}.week-actions{z-index:1;flex-wrap:wrap;gap:10px;display:flex;position:relative}.week-actions .button{background:var(--cream);color:var(--green)}.week-actions .button:hover{background:#fffdf7}.week-actions .button.ghost{color:var(--cream);background:0 0;box-shadow:inset 0 0 0 2px #f1e8d499}.week-actions .button.ghost:hover{background:#f1e8d424}.count-tile{min-height:156px}.count-value{z-index:1;color:var(--muted);margin:6px 0 0;font-size:16px;font-weight:700;position:relative}.count-value b{color:var(--kt);margin-right:4px;font-size:50px;line-height:1.05}.count-projects{z-index:1;flex-wrap:wrap;gap:6px;margin-top:8px;display:flex;position:relative}.count-projects .project-icon{width:28px;height:28px}.count-tile:after{content:"";background:var(--k);opacity:.6;border-radius:42% 58% 55% 45%;width:116px;height:116px;position:absolute;bottom:-26px;right:-26px}.count-tile.developed{--k:var(--s-developed);--kt:#7a5a00}.count-tile.committed{--k:var(--s-committed);--kt:#a3441a}.heat-tile{grid-column:span 2}.heat-body{flex-wrap:wrap;align-items:flex-end;gap:16px 28px;margin-top:12px;display:flex}.heatmap{grid-template-rows:repeat(7,14px);grid-auto-columns:14px;grid-auto-flow:column;gap:4px;display:grid}.heatmap i{background:#efe6d3;border-radius:4px}.heatmap .l1{background:#cfe0d6}.heatmap .l2{background:#7fae9c}.heatmap .l3{background:var(--green-2)}.heatmap .has-failed{box-shadow:inset 0 0 0 2.5px var(--fail)}.heatmap .future{box-shadow:inset 0 0 0 1px var(--line);background:0 0}.heatmap .today{outline:2px solid var(--ink);outline-offset:1px}.heat-stats{gap:22px;margin:0;display:flex}.heat-stats div{flex-direction:column-reverse;display:flex}.heat-stats dt{color:var(--muted);font-size:12px;font-weight:700}.heat-stats dd{margin:0;font-size:28px;font-weight:700;line-height:1.2}.heat-stats .failed dd{color:var(--fail)}.project-tile{color:var(--pj-ink);background:linear-gradient(150deg, var(--pj-1), var(--pj-2));flex-direction:column;gap:10px;min-height:250px;display:flex}.project-tile-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.project-identity{min-width:0;color:inherit;text-align:left;background:0 0;border-radius:16px;flex-direction:column;align-items:flex-start;gap:8px;padding:0;display:flex}.project-identity .project-icon{border-radius:16px;width:52px;height:52px;box-shadow:0 8px 16px -8px #00000073,0 0 0 3px #fffdf7eb}.project-identity strong{font-size:18px;line-height:1.3;display:block}.project-identity small{font-size:12px;font-weight:400;display:block}.project-identity:hover strong{text-underline-offset:4px;text-decoration:underline}.project-tile .ring{width:62px;height:62px}.project-pending{flex-wrap:wrap;align-items:baseline;gap:4px;margin:0;font-size:13px;display:flex}.project-pending b{margin:0 3px;font-size:22px}.project-targets{flex-direction:column;gap:5px;margin:0;padding:0;list-style:none;display:flex}.target-status{border-radius:999px;flex-wrap:wrap;align-items:center;gap:2px 8px;min-width:0;padding:3px 12px;font-size:13px;display:flex}.target-status b{min-width:3.4em;font-weight:700}.target-status.confirmed{color:var(--ink);background:#fffdf7f2}.target-status.confirmed>span{color:var(--red);align-items:center;gap:2px;font-weight:700;display:inline-flex}.target-status time{color:var(--muted);font-size:12px}.target-status.unknown{border:1.5px dashed color-mix(in srgb, var(--pj-ink) 70%, transparent);padding:2px 11px}.project-latest{flex-direction:column;gap:1px;min-width:0;margin:0;font-size:12px;display:flex}.project-latest .mobile-label{font-size:12px}.project-latest>span:last-child{overflow-wrap:anywhere}.project-row-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;display:flex}.tile-link{min-height:44px;color:inherit;background:0 0;align-items:center;gap:4px;padding:8px 4px;font-size:13px;font-weight:700;display:inline-flex}.tile-link:hover{text-underline-offset:4px;text-decoration:underline}.token-bars{gap:7px;margin:10px 0 0;padding:0;list-style:none;display:grid}.token-bars li{grid-template-columns:20px minmax(0,1fr) auto;grid-template-areas:"icon name value""track track track";align-items:center;gap:3px 8px;font-size:12px;font-weight:700;display:grid}.token-bars .project-icon{border-radius:6px;grid-area:icon;width:20px;height:20px}.token-name{text-overflow:ellipsis;white-space:nowrap;grid-area:name;min-width:0;overflow:hidden}.token-bars .token-value{grid-area:value}.token-bars .token-track{grid-area:track;height:7px}.token-track{background:var(--cream);border-radius:6px;height:12px;overflow:hidden}.token-track i{background:linear-gradient(90deg, var(--pj-1), var(--pj-2));border-radius:6px;height:100%;display:block}.token-value{text-align:right;color:var(--muted);font-variant-numeric:tabular-nums}.system-link{max-width:100%;min-height:44px;color:var(--pj-strong);background:#fffdf7;font-size:14px;box-shadow:0 8px 18px -10px #00000073}.system-link:hover{background:var(--cream)}.system-unavailable{font-size:13px}.project-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.project-hero{color:var(--pj-ink);background:linear-gradient(150deg, var(--pj-1), var(--pj-2));flex-direction:column;grid-area:span 2/span 2;gap:18px;min-height:330px;padding:26px 28px;display:flex}.project-hero:before,.project-hero:after{content:"";background:color-mix(in srgb, var(--pj-ink) 8%, transparent);pointer-events:none;border-radius:50%;position:absolute}.project-hero:before{width:300px;height:300px;top:-110px;right:-80px}.project-hero:after{width:170px;height:170px;bottom:-95px;right:170px}.project-hero>:not(.stitch){z-index:1;position:relative}.project-hero .stitch{border-color:color-mix(in srgb, var(--pj-ink) 30%, transparent)}.project-hero-id{align-items:center;gap:18px;min-width:0;display:flex}.project-hero-id .project-icon{border-radius:26px;width:96px;height:96px;box-shadow:0 10px 20px -10px #00000080,0 0 0 4px #fffdf7eb}.project-hero h1{margin:0;font-size:38px;line-height:1.2}.project-hero-id p{margin:4px 0 0}.project-hero-foot{flex-wrap:wrap;align-items:center;gap:16px 22px;margin-top:auto;display:flex}.project-hero .ring{width:112px;height:112px}.project-hero .ring-text{font-size:24px}.project-hero .project-pending{flex-direction:column;align-items:flex-start;font-size:14px}.project-hero .project-pending b{font-size:28px}.project-hero .heading-actions{align-self:flex-end;margin-left:auto}.target-tile{flex-direction:column;gap:4px;display:flex}.target-tile header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:4px;display:flex}.target-tile h2{margin:0;font-size:18px}.target-tile .target-when{font-size:24px;font-weight:700;line-height:1.25}.target-tile.unknown .target-when{color:var(--muted)}.target-tile small{color:var(--muted);font-size:12px;font-weight:700}.target-tile strong{font-size:14px}.target-tile p{color:var(--muted);white-space:pre-wrap;margin:0;font-size:13px}.target-tile .text-button{align-self:flex-start;margin-top:auto}.target-tile:after{content:"";pointer-events:none;border:3px solid #cf3b261f;border-radius:50%;width:110px;height:110px;position:absolute;top:-22px;right:-22px}.target-tile.unknown:after{border-style:dashed;border-color:#6c62551f}.latest-attempt{background:var(--paper-deep);text-align:left;color:var(--muted);border-radius:14px;flex-wrap:wrap;align-items:center;gap:8px;min-height:44px;margin-top:8px;padding:6px 12px;font-size:12px;display:flex}.project-token-tile .count-value b{color:var(--ink);font-size:36px}.project-token-tile.wide{grid-column:span 2}.feature-token-bars{gap:7px;margin:10px 0 0;padding:0;list-style:none;display:grid}.feature-token-bars li{grid-template-columns:minmax(0,1fr) auto;gap:3px 10px;font-size:12px;font-weight:700;display:grid}.feature-token-bars span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.feature-token-bars .token-track{grid-column:1/-1;height:9px}@media (width<=1100px){.bento,.project-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.week-tile,.project-hero{grid-row:auto}.project-token-tile.wide{grid-column:span 2}}@media (width<=720px){.bento,.project-summary{gap:12px}.week-tile,.heat-tile,.token-tile,.project-tile,.project-hero,.target-tile,.project-token-tile{grid-column:1/-1}.project-hero:after{right:40px}.week-tile{min-height:0;padding:22px}.week-count b{font-size:68px}.week-bars{gap:6px;height:80px}.count-tile{min-height:0}.count-value b{font-size:40px}.project-tile{min-height:0}.project-hero{min-height:0;padding:20px}.project-hero-id .project-icon{border-radius:18px;width:64px;height:64px}.project-hero h1{font-size:28px}.project-hero .ring{width:88px;height:88px}.project-hero .ring-text{font-size:19px}.project-hero .heading-actions{width:100%;margin-left:0}.project-hero .system-link{flex:1}.heatmap{grid-template-rows:repeat(7,12px);grid-auto-columns:12px;gap:3px}.target-tile .target-when{font-size:20px}}@media (width<=380px){.heatmap{grid-template-rows:repeat(7,10px);grid-auto-columns:10px;gap:3px}}.project-workspace{margin-top:6px}.feature-filters{flex-wrap:wrap;align-items:center;gap:10px 14px;padding:4px 0 16px;display:flex}.feature-filters .search{flex:200px;max-width:320px;margin-left:auto}.progress-filter{color:var(--muted);align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.progress-filter select{min-height:44px;color:var(--ink);box-shadow:var(--shadow-soft), inset 0 0 0 1.5px var(--line);border-radius:999px;padding:8px 14px;font-weight:700}.workspace-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.feature-entry{border-radius:var(--radius-card);background:var(--feature-background,var(--paper));min-width:0;box-shadow:var(--shadow);display:flex}.feature-entry:has(>[data-development-commit]){--feature-background:#f3efe6;--feature-active-background:#ebe4d6}.feature-entry:has(>[data-development-commit=complete]){--feature-background:#eaf1fa;--feature-active-background:#dce8f6}.feature-entry:has(>:is([data-development-commit=none],[data-development-commit=partial],[data-development-commit=changed])){--feature-background:#fdf0df;--feature-active-background:#fbe4c8}.workspace-feature{text-align:left;border-radius:var(--radius-card);width:100%;color:inherit;background:0 0;grid-template:"title aff""targets targets""meta meta"1fr/minmax(0,1fr) auto;gap:10px 14px;padding:16px 18px;transition:background .2s;display:grid}.workspace-feature .feature-meta{align-self:end}.workspace-feature.with-icon{grid-template-columns:46px minmax(0,1fr) auto;grid-template-areas:"icon title aff""icon targets targets""icon meta meta"}.workspace-feature:hover{background:var(--feature-active-background,var(--paper-deep))}.workspace-feature>.project-icon{border-radius:14px;grid-area:icon;width:46px;height:46px}.workspace-feature-title{grid-area:title;min-width:0}.feature-project{color:var(--muted);font-size:12px;font-weight:700;display:block}.workspace-feature-title strong{font-size:16px;line-height:1.45}.workspace-feature-title small{color:var(--muted);margin-left:6px;font-size:12px;font-weight:700}.detail-affordance{color:var(--green);white-space:nowrap;grid-area:aff;align-items:center;gap:4px;font-size:13px;font-weight:700;display:flex}.workspace-targets{flex-direction:column;grid-area:targets;gap:7px;min-width:0;display:flex}.feature-status{grid-template-columns:4.6em minmax(0,1fr) auto;align-items:center;gap:10px;font-size:14px;line-height:1.5;display:grid}.feature-status b{font-weight:700}.progress-track{grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.progress-track i{background:#cfc3ad73;border-radius:5px;height:9px}.progress-track i.on{background:var(--d)}.state-label{white-space:nowrap;background:var(--s);color:var(--t);border-radius:999px;justify-self:end;padding:1px 11px;font-weight:700}.feature-status.unknown{--s:var(--s-unknown);--t:var(--t-unknown);--d:var(--d-unknown)}.feature-status.planned{--s:var(--s-planned);--t:var(--t-planned);--d:var(--d-planned)}.feature-status.developed{--s:var(--s-developed);--t:var(--t-developed);--d:var(--d-developed)}.feature-status.committed{--s:var(--s-committed);--t:var(--t-committed);--d:var(--d-committed)}.feature-status.not_needed{--s:var(--s-not_needed);--t:var(--t-not_needed);--d:var(--d-not_needed)}.feature-status.not_needed .state-label{box-shadow:inset 0 0 0 1.5px var(--d-not_needed)}.feature-status.released{--s:var(--paper);--t:var(--red);--d:var(--d-released)}.feature-status.released .state-label{box-shadow:inset 0 0 0 1.5px var(--red)}.feature-status.unknown .state-label{box-shadow:inset 0 0 0 1.5px var(--d-unknown)}.feature-meta{flex-wrap:wrap;grid-area:meta;gap:6px;min-width:0;display:flex}.feature-metrics{display:contents}.feature-metrics small{margin-left:2px;font-size:12px}.feature-metrics .usage-sources{font-variant-numeric:tabular-nums;font-size:12px}.git-tag{background:var(--git-bg,var(--paper-deep));color:var(--git-fg,var(--muted));font-weight:700}.git-tag.ok{--git-bg:var(--pass-soft);--git-fg:var(--pass)}.git-tag.warn{--git-bg:#fbf0cc;--git-fg:#6b5000}.git-tag.alert{--git-bg:#fbe1d2;--git-fg:#8f2f16}.inspector-version{color:var(--muted);margin:0 0 10px;font-size:13px}.feature-summary{background:var(--paper-deep);border-radius:18px;gap:10px;margin-bottom:14px;padding:14px 16px;display:grid}.feature-summary>*{grid-area:auto}.feature-inspector{min-width:0}.inspector-panels{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;display:grid}.inspector-panels .inspector-targets{grid-column:1/-1}.panel-card{background:var(--paper);min-width:0;box-shadow:var(--shadow-soft);border-radius:18px;padding:14px 16px}.panel-card h4{color:var(--muted);margin:0 0 8px;font-size:13px}.feature-inspector dl{margin:0}.feature-inspector dt{color:var(--muted);font-size:13px}.feature-inspector dd{overflow-wrap:anywhere;margin:0 0 8px;font-size:14px}.management-detail>dl{grid-template-columns:auto minmax(0,1fr);gap:3px 12px;display:grid}.management-detail>dl dd{margin:0;font-weight:700}.management-target-date{display:contents}.management-detail p{margin:8px 0 0;font-size:13px}.management-detail li{overflow-wrap:anywhere}.usage-source{border-top:1.5px dashed var(--line);margin:10px 0 0;padding-top:8px}.usage-source dl{grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;display:grid}.usage-source dt,.usage-source dd{margin:0;font-size:13px}.usage-source dd{text-align:right;font-variant-numeric:tabular-nums}.usage-execution-list{margin:8px 0;padding:0;list-style:none}.usage-execution-list li{flex-wrap:wrap;justify-content:space-between;gap:4px 12px;padding:4px 0;font-size:12px;display:flex}.usage-execution-list li>span{overflow-wrap:anywhere;min-width:0}.usage-execution-list b{font-variant-numeric:tabular-nums}.git-detail p{margin:0 0 6px;font-size:13px}.git-record{overflow-wrap:anywhere;min-width:0}.git-record+.git-record{border-top:1.5px dashed var(--line);margin-top:10px;padding-top:10px}.git-record code{font-size:12px}.git-record ul{margin:6px 0;padding-left:18px;font-size:12px}.git-detail details summary{color:var(--green);font-size:13px;font-weight:700}.inspector-targets .target-check+.target-check{border-top:1.5px dashed var(--line);margin-top:10px;padding-top:10px}.inspector-targets h5{margin:0 0 4px;font-size:15px}.inspector-targets dl{grid-template-columns:4.5em minmax(0,1fr);gap:2px 10px;display:grid}.inspector-targets dd,.inspector-targets dt{margin:0;font-size:14px}.inspector-targets dd.state-confirmed{font-weight:700}.inspector-targets .field-help{margin:6px 0 0}.inspector-memo{margin-top:12px}.inspector-memo p{margin:0;font-size:14px}.feature-inspector .text-button{min-height:44px}@media (width<=1100px){.workspace-features{grid-template-columns:minmax(0,1fr)}}@media (width<=720px){.feature-filters{gap:10px}.feature-filters .segmented{width:100%}.feature-filters .search{flex-basis:100%;width:100%;max-width:none}.feature-filters .progress-filter{flex-wrap:wrap;flex:140px}.feature-filters .progress-filter select{flex:1}.workspace-features{gap:12px}.workspace-feature{gap:8px 10px;padding:14px}.workspace-feature.with-icon{grid-template-columns:40px minmax(0,1fr) auto;grid-template-areas:"icon title aff""targets targets targets""meta meta meta"}.workspace-feature>.project-icon{border-radius:12px;width:40px;height:40px}.feature-status{grid-template-columns:4.2em minmax(0,1fr) auto;gap:8px}.feature-summary{padding:12px}.inspector-panels{grid-template-columns:minmax(0,1fr)}}@media (width<=380px){.feature-status{grid-template-columns:4em minmax(24px,1fr) auto;gap:6px}.management-detail>dl{grid-template-columns:minmax(0,1fr) auto}.management-detail>dl dd{white-space:nowrap}.state-label{padding:1px 8px}}.release-days{gap:6px;display:grid}.release-day-label{color:var(--muted);margin:8px 4px 2px;font-size:13px;font-weight:700}.release-list{gap:10px;display:grid}.release-row{text-align:left;background:var(--paper);border-radius:var(--radius-card);width:100%;box-shadow:var(--shadow);color:inherit;grid-template-columns:44px minmax(0,1fr) auto 18px;align-items:center;gap:14px;padding:12px 16px;display:grid}.release-row:hover{background:var(--paper-deep)}.release-row .project-icon{border-radius:14px;width:44px;height:44px}.release-row.status-failed{box-shadow:inset 4px 0 0 var(--fail), var(--shadow)}.release-row-main{flex-direction:column;gap:1px;min-width:0;display:flex}.release-row-main>.feature-project{font-size:12px}.release-row-main>strong{font-size:15px;line-height:1.45;display:block}.release-row-main .feature-description{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.release-row-side{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.release-row-date{color:var(--muted);white-space:nowrap;font-size:12px;font-weight:700}.release-row>svg:last-child{color:var(--muted)}.history-summary{grid-template-columns:repeat(4,minmax(0,1fr)) minmax(0,2.3fr);gap:18px;margin-bottom:18px;display:grid}.history-summary .heat-tile{grid-column:auto}.stat-tile{text-align:left;color:inherit;flex-direction:column;align-items:flex-start;gap:4px;display:flex}.stat-tile:hover{background:var(--paper-deep)}.stat-tile[aria-pressed=true]{box-shadow:var(--shadow), inset 0 0 0 2.5px var(--green)}.stat-tile .count-value b{color:var(--ink);font-size:40px}.stat-tile .badge{margin-top:auto}.history-filters{flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 14px;display:flex}.history-filters .search{flex:220px;max-width:360px;margin-right:auto}.history-filters select{min-height:44px;box-shadow:var(--shadow-soft), inset 0 0 0 1.5px var(--line);border-radius:999px;padding:8px 14px;font-weight:700}.result-count{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:6px 14px;margin-bottom:6px;font-size:13px;font-weight:700;display:flex}.historical-section{margin-top:30px}.historical-list{gap:10px;display:grid}.historical-record{background:var(--paper-deep);border:1.5px dashed #d9ccb1;border-radius:18px;padding:0 16px}.historical-record summary{grid-template-columns:18px 150px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 0;list-style:none;display:grid}.historical-record summary:before{content:"+";color:var(--green);font-size:20px;font-weight:700}.historical-record[open] summary:before{content:"−"}.historical-record>summary::-webkit-details-marker{display:none}.historical-record .badge{box-shadow:inset 0 0 0 1.5px var(--d-unknown)}.historical-date{color:var(--muted);font-size:12px;font-weight:700}.historical-title{overflow-wrap:anywhere;flex-direction:column;gap:2px;min-width:0;display:flex}.historical-title small{color:var(--muted);font-size:12px}.historical-title strong{font-size:14px;line-height:1.6}.historical-body{overflow-wrap:anywhere;padding:0 0 16px 30px;font-size:13px}.historical-body h3{margin:14px 0 4px;font-size:13px}.historical-body ul{margin:0;padding-left:22px}.historical-body p{white-space:pre-wrap;margin:0}.release-detail-top{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;font-weight:700;display:flex}.detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0;display:grid}.detail-grid>div{background:var(--paper);box-shadow:var(--shadow-soft);border-radius:16px;padding:9px 12px}.detail-grid dt{color:var(--muted);font-size:12px;font-weight:700}.detail-grid dd{margin:0;font-size:14px;font-weight:700}.detail-section{background:var(--paper);box-shadow:var(--shadow-soft);border-radius:20px;margin-top:14px;padding:14px 16px}.detail-section h3{align-items:center;gap:8px;margin:0 0 8px;font-size:14px;display:flex}.detail-section>p{margin:0;font-size:14px}.linked-features{flex-wrap:wrap;gap:8px;margin:10px 0 0;display:flex}.linked-features>div{background:var(--paper-deep);border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:13px;font-weight:700;display:inline-flex}.linked-features>div svg{color:var(--red)}.linked-features small{color:var(--muted);margin-left:6px;font-size:12px;font-weight:400}.linked-features p{margin:0;font-size:13px}.artifact-list{grid-template-columns:92px minmax(0,1fr);gap:6px 12px;margin:0;display:grid}.artifact-list dt{color:var(--muted);font-size:12px;font-weight:700}.artifact-list dd{overflow-wrap:anywhere;margin:0}.evidence-list{gap:8px;display:grid}.evidence-item{background:var(--paper-deep);border-radius:14px;padding:9px 12px}.evidence-item>div{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.evidence-item strong{font-size:13px}.evidence-item time{color:var(--muted);margin-left:auto;font-size:12px}.evidence-item p{color:var(--muted);margin:6px 0 0;font-family:Consolas,Courier New,monospace;font-size:12px}.source-note{color:var(--muted);margin-top:14px;font-size:12px}.source-note>span,.source-note>code{display:block}.source-note p{margin:6px 0 0}@media (width<=1100px){.history-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.history-summary .heat-tile{grid-column:1/-1}}@media (width<=720px){.release-row{grid-template-columns:40px minmax(0,1fr);gap:10px;padding:12px 14px}.release-row .project-icon{width:40px;height:40px}.release-row-side{flex-direction:row;grid-column:2;justify-content:space-between;align-items:center}.release-row>svg:last-child{display:none}.history-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stat-tile .count-value b{font-size:32px}.history-filters .search{flex-basis:100%;max-width:none}.history-filters select{flex:130px;font-size:14px}.historical-record{padding:0 12px}.historical-record summary{grid-template-columns:18px minmax(0,1fr) auto;gap:8px}.historical-date{grid-column:2}.historical-title{grid-area:2/2}.historical-record summary>.badge{grid-area:1/3}.historical-body{padding-left:0}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.artifact-list{grid-template-columns:75px minmax(0,1fr)}.evidence-item time{width:100%;margin-left:0}}.modal{background:var(--bg);color:var(--ink);border:0;border-radius:30px;width:min(600px,100vw - 32px);max-height:calc(100dvh - 40px);padding:0;scroll-padding:120px 0 90px;box-shadow:0 30px 70px -20px #1e140ab3}.modal.wide{width:min(800px,100vw - 32px)}.modal::backdrop{background:#2e2a2473}.modal-head{background:var(--paper);z-index:2;box-shadow:0 1px 0 var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 26px;display:flex;position:sticky;top:0}.modal-head>div{min-width:0}.modal-head h2{margin:0;font-size:22px;line-height:1.4}.modal[data-project] .modal-head{color:var(--pj-ink);background:linear-gradient(150deg, var(--pj-1), var(--pj-2));box-shadow:none}.modal[data-project] .modal-head .eyebrow{color:var(--pj-ink)}.modal[data-project] .modal-head .icon-button{color:var(--pj-ink);background:color-mix(in srgb, var(--pj-ink) 18%, transparent)}.modal[data-project] .modal-head .icon-button:hover{background:color-mix(in srgb, var(--pj-ink) 30%, transparent)}.modal-form{padding:18px 26px 0}.modal-form:not(form){padding-bottom:22px}.field{flex-wrap:wrap;align-items:center;gap:7px 4px;min-width:0;margin-bottom:18px;font-size:14px;font-weight:700;display:flex}.field input:not([type=checkbox]),.field select,.field textarea{background:var(--paper-deep);border-radius:16px;width:100%;min-height:48px;padding:11px 16px;font-size:15px;font-weight:400}.field input:focus-visible{background:var(--paper);box-shadow:inset 0 0 0 2.5px var(--green-2);outline:none}.modal-actions{background:var(--bg);z-index:1;justify-content:flex-end;align-items:center;gap:10px;margin:18px -26px 0;padding:14px 26px;display:flex;position:sticky;bottom:0}@media (width<=720px){.modal,.modal.wide{border-radius:24px;width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.modal-head{gap:10px;padding:16px}.modal-head h2{font-size:19px}.modal-head .eyebrow{font-size:11px}.modal-form{padding:16px 14px 0}.modal-actions{gap:8px;margin-left:-14px;margin-right:-14px;padding:12px 14px}.modal-actions .button{flex:1;min-height:44px}.field input:not([type=checkbox]),.field textarea,.field select{font-size:16px}}.auth-page{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:22px;max-width:1240px;min-height:100dvh;margin:0 auto;padding:32px;display:grid}.auth-story{color:var(--cream);background:linear-gradient(150deg, #2f6f66, var(--green) 55%, #173f3a);box-shadow:var(--shadow);border-radius:34px;flex-direction:column;padding:40px;display:flex;position:relative;overflow:hidden}.auth-story:before{content:"";pointer-events:none;background:#f1e8d412;border-radius:50%;width:320px;height:320px;position:absolute;top:-100px;right:-90px}.auth-story .brand{color:var(--cream);padding:0;font-size:22px;position:relative}.auth-story .brand small{color:var(--cream)}.auth-copy{margin-top:auto;padding-top:40px;position:relative}.auth-copy h1{margin:0 0 10px;font-size:40px;line-height:1.35}.auth-copy>p{margin:0;font-size:16px}.auth-projects{flex-wrap:wrap;gap:10px;margin:26px 0 0;padding:0;list-style:none;display:flex}.auth-projects li{background:#f1e8d41f;border-radius:999px;align-items:center;gap:8px;padding:4px 14px 4px 4px;font-size:13px;font-weight:700;display:inline-flex}.auth-projects .project-icon{border-radius:50%;width:26px;height:26px}.auth-form-wrap{background:var(--paper);box-shadow:var(--shadow);border-radius:34px;align-items:center;padding:48px 44px;display:flex}.auth-form{width:100%;max-width:440px;margin:0 auto}.auth-form>.eyebrow{color:var(--green)}.auth-form h2{margin:0 0 6px;font-size:30px}.auth-form>p{color:var(--muted);margin-bottom:22px;font-size:14px}.auth-form input{font-size:16px}.auth-form .button.full{min-height:50px;margin-top:6px;font-size:15px}.auth-privacy{color:var(--muted);text-align:center;margin-top:16px;font-size:12px}.initial-screen .app-icon{box-shadow:var(--shadow)}@media (width<=900px){.auth-page{grid-template-columns:minmax(0,1fr);align-content:start;max-width:560px;padding:20px 16px}.auth-story{padding:26px}.auth-copy{padding-top:26px}.auth-copy h1{font-size:26px}.auth-copy>p{font-size:14px}.auth-copy br,.auth-projects{display:none}.auth-form-wrap{border-radius:28px;padding:28px 22px}.auth-form h2{font-size:24px}}@keyframes rise-in{0%{opacity:0;translate:0 22px}}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}@keyframes pop-in{0%{opacity:0;scale:.5}}@keyframes grow-x{0%{scale:0 1}}@keyframes grow-y{0%{scale:1 0}}@keyframes reveal{0%{opacity:0;translate:0 32px}}@keyframes reveal-fade{0%{opacity:0}}@keyframes marker{0%{background-size:0% 100%}}@keyframes stamp{0%{opacity:0;rotate:-10deg;scale:1.3}55%{opacity:1;rotate:2deg;scale:.94}to{rotate:0deg;scale:1}}@keyframes ring-draw{0%{stroke-dasharray:0 264}}@keyframes pulse-dot{0%{box-shadow:0 0 0 0 color-mix(in srgb, currentColor 55%, transparent)}70%,to{box-shadow:0 0 0 7px #0000}}@keyframes drift{50%{translate:-16px 12px;scale:1.06}}@keyframes blob{33%{border-radius:58% 42% 40% 60%;rotate:18deg}66%{border-radius:45% 55% 62% 38%;rotate:-12deg}}@keyframes float{50%{translate:0 -7px}}@keyframes spin{to{rotate:360deg}}@keyframes glow{50%{box-shadow:0 0 0 5px #f2c23047}}@keyframes today-pulse{50%{outline-offset:3px;outline-color:color-mix(in srgb, var(--ink) 35%, transparent)}}@keyframes shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}@keyframes focus-ring{0%{outline-offset:8px;outline-color:#0000}}@keyframes modal-in{0%{opacity:0;translate:0 24px;scale:.96}}@keyframes sheet-in{0%{opacity:0;translate:0 56px}}@keyframes modal-out{to{opacity:0;translate:0 16px;scale:.96}}@keyframes toast-in{0%{opacity:0;translate:0 30px;scale:.9}}@keyframes toast-out{to{opacity:0;translate:0 20px;scale:.96}}:where(button,a,input,textarea,select,summary):focus-visible{animation:focus-ring .3s var(--ease-out)}.page-heading>div{animation:rise-in .55s var(--ease-out) both}.page-heading .today{animation:.6s .25s both fade-in}.page-heading h1,.section-heading h2{background:linear-gradient(transparent 64%, color-mix(in srgb, var(--highlight) 46%, transparent) 64%) no-repeat 0 0 / 100% 100%}.page-heading h1{animation:marker .8s var(--ease-out) .35s both}.section-heading h2{animation:marker .8s var(--ease-out) .2s both}:is(.bento,.project-summary,.history-summary)>*{animation:rise-in .6s var(--ease-out) calc(var(--i,0) * 55ms) both}:is(.bento,.project-summary,.history-summary)>:nth-child(2){--i:1}:is(.bento,.project-summary,.history-summary)>:nth-child(3){--i:2}:is(.bento,.project-summary,.history-summary)>:nth-child(4){--i:3}:is(.bento,.project-summary,.history-summary)>:nth-child(5){--i:4}:is(.bento,.project-summary,.history-summary)>:nth-child(6){--i:5}:is(.bento,.project-summary,.history-summary)>:nth-child(7){--i:6}:is(.bento,.project-summary,.history-summary)>:nth-child(8){--i:7}:is(.bento,.project-summary,.history-summary)>:nth-child(9){--i:8}:is(.bento,.project-summary,.history-summary)>:nth-child(10){--i:9}:is(.bento,.project-summary,.history-summary)>:nth-child(n+11){--i:10}.ledger-note,.history-summary+.notice{animation:.6s .5s both fade-in}.feature-entry,.release-row,.historical-record{animation:rise-in .5s var(--ease-out) calc(min(var(--i,0), 10) * 45ms) both}@supports (animation-timeline:view()){.release-row,.historical-record,.release-day-label{animation:linear both reveal;animation-timeline:view();animation-range:entry entry 85%}.feature-entry{animation:linear both reveal-fade;animation-timeline:view();animation-range:entry entry 70%}.section-heading h2{animation:linear both marker;animation-timeline:view();animation-range:entry 60% cover 40%}}.week-bars i{transform-origin:bottom;animation:grow-y .8s var(--ease-spring) calc(.25s + var(--i,0) * 60ms) both}.week-bars .today.on i{animation:grow-y .8s var(--ease-spring) calc(.25s + var(--i,0) * 60ms) both, glow 2.6s ease-in-out 1.6s infinite}.week-bars li>span:not(.sr-only){animation:fade-in .4s ease calc(.35s + var(--i,0) * 60ms) both}.token-track i,.feature-token-bars .token-track i{transform-origin:0;animation:grow-x .9s var(--ease-out) calc(.3s + var(--i,0) * 70ms) both}.progress-track i.on{transform-origin:0;animation:grow-x .5s var(--ease-out) .15s both}.progress-track i.on:nth-child(2){animation-delay:.23s}.progress-track i.on:nth-child(3){animation-delay:.31s}.progress-track i.on:nth-child(4){animation-delay:.39s}.heatmap i{animation:pop-in .4s var(--ease-spring) calc(.2s + var(--c,0) * 28ms) both}.heatmap .today{animation:pop-in .4s var(--ease-spring) calc(.2s + var(--c,0) * 28ms) both, today-pulse 2.4s ease-in-out 1.4s infinite}.ring-value{animation:ring-draw 1.2s var(--ease-out) .25s both}.badge.success,.target-status.confirmed>span,.feature-status.released .state-label{transform-origin:100%;animation:stamp .55s var(--ease-out) .45s both}.local-pill:before{color:var(--green-2);animation:2.4s ease-out infinite pulse-dot}.week-tile:before,.project-hero:before,.auth-story:before{animation:15s ease-in-out infinite drift}.week-tile:after,.project-hero:after{animation:11s ease-in-out infinite reverse drift}.count-tile:after{animation:11s ease-in-out infinite blob}.target-tile.unknown:after{animation:48s linear infinite spin}.project-tile,.stat-tile,.target-tile{transition:transform .35s var(--ease-out), box-shadow .35s var(--ease-out), background .2s}.project-tile:hover,.stat-tile:hover{box-shadow:var(--shadow-lift);transform:translateY(-4px)}.project-identity .project-icon,.brand .app-icon,.release-row .project-icon,.workspace-feature>.project-icon{transition:transform .45s var(--ease-spring)}.project-tile:hover .project-identity .project-icon{transform:rotate(-7deg)scale(1.07)}.brand:hover .app-icon{transform:rotate(-9deg)scale(1.08)}.release-row:hover .project-icon,.workspace-feature:hover>.project-icon{transform:scale(1.08)}.feature-entry{transition:box-shadow .3s var(--ease-out), background .2s}.feature-entry:has(>.workspace-feature:hover){box-shadow:var(--shadow-lift)}.release-row{transition:background .2s, box-shadow .3s var(--ease-out)}.release-row:hover{box-shadow:var(--shadow-lift)}.release-row.status-failed:hover{box-shadow:inset 4px 0 0 var(--fail), var(--shadow-lift)}:is(.text-button,.tile-link,.detail-affordance,.release-row,.latest-attempt,.auth-form .button) svg{transition:translate .3s var(--ease-spring)}:is(.text-button,.tile-link,.latest-attempt,.auth-form .button):hover svg,.workspace-feature:hover .detail-affordance svg,.release-row:hover>svg:last-child{translate:4px}.system-link svg{transition:translate .3s var(--ease-spring)}.system-link:hover svg{translate:2px -2px}.icon-button svg{transition:rotate .35s var(--ease-spring)}.icon-button:is([aria-label=閉じる],[aria-label=通知を閉じる]):hover svg{rotate:90deg}.icon-button:active,.project-nav:active{scale:.9}.project-nav .project-icon{transition:transform .4s var(--ease-spring), box-shadow .3s}.project-nav:hover .project-icon{transform:translateY(-3px)scale(1.06);box-shadow:0 8px 14px -6px #462d1473}.project-toggle>svg:last-child{transition:transform .35s var(--ease-spring)}.search svg{transition:color .2s, scale .3s var(--ease-spring)}.search:focus-within svg{color:var(--green);scale:1.12}.nav-link,.segmented button{transition:color .3s 50ms,background .2s}.app-header{transition:box-shadow .35s var(--ease-out)}.app-header[data-scrolled]{box-shadow:0 -24px 0 8px var(--bg), 0 18px 36px -18px #462d149e}.modal[open]{animation:modal-in .42s var(--ease-out) both}.modal[open]::backdrop{animation:.3s both fade-in}.modal[open] .modal-form>:not(.modal-actions){animation:rise-in .45s var(--ease-out) calc(80ms + var(--i,0) * 50ms) both}.modal[open] .modal-form>:nth-child(2){--i:1}.modal[open] .modal-form>:nth-child(3){--i:2}.modal[open] .modal-form>:nth-child(4){--i:3}.modal[open] .modal-form>:nth-child(5){--i:4}.modal[open] .modal-form>:nth-child(n+6){--i:5}.modal-ghost-host{z-index:1000;pointer-events:none;background:0 0;border:0;width:auto;max-width:none;height:auto;max-height:none;margin:0;padding:0;position:fixed;inset:0;overflow:visible}.modal-ghost-host::backdrop{display:none}.modal-ghost-backdrop{background:#2e2a2473;animation:.24s both fade-out;position:fixed;inset:0}.modal.modal-ghost{pointer-events:none;max-height:none;animation:modal-out .24s var(--ease-in) both;margin:0;position:fixed;inset:auto;overflow:hidden}.modal-ghost *,.modal-ghost :before,.modal-ghost :after{transition:none!important;animation:none!important}.toast{animation:toast-in .5s var(--ease-spring) both}.toast>svg:first-child{animation:pop-in .5s var(--ease-spring) .15s both}.toast.leaving{animation:toast-out .22s var(--ease-in) both}.historical-record[open] .historical-body,.git-detail details[open]>:not(summary){animation:rise-in .35s var(--ease-out) both}.historical-record::details-content{block-size:0;transition:block-size .35s var(--ease-out), content-visibility .35s allow-discrete;overflow-y:clip}.historical-record[open]::details-content{block-size:auto}.loading-line{color:var(--muted);background:linear-gradient(100deg, var(--paper) 35%, var(--cream) 50%, var(--paper) 65%) 0 0 / 250% 100%;animation:1.6s linear infinite shimmer}.initial-screen .app-icon{animation:2.6s ease-in-out infinite float}.auth-story{animation:rise-in .7s var(--ease-out) both}.auth-form-wrap{animation:rise-in .7s var(--ease-out) .12s both}.auth-copy>*{animation:rise-in .6s var(--ease-out) .3s both}.auth-copy>:nth-child(2){animation-delay:.4s}.auth-projects li{animation:pop-in .45s var(--ease-spring) calc(.55s + var(--i,0) * 55ms) both}.auth-projects li:nth-child(2){--i:1}.auth-projects li:nth-child(3){--i:2}.auth-projects li:nth-child(4){--i:3}.auth-projects li:nth-child(5){--i:4}.auth-projects li:nth-child(6){--i:5}.auth-projects li:nth-child(n+7){--i:6}.morph-card{z-index:40;pointer-events:none;border-radius:var(--radius-tile);background:linear-gradient(150deg, var(--pj-1), var(--pj-2));box-shadow:var(--shadow);position:fixed}.tile.morph-target{animation:.26s .3s both fade-in}@media (width<=720px){.modal[open]{animation-name:sheet-in}.project-switcher[data-open=true] .project-nav{animation:pop-in .4s var(--ease-spring) calc(var(--i,0) * 35ms) both}}
