body{background-image:radial-gradient(#a5b2a530 .8px,transparent .8px);background-size:7px 7px}
.masthead{max-width:1260px;margin:auto;padding:36px 32px 25px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #24433320}.eyebrow{font-size:var(--text-xs);font-weight:700;letter-spacing:.14em}.masthead h1{font-size:var(--text-xl);letter-spacing:-1.5px;font-weight:900;margin-top:3px}.masthead h1 span{color:var(--orange)}button.plain{background:none;border:0;font-size:var(--text-sm);min-height:44px}.layout{max-width:1220px;margin:36px auto 45px;display:grid;grid-template-columns:230px 436px 282px;gap:40px;align-items:start;justify-content:center;padding:0 20px}.profile{padding-top:34px}.profile h2{font-size:40px;letter-spacing:-1.5px;margin:7px 0}.female{font-size:22px;color:var(--orange);margin-left:12px;font-weight:400}.subtitle{font-size:var(--text-sm);color:var(--muted);line-height:1.5}.level{display:flex;justify-content:space-between;margin:30px 0 8px;font-size:var(--text-xs);font-weight:700}.xp-track,.tiny-track{height:4px;background:#cdd5c9;overflow:hidden;border-radius:4px}.xp-track i,.tiny-track i{display:block;width:0;height:100%;background:var(--orange);transition:width .4s}.micro{font-size:var(--text-xs);color:var(--muted);line-height:1.6;margin-top:6px}.needs{display:grid;gap:17px;margin:25px 0}.need>div{display:flex;justify-content:space-between;font-size:var(--text-sm);margin-bottom:6px}.need b{font-size:var(--text-xs);font-variant-numeric:tabular-nums}.meter{height:5px;background:#cdd5c9;border-radius:4px;overflow:hidden}.meter i{display:block;height:100%;background:var(--sage);transition:width .5s}.need.health i{background:#b76c59}.need.happiness i{background:#ab913a}.need.energy i{background:#6e90a5}.autonomy{padding:20px 0;border-top:1px solid #24433320;border-bottom:1px solid #24433320;display:flex;align-items:center;gap:10px}.autonomy b{font-size:var(--text-sm)}.autonomy p{font-size:var(--text-xs);margin-top:4px;color:var(--muted)}button[role=switch]{background:#bac6b9;border:none;border-radius:16px;width:46px;min-width:46px;height:28px;position:relative;padding:4px}button[role=switch]::before{content:"";position:absolute;inset:-8px 0}button[role=switch] i{display:block;width:20px;height:20px;background:white;border-radius:50%;transition:transform .2s}button[role=switch][aria-checked=true]{background:#547864}button[role=switch][aria-checked=true] i{transform:translateX(18px)}.activity-card{padding:25px 0 20px}.activity-card p{font-size:var(--text-sm);line-height:1.6;margin:10px 0 15px}.tiny-track i{background:#7e9b77}.safe-note{font-size:var(--text-xs);color:var(--muted);line-height:1.8}
.device{background:#f1f0e8;border-radius:32px 32px 66px 32px;border:1px solid #fff;box-shadow:inset 4px 4px 4px #fff,inset -6px -8px 3px #c7c9bc,0 8px 0 #adb5a6,0 24px 28px #344a3430,0 50px 80px -45px #1b312a80;padding:22px 26px 20px;position:relative}.device-top{display:flex;justify-content:space-between;align-items:center;font-size:var(--text-xs);letter-spacing:.12em;margin-bottom:18px;color:#5d7168}.device-top b{font-weight:900}.power{display:flex;align-items:center;gap:5px;font-size:var(--text-xs)}.power i{background:#9fbf70;box-shadow:0 0 5px #7b9e65;width:6px;height:6px;border-radius:50%}.screen-bezel{background:#253b35;padding:14px 15px 11px;border-radius:12px 12px 28px 12px;box-shadow:inset 0 3px 5px #12261f,0 2px 0 #fff8}.screen-top,.screen-bottom{display:flex;justify-content:space-between;align-items:center;color:#c0d0bc;font-size:var(--text-xs);letter-spacing:.035em;min-height:25px}.screen-top{margin-bottom:6px}.screen-top button{background:none;border:0;color:#acbcaa;font-size:var(--text-xs);padding:0;min-height:30px}.screen-wrap{position:relative;aspect-ratio:1;background:#1d3935;box-shadow:0 0 0 3px #182b25}.screen-wrap canvas{display:block;width:100%;height:100%;image-rendering:pixelated;cursor:pointer}.screen-bottom{margin-top:8px}.loading{position:absolute;inset:0;display:grid;place-items:center;color:#d8e7b6;background:#203b30;font-size:var(--text-sm)}.readout{min-height:63px;display:flex;align-items:start;gap:9px;margin:15px 0 7px;font-size:var(--text-sm);line-height:1.45}.status-dot{flex:none;width:6px;height:6px;border-radius:50%;background:#8b9c81;margin-top:6px}.device-controls{display:flex;align-items:center;justify-content:space-between;margin:0 5px 10px}.dpad{width:106px;height:106px;position:relative;filter:drop-shadow(0 4px 0 #34473b);background:#d9ddd0;border-radius:50%;box-shadow:inset 0 3px 4px #b7bfae}.dpad button{position:absolute;background:#50745c;color:#b4c4a9;border:0;width:36px;height:36px;padding:0;font-size:var(--text-sm)}.dpad .up{top:0;left:35px;border-radius:5px 5px 0 0}.dpad .down{bottom:0;left:35px;border-radius:0 0 5px 5px}.dpad .left{left:0;top:35px;border-radius:5px 0 0 5px}.dpad .right{right:0;top:35px;border-radius:0 5px 5px 0}.dpad span{position:absolute;left:35px;top:35px;background:#50745c;width:36px;height:36px}.dpad span::after{content:"";position:absolute;inset:8px;border-radius:50%;box-shadow:inset 0 2px 4px #344e3d}.dpad button:active{background:#3f5f4a}.main-buttons{display:flex;gap:18px;transform:rotate(-13deg);padding:9px 0 20px}.round-button{border:0;background:none;padding:0;display:flex;flex-direction:column;align-items:center;gap:9px}.round-button b{display:grid;place-items:center;width:57px;height:57px;border-radius:50%;background:#c66546;color:#f9dfbf;box-shadow:inset 2px 2px 3px #df956f,inset -3px -3px 1px #aa4c34,0 5px 0 #873c2d,0 8px 4px #33453130;font-size:23px;font-weight:700}.round-button.feed b{background:#486650;box-shadow:inset 2px 2px 3px #718772,inset -3px -3px 1px #385440,0 5px 0 #2e4636,0 8px 4px #33453130;color:#dfebce}.round-button span{font-size:var(--text-xs);letter-spacing:.15em;font-weight:700}.round-button:active b{transform:translateY(3px);box-shadow:0 2px 0 #624331}.utility-buttons{display:flex;justify-content:center;gap:8px;margin-top:4px}.utility-buttons button{border:none;background:#d4d9cd;box-shadow:inset 0 1px 0 #fff8,0 3px 0 #b1b9a9;border-radius:20px;padding:10px 10px;min-height:44px;font-size:var(--text-xs);letter-spacing:.05em;font-weight:700}.utility-buttons button:hover{background:#c7d2bf}.device-foot{display:flex;align-items:center;justify-content:space-between;margin:23px 8px 3px;font-size:var(--text-xs);color:#6b7b6a}.device-foot b{color:#b97748;margin:0 3px}.speaker{display:flex;gap:5px;transform:rotate(-25deg)}.speaker i{height:25px;width:4px;background:#a8b3a0;border-radius:5px;box-shadow:inset 1px 1px 1px #7c8c77}
.field-notes{padding-top:34px}.notes-top{display:flex;justify-content:space-between;gap:10px;align-items:center}.notes-top .eyebrow{letter-spacing:.06em}.live-dot{font-size:var(--text-xs);color:#57705a}.live-dot::before{content:"";display:inline-block;width:5px;height:5px;background:#5f8d62;border-radius:50%;margin-right:5px}.tabs{display:flex;gap:14px;border-bottom:1px solid #24433325;margin-top:17px}.tabs button{background:none;border:0;padding:13px 0;min-height:44px;color:#718173;font-size:var(--text-sm);border-bottom:2px solid transparent}.tabs .selected{border-bottom-color:var(--ink);color:var(--ink);font-weight:700}.panel{min-height:440px;padding-top:22px}.panel h3{font-size:var(--text-lg);margin-bottom:9px}.panel p{font-size:var(--text-sm);line-height:1.6}.journal{display:flex;flex-direction:column;gap:0;max-height:478px;overflow:auto;padding-right:8px}.entry{padding:0 0 20px 21px;position:relative;border-left:1px solid #acbda5;margin-left:3px}.entry::before{content:"";position:absolute;top:5px;left:-3px;width:5px;height:5px;background:#879e7d;border-radius:50%}.entry:first-child::before{background:var(--orange);box-shadow:0 0 0 4px #dcdbb9}.entry time{display:block;font-size:var(--text-xs);color:#76846f;margin-bottom:5px}.entry p{font-size:var(--text-sm);line-height:1.55}.entry:last-child{border-left:0}.save-line{border-top:1px solid #24433320;padding-top:16px;display:flex;justify-content:space-between;gap:6px;align-items:center;font-size:var(--text-xs);color:#5d725e}.save-line button{font-size:var(--text-xs);background:none;border:0;min-height:44px;white-space:nowrap}.place{width:100%;border:1px solid #38534025;background:#f1f3e9;border-radius:8px;display:flex;align-items:center;text-align:left;gap:12px;padding:8px;margin:10px 0;min-height:64px}.place.selected{background:#dce6d0;border-color:#729469}.place img{width:46px;height:46px;image-rendering:pixelated;border-radius:4px}.place b{font-size:var(--text-sm);display:block}.place small{display:block;font-size:var(--text-xs);color:var(--muted);margin-top:3px}.bag-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.bag-item{padding:17px;background:#f2f4e9;border:1px solid #3853401a;border-radius:8px}.bag-item b{display:block;font-size:28px;margin-bottom:4px}.bag-item span{font-size:var(--text-xs);color:var(--muted)}.primary,.secondary{min-height:44px;border-radius:5px;font-size:var(--text-sm);padding:11px 15px;border:0;font-weight:700}.primary{background:#476c55;color:#fff}.secondary{background:#d4ddcb}.panel .primary,.panel .secondary{width:100%;margin:7px 0}.setting{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:16px 0;border-bottom:1px solid #24433320}.setting b{font-size:var(--text-sm)}.setting p{font-size:var(--text-xs);color:var(--muted);margin-top:5px}.setting select{max-width:100px;background:var(--paper);border:1px solid #889b81;padding:8px;font-size:var(--text-xs)}.small-link{font-size:var(--text-xs)}.hint{background:#f1f3e7;padding:14px;border-radius:6px;margin-bottom:15px;font-size:var(--text-sm);line-height:1.5}.toast{color:#ab4d30}.sound-on{color:#ecd58f!important}footer{display:flex;max-width:1190px;margin:0 auto;padding:0 20px 30px;justify-content:space-between;gap:12px;font-size:var(--text-xs);color:#6b7d69}dialog{border:1px solid #fff;border-radius:20px;padding:36px;background:#f4f5eb;color:var(--ink);max-width:420px;width:calc(100% - 32px);box-shadow:0 30px 90px #0b221b66}dialog h2{font-size:var(--text-xl);margin:12px 0}dialog>p{line-height:1.7;font-size:var(--text-sm)}dialog .primary{margin-top:22px;width:100%}.close{position:absolute;right:14px;top:10px;border:0;background:none;font-size:26px;width:44px;height:44px}#recap-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}#recap-stats div{padding:13px;background:#e2e9d7;border-radius:7px;font-size:var(--text-xs)}#recap-stats b{display:block;font-size:24px}
.toy-buttons{display:flex;gap:5px}.toy-buttons .secondary{padding:10px 7px;font-size:var(--text-xs)}
@media(min-width:1121px){.masthead{padding:22px 32px 18px}.layout{grid-template-columns:230px 400px 282px;margin-top:24px;gap:38px}.device{padding:19px 22px 17px}.device .readout{min-height:49px;margin:12px 0 5px}.device-foot{margin-top:15px}.device .device-top{margin-bottom:14px}.profile,.field-notes{padding-top:25px}.device .device-controls{margin-bottom:5px}.screen-bezel{padding:12px 13px 10px}}
@media(max-width:1120px){.layout{grid-template-columns:200px 416px;gap:30px}.field-notes{grid-column:1/3;padding:20px 0}.panel{min-height:200px}.journal{max-height:280px}.field-notes .notes-top{max-width:none}.profile{padding-top:24px}.masthead{padding-top:24px}footer{max-width:700px}}
@media(max-width:700px){.masthead{padding:22px 20px 16px;align-items:start}.masthead h1{font-size:25px}.masthead .eyebrow{font-size:11px;letter-spacing:.08em}.masthead button{max-width:100px;font-size:var(--text-xs);text-align:right}.layout{display:flex;flex-direction:column;padding:0 14px;margin:24px auto 30px;gap:25px;max-width:440px}.device{order:0;width:100%;padding:19px 19px 19px;border-radius:27px 27px 60px 27px}.profile{order:1;width:100%;padding:12px 9px}.field-notes{order:2;width:100%;padding:5px 9px}.device-top{letter-spacing:.06em}.screen-bezel{padding:11px 10px 9px}.screen-top,.screen-bottom{font-size:11px;letter-spacing:0}.screen-top button{font-size:11px}.readout{font-size:var(--text-sm);min-height:65px}.utility-buttons{gap:6px}.utility-buttons button{padding:8px 9px;font-size:11px}.device-foot{font-size:11px}.device-controls{margin-left:4px;margin-right:4px}.needs{grid-template-columns:1fr 1fr}.safe-note{display:none}.profile h2{font-size:32px}.level{margin-top:20px}.activity-card{padding-bottom:0}.panel{min-height:250px}footer{flex-direction:column;align-items:center;text-align:center;line-height:1.5}.round-button b{width:53px;height:53px}.main-buttons{gap:15px}.device-top,.power{font-size:11px}}
