/* User Go 2026-10-06: narrower, main rule view without scrolling. */
body{width:min(100%,360px);height:min(780px,calc(100dvh - 28px));grid-template-rows:34px 52px minmax(0,1fr) 59px 22px;min-height:0;border-radius:38px;clip-path:inset(0 round 38px)}
.phone-status{padding-inline:20px;font-size:11px}.phone-status .island{height:22px;top:4px;width:94px;left:calc(50% - 47px)}.phone-status svg{width:38px}
.app-header{height:52px;padding:5px 19px!important}.app-header h1{font-size:15px!important}.app-icon{width:23px!important;height:23px!important}.brand-note{font-size:8px}
.panel-body{padding:8px 18px 10px!important}h3{font-size:25px;margin:8px 0 8px}.eyebrow{font-size:8px;margin:4px 0 7px}.welcome-copy{font-size:11px;margin-bottom:13px}#family>p.muted{margin-bottom:10px;font-size:9px}
.child{min-height:82px;padding:16px 81px 16px 57px;margin:8px 0;border-radius:17px;font-size:13px}.kid-avatar{width:31px;height:31px;left:13px;top:24px;border-radius:11px;font-size:16px}.kid-budget{right:13px;top:19px}.kid-budget strong{font-size:24px}.kid-budget>span{margin-top:4px;font-size:7px}.child small{font-size:9px;margin-top:6px}#add{margin:5px 0;padding:9px;min-height:40px}.connection-note{margin:11px 0;font-size:10px}
#rules h3{margin:8px 0 13px}.checkline{padding:8px 10px;font-size:10px;min-height:36px;margin-bottom:9px}.rule-section{margin:7px 0;border-radius:13px}.rule-section>summary{min-height:49px;padding:10px 12px;font-size:12px}.rule-section>summary strong{font-size:11px}
.section-label,#rule-form fieldset>strong{margin:13px 0 7px;font-size:10px}.weekday-picker{margin:6px 0 13px;gap:4px}.weekday-picker label{height:36px;font-size:10px;border-radius:10px}.warning-switches{padding-inline:12px;border-radius:13px;margin:6px 0}.warning-switches label{min-height:35px;padding:7px 0;font-size:11px}.warning-switches input{width:32px;height:19px;min-height:19px}.warning-switches input:before{width:13px;height:13px;top:3px}.warning-switches input:checked:before{transform:translateX(13px)}
#rule-form .primary{min-height:43px;margin-top:11px;font-size:12px;border-radius:12px}.summary{font-size:9px;margin:6px 0 4px;padding:3px 0}.summary small{font-size:8px}.summary svg{width:18px}#feedback{margin:5px 0;font-size:10px}
.phone-nav{padding:4px 12px 3px}.phone-nav button{font-size:8px;gap:3px;min-height:44px}.phone-nav button svg{width:20px;height:20px}.app-footer{padding:1px 4px 9px!important}.app-footer .credit{font-size:6px}.app-footer:after{height:3px;bottom:3px;width:88px;left:calc(50% - 44px)}
.time-ring{width:186px;height:186px;margin:13px auto 15px}#simulation .time-ring .budget{top:44px;font-size:52px}.time-ring .budget small{font-size:10px!important;margin-top:9px}.ring-caption{bottom:30px;font-size:8px}#simulation>h3{font-size:25px}#simulation>.welcome-copy{margin-bottom:11px}#simulation .row{margin:9px 0}#simulation>.row:first-of-type{padding:8px}#simulation .row input,#simulation .row select{min-height:36px;font-size:11px}#simulation .row>label{font-size:10px}#simulation #use{min-height:40px}#simulation .row>button{min-height:35px;font-size:10px}.sim-app{padding:8px 0;font-size:10px}.sim-app span{font-size:9px}#sim-status{font-size:11px;margin:8px 0}#simulation>p.muted{font-size:8px;line-height:1.4}
@media(max-width:480px){body{width:100%;height:100dvh;clip-path:inset(0);border-radius:0}}@media(max-height:700px){body{height:calc(100dvh - 12px)}.app-header{height:46px}body{grid-template-rows:29px 46px minmax(0,1fr) 55px 20px}.panel-body{padding-top:5px!important}#rules h3{font-size:22px;margin-bottom:9px}.rule-section>summary{min-height:44px}.section-label,#rule-form fieldset>strong{margin-top:10px}.warning-switches label{min-height:32px}h3{font-size:22px}}@media(max-height:700px) and (max-width:480px){body{height:100dvh}}
