.standard-tool-layout{flex:1;height:100%;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;padding-top:clamp(80px,10vh,100px);padding-bottom:60px}.tool-content-wrapper{flex:1;display:flex;flex-direction:column;justify-content:flex-start;margin:0 auto;width:100%;padding:0 24px;position:relative;z-index:10}.tool-header{text-align:center;margin-bottom:clamp(16px,3vh,24px)}.tool-title{font-size:clamp(24px,5vw,42px);margin:8px 0 0;line-height:1}.top-progress-bar{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg,var(--swim, #00d2ff),var(--bike, #00ffc3),var(--run, #fc4c02));width:100%;z-index:9999;opacity:.5}.vault-header-row{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:24px;flex-wrap:wrap;gap:16px}.vault-progress-wrapper{flex:1;min-width:200px;background:#ffffff0d;height:8px;border-radius:4px;overflow:hidden;position:relative}.vault-progress-fill{height:100%;background:var(--active-color, #00ffc3);width:0%;transition:width .4s cubic-bezier(.2,.8,.2,1);box-shadow:0 0 10px #00ffc380}.vault-progress-text{font-size:.85rem;font-weight:900;color:#fff;font-variant-numeric:tabular-nums}.reset-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#888;padding:8px 16px;border-radius:8px;font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:800;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:6px}.reset-btn:hover{background:#ff3b301a;color:#ff3b30;border-color:#ff3b30}.reset-btn:active{transform:scale(.95)}.vault-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;align-items:start}.category-card{background:#0006;border:1px solid rgba(255,255,255,.05);border-radius:20px;padding:24px;box-shadow:0 10px 30px #0003;display:flex;flex-direction:column}.category-header{display:flex;align-items:center;gap:8px;margin-bottom:16px;border-bottom:1px dashed rgba(255,255,255,.1);padding-bottom:12px}.category-header span{font-size:20px}.category-header h3{margin:0;font-size:.9rem;letter-spacing:2px;text-transform:uppercase;color:#fff;font-weight:800}.check-list{display:flex;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none}.check-item{display:flex;align-items:center;gap:12px;cursor:pointer;position:relative}.check-box{width:22px;height:22px;border-radius:6px;border:2px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.check-item:hover .check-box{border-color:#ffffff80}.check-box span{font-size:16px;color:#000;opacity:0;transform:scale(.5);transition:all .2s cubic-bezier(.2,.8,.2,1);font-weight:900}.check-item.done .check-box{background:var(--theme-color, #00ffc3);border-color:var(--theme-color, #00ffc3);box-shadow:0 0 10px color-mix(in srgb,var(--theme-color) 40%,transparent)}.check-item.done .check-box span{opacity:1;transform:scale(1)}.check-text{font-size:.85rem;color:#ccc;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.4;transition:color .2s;padding-right:24px}.check-item.done .check-text{color:#555;text-decoration:line-through}.add-item-row{display:flex;align-items:center;gap:8px;margin-top:16px;padding-top:12px;border-top:1px dashed rgba(255,255,255,.1)}.add-item-input{flex:1;background:transparent;border:none;border-bottom:1px solid transparent;color:#fff;font-family:JetBrains Mono,monospace;font-size:.75rem;padding:6px 4px;outline:none;transition:border-color .2s}.add-item-input::placeholder{color:#555}.add-item-input:focus{border-bottom-color:var(--theme-color)}.add-item-btn{background:transparent;border:none;color:var(--theme-color);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;opacity:.6;transition:opacity .2s,transform .2s}.add-item-btn:hover{opacity:1;transform:scale(1.1)}.delete-btn{position:absolute;right:0;background:transparent;border:none;color:#666;cursor:pointer;opacity:.4;transition:all .2s;padding:4px;display:flex;align-items:center;justify-content:center;z-index:5}.check-item:hover .delete-btn{opacity:1;color:#ff3b30}
