*{margin:0;padding:0;box-sizing:border-box}body{font-family:Figtree,system-ui,-apple-system,sans-serif;background:#fffcfa;color:#2d2926;line-height:1.6;-webkit-font-smoothing:antialiased}.dashboard-container{max-width:1400px;margin:0 auto;padding:24px}.card{background:#fff;border-radius:16px;border:1px solid #eee9e4;box-shadow:0 1px 3px #0000000f;transition:all .2s ease;overflow:hidden}.card:hover{box-shadow:0 4px 6px -1px #00000014;border-color:#ddd6cf}.header{background:#fff;border-radius:16px;border:1px solid #eee9e4;padding:32px;margin-bottom:24px;text-align:center;box-shadow:0 1px 3px #0000000f}.header h1{font-family:Bricolage Grotesque,system-ui,sans-serif;font-size:2.25rem;font-weight:700;color:#2d2926;margin-bottom:8px;letter-spacing:-.025em}.header .subtitle{color:#6b6560;font-size:1.125rem;font-weight:400}.metric-card{padding:24px;position:relative}.metric-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#e04b2a,#c83a1a);border-radius:16px 16px 0 0}.metric-value{font-size:2rem;font-weight:700;color:#2d2926;line-height:1}.metric-label{font-size:.875rem;font-weight:600;color:#6b6560;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.section{margin-bottom:32px}.section-title{font-family:Bricolage Grotesque,system-ui,sans-serif;font-size:1.5rem;font-weight:700;color:#2d2926;margin-bottom:16px;letter-spacing:-.025em}.status-badge{display:inline-block;padding:4px 12px;border-radius:8px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.status-badge.success{background:#dcfce7;color:#166534}.status-badge.warning{background:#fef3c7;color:#92400e}.status-badge.danger{background:#fee2e2;color:#991b1b}.interactive{transition:all .2s ease;cursor:pointer}.interactive:hover{transform:translateY(-1px);box-shadow:0 4px 6px -1px #00000014}.interactive:focus{outline:2px solid #e04b2a;outline-offset:2px}@media(max-width:768px){.dashboard-container{padding:16px}.header h1{font-size:1.875rem}}.text-center{text-align:center}.text-right{text-align:right}.mb-0{margin-bottom:0}.mb-1{margin-bottom:8px}.mb-2{margin-bottom:16px}.mb-3{margin-bottom:24px}.mb-4{margin-bottom:32px}.mt-0{margin-top:0}.mt-1{margin-top:8px}.mt-2{margin-top:16px}.mt-3{margin-top:24px}.mt-4{margin-top:32px}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-medium{font-weight:500}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}body{background:#fffcfa;min-height:100vh;touch-action:pan-y}.page-layout{position:relative;max-width:1200px;margin:0 auto;padding:0 1rem;padding-right:50px}.dashboard-container{touch-action:pan-y;max-width:680px;margin:0 auto}.editorial-sidebar{width:260px;position:fixed;right:max(1.5rem,calc((100vw - 1200px)/2 + 1rem));top:1.5rem;max-height:calc(100vh - 3rem);overflow-y:auto;padding:1.5rem 0}.editorial-section{margin-bottom:1.75rem;padding-bottom:1.75rem;border-bottom:1px solid #eee9e4}.editorial-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.editorial-section h2{font-family:Bricolage Grotesque,system-ui,sans-serif;font-size:1rem;font-weight:600;color:#2d2926;margin-bottom:.625rem}.editorial-section p{font-family:Figtree,system-ui,sans-serif;font-size:.875rem;font-weight:300;color:#5c554f;line-height:1.7;margin-bottom:.75rem}.editorial-section p:last-child{margin-bottom:0}.editorial-section strong{color:#2d2926;font-weight:500}button,input,select,textarea{touch-action:manipulation}.card{box-shadow:0 2px 8px #0000000a;transition:all .3s;overflow:visible}.card:hover{box-shadow:0 6px 16px #0000000f}.size-toggle{display:flex;gap:.5rem;margin-top:.5rem}.size-button{flex:1;padding:.75rem 1rem;border:2px solid #eee9e4;background:#fff;color:#6b6560;font-family:Bricolage Grotesque,system-ui,sans-serif;font-weight:600;font-size:.875rem;border-radius:12px;cursor:pointer;transition:all .2s}.size-button:hover{border-color:#ddd6cf;background:#fffaf7}.size-button.active{border-color:#e04b2a;background:#e04b2a;color:#fff}.pizza-type-row{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem .75rem;padding:1rem;background:#fff;border:1px solid #eee9e4;border-radius:14px;margin-bottom:.75rem;transition:all .2s}.pizza-type-row:hover{border-color:#ddd6cf;box-shadow:0 2px 6px #0000000a}.pizza-type-name{font-family:Bricolage Grotesque,system-ui,sans-serif;font-weight:600;color:#2d2926;min-width:80px;font-size:.9375rem}.pizza-type-percentage{flex:1;display:flex;align-items:center;gap:.5rem}.percentage-input{width:60px;padding:.375rem .5rem;border:2px solid #eee9e4;border-radius:10px;font-size:.875rem;font-weight:600;text-align:center;transition:all .2s}.percentage-input:focus{outline:none;border-color:#e04b2a;box-shadow:0 0 0 3px #e04b2a1a}.percentage-slider{flex:1;min-width:0;-webkit-appearance:none;appearance:none;height:8px;border-radius:4px;background:linear-gradient(to right,#fef0ec,#e04b2a);outline:none;opacity:.7;transition:opacity .2s}.percentage-slider:hover{opacity:1}.percentage-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#fff;border:3px solid #e04b2a;cursor:pointer;box-shadow:0 2px 4px #0000001a;transition:all .2s}.percentage-slider::-webkit-slider-thumb:hover{transform:scale(1.1);box-shadow:0 3px 6px #00000026}.percentage-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#fff;border:3px solid #e04b2a;cursor:pointer;box-shadow:0 2px 4px #0000001a;transition:all .2s}.percentage-slider::-moz-range-thumb:hover{transform:scale(1.1);box-shadow:0 3px 6px #00000026}.pizza-count{text-align:right;font-family:Bricolage Grotesque,system-ui,sans-serif;font-weight:700;color:#e04b2a;font-size:1.25rem;padding:.375rem .625rem;background:#fef0ec;border-radius:10px;white-space:nowrap;flex-shrink:0}.remove-type-btn{padding:.5rem .75rem;background:#fee2e2;color:#dc2626;border:none;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:600;transition:all .2s}.remove-type-btn:hover{background:#fecaca}.add-type-btn{width:100%;padding:1rem;background:#fff;color:#e04b2a;border:2px dashed #f5c4b5;border-radius:14px;cursor:pointer;font-family:Bricolage Grotesque,system-ui,sans-serif;font-weight:600;font-size:.95rem;transition:all .2s}.add-type-btn:hover{background:#fff8f6;border-color:#e04b2a;border-style:solid;transform:translateY(-1px);box-shadow:0 4px 6px #e04b2a14}.input-group{margin-bottom:1.25rem}.input-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1rem}.input-row>div{display:flex;align-items:center;gap:1rem}.input-label{font-size:.875rem;font-weight:600;color:#6b6560;text-transform:uppercase;letter-spacing:.025em;white-space:nowrap;min-width:fit-content}.input-label-block{display:block;font-size:.875rem;font-weight:600;color:#6b6560;text-transform:uppercase;letter-spacing:.025em;margin-bottom:.5rem}.input-field{width:100%;padding:.75rem;border:1px solid #eee9e4;border-radius:10px;font-size:1rem;font-weight:500}.input-field:focus{outline:none;border-color:#e04b2a;box-shadow:0 0 0 3px #e04b2a1a}.metric-value{font-family:Bricolage Grotesque,system-ui,sans-serif;font-size:3rem;font-weight:800;color:#e04b2a;line-height:1;margin-bottom:.5rem}.metric-label{color:#6b6560;font-weight:600;text-transform:uppercase;letter-spacing:.05em;font-size:.875rem}.type-summary{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:1.25rem;padding-top:1.25rem;border-top:2px dashed #f5c4b5}.type-summary-item{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:#6b6560;font-weight:500}.type-summary-count{font-family:Bricolage Grotesque,system-ui,sans-serif;font-weight:700;color:#e04b2a;font-size:.875rem}.pro-tip-card{background:#fff8f0;border:2px solid #f5d5a0;border-radius:16px;padding:1.5rem}.pro-tip-title{font-family:Bricolage Grotesque,system-ui,sans-serif;font-weight:700;color:#92400e;margin-bottom:.5rem;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;display:flex;align-items:center;gap:.5rem}.pro-tip-title:before{content:"\1f4a1";font-size:1.25rem}.pro-tip-text{color:#78350f;line-height:1.6;font-weight:400}.auto-badge{display:inline-block;padding:.375rem 1rem;background:#fef0ec;color:#c83a1a;border-radius:8px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;border:1px solid #f5c4b5}.make-auto-btn{padding:.25rem .625rem;background:#fff;color:#6b6560;border:1px solid #eee9e4;border-radius:8px;cursor:pointer;font-size:.75rem;font-weight:600;transition:all .2s;white-space:nowrap}.make-auto-btn:hover{background:#fffaf7;border-color:#e04b2a;color:#e04b2a}.name-input{padding:.5rem;border:1px solid #eee9e4;border-radius:8px;font-weight:600;color:#2d2926;min-width:80px;max-width:120px}.name-input:focus{outline:none;border-color:#e04b2a}.tooltip-container{position:relative;display:inline-block;margin-left:.5rem}.tooltip-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:#e04b2a;color:#fff;border-radius:50%;font-size:.75rem;font-weight:700;cursor:help;transition:all .2s}.tooltip-icon:hover{background:#c83a1a;transform:scale(1.1)}.tooltip-text{visibility:hidden;opacity:0;position:absolute;z-index:9999;left:calc(100% + .5rem);top:50%;transform:translateY(-50%);background:#2d2926;color:#fff;padding:.75rem 1rem;border-radius:12px;font-size:.875rem;line-height:1.5;white-space:normal;width:320px;box-shadow:0 10px 25px #0003;transition:opacity .2s,visibility .2s;font-weight:400;text-transform:none;letter-spacing:normal}.tooltip-text:after{content:"";position:absolute;right:100%;top:50%;margin-top:-5px;border-width:5px;border-style:solid;border-color:transparent #2d2926 transparent transparent}.tooltip-container:hover .tooltip-text{visibility:visible;opacity:1}.reset-btn{padding:.5rem 1rem;background:#fff;color:#6b6560;border:1px solid #eee9e4;border-radius:10px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem}.reset-btn:hover{background:#fffaf7;border-color:#ddd6cf;color:#2d2926}.header-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.header-actions h1{margin:0;color:#e04b2a;-webkit-text-fill-color:#e04b2a}.header{margin-bottom:2rem}.subtitle{color:#6b6560;font-size:1rem}@media(max-width:1200px){.editorial-sidebar{display:none}.page-layout{padding-right:1rem}}@media(max-width:768px){.input-row{grid-template-columns:1fr;gap:.75rem}.header{padding:1.25rem;margin-bottom:1rem}.header h1{font-size:1.5rem}.header .subtitle{font-size:.875rem}.card{padding:1rem!important;margin-bottom:1rem!important}.metric-value{font-size:2.5rem}.metric-label{font-size:.875rem}.pizza-type-row{flex-direction:column;align-items:stretch;gap:.75rem;padding:1rem}.pizza-type-name{min-width:auto}.pizza-type-percentage{width:100%}.pizza-count{text-align:left;font-size:1.25rem}.type-summary{gap:.75rem;font-size:.75rem}.type-summary-item{font-size:.75rem}.size-button{font-size:.8125rem;padding:.75rem;min-height:44px}.size-button small{font-size:.6875rem}.input-label,.input-label-block{font-size:.8125rem}.input-field{font-size:1rem;padding:.75rem;min-height:44px}.input-row>div{flex-direction:column;align-items:flex-start;gap:.375rem}.reset-btn{font-size:.8125rem;padding:.625rem 1rem;min-height:44px}.header-actions{flex-direction:column;align-items:center;gap:.5rem}.header-actions h1{width:100%;text-align:center}.header-actions .reset-btn{align-self:center}.remove-type-btn{min-height:44px;padding:.625rem 1rem}.make-auto-btn{min-height:44px;padding:.5rem .75rem}.add-type-btn{min-height:44px}.percentage-input{min-height:44px;padding:.5rem}.percentage-slider{height:10px}.percentage-slider::-webkit-slider-thumb{width:28px;height:28px}.percentage-slider::-moz-range-thumb{width:28px;height:28px}.tooltip-text{position:absolute;width:280px;max-width:calc(100vw - 2rem);font-size:.8rem;padding:.625rem .875rem;left:50%!important;right:auto!important;top:auto!important;bottom:calc(100% + .5rem)!important;transform:translate(-50%)!important}.tooltip-text:after{inset:100% auto auto 50%;margin-left:-5px;margin-top:0;border-color:#2d2926 transparent transparent transparent}.tooltip-icon{width:20px;height:20px;font-size:.75rem;position:relative}.tooltip-icon:before{content:"";position:absolute;inset:-12px}.card,.input-group{overflow:visible!important}.pro-tip-card{padding:1rem}}
