*{box-sizing:border-box;margin:0;padding:0}button,input,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}img{display:block}:root{--f-body:Inter, system-ui, sans-serif;--f-display:"Inter Tight", Inter, sans-serif;--f-num:"Inter Tight", Inter, sans-serif;--f-label:Inter, sans-serif;--label-case:none;--label-track:0;--label-size:13px;--radius:22px;--radius-btn:999px;--shadow:none;--display-weight:600;--display-track:-.035em}html{background:var(--bg);color:var(--fg);transition:background .5s,color .5s}body{font-family:var(--f-body);-webkit-font-smoothing:antialiased;background:var(--bg);background-image:var(--bg-img,none);background-size:var(--bg-size,auto);min-height:100vh}.t-dot.dark{--bg:#000;--panel:#0a0a0a;--line:#1c1c1c;--line2:#2a2a2a;--fg:#fff;--mut:#8a8a8a;--off:#1d1d1d;--on:#fff;--glow:#ffffff80;--accent:#d71921;--accent-fg:#fff;--btn:#fff;--btn-fg:#000;--soft:#141414}.t-dot.light{--bg:#efefec;--panel:#f8f8f6;--line:#dcdcd8;--line2:#cfcfca;--fg:#0a0a0a;--mut:#6d6d6a;--off:#d9d9d5;--on:#0a0a0a;--glow:transparent;--accent:#d71921;--accent-fg:#fff;--btn:#0a0a0a;--btn-fg:#fff;--soft:#e6e6e2}.t-dot{--f-num:Doto, monospace;--f-label:"IBM Plex Mono", monospace;--label-case:uppercase;--label-track:.09em;--label-size:11px;--f-display:Inter, sans-serif;--display-weight:500;--display-track:-.045em}.t-ronin{--bg:#f3ede2;--panel:transparent;--line:#d9d0bf;--line2:#c9bea9;--fg:#1b1a17;--mut:#7a7366;--off:#cfc5b2;--accent:#c23a22;--accent-fg:#fff;--btn:#1b1a17;--btn-fg:#f3ede2;--soft:#ebe3d4;--f-display:"Shippori Mincho", serif;--f-num:"Shippori Mincho", serif;--label-case:uppercase;--label-track:.26em;--label-size:11px;--radius:0;--radius-btn:0;--display-weight:700;--display-track:-.01em}.t-blueprint{--bg:#0d3b73;--panel:#0928508c;--line:#e9f1ff47;--line2:#e9f1ff80;--fg:#e9f1ff;--mut:#8fb0dc;--off:#e9f1ff38;--accent:#ffd166;--accent-fg:#0a2f5d;--btn:#ffd166;--btn-fg:#0a2f5d;--soft:#e9f1ff0f;--f-label:"IBM Plex Mono", monospace;--label-case:uppercase;--label-track:.1em;--label-size:11px;--radius:0;--radius-btn:0;--display-weight:500;--bg-img:linear-gradient(#e9f1ff24 1px, transparent 1px), linear-gradient(90deg, #e9f1ff24 1px, transparent 1px), linear-gradient(#e9f1ff0d 1px, transparent 1px), linear-gradient(90deg, #e9f1ff0d 1px, transparent 1px);--bg-size:100px 100px, 100px 100px, 20px 20px, 20px 20px}.t-pure{--bg:#f5f5f7;--panel:#fff;--line:#ececf0;--line2:#d2d2d7;--fg:#1d1d1f;--mut:#6e6e73;--off:#e3e3e8;--accent:#0071e3;--accent-fg:#fff;--btn:#0071e3;--btn-fg:#fff;--soft:#f5f5f7;--warn:#c77700;--radius:28px;--shadow:0 1px 2px #00000008, 0 12px 40px -18px #00000024;--display-track:-.045em}.t-studio{--bg:#0b0b0c;--panel:linear-gradient(180deg,#141416,#0f0f11);--line:#1f1f22;--line2:#333;--fg:#ededed;--mut:#8b8b8f;--off:#26262a;--accent:#3ddc84;--accent-fg:#04170d;--btn:#3ddc84;--btn-fg:#04170d;--soft:#141416;--f-display:"Instrument Serif", serif;--f-num:"Instrument Serif", serif;--label-case:uppercase;--label-track:.12em;--label-size:12px;--display-weight:400;--display-track:-.02em}.t-dot body:after,.t-ronin body:after{content:"";pointer-events:none;z-index:100;position:fixed;inset:0}.t-dot body:after{opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}.t-ronin body:after{opacity:.5;z-index:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='p'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.012 .3' numOctaves='3' seed='4'/%3E%3CfeColorMatrix values='0 0 0 0 .55 0 0 0 0 .5 0 0 0 0 .42 0 0 0 .09 0'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23p)'/%3E%3C/svg%3E")}.studio-glow{pointer-events:none;z-index:0;background:radial-gradient(circle,#01954738,#0000 60%);width:900px;height:900px;position:fixed;top:-30%;right:-10%}.ronin-vert{writing-mode:vertical-rl;opacity:.045;pointer-events:none;z-index:0;font:800 120px Shippori Mincho;position:fixed;top:120px;right:3vw}.wrap{z-index:1;max-width:1120px;margin:0 auto;padding:0 20px 100px;position:relative}.label{font-family:var(--f-label);text-transform:var(--label-case);letter-spacing:var(--label-track);font-size:var(--label-size);color:var(--mut);font-weight:500}.num{font-family:var(--f-num);font-weight:900}.t-pure .num,.t-blueprint .num{letter-spacing:-.04em;font-weight:600}.t-ronin .num{font-weight:700}.t-studio .num{font-weight:400}.display{font-family:var(--f-display);font-weight:var(--display-weight);letter-spacing:var(--display-track);line-height:1.03}.mut{color:var(--mut)}.accent{color:var(--accent)}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:26px;position:relative}.t-pure .card{border:0}.t-ronin .card{border:0;border-top:2px solid var(--fg);background:0 0;padding:22px 0 0}.t-blueprint .card{border-color:var(--line2)}.t-blueprint .card:before,.t-blueprint .card:after{content:"";border:2px solid var(--fg);width:14px;height:14px;position:absolute}.t-blueprint .card:before{border-bottom:0;border-right:0;top:-2px;left:-2px}.t-blueprint .card:after{border-top:0;border-left:0;bottom:-2px;right:-2px}.card.hl{border-color:color-mix(in srgb, var(--accent) 45%, var(--line))}.t-pure .card.hl{color:#f5f5f7;--mut:#a1a1a6;background:#1d1d1f}.t-studio .card.hl{background:linear-gradient(140deg,#0195472e,#111113 55%)}.t-ronin .card.hl{border-top-color:var(--accent)}.card-title{font-family:var(--f-display);font-weight:var(--display-weight);letter-spacing:var(--display-track);font-size:24px}.t-studio .card-title{font-size:34px}.btn{cursor:pointer;border-radius:var(--radius-btn);background:var(--btn);color:var(--btn-fg);-webkit-user-select:none;user-select:none;border:0;justify-content:center;align-items:center;gap:10px;padding:13px 22px;font-size:14.5px;font-weight:500;transition:transform .15s,opacity .2s;display:inline-flex}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:disabled{opacity:.4;cursor:default}.t-dot .btn,.t-blueprint .btn,.t-ronin .btn{font-family:var(--f-label);letter-spacing:.12em;text-transform:uppercase;font-size:12px}.btn.ghost{color:var(--fg);border:1px solid var(--line2);background:0 0}.t-pure .card.hl .btn.ghost{color:#fff;background:#ffffff1f;border-color:#0000}.btn.small{padding:9px 15px;font-size:13px}.btn.plain{color:var(--mut);background:0 0;padding:10px 6px}.btn.done{background:var(--accent);color:var(--accent-fg)}.field{background:var(--soft);border:1px solid var(--line2);border-radius:calc(var(--radius) / 2);outline:none;width:100%;height:50px;padding:0 16px;font-size:15.5px;transition:border-color .2s}.t-pure .field{background:#fff}textarea.field{resize:vertical;height:auto;padding:12px 16px;line-height:1.5}.field:focus{border-color:var(--accent)}.err{color:var(--accent);font-size:13.5px}.t-pure .err,.t-studio .err{color:#e5484d}.ticker{border-bottom:1px solid var(--line);white-space:nowrap;z-index:2;align-items:center;height:34px;display:flex;position:relative;overflow:hidden}.ticker .run{gap:40px;padding-left:40px;animation:45s linear infinite scroll;display:inline-flex}.ticker span{align-items:center;gap:10px;display:inline-flex}.ticker i{background:var(--accent);border-radius:50%;width:6px;height:6px;animation:1.2s steps(2,end) infinite blink}.nav{z-index:5;align-items:center;gap:24px;padding:22px 0;display:flex;position:relative}.nav .logo{cursor:pointer;height:20px;margin-right:auto}.nav .tab{font-family:var(--f-label);text-transform:var(--label-case);letter-spacing:var(--label-track);font-size:var(--label-size);color:var(--mut);cursor:pointer;background:0 0;border:0;padding:6px 0;position:relative}.nav .tab.on{color:var(--fg)}.nav .tab.on:after{content:"";background:var(--fg);height:1px;position:absolute;bottom:-2px;left:0;right:0}.t-pure .nav-bar{z-index:20;-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);background:#f5f5f7bf;border-bottom:1px solid #0000000f;position:sticky;top:0}.t-pure .nav{padding:14px 0}.t-ronin .nav,.t-blueprint .nav{border-bottom:1px solid var(--line2)}.iconbtn{border:1px solid var(--line2);cursor:pointer;width:36px;height:36px;color:var(--mut);background:0 0;border-radius:50%;place-items:center;display:grid}.t-ronin .iconbtn,.t-blueprint .iconbtn{border-radius:0}.mode{border:1px solid var(--line2);cursor:pointer;background:0 0;border-radius:99px;width:46px;height:24px;position:relative}.mode:after{content:"";background:var(--fg);border-radius:50%;width:16px;height:16px;transition:transform .35s cubic-bezier(.16,1,.3,1);position:absolute;top:3px;left:3px}.light .mode:after{transform:translate(22px)}.hero{grid-template-columns:1fr 1.1fr;align-items:center;gap:48px;padding:40px 0 36px;display:grid}.hero h1{margin-top:16px;font-size:clamp(36px,5.4vw,62px)}.t-ronin .hero,.t-pure .hero{grid-template-columns:1fr;gap:24px}.t-ronin .hero h1{max-width:920px;font-size:clamp(42px,7vw,84px)}.t-pure .hero h1{font-size:clamp(44px,7vw,80px)}.t-studio .hero h1{font-size:clamp(46px,7.5vw,92px);line-height:.98}.t-studio .hero h1 em,.t-ronin .hero h1 em{color:var(--accent);font-style:normal}.t-studio .hero h1 em{font-style:italic}.t-dot .hero{border-bottom:1px solid var(--line)}.lead{color:var(--mut);max-width:520px;margin-top:16px;font-size:16.5px;line-height:1.6}.meta{flex-wrap:wrap;gap:34px;margin-top:30px;display:flex}.meta .v{margin-top:6px;font-size:26px}.grid{grid-template-columns:1.4fr 1fr;gap:16px;margin-top:16px;display:grid}.t-ronin .grid{gap:56px;margin-top:44px}.t-pure .grid{gap:20px;margin-top:28px}.side{align-content:start;gap:16px;display:grid}.t-ronin .side{gap:40px}.step{border-top:1px solid var(--line);grid-template-columns:46px 1fr auto;align-items:start;gap:14px;padding:18px 0;display:grid}.step:first-of-type{border-top:0}.step .t{letter-spacing:-.015em;font-size:16px;font-weight:500}.step.todo .t,.step.skipped .t{color:var(--mut)}.step .d{color:var(--mut);margin-top:4px;font-size:13.5px;line-height:1.5}.step .when{text-align:right;white-space:nowrap}.step .when.hot{color:var(--accent)}.t-pure .step .when.you{color:var(--warn)}.step .mk{font-family:var(--f-num);color:var(--off);font-size:22px;line-height:1}.step.done .mk{color:var(--fg)}.step.now .mk,.step.you .mk{color:var(--accent)}.step .files{gap:6px;margin-top:10px;display:grid}.step .acts{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.t-ronin .step{grid-template-columns:56px 1fr 80px;align-items:center;padding:22px 0}.t-ronin .step .mk{text-align:center;font-size:30px;font-weight:700}.t-ronin .step .t{font:700 20px Shippori Mincho}.t-pure .step{grid-template-columns:28px 1fr auto}.t-studio .step .t{font-size:15.5px}.pdot{border-radius:50%;place-items:center;width:22px;height:22px;margin-top:1px;display:grid}.pdot.done{background:var(--fg);color:var(--bg)}.pdot.now,.pdot.you{border:2px solid var(--c);--pc:color-mix(in srgb, var(--c) 35%, transparent);animation:2s infinite pulse}.pdot.now{--c:var(--accent)}.pdot.you{--c:#ff9f0a}.pdot.now:after,.pdot.you:after{content:"";background:var(--c);border-radius:50%;width:8px;height:8px}.pdot.todo,.pdot.skipped{border:1.5px solid var(--line2)}.t-studio .pdot.done{background:var(--accent);color:var(--accent-fg)}.t-studio .pdot.you{--c:var(--accent)}.bptag{letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;border:1px solid;padding:4px 8px;font:500 10.5px IBM Plex Mono}.seal{border:3px solid var(--accent);width:62px;height:62px;color:var(--accent);mix-blend-mode:multiply;border-radius:6px;justify-self:end;place-items:center;font:800 25px Shippori Mincho;animation:.45s cubic-bezier(.3,1.6,.5,1) both stamp;display:grid;position:relative;transform:rotate(-6deg)}.seal:after{content:"";border:1px solid var(--accent);opacity:.6;border-radius:3px;position:absolute;inset:3px}.file{border-top:1px solid var(--line);align-items:center;gap:14px;padding:12px 0;font-size:14px;display:flex}.file:first-of-type{border-top:0}.file .ic{border:1px solid var(--line2);width:32px;height:40px;color:var(--mut);border-radius:6px;flex-shrink:0;place-items:end center;padding-bottom:4px;font:500 8px IBM Plex Mono;display:grid}.t-ronin .file .ic,.t-blueprint .file .ic{border-radius:0}.msg{border-top:1px solid var(--line);padding:14px 0;font-size:14.5px;line-height:1.55}.msg:first-of-type{border-top:0}.msg.client{border-left:2px solid var(--accent);padding-left:14px}.amount{margin:12px 0 16px;font-size:50px;line-height:1}.t-studio .amount{font-size:54px}.ticks{grid-template-columns:repeat(48,1fr);gap:3px;display:grid}.ticks i{background:var(--off);border-radius:2px;height:22px}.ticks i.on{background:var(--fg);animation:.3s both tickon}.bar{background:var(--off);border-radius:99px;height:6px;overflow:hidden}.t-studio .bar{height:3px}.t-ronin .bar,.t-blueprint .bar{border-radius:0;height:4px}.bar i{background:var(--fg);border-radius:inherit;transform-origin:0;height:100%;animation:1.6s cubic-bezier(.16,1,.3,1) .3s both fill;display:block}.t-studio .bar i{background:var(--accent);box-shadow:0 0 12px var(--accent)}.lines{border-top:1px dashed var(--line2);gap:8px;margin-top:16px;padding-top:12px;font-size:13.5px;display:grid}.lines div{justify-content:space-between;gap:12px;display:flex}.lines span:first-child{color:var(--mut)}.pill{border-radius:var(--radius-btn);border:1px solid var(--line2);font-family:var(--f-label);letter-spacing:var(--label-track);text-transform:var(--label-case);color:var(--mut);white-space:nowrap;align-items:center;gap:6px;padding:4px 10px;font-size:11.5px;display:inline-flex}.pill.hot{color:var(--accent);border-color:currentColor}.pill.ok{color:var(--fg)}.projects{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;margin-top:18px;display:grid}.pcard{cursor:pointer;text-align:left;width:100%;color:inherit;transition:transform .25s cubic-bezier(.16,1,.3,1);display:block}.pcard:hover{transform:translateY(-3px)}.overlay{z-index:90;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#08080a8c;place-items:center;padding:20px;animation:.25s both fadein;display:grid;position:fixed;inset:0}.sheet{background:var(--bg);width:100%;max-width:460px;color:var(--fg);border:1px solid var(--line2);border-radius:var(--radius);max-height:92vh;padding:30px;animation:.45s cubic-bezier(.16,1,.3,1) both rise;overflow:auto}.t-studio .sheet{background:#111113}.t-blueprint .sheet{background:#0d3b73}.sheet h2{font-family:var(--f-display);font-weight:var(--display-weight);letter-spacing:var(--display-track);font-size:28px}.sheet .form{gap:12px;margin-top:18px;display:grid}.sheet .row{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:6px;display:flex}.picker{color:#111;background:#fff;border:0;border-radius:28px;max-width:1060px}.picker h2{letter-spacing:-.03em;font:600 28px Inter Tight}.picker p{color:#6e6e73;margin-top:6px}.opts{grid-template-columns:repeat(5,1fr);gap:12px;margin-top:24px;display:grid}.opt{cursor:pointer;text-align:left;background:#f5f5f7;border:2px solid #0000;border-radius:20px;padding:8px;transition:transform .2s}.opt:hover{transform:translateY(-3px)}.opt.on{border-color:#111}.opt .pv{border-radius:14px;height:150px;position:relative;overflow:hidden}.opt b{color:#111;margin:12px 6px 2px;font-size:15px;display:block}.opt span{color:#6e6e73;margin:0 6px 8px;font-size:12.5px;line-height:1.4;display:block}.signin{z-index:1;place-items:center;min-height:100vh;padding:20px;display:grid;position:relative}.signin .box{width:100%;max-width:400px}.signin .box .logo{height:22px;margin-bottom:44px}.up{opacity:0;animation:.8s cubic-bezier(.16,1,.3,1) forwards up;transform:translateY(14px)}@keyframes up{to{opacity:1;transform:none}}@keyframes rise{0%{opacity:0;transform:translateY(24px)scale(.98)}}@keyframes fadein{0%{opacity:0}}@keyframes blink{50%{opacity:.2}}@keyframes scroll{to{transform:translate(-50%)}}@keyframes fill{0%{transform:scaleX(0)}}@keyframes tickon{0%{opacity:0}}@keyframes pulse{0%{box-shadow:0 0 0 0 var(--pc)}70%{box-shadow:0 0 0 10px #0000}to{box-shadow:0 0 #0000}}@keyframes stamp{0%{opacity:0;transform:scale(1.8)rotate(-14deg)}to{opacity:.92;transform:scale(1)rotate(-6deg)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes paint{to{stroke-dashoffset:var(--to)}}@keyframes drawn{to{stroke-dashoffset:0}}@keyframes arcgo{to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{animation-duration:.01ms!important;animation-delay:0s!important}}@media (width<=820px){.hero,.grid{grid-template-columns:1fr;gap:24px}.nav{gap:16px}.nav .tabs{display:none}.opts{grid-template-columns:1fr 1fr}.mobile-tabs{display:flex!important}}.mobile-tabs{z-index:30;background:color-mix(in srgb, var(--bg) 85%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--line2);border-radius:999px;justify-content:space-around;padding:6px;display:none;position:fixed;bottom:12px;left:12px;right:12px}.t-ronin .mobile-tabs,.t-blueprint .mobile-tabs{border-radius:0}.mobile-tabs button{font-family:var(--f-label);text-transform:var(--label-case);letter-spacing:var(--label-track);color:var(--mut);background:0 0;border:0;border-radius:999px;flex:1;padding:10px;font-size:12px}.mobile-tabs button.on{background:var(--fg);color:var(--bg)}
