@font-face{font-family:Bebas Neue;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2039e8342bda6056-s.51680477.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bebas Neue;font-style:normal;font-weight:400;font-display:swap;src:url(../media/fabcf92ba1ccea36-s.p.19f28380.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bebas Neue Fallback;src:local(Arial);ascent-override:117.32%;descent-override:39.11%;line-gap-override:0.0%;size-adjust:76.72%}.bebas_neue_230ff6c4-module__IF224G__className{font-family:Bebas Neue,Bebas Neue Fallback;font-style:normal;font-weight:400}.bebas_neue_230ff6c4-module__IF224G__variable{--font-bebas:"Bebas Neue","Bebas Neue Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.a82ecf4e.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.afa48be3.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.764b43eb.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.cb53f04b.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.64b9304e.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/6ff74e33ebd7bca3-s.140490a3.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1a69062cfe6f77f8-s.b36ae37c.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9a4838fcda0d1bca-s.bf5f8a12.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2e95a7d252b9825a-s.10086973.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/23b7a97ae3b5c134-s.p.2902b61f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_12c85f9e-module__xiOGXW__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_12c85f9e-module__xiOGXW__variable{--font-ibm:"IBM Plex Mono","IBM Plex Mono Fallback"}
:root{--kraft:tan;--kraft-dark:#a89060;--kraft-light:#e8d4b0;--black:#000;--gunmetal:#2c3539;--bronze:#6b4423;--cream:beige;--ink:#1a1a1a;--ink-faded:#000000b3;--danger:#8b0000;--success:#2d5016;--font-display:var(--font-bebas),"Impact",sans-serif;--font-mono:var(--font-ibm),"Courier New",monospace;--space-xs:.2rem;--space-sm:.4rem;--space-md:.75rem;--space-lg:1.25rem;--space-xl:2rem}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{max-width:100vw;min-height:100vh;overflow-x:hidden}body{font-family:var(--font-mono);color:var(--ink);background:linear-gradient(135deg,var(--kraft)0%,var(--kraft-dark)100%);-webkit-font-smoothing:antialiased;background-attachment:fixed;font-size:14px;line-height:1.4}body:before{content:"";pointer-events:none;z-index:1;opacity:.5;background-image:repeating-linear-gradient(0deg,#0000,#0000 2px,#00000008 2px 4px);position:fixed;inset:0}.texture-overlay{pointer-events:none;z-index:1;background:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.15'/%3E%3C/svg%3E");width:200%;height:200%;animation:8s steps(10,end) infinite grain;position:fixed;top:-50%;left:-50%}@keyframes grain{0%,to{transform:translate(0)}10%{transform:translate(-5%,-10%)}50%{transform:translate(-15%,10%)}90%{transform:translate(-10%,10%)}}.app-container{z-index:2;max-width:600px;min-height:100vh;margin:0 auto;padding:15px;position:relative}@media (min-width:768px){.app-container{padding:20px}}.container{z-index:2;flex-direction:column;width:100%;max-width:600px;min-height:100vh;margin:0 auto;padding:15px;display:flex;position:relative}h1,h2,h3,h4{font-family:var(--font-display);text-transform:uppercase;letter-spacing:-1px;line-height:.95}h1{font-size:clamp(1.4rem,5vw,1.8rem)}h2{font-size:clamp(1.1rem,4vw,1.4rem)}h3{font-size:clamp(.95rem,3vw,1.1rem)}.subtitle{font-family:var(--font-mono);letter-spacing:2px;text-transform:uppercase;opacity:.8;font-size:.6rem;font-weight:600}.tagline{font-family:var(--font-display);letter-spacing:1px;font-size:.85rem}.header{background:var(--black);color:var(--kraft);box-shadow:0 2px 0 var(--bronze),0 4px 10px #0000004d;border-left:4px solid var(--bronze);border-right:4px solid var(--bronze);margin-bottom:12px;padding:12px 15px}.header h1{text-shadow:2px 2px 0 var(--gunmetal);margin-bottom:2px}.header .tagline{opacity:.85;border-left:2px solid var(--bronze);margin-top:6px;padding-left:8px;font-size:.7rem;font-style:italic}.user-bar{border-top:1px solid #ffffff1a;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;margin-top:10px;padding-top:8px;font-size:.75rem;display:flex}.card{background:var(--cream);width:100%;padding:var(--space-md);box-shadow:0 0 0 2px var(--black),0 0 0 4px var(--bronze),0 6px 15px #0003;margin-bottom:var(--space-md);position:relative}.card-header{background:var(--black);color:var(--kraft);margin:calc(var(--space-md)*-1);margin-bottom:var(--space-md);font-family:var(--font-display);letter-spacing:1px;border-bottom:2px solid var(--bronze);justify-content:space-between;align-items:center;padding:6px 10px;font-size:.95rem;display:flex}.card-header .tag{opacity:.7;font-size:.65rem;font-family:var(--font-mono)}.torn-edge{position:relative}.torn-edge:before{content:"";background:linear-gradient(to bottom,transparent 0%,transparent 30%,var(--cream)30%,var(--cream)40%,transparent 40%,transparent 55%,var(--cream)55%,var(--cream)70%,transparent 70%,transparent 85%,var(--cream)85%);filter:drop-shadow(0 -1px 1px #0000001a);background-size:15px 100%;width:100%;height:10px;position:absolute;top:-6px;left:0}label{font-family:var(--font-display);letter-spacing:1px;text-transform:uppercase;margin-bottom:2px;font-size:.85rem;display:block}.input{border:2px solid var(--black);width:100%;font-family:var(--font-mono);color:var(--ink);background:#fff;outline:none;padding:6px 8px;font-size:.8rem;transition:all .2s}.input:focus{border-color:var(--bronze);box-shadow:0 0 0 2px #6b442333}.form-group{margin-bottom:var(--space-sm)}textarea.input{resize:vertical;min-height:60px;line-height:1.4}.btn{justify-content:center;align-items:center;gap:var(--space-xs);font-family:var(--font-mono);text-transform:uppercase;border:2px solid var(--bronze);cursor:pointer;clip-path:polygon(4px 0,100% 0,100% calc(100% - 4px),calc(100% - 4px) 100%,0 100%,0 4px);padding:6px 12px;font-size:.7rem;font-weight:700;transition:all .2s;display:inline-flex}.btn-primary{background:var(--black);color:var(--kraft);width:100%}.btn-primary:hover{background:var(--gunmetal);transform:translateY(-1px);box-shadow:0 2px 6px #0000004d}.btn-secondary{background:var(--cream);color:var(--black);border-color:var(--black)}.btn-secondary:hover{background:var(--kraft-light)}.btn-ghost{color:var(--ink);border:2px solid var(--ink);clip-path:none;background:0 0;padding:5px 10px;font-size:.65rem;font-weight:700}.btn-ghost:hover{background:var(--ink);color:var(--kraft)}.btn-danger{background:var(--danger);color:#fff;border-color:var(--danger)}.nav-tabs{flex-wrap:wrap;gap:4px;margin-bottom:12px;display:flex}.nav-tab{background:var(--black);color:var(--kraft);border:2px solid var(--bronze);font-family:var(--font-mono);text-transform:uppercase;cursor:pointer;clip-path:polygon(4px 0,100% 0,100% calc(100% - 4px),calc(100% - 4px) 100%,0 100%,0 4px);padding:5px 10px;font-size:.65rem;font-weight:700;text-decoration:none;transition:all .2s}.nav-tab:hover{background:var(--gunmetal);transform:translateY(-1px)}.nav-tab.active{background:var(--bronze);color:var(--cream);border-color:var(--black)}.tab-nav{border-bottom:2px solid var(--black);margin-bottom:var(--space-md);margin-top:calc(var(--space-md)*-1);margin-left:calc(var(--space-md)*-1);margin-right:calc(var(--space-md)*-1);padding:0 var(--space-md);background:#00000008;display:flex}.tab-btn{color:var(--ink);font-family:var(--font-mono);text-transform:uppercase;cursor:pointer;background:0 0;border:none;flex:1;padding:8px;font-size:.7rem;font-weight:700;transition:all .15s}.tab-btn:hover{background:#0000000d}.tab-btn.active{background:var(--black);color:var(--kraft)}.stats-grid{grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:12px;display:grid}@media (max-width:400px){.stats-grid{grid-template-columns:repeat(2,1fr)}}.stat-box{background:var(--black);color:var(--kraft);text-align:center;border:2px solid var(--bronze);padding:8px 4px}.stat-value{font-family:var(--font-display);margin-bottom:1px;font-size:1.3rem;line-height:1}.stat-label{text-transform:uppercase;letter-spacing:1px;opacity:.8;font-size:.5rem}.scars-display{font-family:var(--font-display);color:var(--kraft);align-items:center;gap:3px;font-size:.9rem;display:flex}.scars-icon{font-size:1rem}.objective-list{list-style:none}.objective-item{border-bottom:1px dashed #0000001f;align-items:flex-start;gap:6px;padding:6px 0;transition:background .2s;display:flex}.objective-item:hover{background:#00000005}.objective-item:last-child{border-bottom:none}.objective-checkbox{width:16px;height:16px;accent-color:var(--bronze);cursor:pointer;flex-shrink:0;margin-top:1px}.objective-text{flex:1;font-size:.8rem;line-height:1.35}.objective-text.done{opacity:.5;text-decoration:line-through}.objective-meta{flex-shrink:0;align-items:center;gap:4px;display:flex}.objective-priority{text-transform:uppercase;border:1px solid;padding:2px 4px;font-size:.5rem;font-weight:700}.objective-priority.critical{color:var(--danger);background:#8b00001a}.objective-priority.high{color:var(--bronze);background:#6b44231a}.objective-priority.medium{color:var(--ink)}.objective-priority.low{color:var(--ink-faded)}.objective-delete{color:var(--ink-faded);cursor:pointer;background:0 0;border:none;padding:2px 4px;font-size:.85rem;line-height:1;transition:color .2s}.objective-delete:hover{color:var(--danger)}.edc-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:6px;display:grid}.edc-item{border:2px solid var(--black);cursor:pointer;background:#fff;align-items:center;gap:6px;padding:8px;font-size:.75rem;transition:all .15s;display:flex}.edc-item:hover{border-color:var(--bronze);transform:translate(2px)}.edc-item.checked{border-color:var(--success);background:#2d50161a}.edc-item.checked .edc-text{opacity:.6;text-decoration:line-through}.edc-checkbox{width:14px;height:14px;accent-color:var(--success)}.edc-text{flex:1}.notebook-page{background:var(--cream);border:2px solid var(--black);padding:var(--space-sm);position:relative;box-shadow:inset 0 0 15px #0000000f}.notebook-page:before{content:"";background:#8b000033;width:1px;position:absolute;top:0;bottom:0;left:30px}.notebook-textarea{width:100%;min-height:180px;font-family:var(--font-mono);resize:vertical;background:repeating-linear-gradient(#0000,#0000 23px,#0000000f 23px 24px) 0 0/100% 24px;border:none;outline:none;padding-left:25px;font-size:.8rem;line-height:1.7}.empty-state{text-align:center;padding:var(--space-lg)var(--space-sm);opacity:.7}.empty-state-icon{margin-bottom:var(--space-xs);opacity:.5;font-size:2rem}.status{text-transform:uppercase;letter-spacing:1px;text-align:center;margin-top:var(--space-sm);padding:4px;font-size:.65rem;font-weight:700}.status.error{color:var(--danger);background:#8b00001a}.status.success{color:var(--success);background:#2d50161a}.info-box{padding:var(--space-sm);border-left:2px solid var(--bronze);margin-top:var(--space-md);background:#00000008;font-size:.7rem}.info-box strong{margin-bottom:2px;font-size:.65rem;display:block}.text-center{text-align:center}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.flex{display:flex}.flex-wrap{flex-wrap:wrap}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.justify-between{justify-content:space-between}.items-center{align-items:center}.nav-card{border:2px solid var(--black);color:var(--ink);background:#fff;align-items:center;gap:10px;margin-bottom:6px;padding:10px 12px;text-decoration:none;transition:all .15s;display:flex}.nav-card:hover{border-color:var(--bronze);background:var(--kraft-light);transform:translate(3px)}.nav-card-icon{font-size:1.3rem}.nav-card-content{flex:1}.nav-card-title{font-family:var(--font-display);margin-bottom:1px;font-size:.9rem}.nav-card-desc{opacity:.7;font-size:.65rem}.nav-card-arrow{opacity:.4;font-size:1rem}
