:root{color:#2d211c;background:#f4ede4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;background:#f4ede4}button,input,select{font:inherit}button,select,input{min-height:44px;border-radius:12px}button{cursor:pointer}button:disabled{cursor:default;opacity:.52}input,select{width:100%;border:1px solid #e5d6c9;background:#fffdf9;color:#2d211c;padding:10px 12px}input:focus-visible,select:focus-visible,button:focus-visible{outline:3px solid #e2efe7;outline-offset:2px}label{display:grid;gap:7px;color:#4c3b33;font-weight:650}fieldset{border:0;padding:0;margin:16px 0 0}legend{font-weight:750;margin-bottom:10px}h1,h2,h3{color:#2d211c}h1{font-size:clamp(2rem,11vw,3.2rem);line-height:.98;margin:5px 0 0;letter-spacing:-.04em}h2{font-size:1.15rem;margin:0}h3{font-size:1rem;margin:0}small,.empty-copy,.quiet-status{color:#806c61}.page{max-width:780px;margin:0 auto;padding:18px 14px 104px}.app-header{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:18px}.brand-heading{margin:0;font-size:inherit;line-height:inherit}.brand-home{display:grid;width:auto;min-height:0;padding:0;border:0;background:transparent;text-align:left;color:inherit}.eyebrow{color:#806c61;font-size:.78rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.brand-heading-text{color:#2d211c;font-size:clamp(2rem,11vw,3.2rem);font-weight:700;line-height:.98;margin-top:5px;letter-spacing:-.04em}.header-action,.text-action,.reset-action{border:0;background:transparent;color:#8f523f;font-weight:750;padding:8px 2px}.header-action{width:auto;min-width:104px;text-align:right}.surface,.settings-group{background:#fffaf4;border:1px solid #e5d6c9;border-radius:20px;padding:17px;margin:12px 0;box-shadow:0 8px 28px #4e352a0a}.loading-state{text-align:center;color:#806c61;padding:32px 18px}.section-heading,.mold-card-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-heading h2,.section-heading h3{min-width:0}.primary,.secondary,.picker-item{width:100%;border:1px solid transparent;padding:10px 14px;font-weight:760}.primary{background:#a96550;color:#fffdf9}.primary:hover{background:#8f523f}.secondary{background:#f2dfd6;border-color:#e5c8b9;color:#70402f}.compact{width:auto;min-width:124px;padding-inline:12px}.mix-field{padding-block:15px}.selected-molds{min-height:154px}.mold-card{background:#fffdf9;border:1px solid #e5d6c9;border-radius:16px;padding:14px;margin-top:13px}.mold-card-heading p{margin:4px 0 0;color:#806c61;font-size:.86rem}.mold-card-heading .text-action{width:auto}.mold-card-summary{min-width:0;display:flex;align-items:center;gap:11px}.mold-card-summary>div{min-width:0}.mold-thumbnail{width:58px;height:58px;flex:0 0 58px;border-radius:13px;border:1px solid #e5d6c9;background:#f4ede4;object-fit:contain}.mold-thumbnail.fallback{display:grid;place-items:center;color:#806c61;font-weight:800}.parts-tree{position:relative;margin-top:8px;padding-left:15px}.parts-tree:before{content:"";position:absolute;left:2px;top:8px;bottom:8px;width:2px;background:#e5d6c9}.part-row{display:grid;gap:10px;padding:11px 0;border-top:1px solid #eee2d7}.part-row:first-child{border-top:0}.part-row>div:first-child{display:grid;gap:3px}.part-row.excluded{opacity:.58}.quantity-control{display:grid;grid-template-columns:44px minmax(56px,72px) 44px;gap:7px;align-items:center;justify-content:end}.quantity-control button{border:1px solid #e5d6c9;background:#f2dfd6;color:#70402f;font-size:1.25rem;font-weight:800;padding:0}.quantity-control input{text-align:center;padding-inline:3px}.picker label{margin-top:14px}.picker-list{display:grid;gap:8px;margin-top:12px}.picker-item{display:flex;align-items:center;justify-content:flex-start;gap:12px;text-align:left;background:#fffdf9;border-color:#e5d6c9;color:#2d211c}.picker-item .mold-thumbnail{width:52px;height:52px;flex-basis:52px}.picker-item-copy{min-width:0;display:grid;gap:4px}.picker-item-copy>span{font-weight:760}.picker h3{margin-top:18px}.calculation-loading{color:#806c61;text-align:center}.result-card{background:#faedcf;border:1px solid #ead5a6;border-radius:22px;padding:19px;margin:14px 0}.result-totals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:15px 0}.result-totals div{background:#fffdf9b8;border-radius:14px;padding:12px}.result-totals dt{color:#806c61;font-size:.8rem}.result-totals dd{margin:3px 0 0;font-size:1.25rem;font-weight:850}.ingredient-list{list-style:none;padding:0;margin:10px 0 17px}.ingredient-list li{display:flex;justify-content:space-between;gap:14px;padding:8px 0;border-bottom:1px solid rgba(143,82,63,.14)}.reset-action{display:block;margin:2px auto}.reset-message{width:fit-content;margin:6px auto;padding:7px 12px;border-radius:999px;background:#e2efe7;color:#426252}.notice{padding:12px 14px;border-radius:14px}.error{background:#fff1ee;color:#8f3f35;border:1px solid #efc8c1}.safe,.quiet-status{background:#e2efe7;color:#426252}.quiet-status{padding:9px 11px;border-radius:12px}.volume-fields{display:grid;gap:15px}.free-form-fields{display:grid;gap:16px}.field-group{display:grid;gap:7px}.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}.mode-actions,.editor-mode-actions{display:flex;flex-wrap:wrap;gap:8px}.mode-actions .secondary,.editor-mode-actions .secondary{width:auto;flex:1 1 150px}.secondary.active{background:#a96550;border-color:#8f523f;color:#fffdf9}.mixture-options{display:grid;gap:12px;padding-top:14px;border-top:1px solid #e5d6c9}.paired-fields{display:grid;gap:11px}.check-row{display:flex;align-items:center;gap:9px}.check-row input{width:22px;min-height:22px;accent-color:#a96550}.field-help{margin:-5px 0 0;color:#806c61;font-size:.88rem;line-height:1.45}.customize-action{margin-top:12px}.settings-panel{display:grid;gap:4px}.anonymous-settings{text-align:center;padding:34px 20px}.anonymous-settings p{color:#806c61;line-height:1.55}.account-mark{width:46px;height:46px;display:grid;place-items:center;margin:0 auto 14px;border-radius:50%;background:#e2efe7;color:#6f947f}.settings-group>h2{margin-bottom:12px}.settings-list{list-style:none;margin:0;padding:0}.settings-list li{display:grid;gap:10px;padding:13px 0;border-top:1px solid #e5d6c9}.settings-list li>div:first-child{display:grid;gap:3px}.inline-actions{display:flex;flex-wrap:wrap;gap:12px}.inline-actions .text-action{width:auto;min-height:36px;padding:2px 0}.settings-form,.baseline-presets{display:grid;gap:12px;margin-top:20px;padding-top:18px;border-top:1px solid #e5d6c9}.part-editor,.component-editor{display:grid;gap:10px;background:#fffdf9;padding:12px;border:1px solid #e5d6c9;border-radius:14px;margin-bottom:9px}.part-editor .text-action,.component-editor .text-action{width:fit-content}.bottom-nav{position:fixed;z-index:20;left:50%;bottom:max(10px,env(safe-area-inset-bottom));transform:translate(-50%);width:min(calc(100% - 20px),520px);display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:6px;border:1px solid #e5d6c9;border-radius:20px;background:#fffdf9;box-shadow:0 12px 34px #452d2324}.bottom-nav button{display:grid;place-items:center;gap:2px;border:0;background:transparent;color:#806c61;font-size:.76rem;font-weight:750;padding:5px 2px}.bottom-nav button span{font-size:1.1rem}.bottom-nav button[aria-current=page]{background:#f2dfd6;color:#70402f}@media(max-width:419px){.app-header{display:grid;gap:8px}.header-action{min-width:0;text-align:left}}@media(min-width:520px){.page{padding-inline:22px;padding-top:28px}.part-row,.settings-list li{grid-template-columns:minmax(0,1fr) auto;align-items:center}.inline-actions{justify-content:flex-end}.part-editor{grid-template-columns:1.2fr 1fr .8fr;align-items:end}.component-editor{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.volume-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.volume-fields>.mode-actions,.volume-fields>fieldset,.volume-fields>.field-help,.volume-fields>.mixture-options,.volume-fields>.customize-action{grid-column:1 / -1}.paired-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:760px){.surface,.settings-group{padding:22px}.page{padding-top:42px}}
