:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}body{margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.stash-heading-row{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px;display:flex}.stash-heading-row .form-heading{margin-bottom:0}.stash-controls{background:#fffffff0;border:1px solid #e0e9e6;border-radius:18px;grid-template-columns:2fr 1fr 1fr 1fr;gap:12px;margin-bottom:28px;padding:18px;display:grid}.stash-controls input,.stash-controls select{color:#30463f;width:100%;min-height:44px;font:inherit;background:#fbfdfc;border:1px solid #d8e3df;border-radius:10px;outline:none;padding:10px 12px}.stash-controls input:focus,.stash-controls select:focus{border-color:#7da89c;box-shadow:0 0 0 3px #7da89c24}.stash-money{grid-template-columns:repeat(3,1fr);gap:18px;margin:-26px 0 48px;display:grid}.stash-money>div{background:#ffffffdb;border:1px solid #e1ebe7;border-radius:16px;justify-content:space-between;align-items:center;padding:18px 22px;display:flex}.stash-money span{color:#71827d;font-size:13px;font-weight:700}.stash-money strong{color:#426c61;font-size:18px}.card-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:18px;display:grid}.edit-button,.delete-button{cursor:pointer;border-radius:10px;width:100%;margin:0;padding:10px;font-weight:700}.edit-button{color:#426c61;background:#edf5f2;border:1px solid #cbdcd6}.edit-button:hover{background:#e1efea}.delete-button{color:#a85d5d;background:snow;border:1px solid #e7c9c9}@media (width<=900px){.stash-controls{grid-template-columns:1fr 1fr}.stash-money{grid-template-columns:1fr}}@media (width<=650px){.stash-heading-row{flex-direction:column;align-items:stretch}.stash-controls{grid-template-columns:1fr}}.photo-upload-box{background:#fafcfb;border:1px dashed #cbdcd6;border-radius:14px;align-items:center;gap:18px;padding:18px;display:flex}.photo-preview{object-fit:cover;border:1px solid #dce7e3;border-radius:14px;width:120px;height:120px}.photo-empty{color:#71827d;background:#edf5f2;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:120px;height:120px;font-size:28px;display:flex}.photo-empty span{font-size:12px}.yarn-card-photo{object-fit:cover;background:#f7faf8;border:1px solid #dce7e3;border-radius:16px;width:72px;height:72px}*{box-sizing:border-box}:root{color:#263a35;background:#f7faf8;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{min-width:320px;min-height:100vh;margin:0}button{font:inherit}.app{background:radial-gradient(circle at 10% 5%,#c2e1d86b,#0000 25%),radial-gradient(circle at 92% 10%,#cddcef73,#0000 27%),#f7faf8;min-height:100vh}.header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe0;border-bottom:1px solid #e2ebe7;justify-content:space-between;align-items:center;height:92px;padding:0 7%;display:flex}.brand{align-items:center;gap:14px;display:flex}.logo{background:#dcece6;border-radius:16px;place-items:center;width:52px;height:52px;font-size:27px;display:grid}.brand h1{letter-spacing:-.8px;color:#426c61;margin:0;font-size:27px;line-height:1.1}.brand p{color:#82938e;margin:5px 0 0;font-size:13px}.dashboard{width:min(1120px,88%);margin:0 auto;padding:64px 0 80px}.welcome{justify-content:space-between;align-items:center;gap:40px;margin-bottom:42px;display:flex}.eyebrow{letter-spacing:2px;color:#739c91;margin-bottom:10px;font-size:11px;font-weight:800;display:inline-block}.welcome h2{letter-spacing:-1.7px;color:#293e38;margin:0;font-size:clamp(32px,4vw,48px);line-height:1.08}.welcome p{color:#71827d;max-width:620px;margin:14px 0 0;font-size:16px;line-height:1.6}.add-button{color:#fff;cursor:pointer;background:#52796f;border:0;border-radius:14px;flex-shrink:0;padding:15px 22px;font-weight:700;transition:all .2s;box-shadow:0 9px 22px #52796f33}.add-button:hover{background:#456b61;transform:translateY(-2px);box-shadow:0 12px 26px #52796f45}.stats{grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:50px;display:grid}.stat-card{background:#ffffffeb;border:1px solid #e1ebe7;border-radius:20px;align-items:center;gap:18px;min-height:118px;padding:24px;display:flex;box-shadow:0 8px 28px #3a574e0f}.stat-card>span{background:#edf5f2;border-radius:15px;flex-shrink:0;place-items:center;width:52px;height:52px;font-size:25px;display:grid}.stat-card strong{color:#355b51;font-size:30px;line-height:1;display:block}.stat-card p{color:#84938f;margin:7px 0 0;font-size:13px}.actions h3{color:#344c45;margin:0 0 18px;font-size:20px}.action-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.action-card{text-align:left;color:#30463f;cursor:pointer;background:#fffffff0;border:1px solid #e0e9e6;border-radius:20px;flex-direction:column;align-items:flex-start;min-height:190px;padding:26px 22px;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;box-shadow:0 8px 28px #3a574e0d}.action-card:hover{border-color:#bfd6cf;transform:translateY(-4px);box-shadow:0 15px 34px #3a574e1c}.action-card>span{background:#e9f3ef;border-radius:15px;place-items:center;width:50px;height:50px;margin-bottom:22px;font-size:24px;display:grid}.action-card strong{margin-bottom:7px;font-size:16px}.action-card small{color:#84938f;font-size:13px;line-height:1.45}@media (width<=850px){.action-grid{grid-template-columns:repeat(2,1fr)}.welcome{flex-direction:column;align-items:flex-start}}@media (width<=600px){.header{padding:0 20px}.brand p{display:none}.dashboard{width:calc(100% - 36px);padding-top:40px}.stats,.action-grid{grid-template-columns:1fr}.add-button{width:100%}}.back-button{color:#52796f;cursor:pointer;background:0 0;border:0;margin-bottom:32px;padding:0;font-size:14px;font-weight:700}.back-button:hover{color:#355b51}.form-heading{margin-bottom:32px}.form-heading h2{letter-spacing:-1px;color:#293e38;margin:0;font-size:38px}.form-heading p{color:#71827d;max-width:680px;margin:10px 0 0;line-height:1.6}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.form-grid label{color:#425a53;flex-direction:column;gap:8px;font-size:13px;font-weight:700;display:flex}.form-grid input,.form-grid select,.form-grid textarea{color:#2e433d;width:100%;font:inherit;background:#fbfdfc;border:1px solid #d8e3df;border-radius:11px;outline:none;padding:13px 14px;font-weight:400;transition:border-color .2s,box-shadow .2s}.form-grid input::placeholder,.form-grid textarea::placeholder{color:#a2afab}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:#7da89c;box-shadow:0 0 0 3px #7da89c24}.form-grid textarea{resize:vertical;min-height:110px}.full-width{grid-column:1/-1}.barcode-row{gap:10px;display:flex}.barcode-row input{flex:1}.scan-button{color:#426c61;cursor:pointer;background:#edf5f2;border:1px solid #cbdcd6;border-radius:11px;flex-shrink:0;padding:0 18px;font-weight:700}.scan-button:hover{background:#e1efea}.form-actions{border-top:1px solid #e8efec;justify-content:flex-end;gap:12px;margin-top:30px;padding-top:25px;display:flex}.cancel-button,.save-button{cursor:pointer;border-radius:12px;padding:13px 20px;font-weight:700}.cancel-button{color:#60736d;background:#fff;border:1px solid #d5e1dd}.save-button{color:#fff;background:#52796f;border:1px solid #52796f;box-shadow:0 7px 18px #52796f2e}.save-button:hover{background:#456b61}@media (width<=700px){.form-grid{grid-template-columns:1fr}.full-width{grid-column:auto}.barcode-row{flex-direction:column}.scan-button{min-height:46px}.form-actions{flex-direction:column-reverse}.cancel-button,.save-button{width:100%}}.price-row{color:#60736d;border-top:1px solid #e5ece9;justify-content:space-between;gap:12px;margin-top:18px;padding-top:16px;font-size:13px;font-weight:700;display:flex}.delete-button{color:#a85d5d;cursor:pointer;background:snow;border:1px solid #e7c9c9;border-radius:10px;width:100%;margin-top:18px;padding:10px;font-weight:700}.delete-button:hover{background:#fff0f0}.empty-icon{font-size:42px}.stashbound-card{position:relative;overflow:hidden;background:radial-gradient(circle at 10% 12%,#91aaa2 0 2px,#0000 3px),radial-gradient(circle at 90% 18%,#a8c4d5 0 2px,#0000 3px),radial-gradient(circle at 92% 80%,#91aaa2 0 2px,#0000 3px),radial-gradient(circle at 8% 88%,#a8c4d5 0 2px,#0000 3px),linear-gradient(145deg,#fff 0%,#f5faf8 100%)!important;border:2px solid #9fbfb5!important;box-shadow:0 10px 28px #3d5b5221,inset 0 0 0 5px #e1efea8c!important}.stashbound-card:before{content:"✦";color:#7fa89c;z-index:1;pointer-events:none;font-size:20px;position:absolute;top:14px;right:17px}.stashbound-card:after{content:"✧  ✦  ✧";color:#91aec0;letter-spacing:3px;opacity:.75;z-index:1;pointer-events:none;font-size:11px;position:absolute;bottom:10px;left:16px}.action-card{border:2px solid #b7d8d2;box-shadow:0 8px 22px #466e6714}.auth-page{background:#f5faf8;place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{text-align:center;background:#fff;border:1px solid #d7e4df;border-radius:22px;width:min(440px,100%);padding:34px;box-shadow:0 18px 45px #3d5d541f}.auth-logo{margin-bottom:8px;font-size:42px}.auth-card h1{margin:8px 0;line-height:1.15}.auth-card>p{color:#70807b;line-height:1.5}.auth-form{text-align:left;gap:16px;margin-top:24px;display:grid}.auth-form label{gap:7px;font-size:13px;font-weight:800;display:grid}.auth-form input{background:#fbfdfc;border:1px solid #ceddd8;border-radius:12px;width:100%;padding:13px 14px}.auth-submit{width:100%;margin-top:4px}.auth-message{color:#557068;background:#f3f8f6;border-radius:10px;padding:10px 12px;font-size:12px;line-height:1.45}.auth-switch{color:#52796f;cursor:pointer;background:0 0;border:0;margin-top:18px;font-size:12px;font-weight:800}.header-user{align-items:center;gap:10px;display:flex}.sign-out-button{color:#61766f;cursor:pointer;background:#fff;border:1px solid #d2dfdb;border-radius:9px;padding:8px 11px;font-size:11px;font-weight:800}.auth-forgot{color:#71827d;cursor:pointer;background:0 0;border:0;margin-top:12px;font-size:12px;font-weight:700}.auth-forgot:hover{color:#52796f;text-decoration:underline}.profile-photo-field{margin-bottom:6px}.profile-photo-picker{align-items:center;gap:18px;margin-top:8px;display:flex}.profile-photo-preview{color:#52796f;background:#f1f7f5;border:2px solid #d7e5e0;border-radius:50%;flex-shrink:0;place-items:center;width:84px;height:84px;font-size:28px;font-weight:800;display:grid;overflow:hidden}.profile-photo-preview img{object-fit:cover;width:100%;height:100%}.profile-photo-controls{flex:1}.profile-photo-controls input[type=file]{width:100%}.profile-photo-controls small{color:#788a84;margin-top:6px;font-size:11px;display:block}.profile-password-card{max-width:900px;margin:22px auto 0;padding:24px}.profile-password-form{max-width:520px;margin:18px auto 0}.profile{color:#52796f;background:#dfeee9;border-radius:50%;place-items:center;width:38px;min-width:38px;height:38px;min-height:38px;font-weight:800;line-height:1;display:grid;overflow:hidden}.profile-avatar-image{object-fit:cover;object-position:center;border-radius:50%;width:100%;height:100%;display:block}.profile-button{box-shadow:none;color:#526c65;cursor:pointer;background:0 0;border:0;outline:none;align-items:center;gap:7px;padding:0;font-size:12px;font-weight:800;display:flex}.profile-button:hover,.profile-button:focus,.profile-button:active{box-shadow:none;color:#31584f;background:0 0;border:0;outline:none}.profile-button span{white-space:nowrap}.auth-preferences{flex-wrap:wrap;justify-content:space-between;gap:14px;display:flex}.auth-check-option{color:#687c76;cursor:pointer;align-items:center;grid-template-columns:none!important;gap:7px!important;font-size:11px!important;font-weight:700!important;display:flex!important}.auth-check-option input{accent-color:#5d887d;width:16px;height:16px;margin:0}.onboarding-card{margin:22px 0;padding:24px}.onboarding-heading{margin-bottom:18px}.onboarding-heading h3{margin:4px 0 6px;font-size:22px}.onboarding-heading p{color:#71827d;margin:0;font-size:13px}.onboarding-steps{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.onboarding-step{color:#405b54;text-align:left;cursor:pointer;background:#f8fbfa;border:1px solid #dce8e4;border-radius:14px;grid-template-columns:36px 1fr auto;align-items:center;gap:12px;padding:14px;display:grid}.onboarding-step:hover{background:#f0f7f5;border-color:#bfd6cf}.onboarding-step-number{background:#dfeee9;border-radius:50%;place-items:center;width:32px;height:32px;font-size:12px;font-weight:900;display:grid}.onboarding-step strong,.onboarding-step small{display:block}.onboarding-step strong{font-size:13px}.onboarding-step small{color:#7b8d87;margin-top:3px;font-size:11px}.onboarding-step b{font-size:18px}@media (width<=700px){.onboarding-steps{grid-template-columns:1fr}}.onboarding-step-done{background:#eef7f3;border-color:#bdd9cf}.onboarding-step-done .onboarding-step-number{color:#426c61;background:#cfe7de}.onboarding-step-done b{color:#5d887d;font-size:11px}.onboarding-dismiss{color:#7a8d87;cursor:pointer;background:0 0;border:0;margin:18px auto 0;padding:7px 12px;font-size:11px;font-weight:700;display:block}.onboarding-dismiss:hover{color:#52796f;text-decoration:underline}.dashboard-glance{margin:24px 0}.dashboard-glance-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.dashboard-glance-card{color:#405b54;cursor:pointer;background:#fff;border:1px solid #dce8e4;border-radius:16px;flex-direction:column;align-items:center;gap:4px;padding:18px 14px;display:flex}.dashboard-glance-card:hover{background:#f5faf8;border-color:#bfd6cf;transform:translateY(-1px)}.dashboard-glance-card>span{font-size:20px}.dashboard-glance-card strong{margin-top:3px;font-size:25px;line-height:1}.dashboard-glance-card small{color:#788a84;margin-top:3px;font-size:11px;font-weight:700}@media (width<=700px){.dashboard-glance-grid{grid-template-columns:repeat(2,1fr)}}.dashboard-glance-low-stock{background:#fffaf2;border-color:#ead9bb}.dashboard-glance-low-stock:hover{background:#fff6e8;border-color:#ddc49b}.stat-card-button{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer}.stat-card-button:hover{transform:translateY(-2px);border-color:#86aea2!important;box-shadow:0 14px 34px #3d5b5229,inset 0 0 0 5px #e1efea8c!important}.dashboard-detail-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#23342f61;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.dashboard-detail-modal{width:min(650px,100%);max-height:78vh;padding:28px;overflow:hidden}.dashboard-detail-close{z-index:3;color:#52796f;cursor:pointer;background:#edf5f2;border:0;border-radius:50%;width:34px;height:34px;font-size:22px;line-height:1;position:absolute;top:14px;right:16px}.dashboard-detail-heading{margin-bottom:18px}.dashboard-detail-heading h3{color:#304b43;margin:0;font-size:25px}.dashboard-detail-list{gap:8px;max-height:48vh;padding-right:5px;display:grid;overflow-y:auto}.dashboard-detail-row{background:#ffffffd1;border:1px solid #dce8e4;border-radius:12px;justify-content:space-between;align-items:center;gap:20px;padding:12px 14px;display:flex}.dashboard-detail-row>span{color:#526a63;min-width:0;font-size:13px;font-weight:700}.dashboard-detail-row small{color:#899994;margin-top:3px;font-size:10px;font-weight:600;display:block}.dashboard-detail-row strong{color:#355f54;text-align:right;flex-shrink:0;font-size:12px}.dashboard-detail-empty{text-align:center;color:#81918c;padding:30px 10px}.dashboard-detail-browse{color:#426c61;cursor:pointer;background:#edf6f3;border:1px solid #b9d4cc;border-radius:11px;margin:20px auto 0;padding:11px 18px;font-size:12px;font-weight:800;display:block}.dashboard-detail-browse:hover{background:#e2f0eb}@media (width<=600px){.dashboard-detail-modal{padding:22px 18px}.dashboard-detail-row{flex-direction:column;align-items:flex-start;gap:5px}.dashboard-detail-row strong{text-align:left}}.account-danger-zone{margin-top:24px;padding:28px;background:linear-gradient(145deg,#fffdfd 0%,#fff7f7 100%)!important;border-color:#e5caca!important}.account-danger-zone .form-heading{margin-bottom:18px}.account-danger-zone .eyebrow{color:#a55f5f}.account-danger-zone .form-heading h3{color:#734646;margin:0}.account-danger-zone .form-heading p{color:#886c6c}.account-delete-open-button,.account-delete-confirm-button{color:#9a5555;min-height:42px;font:inherit;cursor:pointer;background:#fff4f4;border:1px solid #d7aaaa;border-radius:12px;padding:10px 16px;font-size:12px;font-weight:800}.account-delete-open-button:hover,.account-delete-confirm-button:hover:not(:disabled){background:#fce9e9}.account-delete-confirm-button{color:#fff;background:#a85d5d;border-color:#a85d5d}.account-delete-confirm-button:hover:not(:disabled){background:#944d4d}.account-delete-confirm-button:disabled{opacity:.55;cursor:not-allowed}.account-delete-confirmation{gap:16px;display:grid}.account-delete-warning{color:#805858;background:snow;border:1px solid #e4c1c1;border-radius:12px;padding:14px 16px}.account-delete-warning strong{color:#7a4040}.account-delete-warning p{margin:6px 0 0;font-size:12px;line-height:1.55}.account-delete-confirmation label{color:#684f4f;flex-direction:column;gap:8px;font-size:13px;font-weight:700;display:flex}.account-delete-confirmation input{color:#4f3d3d;width:100%;max-width:360px;font:inherit;background:#fff;border:1px solid #ddc3c3;border-radius:11px;outline:none;padding:12px 13px}.account-delete-confirmation input:focus{border-color:#bf8181;box-shadow:0 0 0 3px #a85d5d1f}.account-delete-actions{flex-wrap:wrap;gap:10px;display:flex}.account-delete-actions .secondary-button{width:auto}@media (width<=600px){.account-delete-actions{flex-direction:column-reverse}.account-delete-actions button{width:100%}}.password-input-wrap{width:100%;position:relative}.auth-form .password-input-wrap input{padding-right:48px}.password-eye-button{color:#60776f;cursor:pointer;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;width:34px;height:34px;padding:0;font-family:inherit;font-size:16px;line-height:1;transition:background .15s,transform .15s;display:inline-flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.password-eye-button:hover{background:#eaf4f1}.password-eye-button:active{transform:translateY(-50%)scale(.96)}.password-eye-button:focus-visible{outline-offset:1px;outline:2px solid #91b8ad}.account-delete-cancel-button{color:#55736b;min-height:42px;font:inherit;cursor:pointer;background:#f5faf8;border:1px solid #c9d9d4;border-radius:12px;padding:10px 16px;font-size:12px;font-weight:800}.account-delete-cancel-button:hover:not(:disabled){background:#eaf4f1;border-color:#adc9c1}.account-delete-cancel-button:disabled{opacity:.55;cursor:not-allowed}.stashbound-toast-region{z-index:5000;pointer-events:none;gap:10px;width:min(390px,100vw - 32px);display:grid;position:fixed;top:18px;right:18px}.stashbound-toast{color:#3e5e55;pointer-events:auto;background:#fffffffa;border:1px solid #cfe0db;border-radius:15px;grid-template-columns:36px minmax(0,1fr) 30px;align-items:start;gap:11px;padding:13px 13px 13px 14px;animation:.2s both stashbound-toast-in;display:grid;box-shadow:0 14px 35px #3e5c5324,0 3px 10px #3e5c530f}.stashbound-toast-icon{color:#52796f;background:#eaf4f1;border-radius:11px;justify-content:center;align-items:center;width:34px;height:34px;font-size:17px;font-weight:900;display:inline-flex}.stashbound-toast-copy{gap:3px;min-width:0;display:grid}.stashbound-toast-copy strong{color:#2e5148;font-size:12px;font-weight:900}.stashbound-toast-copy span{color:#6c7f79;overflow-wrap:anywhere;font-size:11px;line-height:1.45}.stashbound-toast-close{color:#8a9995;width:28px;height:28px;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;padding:0;font-size:19px;line-height:1;display:inline-flex}.stashbound-toast-close:hover{color:#526d65;background:#eef5f3}.stashbound-toast-success{border-color:#c7ded7}.stashbound-toast-success .stashbound-toast-icon{color:#477568;background:#e7f4ef}.stashbound-toast-error{border-color:#e6c6c6}.stashbound-toast-error .stashbound-toast-icon{color:#a45e5e;background:#fff0f0}.stashbound-toast-info .stashbound-toast-icon{color:#5d7581;background:#eef4f7}.stashbound-toast-leaving{animation:.18s both stashbound-toast-out}@keyframes stashbound-toast-in{0%{opacity:0;transform:translateY(-8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes stashbound-toast-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-6px)scale(.98)}}.stashbound-modal-overlay{z-index:11000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;background:#1f312c61;place-items:center;padding:20px;transition:opacity .16s;display:grid;position:fixed;inset:0}.stashbound-modal-visible{opacity:1}.stashbound-modal-leaving{opacity:0}.stashbound-confirm-modal{text-align:center;background:#fff;border:1px solid #cbded8;border-radius:20px;width:min(440px,100%);padding:26px;transition:transform .16s;transform:translateY(8px)scale(.98);box-shadow:0 24px 70px #20383133,0 4px 14px #20383114}.stashbound-modal-visible .stashbound-confirm-modal{transform:translateY(0)scale(1)}.stashbound-confirm-icon{color:#52796f;background:#eaf4f1;border-radius:14px;justify-content:center;align-items:center;width:46px;height:46px;margin-bottom:13px;font-size:22px;font-weight:900;display:inline-flex}.stashbound-confirm-icon-danger{color:#a25b5b;background:#fff0f0}.stashbound-confirm-modal h3{color:#264e44;margin:0;font-size:19px;font-weight:900}.stashbound-confirm-modal p{color:#71827d;max-width:360px;margin:10px auto 0;font-size:12px;line-height:1.55}.stashbound-confirm-actions{justify-content:center;gap:10px;margin-top:22px;display:flex}.stashbound-confirm-cancel,.stashbound-confirm-button{min-width:125px;min-height:42px;font:inherit;cursor:pointer;border-radius:12px;padding:10px 16px;font-size:12px;font-weight:800}.stashbound-confirm-cancel{color:#55746b;background:#f4f9f7;border:1px solid #c8dad5}.stashbound-confirm-cancel:hover{background:#eaf4f1;border-color:#adc9c1}.stashbound-confirm-button{color:#fff;background:#52796f;border:1px solid #52796f}.stashbound-confirm-button:hover{background:#456b61}.stashbound-confirm-button-danger{background:#aa5d5d;border-color:#aa5d5d}.stashbound-confirm-button-danger:hover{background:#934d4d}@media (width<=520px){.stashbound-toast-region{width:auto;top:12px;left:12px;right:12px}.stashbound-confirm-actions{flex-direction:column-reverse}.stashbound-confirm-actions button{width:100%}}@media (prefers-reduced-motion:reduce){.stashbound-toast,.stashbound-toast-leaving,.stashbound-modal-overlay,.stashbound-confirm-modal{transition:none;animation:none}}@media (width<=520px){.header{gap:10px;height:78px;padding:0 16px}.brand{gap:10px;min-width:0}.logo{border-radius:14px;flex-shrink:0;width:46px;height:46px;font-size:24px}.brand h1{letter-spacing:-.6px;white-space:nowrap;font-size:23px}.brand p{display:none}.header-user{flex-shrink:0;gap:8px}.profile-button span{display:none}.profile-button{gap:0}.profile{width:40px;min-width:40px;height:40px;min-height:40px}.sign-out-button{justify-content:center;align-items:center;width:40px;height:40px;padding:0;font-size:0;line-height:1;display:inline-flex}.sign-out-button:before{content:"↪";font-size:18px;font-weight:900}.photo-upload-box{grid-template-columns:1fr;align-items:stretch;gap:12px;display:grid}.photo-upload-box .photo-preview,.photo-upload-box .photo-empty{justify-self:center}.photo-upload-box input[type=file]{box-sizing:border-box;width:100%;min-width:0;max-width:100%;display:block}.photo-upload-box input[type=file]::file-selector-button{margin-right:8px}.profile-photo-picker{grid-template-columns:1fr;align-items:stretch;gap:14px;display:grid}.profile-photo-preview{margin:0 auto}.profile-photo-controls{width:100%;min-width:0}.profile-photo-controls input[type=file]{box-sizing:border-box;width:100%;min-width:0;max-width:100%;display:block}.profile-photo-controls small{text-align:center}}.stashbound-purchase-modal{width:min(500px,100%)}.stashbound-purchase-field{text-align:left;color:#425f57;gap:7px;margin-top:18px;font-size:12px;font-weight:800;display:grid}.stashbound-purchase-field input{color:#304f46;width:100%;font:inherit;background:#fbfdfc;border:1px solid #cbded8;border-radius:11px;outline:none;padding:12px 13px;font-size:14px}.stashbound-purchase-field input:focus{border-color:#8fb9ae;box-shadow:0 0 0 3px #52796f1c}.stashbound-purchase-field small{color:#7c8d88;font-size:10px;font-weight:600;line-height:1.45}.stashbound-purchase-actions{flex-wrap:wrap}.stashbound-purchase-actions .stashbound-confirm-button{min-width:150px}.stashbound-purchase-actions .stashbound-confirm-button:disabled{opacity:.5;cursor:not-allowed}@media (width<=600px){.stashbound-purchase-actions{grid-template-columns:1fr;display:grid}.stashbound-purchase-actions button{width:100%}}:root{--sb-nav-collapsed:72px;--sb-nav-expanded:218px}.app{padding-left:0}.header{z-index:120;position:relative}.app-sidebar{z-index:110;width:var(--sb-nav-collapsed);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:radial-gradient(circle at 22% 5%,#c6e4db61,#0000 28%),#fafdfcf5;border:1px solid #d4e5df;border-radius:22px;flex-direction:column;height:min(620px,100vh - 142px);min-height:470px;padding:10px;transition:width .2s,box-shadow .2s;display:flex;position:fixed;top:118px;left:14px;overflow:visible;box-shadow:0 14px 34px #3d5b521a,inset 0 0 0 3px #eef7f4b8}.app-sidebar-expanded{width:var(--sb-nav-expanded);box-shadow:0 16px 40px #3d5b5224,inset 0 0 0 3px #eef7f4b8}.sidebar-heading{border-bottom:1px solid #e1ece8;align-items:center;gap:10px;height:54px;min-height:54px;margin-bottom:10px;padding-bottom:10px;display:flex;overflow:hidden}.sidebar-star{color:#52796f;background:#e3f0ec;border-radius:14px;place-items:center;width:42px;min-width:42px;height:42px;font-size:18px;display:grid}.sidebar-heading-copy{min-width:130px;display:none}.app-sidebar-expanded .sidebar-heading-copy{display:block}.sidebar-heading strong,.sidebar-heading small{white-space:nowrap;display:block}.sidebar-heading strong{color:#355b51;font-size:13px;font-weight:800}.sidebar-heading small{color:#8a9a95;margin-top:2px;font-size:9px}.sidebar-expand-button{z-index:4;color:#52796f;cursor:pointer;background:#fbfdfc;border:1px solid #cbded7;border-left:0;border-radius:0 12px 12px 0;place-items:center;width:30px;height:36px;padding:0;font-size:19px;font-weight:900;line-height:1;display:grid;position:absolute;top:18px;right:-16px;box-shadow:5px 3px 11px #3d5b5217}.sidebar-expand-button:hover{color:#355b51;background:#edf6f2}.sidebar-nav{gap:7px;display:grid}.sidebar-nav-item{color:#60766f;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:14px;align-items:center;width:100%;height:48px;padding:0;font-size:12px;font-weight:800;transition:background .16s,border-color .16s,color .16s,transform .16s;display:flex;overflow:hidden}.sidebar-nav-label{display:none}.sidebar-nav-icon{color:#668f84;background:#edf6f2d1;border-radius:13px;place-items:center;width:42px;min-width:42px;height:42px;margin:0 auto;font-size:18px;line-height:1;display:grid}.sidebar-nav-item:hover{color:#355b51;background:#edf6f2;border-color:#d5e5df}.sidebar-nav-item:hover .sidebar-nav-icon{background:#deeee8}.sidebar-nav-item-active{color:#355b51;background:#dfeee9;border-color:#b9d7cd;box-shadow:inset 3px 0 #6f9b8f,0 4px 12px #52796f12}.sidebar-nav-item-active .sidebar-nav-icon{color:#426c61;background:#d1e7df}.app-sidebar-expanded .sidebar-nav-item{gap:11px;padding:0 9px}.app-sidebar-expanded .sidebar-nav-icon{border-radius:11px;width:34px;min-width:34px;height:34px;margin:0;font-size:16px}.app-sidebar-expanded .sidebar-nav-label{white-space:nowrap;display:inline}.app-sidebar-expanded .sidebar-nav-item:hover{transform:translate(2px)}.sidebar-footer{border-top:1px solid #e1ece8;margin-top:auto;padding-top:10px}.sidebar-menu-button,.sidebar-scrim{display:none}@media (width<=900px){.header{padding-left:18px}.sidebar-menu-button{color:#426c61;cursor:pointer;background:#f4f9f7;border:1px solid #d3e2dd;border-radius:12px;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:22px;font-weight:800;display:grid}.app-sidebar,.app-sidebar-expanded{z-index:12050;border-radius:22px;width:min(280px,100vw - 36px);height:auto;min-height:0;padding:14px;transition:transform .2s;top:12px;bottom:12px;left:12px;transform:translate(calc(-100% - 28px));box-shadow:14px 0 34px #263b342e}.app-sidebar-open{transform:translate(0)}.sidebar-heading-copy,.app-sidebar-expanded .sidebar-heading-copy{display:block}.sidebar-expand-button{display:none}.sidebar-nav-item,.app-sidebar-expanded .sidebar-nav-item{gap:11px;height:50px;padding:0 9px}.sidebar-nav-icon,.app-sidebar-expanded .sidebar-nav-icon{border-radius:11px;width:34px;min-width:34px;height:34px;margin:0;font-size:16px}.sidebar-nav-label,.app-sidebar-expanded .sidebar-nav-label{white-space:nowrap;display:inline}.sidebar-scrim{z-index:12000;opacity:0;pointer-events:none;background:#23342f4d;border:0;padding:0;transition:opacity .2s;display:block;position:fixed;inset:0}.sidebar-scrim-open{opacity:1;pointer-events:auto}}@media (width<=600px){.header{gap:10px;height:76px;padding:0 14px}.header .logo{border-radius:13px;width:42px;height:42px;font-size:22px}.header .brand h1{font-size:21px}.header-user{margin-left:auto}.header-user .profile-button span,.header-user .sign-out-button{display:none}}@media (height<=650px) and (width>=901px){.app-sidebar{height:calc(100vh - 110px);min-height:0;top:94px}.sidebar-nav{gap:4px}.sidebar-nav-item{height:43px}.sidebar-nav-icon{width:38px;min-width:38px;height:38px}}.project-status-quick{color:#789087;align-items:center;gap:7px;margin:0 0 6px;font-size:11px;font-weight:800;display:inline-flex}.project-status-quick>span{text-transform:uppercase;letter-spacing:.08em}.project-status-quick select{color:#355b51;width:auto;min-width:138px;font:inherit;cursor:pointer;background:#f2f8f6;border:1px solid #c9ddd6;border-radius:999px;margin:0;padding:7px 30px 7px 11px;font-size:12px;font-weight:900}.project-status-quick select:hover,.project-status-quick select:focus{border-color:#8fb8ab;outline:none;box-shadow:0 0 0 3px #8fb8ab21}.project-yarn-quick-log{gap:7px;margin-top:7px;display:grid}.project-used-row{color:#647b74;justify-content:center;align-items:center;gap:11px;font-size:12px;display:flex}.project-used-row strong{color:#355b51;font-size:14px}.project-used-stepper{gap:5px;display:inline-flex}.project-used-stepper button{color:#426c61;width:30px;height:30px;font:inherit;cursor:pointer;background:#eef7f4;border:1px solid #bdd8cf;border-radius:9px;place-items:center;padding:0;font-size:18px;font-weight:900;line-height:1;display:grid}.project-used-stepper button:hover:not(:disabled){background:#dfeee9;border-color:#8fb8ab}.project-used-stepper button:disabled{opacity:.38;cursor:not-allowed}.project-yarn-difference{border-radius:999px;width:fit-content;margin:0 auto;padding:4px 8px;font-size:10px;font-weight:800;display:block}.project-yarn-under{color:#668f84;background:#edf6f2}.project-yarn-over{color:#9a6b35;background:#fff4e8}@media (width<=600px){.project-status-quick{flex-wrap:wrap;justify-content:center}.project-status-quick select{min-width:150px}.project-used-row{gap:9px}.project-used-stepper button{width:34px;height:34px}}.brand-byline{color:#78978d;letter-spacing:.035em;margin:2px 0 0;font-size:12px;font-style:italic;font-weight:700}.dashboard-glance .section-heading{text-align:center;justify-content:center;margin-bottom:18px;display:flex}.dashboard-glance-title{color:#5f8a7e;letter-spacing:.04em;margin:0;font-size:clamp(17px,1.8vw,21px);font-weight:850;line-height:1.2}@media (width<=600px){.brand-byline{font-size:10px}.dashboard-glance .section-heading{margin-bottom:14px}.dashboard-glance-title{letter-spacing:.025em;font-size:16px}}.form-heading .hero-copy-narrow{text-align:center;width:min(100%,680px);margin-left:auto;margin-right:auto}@media (width<=600px){.form-heading .hero-copy-narrow{width:92%}}.header .brand h1{color:#37695d;letter-spacing:-.025em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:29px;font-weight:600;line-height:1}.header .brand .brand-byline{color:#76958c;letter-spacing:0;white-space:nowrap;margin:4px 0 0;font-family:Segoe Script,Brush Script MT,Lucida Handwriting,cursive;font-size:10px;font-style:normal;font-weight:400;line-height:1}@media (width<=600px){.header .brand h1{font-size:22px}.header .brand .brand-byline{margin-top:3px;font-size:8px}}.sidebar-nav-item .yarncipher-button-icon{flex:none;width:22px;height:22px}.action-card .yarncipher-button-icon{width:1em;height:1em;display:block}.sidebar{height:100vh;max-height:100vh}.sidebar-nav{scrollbar-width:thin;min-height:0;overflow-y:auto}.sidebar-footer{flex-shrink:0;margin-top:auto}:root{--yc-sage:#52796f;--yc-sage-dark:#456b61;--yc-sage-text:#426c61;--yc-border:#cbded8;--yc-border-strong:#b7d1ca;--yc-surface:#fff;--yc-surface-soft:#f8fbfa;--yc-surface-sage:#edf5f2;--yc-text:#2e433d;--yc-muted:#71827d;--yc-danger:#a85d5d;--yc-danger-border:#e7c9c9;--yc-danger-bg:snow;--yc-radius-control:11px;--yc-radius-button:12px;--yc-focus:0 0 0 3px #7da89c24}:where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]):not([type=file]),select,textarea){border:1px solid var(--yc-border);border-radius:var(--yc-radius-control);background:var(--yc-surface);width:100%;min-width:0;color:var(--yc-text);font:inherit;outline:none;padding:12px 13px;transition:border-color .18s,box-shadow .18s,background .18s}:where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]):not([type=file]),select,textarea):focus{box-shadow:var(--yc-focus);border-color:#7da89c}:where(input,textarea)::placeholder{color:#a2afab}:where(textarea){resize:vertical}:where(input[type=file]){border:1px solid var(--yc-border);border-radius:var(--yc-radius-control);background:var(--yc-surface-soft);color:#66756f;width:100%;min-width:0;font:inherit;padding:8px;font-size:12px}:where(input[type=file])::file-selector-button{color:#4d6d64;font:inherit;cursor:pointer;background:#eaf4f1;border:1px solid #b9d4cd;border-radius:9px;margin-right:10px;padding:9px 14px;font-size:12px;font-weight:800;transition:background .18s,border-color .18s}:where(input[type=file])::file-selector-button:hover{background:#dcece7;border-color:#8fb9ae}:where(button){font:inherit;border-radius:var(--yc-radius-button)}:where(button:not([class]),button[class=""],button.secondary-button,button.cancel-button){border:1px solid var(--yc-border-strong);background:var(--yc-surface-sage);min-height:42px;color:var(--yc-sage-text);cursor:pointer;padding:10px 16px;font-weight:800;transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}:where(button:not([class]),button[class=""],button.secondary-button,button.cancel-button):hover:not(:disabled){background:#e1efea;border-color:#9fc2b8;box-shadow:0 5px 14px #3d5b521a}:where(button.primary-button,button.save-button,button.add-button){border:1px solid var(--yc-sage);background:var(--yc-sage);color:#fff;cursor:pointer;min-height:42px;padding:10px 16px;font-weight:800;transition:background .18s,border-color .18s,box-shadow .18s,transform .18s;box-shadow:0 7px 18px #52796f2e}:where(button.primary-button,button.save-button,button.add-button):hover:not(:disabled){background:var(--yc-sage-dark);border-color:var(--yc-sage-dark);box-shadow:0 9px 20px #52796f38}:where(button.delete-button,button.danger-button,button.destructive-button){border:1px solid var(--yc-danger-border);background:var(--yc-danger-bg);color:var(--yc-danger);cursor:pointer;font-weight:800}:where(button.delete-button,button.danger-button,button.destructive-button):hover:not(:disabled){background:#fff0f0}:where(button):focus-visible{outline-offset:2px;outline:2px solid #7da89c}:where(button):disabled{opacity:.55;cursor:not-allowed}.secondary-button{border:1px solid var(--yc-border-strong);border-radius:var(--yc-radius-button);background:var(--yc-surface-sage);min-height:42px;color:var(--yc-sage-text);font:inherit;cursor:pointer;padding:10px 16px;font-weight:800;transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}.secondary-button:hover:not(:disabled){background:#e1efea;border-color:#9fc2b8}.primary-button{border:1px solid var(--yc-sage);border-radius:var(--yc-radius-button);background:var(--yc-sage);color:#fff;min-height:42px;font:inherit;cursor:pointer;padding:10px 16px;font-weight:800;box-shadow:0 7px 18px #52796f2e}.primary-button:hover:not(:disabled){background:var(--yc-sage-dark);border-color:var(--yc-sage-dark)}.sidebar-sign-out{color:#8a5f5f}.sidebar-sign-out .sidebar-nav-icon{color:#9a6262;background:#fff4f4}.sidebar-sign-out:hover{color:#784b4b;background:#fff5f5;border-color:#ead3d3}@media (width>=901px){.sidebar-sign-out{display:none}}.auth-logo img{object-fit:contain;width:72px;height:72px;display:block}.logo img{object-fit:contain;width:42px;height:42px;display:block}.auth-card-recovery h1{text-wrap:balance;margin-bottom:.75rem;font-size:clamp(2rem,5vw,3rem);line-height:1.08}.auth-card-recovery>p{margin-top:0}.shopping-hero{justify-content:space-between;align-items:flex-start;gap:28px;margin-bottom:28px;display:flex}.shopping-hero h2{color:#293e38;letter-spacing:-1.3px;margin:0;font-size:clamp(32px,4vw,46px)}.shopping-hero p{color:#71827d;max-width:650px;margin:12px 0 0;line-height:1.6}.shopping-add-button{color:#fff;cursor:pointer;background:#52796f;border:0;border-radius:14px;flex-shrink:0;padding:14px 20px;font-weight:800;box-shadow:0 9px 22px #52796f2e}.shopping-add-button:hover{background:#456b61;transform:translateY(-1px)}.shopping-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:28px;display:grid}.shopping-summary>div{background:linear-gradient(145deg,#fff,#f6faf8);border:1px solid #dce8e4;border-radius:18px;padding:20px 22px;box-shadow:0 8px 24px #3d5b520f}.shopping-summary span{color:#80918c;letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px;font-size:11px;font-weight:800;display:block}.shopping-summary strong{color:#355b51;font-size:26px;display:block}.shopping-form-card{background:#fffffff7;border:1px solid #d9e7e2;border-radius:22px;margin-bottom:30px;padding:28px;box-shadow:0 12px 34px #3d5b5214}.shopping-form-card .section-heading h3{color:#304b43;margin:0 0 18px;font-size:24px}.shopping-list-section,.shopping-purchased-section{margin-top:26px}.shopping-list-section .section-heading h3{color:#304b43;margin:0 0 14px;font-size:22px}.shopping-items-grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:18px;display:grid}.shopping-item-card{background:radial-gradient(circle at 92% 12%,#b7d8d28c 0 2px,#0000 3px),linear-gradient(145deg,#fff 0%,#f8fbfa 100%);border:1px solid #d7e5e0;border-radius:18px;padding:20px;position:relative;overflow:hidden;box-shadow:0 10px 28px #3d5b5214,inset 0 0 0 4px #eef6f38c}.shopping-item-top{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.shopping-item-top h3{color:#304b43;margin:8px 0 0;font-size:18px;line-height:1.3}.shopping-priority{letter-spacing:.08em;text-transform:uppercase;border-radius:999px;align-items:center;padding:5px 9px;font-size:9px;font-weight:800;display:inline-flex}.shopping-check-button{color:#46756a;cursor:pointer;background:#edf7f4;border:1px solid #bfd9d2;border-radius:11px;flex-shrink:0;padding:9px 11px;font-size:11px;font-weight:800}.shopping-check-button:hover{background:#e1f0eb}.shopping-item-details{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.shopping-item-details span{color:#647872;background:#f0f5f3;border-radius:10px;padding:7px 10px;font-size:11px}.shopping-item-details strong{color:#45685f;margin-right:4px}.shopping-item-notes{color:#6d817b;background:#f7faf9;border-left:3px solid #c6ddd6;border-radius:0 10px 10px 0;margin:15px 0 0;padding:11px 12px;font-size:12px;line-height:1.5}.shopping-delete-button{color:#a85d5d;cursor:pointer;background:snow;border:1px solid #e6caca;border-radius:9px;margin-top:16px;padding:8px 11px;font-size:11px;font-weight:700}.shopping-delete-button:hover{background:#fff1f1}.shopping-purchased-toggle{color:#3f6158;cursor:pointer;background:linear-gradient(135deg,#f8fbfa,#eef6f3);border:1px solid #d7e5e0;border-radius:15px;justify-content:space-between;align-items:center;width:100%;padding:16px 18px;font-weight:800;display:flex}.shopping-purchased-toggle>span:first-child{align-items:center;gap:10px;display:flex}.shopping-purchased-toggle small{color:#52796f;background:#dfeeea;border-radius:999px;place-items:center;min-width:24px;height:24px;font-size:11px;display:grid}.purchased-shopping-grid .shopping-item-card{opacity:.78;background:#f8faf9}.purchased-shopping-grid .shopping-item-top h3{-webkit-text-decoration:line-through #9bada7;text-decoration:line-through #9bada7;text-decoration-thickness:1px}.shopping-list-section .empty-state,.shopping-purchased-section .empty-state{text-align:center;background:#fbfdfc;border:1px dashed #cddfd9;border-radius:18px;padding:38px 24px}.shopping-list-section .empty-state h3{color:#3d5d54;margin:0 0 6px}.shopping-list-section .empty-state p,.shopping-purchased-section .empty-state p{color:#84938f;margin:0}@media (width<=800px){.shopping-hero{flex-direction:column}.shopping-add-button{width:100%}.shopping-summary{grid-template-columns:1fr}}@media (width<=600px){.shopping-form-card{padding:20px}.shopping-item-top{flex-direction:column}.shopping-check-button{width:100%}.shopping-items-grid{grid-template-columns:1fr}}.shopping-form-card .form-actions{border-top:1px solid #e4ece9;justify-content:flex-end;gap:12px;margin-top:28px;padding-top:20px;display:flex}.shopping-form-card .form-actions .secondary-button,.shopping-form-card .form-actions .primary-button{cursor:pointer;border-radius:12px;width:auto;padding:12px 18px;font-size:13px;font-weight:800}.shopping-form-card .form-actions .secondary-button{color:#60766f;background:#fff;border:1px solid #ccdcd7}.shopping-form-card .form-actions .secondary-button:hover{background:#f3f8f6}.shopping-form-card .form-actions .primary-button{color:#fff;background:#52796f;border:1px solid #52796f;box-shadow:0 7px 16px #52796f2e}.shopping-form-card .form-actions .primary-button:hover{background:#456b61;transform:translateY(-1px)}@media (width<=600px){.shopping-form-card .form-actions{flex-direction:column-reverse}.shopping-form-card .form-actions .secondary-button,.shopping-form-card .form-actions .primary-button{width:100%}}.shopping-purchase-check{color:#4d6d64;cursor:pointer;grid-template-columns:20px auto;align-items:center;column-gap:8px;width:fit-content;max-width:none;margin-left:auto;font-size:12px;font-weight:700;line-height:1.2;display:inline-grid}.shopping-purchase-check input{opacity:0;pointer-events:none;position:absolute}.shopping-purchase-box{color:#0000;background:#f8fbfa;border:1px solid #b9d4cd;border-radius:6px;flex:none;place-items:center;width:20px;height:20px;font-size:12px;font-weight:900;display:grid}.shopping-purchase-check:hover .shopping-purchase-box{background:#eef6f3;border-color:#8fb9ae}.shopping-purchase-check>span:last-child{white-space:nowrap}.yarn-shopping-button{color:#456d63;letter-spacing:.01em;cursor:pointer;background:linear-gradient(135deg,#f1f8f6 0%,#e5f1ed 100%);border:1px solid #bcd7d0;border-radius:11px;width:100%;margin-top:14px;padding:10px 14px;font-size:12px;font-weight:800;transition:transform .15s,box-shadow .15s,background .15s;box-shadow:0 4px 10px #52796f14}.yarn-shopping-button:hover{background:linear-gradient(135deg,#e8f4f0 0%,#d9ebe5 100%);transform:translateY(-1px);box-shadow:0 6px 14px #52796f24}.yarn-shopping-button:active{transform:translateY(0);box-shadow:0 3px 7px #52796f1a}.project-shopping-button{color:#456d63;cursor:pointer;background:linear-gradient(135deg,#f1f8f6 0%,#e5f1ed 100%);border:1px solid #bfd8d1;border-radius:10px;justify-content:center;align-items:center;gap:6px;width:fit-content;margin-top:10px;padding:8px 12px;font-size:11px;font-weight:800;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex;box-shadow:0 3px 8px #52796f14}.project-shopping-button:hover{background:linear-gradient(135deg,#e7f3ef 0%,#d9ebe5 100%);border-color:#a9cbc2;transform:translateY(-1px);box-shadow:0 5px 12px #52796f24}.project-shopping-button:active{transform:translateY(0);box-shadow:0 2px 6px #52796f1a}.pattern-shopping-button{color:#456d63;cursor:pointer;background:linear-gradient(135deg,#f1f8f6 0%,#e5f1ed 100%);border:1px solid #bfd8d1;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:9px 13px;font-size:11px;font-weight:800;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex;box-shadow:0 3px 8px #52796f14}.pattern-shopping-button:hover{background:linear-gradient(135deg,#e7f3ef 0%,#d9ebe5 100%);border-color:#a9cbc2;transform:translateY(-1px);box-shadow:0 5px 12px #52796f24}.pattern-shopping-button:active{transform:translateY(0);box-shadow:0 2px 6px #52796f1a}.shopping-source-badge{border-radius:10px;align-items:center;gap:7px;width:fit-content;margin-top:14px;padding:7px 10px;font-size:11px;font-weight:700;display:inline-flex}.shopping-source-project{color:#4f746a;background:#eef7f4;border:1px solid #c8ddd7}.shopping-source-stash{color:#587184;background:#f1f6fa;border:1px solid #d2dfeb}.shopping-source-pattern{color:#6c5a82;background:#f6f2fb;border:1px solid #d8d1e7}.shopping-source-badge{margin-left:auto;margin-right:auto}.shopping-item-notes{width:100%;margin-top:14px}.shopping-delete-button{width:fit-content;margin-top:16px;margin-left:auto;margin-right:auto;display:block}.priority-low{color:#6f8881;background:#eef5f3}.priority-normal{color:#4f756b;background:#e4f1ed}.priority-high{color:#a76b42;background:#fff0e4}.project-yarn-row{background:#f8fbfa;border:1px solid #d8e3df;border-radius:14px;align-items:center;gap:12px;margin-top:12px;padding:12px;display:flex}.project-yarn-photo{object-fit:cover;border-radius:10px;flex-shrink:0;width:64px;height:64px}.project-yarn-placeholder{background:#eef4f2;justify-content:center;align-items:center;font-size:28px;display:flex}.project-yarn-info{flex-direction:column;flex:1;gap:4px;display:flex}.project-yarn-info span{color:#71827d;font-size:13px}.project-yarn-row label{z-index:2;flex:0 0 100px;width:100px;position:relative}.project-yarn-row input{width:100%}.project-yarn-row label input{pointer-events:auto;z-index:3;width:100%;margin-top:6px;display:block;position:relative}.project-yarn-row .delete-button{flex:none;align-self:center;width:auto;min-width:72px;padding:8px 12px;font-size:13px}.project-card-yarns{flex-direction:column;gap:8px;margin:14px 0;display:flex}.project-card-yarn{background:#f8fbfa;border:1px solid #d8e3df;border-radius:12px;flex-direction:column;gap:3px;padding:10px 12px;display:flex}.project-card-yarn span{color:#42534e;font-size:14px;font-weight:600}.project-card-yarn small{color:#71827d;font-size:12px}@media (width<=700px){.project-yarn-row{flex-wrap:wrap}.project-yarn-info{min-width:calc(100% - 80px)}.project-yarn-row label{flex:100px;width:auto}.project-yarn-row .delete-button{margin-left:auto}}.project-card{background:radial-gradient(circle at 12% 10%,#dcece7 0 2px,#0000 3px),radial-gradient(circle at 88% 16%,#c9dce8 0 2px,#0000 3px),radial-gradient(circle at 94% 72%,#dcece7 0 2px,#0000 3px),radial-gradient(circle at 8% 82%,#c9dce8 0 2px,#0000 3px),#fff;border:2px solid #b8d3cb;position:relative;overflow:hidden;box-shadow:0 10px 28px #3d5b521a,inset 0 0 0 4px #eef6f3b3}.project-card:before{content:"✦";color:#91aaa2;font-size:18px;position:absolute;top:12px;right:16px}.project-card:after{content:"✧  ✦";color:#abc1d0;letter-spacing:5px;opacity:.75;font-size:12px;position:absolute;bottom:12px;left:15px}.yarn-card.project-card{position:relative;overflow:hidden;background:radial-gradient(circle at 10% 12%,#91aaa2 0 2px,#0000 3px),radial-gradient(circle at 90% 18%,#a8c4d5 0 2px,#0000 3px),radial-gradient(circle at 92% 80%,#91aaa2 0 2px,#0000 3px),radial-gradient(circle at 8% 88%,#a8c4d5 0 2px,#0000 3px),linear-gradient(145deg,#fff 0%,#f5faf8 100%)!important;border:2px solid #9fbfb5!important;box-shadow:0 10px 28px #3d5b5221,inset 0 0 0 5px #e1efea8c!important}.yarn-card.project-card:before{content:"✦";color:#7fa89c;z-index:2;font-size:20px;position:absolute;top:14px;right:17px}.yarn-card.project-card:after{content:"✧  ✦  ✧";color:#91aec0;letter-spacing:3px;z-index:2;font-size:12px;position:absolute;bottom:12px;left:16px}.project-page-actions{justify-content:center;margin:18px 0 28px;display:flex}.project-sections{flex-direction:column;gap:16px;width:100%;max-width:950px;margin:0 auto;display:flex}.project-section{background:#ffffffbf;border:1px solid #cfe0dc;border-radius:18px;width:100%;overflow:hidden;box-shadow:0 6px 18px #3d5b5212}.project-section-heading{text-align:left;cursor:pointer;color:#294c45;background:linear-gradient(135deg,#f7fbfa 0%,#edf6f3 100%);border:none;justify-content:space-between;align-items:center;width:100%;padding:18px 22px;display:flex}.project-section-heading:hover{background:linear-gradient(135deg,#f2f9f7 0%,#e5f2ee 100%)}.project-section-heading h2{color:#234940;margin:0 0 4px;font-size:20px}.project-section-heading p{color:#718781;margin:0;font-size:13px;font-weight:500}.project-section-count{color:#79958d;font-size:14px;font-weight:600}.project-section-arrow{color:#557b72;background:#e1efeb;border-radius:50%;flex-shrink:0;place-items:center;width:34px;height:34px;margin-left:18px;font-size:12px;display:grid}.projects-grid{border-top:1px solid #deebe7;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px;padding:20px;display:grid}.project-section-empty{text-align:center;color:#879994;grid-column:1/-1;padding:18px;font-size:14px}.finished-makes-gallery{background:linear-gradient(#fbfdfc 0%,#f3f9f7 100%);grid-template-columns:repeat(auto-fill,minmax(270px,1fr))}.project-section-frogged{opacity:.9}.project-section-frogged .project-section-heading{background:#f7f8f7}@media (width<=650px){.project-section-heading{padding:15px 16px}.project-section-heading h2{font-size:17px}.project-section-heading p{font-size:12px}.projects-grid{grid-template-columns:1fr;padding:14px}}.project-page-actions .primary-button{color:#fff;cursor:pointer;background:#568279;border:none;border-radius:14px;padding:14px 24px;font-family:inherit;font-size:15px;font-weight:700;transition:transform .2s,box-shadow .2s,background .2s;box-shadow:0 8px 18px #3d5b5229}.project-page-actions .primary-button:hover{background:#496f67;transform:translateY(-2px);box-shadow:0 10px 22px #3d5b5238}.project-page-actions .primary-button:active{transform:translateY(0)}.project-card:not(.finished-project-card) .project-card-photo{object-fit:cover;border-radius:14px 14px 0 0;width:100%;height:150px}.project-section:not(.project-section-finished) .projects-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.project-section:not(.project-section-finished) .project-card{border-radius:18px;width:100%;max-width:420px;padding:0 0 16px;overflow:hidden}.project-section:not(.project-section-finished) .project-card-top{padding:16px 18px 8px}.project-section:not(.project-section-finished) .project-card>p,.project-section:not(.project-section-finished) .project-card>.project-yarn-list{margin-left:18px;margin-right:18px}.project-section:not(.project-section-finished) .project-card h3{margin:4px 0 8px;font-size:21px}.project-section:not(.project-section-finished) .project-card p{line-height:1.45}.project-section:not(.project-section-finished) .project-card-yarn{border-radius:12px;margin-top:12px;padding:12px 14px}.project-section:not(.project-section-finished) .card-actions{margin-top:10px}.finished-makes-gallery{grid-template-columns:repeat(auto-fill,minmax(400px,1fr));align-items:start;gap:28px;padding:28px}.finished-showcase-card{background:linear-gradient(#fff 0%,#fbfdfc 100%);border:1px solid #c9dfd9;border-radius:24px;width:100%;max-width:420px;transition:transform .22s,box-shadow .22s;overflow:hidden;box-shadow:0 16px 36px #3a5b521f,0 3px 10px #3a5b520d}.finished-showcase-card:hover{transform:translateY(-3px);box-shadow:0 20px 42px #3a5b5229,0 5px 12px #3a5b5212}.finished-showcase-photo-wrap{padding:12px 12px 0;position:relative}.finished-showcase-photo{object-fit:cover;border-radius:18px;width:100%;height:290px;display:block;box-shadow:0 8px 18px #314e461f}.finished-showcase-photo-placeholder{color:#6d9188;background:radial-gradient(circle at 20% 20%,#bfded5b3,#0000 30%),linear-gradient(135deg,#edf7f4,#f8fbfa);border-radius:18px;align-content:center;place-items:center;gap:8px;height:240px;display:grid}.finished-showcase-photo-placeholder span{font-size:36px}.finished-showcase-photo-placeholder small{letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:700}.finished-showcase-badge{white-space:nowrap;color:#3f7166;letter-spacing:.09em;text-transform:uppercase;background:#e8f4f1;border:1px solid #bedbd3;border-radius:999px;padding:8px 16px;font-size:11px;font-weight:800;position:absolute;bottom:-18px;left:50%;transform:translate(-50%);box-shadow:0 5px 12px #41685e1f}.finished-showcase-body{padding:34px 22px 20px}.finished-showcase-heading{border-bottom:1px solid #e3ece9;justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:17px;display:flex}.finished-showcase-kicker{color:#8aa39c;letter-spacing:.16em;margin:0 0 5px;font-size:10px;font-weight:800}.finished-showcase-heading h3{color:#274a42;margin:0;font-size:24px;line-height:1.15}.finished-showcase-date{text-align:center;background:#f0f7f5;border-radius:12px;flex-shrink:0;min-width:92px;padding:9px 11px}.finished-showcase-date small,.finished-showcase-meta small,.finished-showcase-yarn small{color:#8a9d98;letter-spacing:.11em;text-transform:uppercase;font-size:9px;font-weight:800;display:block}.finished-showcase-date strong{color:#496b63;margin-top:3px;font-size:12px;display:block}.finished-showcase-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}.finished-showcase-meta>span{background:#fafcfb;border:1px solid #e0ebe7;border-radius:12px;min-width:0;padding:10px 12px}.finished-showcase-meta strong{overflow-wrap:anywhere;color:#385c53;margin-top:3px;font-size:13px;display:block}.finished-showcase-meta a{color:#477a6e;text-decoration:none}.finished-showcase-meta a:hover{text-decoration:underline}.finished-showcase-yarn{background:linear-gradient(135deg,#eef7f4 0%,#f8fbfa 100%);border:1px solid #cfe3de;border-radius:16px;margin-top:16px;padding:14px 15px}.finished-showcase-yarn-total{align-items:center;gap:11px;display:flex}.finished-showcase-yarn-icon{background:#dfeeea;border-radius:12px;flex-shrink:0;place-items:center;width:38px;height:38px;font-size:19px;display:grid}.finished-showcase-yarn-total strong{color:#315e54;margin-top:2px;font-size:16px;display:block}.finished-showcase-yarn-details{border-top:1px solid #dce9e5;flex-direction:column;gap:4px;margin-top:10px;padding-top:10px;display:flex}.finished-showcase-yarn-details span{color:#6f827d;font-size:12px;line-height:1.4}.finished-showcase-notes{color:#667b75;background:#f7faf9;border-left:3px solid #b9d5ce;border-radius:0 12px 12px 0;margin:16px 0 0;padding:12px 14px;font-size:13px;font-style:italic;line-height:1.5}.finished-showcase-actions{border-top:1px solid #e6eeeb;justify-content:flex-end;gap:8px;margin-top:18px;padding-top:14px;display:flex}.finished-showcase-edit,.finished-showcase-delete{width:auto;font:inherit;cursor:pointer;background:0 0;border-radius:10px;margin:0;padding:8px 13px;font-size:12px;font-weight:700}.finished-showcase-edit{color:#4a7369;border:1px solid #c9ddd7}.finished-showcase-edit:hover{background:#edf6f3}.finished-showcase-delete{color:#a75e5e;border:1px solid #e8cccc}.finished-showcase-delete:hover{background:#fff3f3}@media (width<=650px){.finished-makes-gallery{grid-template-columns:1fr;padding:14px}.finished-showcase-card{max-width:none}.finished-showcase-photo{height:240px}.finished-showcase-heading{flex-direction:column}.finished-showcase-date{text-align:left;width:100%}.finished-showcase-meta{grid-template-columns:1fr}}.finish-project-backdrop{z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1f312c7a;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.finish-project-modal{background:#fff;border:1px solid #d6e5e0;border-radius:24px;width:min(560px,100%);max-height:90vh;padding:28px;overflow-y:auto;box-shadow:0 24px 60px #223a3338,0 6px 18px #223a331a}.finish-project-kicker{color:#789d93;letter-spacing:.16em;margin-bottom:7px;font-size:10px;font-weight:800}.finish-project-modal h2{color:#294b43;margin:0;font-size:26px}.finish-project-modal>p{color:#71837e;margin:9px 0 22px;font-size:14px;line-height:1.5}.finish-project-actions{border-top:1px solid #e6eeeb;justify-content:flex-end;gap:10px;margin-top:24px;padding-top:18px;display:flex}.finish-project-actions .primary-button,.finish-project-actions .secondary-button{cursor:pointer;border-radius:11px;width:auto;padding:11px 17px;font-weight:700}.finish-project-actions .primary-button{color:#fff;background:#52796f;border:1px solid #52796f}.finish-project-actions .secondary-button{color:#60756f;background:#fff;border:1px solid #d4e1dd}@media (width<=600px){.finish-project-modal{padding:22px}.finish-project-actions{flex-direction:column-reverse}.finish-project-actions button{width:100%}}.project-progress-history{border-top:1px solid #e4ece9;margin:16px 18px 4px;padding-top:14px}.project-progress-history-heading{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.project-progress-history-heading strong{color:#46685f;font-size:13px}.project-progress-history-heading span{color:#567b72;background:#e6f1ee;border-radius:999px;place-items:center;min-width:24px;height:24px;font-size:11px;font-weight:800;display:grid}.project-progress-photo-strip{gap:10px;padding-bottom:6px;display:flex;overflow-x:auto}.project-progress-photo-item{flex:0 0 110px;margin:0}.project-progress-photo-item img{object-fit:cover;border:1px solid #d5e4df;border-radius:12px;width:110px;height:110px;display:block}.project-progress-photo-item figcaption{color:#71847e;margin-top:5px;font-size:10px;line-height:1.3}.project-progress-photo-button{cursor:pointer;background:0 0;border:0;border-radius:12px;width:110px;height:110px;padding:0;display:block}.project-progress-photo-button img{object-fit:cover;border-radius:12px;width:110px;height:110px}.project-photo-lightbox-backdrop{z-index:10000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#182622b8;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.project-photo-lightbox{background:#fff;border-radius:22px;width:min(720px,100%);max-height:92vh;position:relative;overflow:hidden;box-shadow:0 30px 70px #0000004d}.project-photo-lightbox>img{object-fit:contain;background:#eef4f2;width:100%;max-height:70vh;display:block}.project-photo-lightbox-close{z-index:2;color:#38554d;cursor:pointer;background:#ffffffeb;border:0;border-radius:50%;width:36px;height:36px;font-size:24px;line-height:1;position:absolute;top:12px;right:12px}.project-photo-lightbox-info{padding:18px 22px 20px}.project-photo-lightbox-info>span{color:#76978f;letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:800}.project-photo-lightbox-info p{color:#344f48;margin:7px 0 4px;font-size:15px}.project-photo-lightbox-info small{color:#8b9b97;font-size:12px}.project-card:before,.project-card:after{pointer-events:none}.project-progress-photo-button{z-index:5;pointer-events:auto;position:relative}.project-progress-photo-button img{pointer-events:none}.project-photo-delete-button{color:#a85d5d;cursor:pointer;background:#fff7f7;border:1px solid #e5bebe;border-radius:9px;width:fit-content;margin-top:14px;padding:8px 12px;font-size:12px;font-weight:700;display:block}.project-photo-delete-button:hover{background:#fceaea}.project-add-progress-photo{color:#46756a;cursor:pointer;background:linear-gradient(135deg,#edf7f4,#f8fbfa);border:1px solid #bfd9d2;border-radius:12px;justify-content:center;align-items:center;margin:14px 18px 2px;padding:10px 15px;font-size:12px;font-weight:800;transition:transform .18s,background .18s,box-shadow .18s;display:inline-flex;box-shadow:0 4px 10px #41675e12}.project-add-progress-photo:hover{background:#e4f2ee;transform:translateY(-1px);box-shadow:0 6px 14px #41675e1f}.finished-showcase-journey{background:#f9fcfb;border:1px solid #d6e7e2;border-radius:16px;margin-top:16px;padding:14px}.finished-showcase-journey-heading{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.finished-showcase-journey-heading small{color:#8aa19b;letter-spacing:.12em;font-size:9px;font-weight:800;display:block}.finished-showcase-journey-heading strong{color:#41665d;margin-top:2px;font-size:13px;display:block}.finished-showcase-journey-heading>span{color:#52796f;background:#e2f0ec;border-radius:999px;place-items:center;min-width:25px;height:25px;font-size:11px;font-weight:800;display:grid}.finished-showcase-journey-strip{gap:9px;padding-bottom:4px;display:flex;overflow-x:auto}.finished-showcase-journey-photo{cursor:pointer;background:0 0;border:1px solid #d1e3de;border-radius:11px;flex:0 0 85px;width:85px;height:85px;padding:0;overflow:hidden}.finished-showcase-journey-photo img{object-fit:cover;width:100%;height:100%;display:block}.progress-photo-picker,.progress-photo-caption{color:#425a53;flex-direction:column;gap:8px;margin-top:16px;font-size:13px;font-weight:700;display:flex}.progress-photo-picker input{background:#f8fbfa;border:1px solid #d7e3df;border-radius:12px;width:100%;padding:12px}.progress-photo-preview{object-fit:cover;border-radius:16px;width:100%;max-height:320px;margin-top:16px;display:block}.progress-photo-caption textarea{color:#30463f;width:100%;font:inherit;resize:vertical;background:#fbfdfc;border:1px solid #d7e3df;border-radius:12px;padding:13px 14px}.progress-photo-caption small{color:#8da09a;font-weight:500}.pattern-yarn-requirements{color:#536b64;background:linear-gradient(135deg,#f4faf8 0%,#fbfdfc 100%);border:1px solid #cfe0dc;border-radius:16px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin:8px 0 16px;padding:16px 18px;display:grid;box-shadow:0 5px 14px #3d5b520f}.pattern-yarn-requirements strong{color:#294c45;grid-column:1/-1;font-size:15px;font-weight:800}.pattern-yarn-requirements span{color:#61756f;background:#ffffffc7;border-radius:11px;min-width:0;padding:9px 11px;font-size:13px;line-height:1.4}.pattern-stash-filters{flex-direction:column;gap:12px;margin:0 0 16px;display:flex}.pattern-stash-filters>label{flex-direction:column;gap:7px;display:flex}.pattern-yardage-filter{cursor:pointer;background:#f8fbfa;border:1px solid #d5e5e0;border-radius:13px;align-items:flex-start;padding:13px 15px;flex-direction:row!important;gap:11px!important}.pattern-yardage-filter input[type=checkbox]{accent-color:#568279;cursor:pointer;width:17px;min-width:17px;height:17px;margin:2px 0 0}.pattern-yardage-filter>span{color:#365950;text-align:left;flex-direction:column;gap:3px;font-size:13px;font-weight:700;line-height:1.35;display:flex}.pattern-yardage-filter small{color:#7b8f89;font-size:11px;font-weight:500;line-height:1.4}.pattern-yardage-unavailable{color:#756e60;text-align:left;background:#fbfaf6;border:1px solid #e2ddd0;border-radius:13px;padding:13px 15px;font-size:12px;line-height:1.5}.pattern-yardage-unavailable strong{color:#625b50}@media (width<=650px){.pattern-yarn-requirements{grid-template-columns:1fr;padding:14px}.pattern-yarn-requirements strong{grid-column:1}.pattern-yardage-filter{padding:12px 13px}}.project-detailed-requirements{gap:16px;display:grid}.project-requirement-match{background:#fbfefd;border:1px solid #c7ddd7;border-radius:16px;padding:16px;box-shadow:0 4px 12px #315f550d}.project-requirement-match-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.project-requirement-match-heading>div:first-child{gap:4px;display:grid}.project-requirement-match-heading strong{color:#315f55;font-size:1rem}.project-requirement-match-heading span{color:#6b7f79;line-height:1.4}.project-requirement-summary{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.project-requirement-summary span{color:#567069;white-space:nowrap;background:#eef6f3;border-radius:999px;padding:6px 9px;font-size:.8rem}.project-requirement-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin-bottom:12px;display:grid}@media (width<=760px){.project-requirement-match-heading{flex-direction:column}.project-requirement-summary{justify-content:flex-start}.project-requirement-filters{grid-template-columns:1fr}}.project-yarn-accordion{width:100%;margin-top:12px}.project-yarn-accordion-toggle{color:#315f55;width:100%;font:inherit;cursor:pointer;text-align:left;background:#f5fbf9;border:1px solid #bfd9d2;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-weight:700;display:flex}.project-yarn-accordion-toggle:hover{background:#eef7f4}.project-yarn-accordion .project-yarn-list{margin-top:10px}.project-detailed-requirements>.pattern-yarn-requirements{text-align:center}.project-detailed-requirements>.pattern-yarn-requirements span{text-align:center;width:100%}.project-detailed-requirements>.pattern-yarn-requirements strong,.project-detailed-requirements>.pattern-yarn-requirements span{text-align:center;box-sizing:border-box;grid-column:1/-1;width:100%}.yarn-form .full-width.stashbound-card .secondary-button{color:#46756a;width:auto;font:inherit;cursor:pointer;background:linear-gradient(135deg,#edf7f4,#f8fbfa);border:1px solid #bfd9d2;border-radius:12px;justify-content:center;align-items:center;gap:6px;padding:10px 15px;font-size:12px;font-weight:800;transition:transform .18s,background .18s,box-shadow .18s;display:inline-flex;box-shadow:0 4px 10px #41675e12}.yarn-form .full-width.stashbound-card .secondary-button:hover{background:#e4f2ee;transform:translateY(-1px);box-shadow:0 6px 14px #41675e1f}.project-supplies-panel{background:linear-gradient(145deg,#fff,#f6faf8);border:1px solid #cfe0dc;border-radius:18px;padding:18px}.project-supplies-heading{margin-bottom:14px}.project-supplies-heading strong,.finish-supplies-title strong{color:#355b51}.project-supplies-heading p,.finish-supplies-title small{color:#71827d;margin:5px 0 0;font-size:12px;line-height:1.45;display:block}.project-supply-picker{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.project-supply-picker select{width:100%;min-width:0}.project-supply-choice-list{gap:9px;margin-top:14px;display:grid}.project-supply-choice{background:#f8fbfa;border:1px solid #d8e3df;border-radius:13px;grid-template-columns:minmax(180px,1fr) 110px 90px auto;align-items:end;gap:10px;padding:12px;display:grid}.project-supply-choice-info{gap:4px;display:grid}.project-supply-choice-info small{color:#71827d;font-size:11px}.project-supply-choice label{color:#60736d;gap:5px;font-size:11px;font-weight:800;display:grid}.project-supply-choice input{width:100%}.project-supply-estimate{gap:4px;padding-bottom:7px;display:grid}.project-supply-estimate small{color:#84938f;font-size:10px}.project-supply-estimate strong{color:#52796f}.project-supply-choice .delete-button{width:auto;margin:0}.project-card-supplies{background:#f7fbfa;border:1px solid #d5e5e0;border-radius:13px;gap:7px;margin:12px 18px;padding:12px 14px;display:grid}.project-card-supplies>strong{color:#45685f;font-size:12px}.project-card-supply{justify-content:space-between;gap:12px;font-size:12px;display:flex}.project-card-supply small{color:#71827d;white-space:nowrap}.project-supply-total{color:#52796f;border-top:1px solid #dce8e4;justify-content:space-between;gap:12px;margin-top:3px;padding-top:8px;font-size:12px;display:flex}.finish-supplies-section{background:#f7fbfa;border:1px solid #cfe0dc;border-radius:16px;gap:10px;margin:22px 0;padding:16px;display:grid}.finish-supplies-title{margin-bottom:2px}.finish-supply-row{background:#fff;border:1px solid #dce8e4;border-radius:12px;grid-template-columns:minmax(0,1fr) 120px 80px;align-items:end;gap:12px;padding:11px 12px;display:grid}.finish-supply-row>div{gap:4px;display:grid}.finish-supply-row small{color:#71827d;font-size:11px}.finish-supply-row label{color:#60736d;gap:5px;font-size:11px;font-weight:800;display:grid}.finish-supply-row input{width:100%}.finish-supply-cost{color:#52796f;text-align:right;padding-bottom:10px;font-weight:800}@media (width<=760px){.project-supply-picker,.project-supply-choice,.finish-supply-row{grid-template-columns:1fr}.project-supply-choice .delete-button{width:100%}.finish-supply-cost{text-align:left;padding-bottom:0}}.project-supplies-panel{margin-top:4px;position:relative;overflow:hidden;box-shadow:0 8px 22px #315f5512;background:radial-gradient(circle at 96% 12%,#a4ccc129,#0000 26%),linear-gradient(145deg,#fff 0%,#f5faf8 100%)!important;border:1px solid #c9ddd7!important;border-radius:20px!important;padding:22px!important}.project-supplies-panel:before{content:"";background:#87ada3;width:4px;position:absolute;inset:0 auto 0 0}.project-supplies-heading{border-bottom:1px solid #dce9e5;margin-bottom:18px;padding-bottom:14px}.project-supplies-heading strong{color:#315f55;align-items:center;gap:8px;font-size:16px;font-weight:850;display:flex}.project-supplies-heading p{color:#748781;max-width:720px;margin:6px 0 0;font-size:12px;line-height:1.5}.project-supply-picker{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:10px;display:grid}.project-supply-picker select{color:#3f5952;background:#fff;border:1px solid #cfded9;border-radius:12px;min-height:44px;padding:10px 12px}.project-supply-picker .secondary-button{color:#416d62;white-space:nowrap;background:#eaf4f1;border:1px solid #8eb6ab;border-radius:12px;min-height:44px;margin:0;padding:10px 17px;font-weight:800}.project-supply-picker .secondary-button:hover{background:#deeee9}.project-supply-choice{box-shadow:0 3px 10px #315f550a}@media (width<=650px){.project-supplies-panel{padding:18px!important}.project-supply-picker{grid-template-columns:1fr}.project-supply-picker .secondary-button{width:100%}}details.project-card-supplies{padding:0;display:block}.project-card-supplies-summary{cursor:pointer;color:#45685f;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:12px;padding:11px 14px;font-size:12px;font-weight:800;list-style:none;display:flex}.project-card-supplies-summary::-webkit-details-marker{display:none}.project-card-supplies-summary:after{content:"▾";color:#78978f;flex:none;font-size:13px;transition:transform .18s}details.project-card-supplies[open] .project-card-supplies-summary:after{transform:rotate(180deg)}.project-card-supplies-summary small{color:#71827d;margin-left:auto;font-size:11px;font-weight:700}.project-card-supplies-body{border-top:1px solid #dce8e4;gap:7px;padding:10px 14px 12px;display:grid}.project-materials-cost{background:linear-gradient(145deg,#fbfdfc,#f1f7f5);border:1px solid #cddfd9;border-radius:14px;margin:12px 18px;padding:13px 14px}.project-materials-cost-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.project-materials-cost-heading span{color:#45685f;text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:850}.project-materials-cost-heading strong{color:#315f55;font-size:18px}.project-materials-cost-breakdown{color:#71827d;flex-wrap:wrap;gap:8px 18px;margin-top:7px;font-size:11px;display:flex}.project-materials-cost-breakdown b{color:#52796f}.project-materials-cost>small{color:#8a9995;margin-top:6px;font-size:10px;display:block}.finished-project-pricing{background:#f7fbfa;border:1px solid #d5e5e0;border-radius:13px;margin:14px 0 18px;overflow:hidden}.finished-project-pricing-heading{color:#45685f;justify-content:space-between;align-items:center;gap:12px;padding:11px 14px;font-size:12px;font-weight:800;display:flex}.finished-project-pricing-heading small{color:#71827d;font-size:11px;font-weight:700}.finished-project-pricing .project-card-pricing-body{border-top:1px solid #dce8e4}.finished-gallery-pricing{background:0 0;border-top:1px solid #e3ece9;border-bottom:1px solid #e3ece9;grid-template-columns:1fr 1fr auto;align-items:center;gap:0;margin:14px 0 0;padding:10px 0;display:grid}.finished-gallery-pricing>div{min-width:0;padding:0 12px}.finished-gallery-pricing>div:first-child{border-right:1px solid #e3ece9;padding-left:0}.finished-gallery-pricing small{color:#8a9d98;letter-spacing:.11em;text-transform:uppercase;margin-bottom:2px;font-size:8px;font-weight:800;display:block}.finished-gallery-pricing strong{color:#385c53;font-size:15px;line-height:1.2;display:block}.finished-gallery-pricing>div:nth-child(2) strong{color:#315f55;font-size:17px}.finished-gallery-pricing>button{width:auto;box-shadow:none;color:#52796f;font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:0;margin:0 0 0 10px;padding:5px 0;font-size:10px;font-weight:800}.finished-gallery-pricing>button:hover{color:#315f55;box-shadow:none;background:0 0;text-decoration:underline;transform:none}@media (width<=650px){.finished-gallery-pricing{grid-template-columns:1fr 1fr}.finished-gallery-pricing>button{grid-column:1/-1;justify-self:start;margin:8px 0 0}}.project-section:not(.project-section-finished) .project-yarn-accordion .project-yarn-list{background:linear-gradient(145deg,#fbfdfc 0%,#f4f9f7 100%);border:1px solid #d7e6e2;border-radius:14px;margin:10px 0 0;padding:12px}.project-section:not(.project-section-finished) .project-yarn-list>.yarn-form{background:#fff;border:1px solid #cfe1dc;border-radius:13px;grid-template-columns:minmax(0,1fr) 90px auto;align-items:end;gap:9px;margin:0 0 12px;padding:12px;display:grid;box-shadow:0 3px 10px #315f550a}.project-section:not(.project-section-finished) .project-yarn-list>.yarn-form>h4,.project-section:not(.project-section-finished) .project-yarn-list>.yarn-form>strong,.project-section:not(.project-section-finished) .project-yarn-list>.yarn-form>p{grid-column:1/-1;margin:0}.project-section:not(.project-section-finished) .project-yarn-list>.yarn-form label{color:#667b75;gap:5px;margin:0;font-size:10px;font-weight:800;display:grid}.project-section:not(.project-section-finished) .project-yarn-list>.yarn-form select,.project-section:not(.project-section-finished) .project-yarn-list>.yarn-form input{color:#405b54;width:100%;min-width:0;min-height:40px;font:inherit;background:#fff;border:1px solid #cdded9;border-radius:10px;margin:0;padding:8px 10px;font-size:12px}.project-section:not(.project-section-finished) .project-yarn-list>.yarn-form .secondary-button,.project-section:not(.project-section-finished) .project-yarn-list>.yarn-form .primary-button,.project-section:not(.project-section-finished) .project-yarn-list>.yarn-form button:not(.delete-button){color:#416d62;width:auto;min-height:40px;font:inherit;white-space:nowrap;cursor:pointer;box-shadow:none;background:#e9f4f1;border:1px solid #91b9ae;border-radius:10px;margin:0;padding:9px 13px;font-size:11px;font-weight:800}.project-section:not(.project-section-finished) .project-yarn-list>.yarn-form .secondary-button:hover,.project-section:not(.project-section-finished) .project-yarn-list>.yarn-form .primary-button:hover,.project-section:not(.project-section-finished) .project-yarn-list>.yarn-form button:not(.delete-button):hover{box-shadow:none;background:#dfeeea;transform:none}.project-section:not(.project-section-finished) .project-yarn-list .project-card-yarn{background:#fff;border:1px solid #d8e5e1;border-radius:12px;margin:0 0 8px;padding:11px 12px}.project-section:not(.project-section-finished) .project-yarn-list .project-card-yarn .delete-button{color:#a26464;width:auto;min-width:0;font:inherit;cursor:pointer;box-shadow:none;background:snow;border:1px solid #e3caca;border-radius:8px;margin:8px 0 0;padding:6px 10px;font-size:10px;font-weight:800}.project-section:not(.project-section-finished) .project-yarn-list .project-card-yarn .delete-button:hover{box-shadow:none;background:#fff1f1;transform:none}@media (width<=650px){.project-section:not(.project-section-finished) .project-yarn-list>.yarn-form{grid-template-columns:1fr}.project-section:not(.project-section-finished) .project-yarn-list>.yarn-form .secondary-button,.project-section:not(.project-section-finished) .project-yarn-list>.yarn-form .primary-button,.project-section:not(.project-section-finished) .project-yarn-list>.yarn-form button:not(.delete-button){width:100%}}.project-section:not(.project-section-finished) .project-card-yarn-add{background:#fff;border:1px solid #cfe1dc;border-radius:13px;grid-template-columns:minmax(0,1fr) 82px auto;align-items:end;gap:9px;margin:0 0 12px;padding:12px;display:grid;box-shadow:0 3px 10px #315f550d}.project-section:not(.project-section-finished) .project-card-yarn-add select,.project-section:not(.project-section-finished) .project-card-yarn-add input{box-sizing:border-box;color:#405b54;width:100%;min-width:0;height:40px;font:inherit;background:#fbfdfc;border:1px solid #cdded9;border-radius:10px;outline:none;margin:0;padding:8px 10px;font-size:12px}.project-section:not(.project-section-finished) .project-card-yarn-add select:focus,.project-section:not(.project-section-finished) .project-card-yarn-add input:focus{border-color:#91b9ae;box-shadow:0 0 0 3px #91b9ae24}.project-section:not(.project-section-finished) .project-card-yarn-add label{color:#70837d;letter-spacing:.06em;text-transform:uppercase;gap:5px;margin:0;font-size:9px;font-weight:800;display:grid}.project-section:not(.project-section-finished) .project-card-yarn-add .secondary-button{color:#416d62;width:auto;min-width:92px;height:40px;font:inherit;white-space:nowrap;cursor:pointer;background:linear-gradient(135deg,#e9f4f1,#f5faf8);border:1px solid #91b9ae;border-radius:10px;margin:0;padding:8px 13px;font-size:11px;font-weight:800;box-shadow:0 3px 8px #41675e0f}.project-section:not(.project-section-finished) .project-card-yarn-add .secondary-button:hover{background:#dfeeea;transform:translateY(-1px);box-shadow:0 5px 10px #41675e17}.project-section:not(.project-section-finished) .project-yarn-empty{color:#879994;padding:4px 2px 10px;font-size:11px;font-style:italic;display:block}@media (width<=650px){.project-section:not(.project-section-finished) .project-card-yarn-add{grid-template-columns:1fr 82px}.project-section:not(.project-section-finished) .project-card-yarn-add .secondary-button{grid-column:1/-1;width:100%}}.project-section:not(.project-section-finished) .project-card-supply-add{background:#fff;border:1px solid #cfe1dc;border-radius:13px;grid-template-columns:minmax(0,1fr) 82px auto;align-items:end;gap:9px;margin:0 0 12px;padding:12px;display:grid;box-shadow:0 3px 10px #315f550d}.project-section:not(.project-section-finished) .project-card-supply-add select,.project-section:not(.project-section-finished) .project-card-supply-add input{box-sizing:border-box;color:#405b54;width:100%;min-width:0;height:40px;font:inherit;background:#fbfdfc;border:1px solid #cdded9;border-radius:10px;outline:none;margin:0;padding:8px 10px;font-size:12px}.project-section:not(.project-section-finished) .project-card-supply-add select:focus,.project-section:not(.project-section-finished) .project-card-supply-add input:focus{border-color:#91b9ae;box-shadow:0 0 0 3px #91b9ae24}.project-section:not(.project-section-finished) .project-card-supply-add label{color:#70837d;letter-spacing:.06em;text-transform:uppercase;gap:5px;margin:0;font-size:9px;font-weight:800;display:grid}.project-section:not(.project-section-finished) .project-card-supply-add .secondary-button{color:#416d62;width:auto;min-width:100px;height:40px;font:inherit;white-space:nowrap;cursor:pointer;background:linear-gradient(135deg,#e9f4f1,#f5faf8);border:1px solid #91b9ae;border-radius:10px;margin:0;padding:8px 13px;font-size:11px;font-weight:800;box-shadow:0 3px 8px #41675e0f}.project-section:not(.project-section-finished) .project-card-supply-add .secondary-button:hover{background:#dfeeea;transform:translateY(-1px);box-shadow:0 5px 10px #41675e17}.project-section:not(.project-section-finished) .project-supply-empty{color:#879994;padding:4px 2px 10px;font-size:11px;font-style:italic;display:block}.project-section:not(.project-section-finished) .project-card-supply{gap:6px}.project-section:not(.project-section-finished) .project-supply-quick-log{border-top:1px solid #e2ece9;margin-top:3px;padding-top:7px}.project-section:not(.project-section-finished) .project-card-supply-remove{color:#a26464;width:auto;font:inherit;cursor:pointer;box-shadow:none;background:snow;border:1px solid #e3caca;border-radius:8px;align-self:flex-start;margin:2px 0 0;padding:6px 10px;font-size:10px;font-weight:800}.project-section:not(.project-section-finished) .project-card-supply-remove:hover{box-shadow:none;background:#fff1f1;transform:none}@media (width<=650px){.project-section:not(.project-section-finished) .project-card-supply-add{grid-template-columns:1fr 82px}.project-section:not(.project-section-finished) .project-card-supply-add .secondary-button{grid-column:1/-1;width:100%}}.project-section:not(.project-section-finished) .project-card-supply-remove{clear:both;align-self:flex-start;margin-top:6px;display:block}.project-section:not(.project-section-finished) .project-supply-quick-log{width:100%}.project-section:not(.project-section-finished) .project-card-supply{flex-wrap:wrap}.project-section:not(.project-section-finished) .project-card-supply-remove{flex:0 0 100%;width:fit-content!important;margin:6px 0 0!important}.finish-project-modal .project-card-yarn{background:#fff;border:1px solid #d7e6e1;border-radius:13px;gap:7px;padding:13px 14px}.finish-project-modal .project-card-yarn>label,.finish-project-modal .finish-supply-row>label{letter-spacing:.04em;text-transform:uppercase;color:#60736d!important;grid-template-columns:1fr!important;gap:6px!important;width:100%!important;margin:5px 0 2px!important;font-size:10px!important;font-weight:800!important;display:grid!important}.finish-project-modal .project-card-yarn>label>input[type=number],.finish-project-modal .finish-supply-row>label>input[type=number]{box-sizing:border-box!important;color:#35564e!important;width:100%!important;min-width:0!important;height:42px!important;font:inherit!important;background:#f8fbfa!important;border:1px solid #bdd5ce!important;border-radius:11px!important;outline:none!important;margin:0!important;padding:9px 11px!important;font-size:13px!important;font-weight:700!important;display:block!important;box-shadow:inset 0 1px 2px #315f550a!important}.finish-project-modal .project-card-yarn>label>input[type=number]:focus,.finish-project-modal .finish-supply-row>label>input[type=number]:focus{background:#fff!important;border-color:#7fa99e!important;box-shadow:0 0 0 3px #7fa99e29!important}.finish-project-modal .finish-supplies-section{background:linear-gradient(145deg,#f7fbfa,#eef6f3);margin-top:18px}.finish-project-modal .finish-supply-row{grid-template-columns:minmax(0,1fr) 125px 72px;align-items:center}.finish-project-modal .finish-supply-cost{color:#477268;align-self:center;font-size:13px;font-weight:850;padding:0!important}@media (width<=760px){.finish-project-modal .finish-supply-row{grid-template-columns:1fr}}.finished-makes-page{max-width:1100px}.make-history-groups{flex-direction:column;gap:18px;width:100%;max-width:1000px;margin:22px auto 50px;display:flex}.make-history-section{background:#ffffffd1;border:1px solid #cfe0dc;border-radius:18px;overflow:hidden;box-shadow:0 6px 18px #3d5b5212}.make-history-section-heading{background:linear-gradient(135deg,#f7fbfa,#edf6f3);border-bottom:1px solid #deebe7;padding:17px 20px}.make-history-section-heading h3{color:#234940;margin:0 0 4px;font-size:18px}.make-history-section-heading h3 span{color:#79958d;font-size:13px}.make-history-section-heading p{color:#718781;margin:0;font-size:12px}.make-history-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;padding:16px;display:grid}.make-history-card{background:#fff;border:1px solid #d6e5e0;border-radius:15px;grid-template-columns:92px 1fr;min-height:128px;display:grid;overflow:hidden;box-shadow:0 5px 14px #3d5b5212}.make-history-photo{background:#eef6f3;place-items:center;min-height:128px;font-size:28px;display:grid}.make-history-photo img{object-fit:cover;width:100%;height:100%;min-height:128px}.make-history-copy{min-width:0;padding:12px 13px}.make-history-topline{justify-content:space-between;align-items:center;gap:8px;display:flex}.make-history-topline small{color:#879994;white-space:nowrap;font-size:10px}.make-history-copy h3{color:#294c45;margin:7px 0 8px;font-size:16px;line-height:1.2}.make-history-copy p{color:#627a73;margin:7px 0;font-size:11px;line-height:1.35}.make-outcome-badge{color:#47746a;letter-spacing:.05em;text-transform:uppercase;background:#e7f2ef;border-radius:999px;width:fit-content;padding:4px 8px;font-size:9px;font-weight:800;display:inline-flex}.make-outcome-sold{color:#3d7550;background:#e8f4ec}.make-outcome-gifted-donated-{color:#715b8b;background:#f1edf7}.make-outcome-for-sale{color:#506f86;background:#edf3f8}.make-history-pricing{color:#71827d;flex-wrap:wrap;gap:6px 12px;margin:7px 0;font-size:10px;display:flex}.make-history-pricing strong{color:#385c53}.make-history-manage{color:#4a7369;width:auto;font:inherit;cursor:pointer;background:#f8fbfa;border:1px solid #c9ddd7;border-radius:9px;margin-top:6px;padding:6px 9px;font-size:10px;font-weight:800}.make-history-manage:hover{background:#edf6f3}.make-history-empty{text-align:center;color:#879994;grid-column:1/-1;margin:4px;padding:14px;font-size:13px}.make-outcome-modal label{color:#46685f;flex-direction:column;gap:6px;margin-top:14px;font-size:13px;font-weight:700;display:flex}.make-outcome-modal input,.make-outcome-modal select,.make-outcome-modal textarea{box-sizing:border-box;color:#304f47;width:100%;font:inherit;background:#fbfdfc;border:1px solid #cfded9;border-radius:11px;padding:11px 12px}.make-outcome-modal textarea{resize:vertical;min-height:88px}.make-outcome-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (width<=650px){.make-history-grid{grid-template-columns:1fr;padding:12px}.make-history-card{grid-template-columns:82px 1fr}.make-outcome-fields{grid-template-columns:1fr;gap:0}}.finished-make-status-strip{color:#385c53;width:100%;font:inherit;text-align:left;cursor:pointer;background:#f7fbfa;border:1px solid #cfe0dc;border-radius:13px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;margin:14px 0 2px;padding:12px 14px;display:grid}.finished-make-status-strip:hover{background:#eef7f4}.finished-make-status-strip span{letter-spacing:.08em;font-size:10px;font-weight:800}.finished-make-status-strip strong{text-align:center;font-size:13px}.finished-make-status-strip small{color:#78938c;white-space:nowrap;font-size:11px}.finished-make-status-for-sale{background:#f4faf7}.finished-make-status-sold{background:#f1f8f6}.finished-make-status-gifted-donated{background:#f8f6fb}@media (width<=650px){.finished-make-status-strip{grid-template-columns:1fr auto}.finished-make-status-strip strong{text-align:left;grid-area:2/1/auto/-1}}.finished-make-status-strip .finished-make-profit{white-space:nowrap;font-size:11px;font-weight:800}.finished-make-status-strip .finished-make-profit.is-profit{color:#47766b}.finished-make-status-strip .finished-make-profit.is-loss{color:#a75e5e}.finished-make-status-strip .finished-make-edit-hint{color:#78938c;white-space:nowrap;font-size:11px}.delete-project-modal .form-heading h2{margin-bottom:8px}.delete-project-modal .form-heading h3{color:var(--ink,#294744);margin:0 0 8px;font-size:1.2rem}.delete-project-supplies-heading{border-top:1px solid #43776f2e;margin-top:24px;padding-top:20px}.delete-project-actions{margin-top:24px}.delete-project-confirm-button{color:#a44943;font:inherit;cursor:pointer;background:#b1484114;border:1px solid #b1484157;border-radius:12px;padding:11px 18px;font-weight:800;transition:transform .15s,box-shadow .15s,background .15s}.delete-project-confirm-button:hover:not(:disabled){background:#b1484121;transform:translateY(-1px);box-shadow:0 8px 18px #5b4a441a}.delete-project-confirm-button:disabled{opacity:.58;cursor:not-allowed}.finished-section-with-history-link{flex-direction:column;gap:14px;display:flex}.finished-history-link{appearance:none;font:inherit;color:var(--teal,#2f6f68);text-underline-offset:4px;cursor:pointer;background:0 0;border:0;align-self:center;padding:4px 8px;font-weight:700;text-decoration:underline}.finished-history-link:hover{text-decoration-thickness:2px}.finished-history-link:focus-visible{outline-offset:4px;border-radius:6px;outline:2px solid}.finished-make-status-strip .finished-make-profit{justify-self:end;display:inline-block}@media (width<=760px){.finished-make-status-strip{grid-template-columns:1fr auto}.finished-make-status-strip strong{text-align:left;grid-column:1/-1}.finished-make-status-strip .finished-make-profit{justify-self:start}}.finished-makes-controls{background:#ffffffd1;border:1px solid #cfe0dc;border-radius:16px;grid-template-columns:minmax(240px,1fr) minmax(180px,240px) auto;align-items:end;gap:12px;width:100%;max-width:1000px;margin:18px auto 0;padding:14px;display:grid;box-shadow:0 6px 18px #3d5b520f}.finished-makes-controls .finished-makes-search,.finished-makes-controls .finished-makes-category-filter{flex-direction:column!important;gap:6px!important;margin:0!important;display:flex!important}.finished-makes-controls label>span{color:#55756d;font-size:11px;font-weight:800}.finished-makes-controls input[type=search],.finished-makes-controls select{box-sizing:border-box!important;color:#304f47!important;width:100%!important;min-height:42px!important;font:inherit!important;background:#fbfdfc!important;border:1px solid #cfded9!important;border-radius:11px!important;outline:none!important;margin:0!important;padding:10px 12px!important}.finished-makes-controls input[type=search]:focus,.finished-makes-controls select:focus{background:#fff!important;border-color:#7fa99e!important;box-shadow:0 0 0 3px #7fa99e29!important}.finished-makes-clear{cursor:pointer;color:#47746a!important;width:auto!important;min-height:42px!important;font:inherit!important;background:#eef6f3!important;border:1px solid #bdd5ce!important;border-radius:11px!important;margin:0!important;padding:10px 15px!important;font-size:12px!important;font-weight:800!important}.finished-makes-clear:hover:not(:disabled){background:#e3f0ec!important}.finished-makes-clear:disabled{opacity:.45;cursor:default}.finish-project-modal .project-card-yarn>label{color:#60736d!important;letter-spacing:.02em!important;text-transform:none!important;flex-direction:column!important;align-items:stretch!important;gap:6px!important;width:100%!important;margin:7px 0 2px!important;font-size:11px!important;font-weight:800!important;display:flex!important}.finish-project-modal .project-card-yarn>label>input[type=number]{box-sizing:border-box!important;color:#35564e!important;width:100%!important;min-width:0!important;max-width:none!important;height:42px!important;font:inherit!important;background:#f8fbfa!important;border:1px solid #bdd5ce!important;border-radius:11px!important;outline:none!important;margin:0!important;padding:9px 11px!important;font-size:13px!important;font-weight:700!important;display:block!important}.finish-project-modal .project-card-yarn>label>input[type=number]:focus{background:#fff!important;border-color:#7fa99e!important;box-shadow:0 0 0 3px #7fa99e29!important}@media (width<=700px){.finished-makes-controls{grid-template-columns:1fr}.finished-makes-clear{width:100%!important}}.manual-material-panel{background:#f7fbfa;border:1px dashed #a9c9c0;border-radius:14px;grid-column:1/-1;margin-top:14px;padding:16px}.manual-material-heading{text-align:center;gap:4px;margin-bottom:12px;display:grid}.manual-material-heading strong{color:#315f55}.manual-material-heading small{color:#6b7f79;line-height:1.45}.manual-material-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.manual-material-grid label{gap:6px;display:grid}.manual-material-grid input,.manual-material-grid select{box-sizing:border-box;width:100%}.manual-material-add{width:100%;margin-top:12px}@media (width<=720px){.manual-material-grid{grid-template-columns:1fr}}.manual-material-panel .manual-material-add{color:#315f55;width:100%;min-height:44px;font:inherit;cursor:pointer;background:#eaf5f1;border:1px solid #8fbeb2;border-radius:12px;justify-content:center;align-items:center;gap:8px;margin-top:12px;padding:11px 18px;font-size:13px;font-weight:800;transition:transform .15s,background .15s,border-color .15s,box-shadow .15s;display:inline-flex;box-shadow:0 4px 10px #315f5514}.manual-material-panel .manual-material-add:hover{background:#deeee9;border-color:#76aa9d;transform:translateY(-1px);box-shadow:0 6px 14px #315f551f}.manual-material-panel .manual-material-add:active{transform:translateY(0)}.project-tracker{background:#f8fbfa;border:1px solid #cfe0dc;border-radius:14px;margin:14px 18px;overflow:hidden}.project-tracker-summary{cursor:pointer;color:#355f56;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:13px;font-weight:800;display:flex}.project-tracker-summary small{color:#718781;font-size:12px;font-weight:700}.project-tracker-body{border-top:1px solid #deebe7;gap:12px;padding:0 14px 14px;display:grid}.project-tracker-counter{grid-template-columns:92px 1fr auto;align-items:center;gap:10px;padding-top:12px;display:grid}.project-tracker-counter>span,.project-tracker-time-heading>span{color:#46685f;font-size:12px;font-weight:800}.project-tracker-controls{grid-template-columns:36px minmax(58px,82px) 36px;justify-content:start;gap:6px;display:grid}.project-tracker-controls button,.project-tracker-timer-button{color:#315f55;font:inherit;cursor:pointer;background:#eaf5f1;border:1px solid #a9c9c0;border-radius:9px;font-weight:800}.project-tracker-controls button{width:36px;height:36px;padding:0;font-size:18px}.project-tracker-controls input,.project-tracker-time-actions input{box-sizing:border-box;color:#35564e;width:100%;min-width:0;font:inherit;text-align:center;background:#fff;border:1px solid #bdd5ce;border-radius:9px;font-weight:700}.project-tracker-reset{color:#8a6d6d;width:auto;font:inherit;cursor:pointer;background:0 0;border:0;padding:6px 8px;font-size:11px;font-weight:700}.project-tracker-time{border-top:1px solid #deebe7;margin-top:2px;padding-top:12px}.project-tracker-time-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.project-tracker-time-heading strong{color:#315f55;font-variant-numeric:tabular-nums;font-size:18px}.project-tracker-time-actions{grid-template-columns:auto minmax(110px,1fr) auto;align-items:end;gap:10px;margin-top:10px;display:grid}.project-tracker-timer-button{min-height:38px;padding:8px 12px}.project-tracker-time-actions label{color:#718781;gap:4px;font-size:10px;font-weight:800;display:grid}.project-tracker-time-actions input{height:38px;padding:7px 9px}.project-tracker-time-actions input:disabled{opacity:.65;cursor:not-allowed}@media (width<=650px){.project-tracker-counter{grid-template-columns:1fr auto}.project-tracker-counter>span{grid-column:1/-1}.project-tracker-time-actions{grid-template-columns:1fr}.project-tracker-timer-button,.project-tracker-time-actions .project-tracker-reset{width:100%}}.project-card-pricing{background:#f8fbfa;border:1px solid #cfe0dc;border-radius:15px;margin:12px 0 0;overflow:hidden}.project-card-pricing-summary{color:#355f55;cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:13px 15px;font-size:13px;font-weight:800;list-style:none;display:flex}.project-card-pricing-summary::-webkit-details-marker{display:none}.project-card-pricing-summary:after{content:"⌄";color:#6f9189;flex:none;margin-left:4px;font-size:12px;transition:transform .18s}.project-card-pricing[open]>.project-card-pricing-summary:after{transform:rotate(180deg)}.project-card-pricing-summary>span{min-width:0}.project-card-pricing-summary>small{color:#627d76;white-space:nowrap;margin-left:auto;font-size:11px;font-weight:800}.project-card-pricing-body{border-top:1px solid #dce8e4;padding:0 15px 15px}.project-pricing-highlight{color:#60756f;border-bottom:1px solid #e3ece9;justify-content:space-between;align-items:center;gap:16px;padding:11px 0;font-size:12px;font-weight:700;display:flex}.project-pricing-highlight strong{color:#294f46;white-space:nowrap;font-size:16px}.project-pricing-highlight.suggested strong{color:#315f55;font-size:18px}.project-pricing-breakdown{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;padding:12px 0;display:grid}.project-pricing-breakdown>span{color:#7a8d88;justify-content:space-between;align-items:center;gap:8px;min-width:0;font-size:11px;font-weight:700;display:flex}.project-pricing-breakdown strong{color:#385c53;white-space:nowrap;font-size:12px}.project-pricing-edit-button{color:#3f6c61;width:fit-content;font:inherit;cursor:pointer;box-shadow:none;background:#fff;border:1px solid #b9d4cd;border-radius:11px;margin:2px auto 0;padding:8px 15px;font-size:11px;font-weight:800;display:block}.project-pricing-edit-button:hover{box-shadow:none;background:#f1f7f5;transform:none}@media (width<=420px){.project-card-pricing-summary{padding:12px 13px}.project-card-pricing-body{padding:0 13px 13px}.project-pricing-breakdown{grid-template-columns:1fr;gap:7px}}.finished-makes-stats{grid-template-columns:repeat(4,1fr);gap:14px;width:100%;max-width:1000px;margin:18px auto 24px;display:grid}.finished-make-stat{border-radius:22px;flex-direction:column;justify-content:center;min-height:110px;padding:20px;display:flex}.finished-make-stat>span{font-size:22px}.finished-make-stat strong{color:#355b51;margin-top:6px;font-size:28px}.finished-make-stat small{color:#788a84;font-weight:700}.finished-make-stat.is-profit strong,.finished-make-stat.is-profit small{color:#355b51}.finished-make-stat.is-loss strong,.finished-make-stat.is-loss small{color:#a86666}@media (width<=900px){.finished-makes-stats{grid-template-columns:repeat(2,1fr)}}.yarn-form{background:#fffffff2;border:1px solid #e0e9e6;border-radius:24px;padding:34px;box-shadow:0 12px 38px #3a574e14}@media (width<=700px){.yarn-form{padding:22px}}.stash-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.yarn-card{background:#fffffff2;border:1px solid #e0e9e6;border-radius:20px;padding:24px;box-shadow:0 8px 28px #3a574e0f}.yarn-card-top{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.yarn-card-icon{background:#edf5f2;border-radius:14px;place-items:center;width:48px;height:48px;font-size:24px;display:grid}.yarn-quantity{color:#fff;background:#52796f;border-radius:19px;place-items:center;min-width:38px;height:38px;padding:0 10px;font-weight:800;display:grid}.yarn-card h3{color:#304b43;margin:0;font-size:21px}.yarn-line{color:#71827d;margin:5px 0 14px;font-weight:600}.yarn-colorway{color:#52796f;margin:0 0 16px}.yarn-details{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.yarn-details span{color:#647872;background:#f0f5f3;border-radius:10px;padding:6px 10px;font-size:12px}.empty-stash{text-align:center;background:#fff;border:1px solid #e0e9e6;border-radius:24px;padding:70px 30px}.empty-stash h3{color:#304b43;margin:14px 0 5px}.empty-stash p{color:#84938f;margin:0 0 24px}@media (width<=900px){.stash-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.stash-grid{grid-template-columns:1fr}}.scanner-box{text-align:center;background:#f8fbfa;border:1px solid #d8e3df;border-radius:14px;margin-top:16px;padding:14px}.scanner-video{background:#111;border-radius:12px;width:min(100%,500px)}.scanner-box p{color:#71827d;margin:10px 0 0;font-size:13px}.low-stock-badge{color:#9a672f;background:#fff7eb;border:1px solid #e8cba8;border-radius:10px;align-items:center;gap:7px;width:fit-content;margin:2px 0 14px;padding:7px 10px;font-size:11px;font-weight:800;display:inline-flex}.low-stock-badge>span:first-child{font-size:13px}.low-stock-filter-notice{color:#8e632f;background:#fff7eb;border:1px solid #e8cba8;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;margin:0 0 18px;padding:12px 14px;font-size:12px;font-weight:700;display:flex}.low-stock-filter-notice button{color:#8e632f;cursor:pointer;background:#fff;border:1px solid #ddb783;border-radius:9px;padding:7px 10px;font-size:11px;font-weight:800}.low-stock-filter-notice button:hover{background:#fffaf2}.yarn-form input[type=file]{color:#66756f;background:#f8fbfa;border:1px solid #d7e3df;border-radius:12px;width:100%;padding:8px;font-size:12px}.yarn-form input[type=file]::file-selector-button{color:#4d6d64;cursor:pointer;background:#eaf4f1;border:1px solid #b9d4cd;border-radius:9px;margin-right:12px;padding:9px 14px;font-size:12px;font-weight:800;transition:all .2s}.yarn-form input[type=file]::file-selector-button:hover{background:#dcece7;border-color:#8fb9ae}.empty-stash .clear-stash-filters,.empty-stash button{color:#4d6d64;font:inherit;cursor:pointer;background:#f8fbfa;border:1px solid #b9d4cd;border-radius:11px;justify-content:center;align-items:center;margin-top:2px;padding:11px 18px;font-size:13px;font-weight:800;transition:all .2s;display:inline-flex}.empty-stash .clear-stash-filters:hover,.empty-stash button:hover{background:#eaf4f1;border-color:#8fb9ae;transform:translateY(-1px)}.empty-stash .clear-stash-filters:active,.empty-stash button:active{transform:translateY(0)}.yarn-details-toggle{color:#4d6d64;width:100%;font:inherit;cursor:pointer;background:#f8fbfa;border:1px solid #b9d4cd;border-radius:10px;margin-top:2px;padding:9px 12px;font-size:12px;font-weight:800}.yarn-details-toggle:hover{background:#eaf4f1;border-color:#8fb9ae}.yarn-expanded-content{margin-top:14px}.make-match-status{border-radius:12px;flex-direction:column;align-items:center;gap:5px;margin:12px 0 14px;padding:10px 14px;font-size:13px;display:flex}.make-match-status strong{font-size:14px;font-weight:800}.make-match-status span{color:#6f7f7a;font-size:12px}.make-match-ready{background:#edf7f3;border:1px solid #c7e3da}.make-match-ready strong{color:#426f63}.make-match-short{background:#fff6ee;border:1px solid #efd8c5}.make-match-short strong{color:#a9683e}.project-card-yarn .card-actions{justify-content:center;align-items:center;gap:10px;margin-top:12px;display:flex}.project-card-yarn .card-actions button{width:auto;min-width:210px;padding:12px 20px}.pattern-community-share{background:#f3faf7;border:1px solid #c9e1d9;border-radius:14px;margin:6px 0 8px;padding:18px 20px;display:block}.pattern-community-check{cursor:pointer;justify-content:center;align-items:center;gap:10px;display:flex}.pattern-community-check input{accent-color:#5d887d;cursor:pointer;width:18px;height:18px;margin:0}.pattern-community-check strong{color:#244d45;font-size:14px}.pattern-community-share small{text-align:center;color:#70827d;max-width:650px;margin:8px auto 0;font-size:12px;line-height:1.5;display:block}.pattern-library-tabs{justify-content:center;gap:12px;margin:0 0 24px;display:flex}.pattern-library-tabs button{color:#60766f;cursor:pointer;background:#fff;border:1px solid #c9ddd7;border-radius:12px;padding:11px 18px;font-size:13px;font-weight:800;transition:transform .18s,background .18s,border-color .18s,box-shadow .18s;box-shadow:0 4px 10px #43665d0f}.pattern-library-tabs button:hover{background:#f2f8f6;border-color:#a9c9c0;transform:translateY(-1px);box-shadow:0 6px 14px #43665d1a}.pattern-library-tabs button.active{color:#fff;background:linear-gradient(135deg,#52796f 0%,#668f85 100%);border-color:#52796f;box-shadow:0 7px 16px #52796f33}.clear-pattern-filters{color:#667b74;cursor:pointer;background:#f7faf9;border:1px solid #d6e1dd;border-radius:10px;padding:10px 16px;font-size:12px;font-weight:800;transition:background .18s,border-color .18s,transform .18s}.clear-pattern-filters:hover{background:#eef6f3;border-color:#b8d0c9;transform:translateY(-1px)}.make-enough-filter{color:#527169;cursor:pointer;background:#f4faf8;border:1px solid #cfe0da;border-radius:12px;grid-column:1/-1;justify-content:center;align-items:center;gap:9px;margin-top:4px;padding:10px 14px;font-size:12px;font-weight:800;display:flex}.make-enough-filter input{accent-color:#5d887d;width:17px;height:17px;margin:0}.pattern-pdf-field small{margin-top:6px;display:block}.pattern-pdf-existing{flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;display:flex}.pattern-pdf-existing .delete-button{width:auto}.pattern-community-pdf-share{background:linear-gradient(135deg,#f4faf8 0%,#edf6f3 100%);border:1px solid #bfd8d1;border-radius:14px;padding:16px 18px}.pattern-community-pdf-share small{color:#71857f;margin-top:7px;font-size:11px;font-weight:500;line-height:1.5;display:block}.pattern-community-pdf-share input:disabled+strong{opacity:.72}.pattern-community-pdf-share:has(input:disabled){opacity:.72}.pattern-community-badges{flex-wrap:wrap;gap:7px;margin:10px 0;display:flex}.pattern-community-badges .pattern-community-badge{margin:0}.pattern-pdf-community-badge{color:#46756a;background:#edf7f4;border:1px solid #c6ddd6;border-radius:999px;width:fit-content;margin:0;padding:6px 10px;font-size:10px;font-weight:800}.pattern-access-actions{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:9px;margin:14px 0 4px;display:grid}.pattern-access-button{color:#426c61;cursor:pointer;background:linear-gradient(135deg,#f2f8f6 0%,#e6f1ed 100%);border:1px solid #b9d6ce;border-radius:11px;min-height:44px;padding:10px 13px;font-size:11px;font-weight:800;line-height:1.3;transition:transform .15s,background .15s,box-shadow .15s}.pattern-access-button:hover{background:linear-gradient(135deg,#e8f4f0 0%,#dcece7 100%);transform:translateY(-1px);box-shadow:0 5px 12px #52796f1f}.pattern-access-button:active{transform:translateY(0)}@media (width<=480px){.pattern-access-actions{grid-template-columns:1fr}}.pattern-photo-field{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.pattern-photo-field>label{flex-direction:column;gap:8px;display:flex}.pattern-photo-field small{color:#82938e;font-size:10px;font-weight:500;line-height:1.4}.pattern-photo-field input[type=file]{color:#66756f;background:#f8fbfa;border:1px solid #d7e3df;border-radius:12px;width:100%;padding:9px;font-size:12px}.pattern-photo-field input[type=file]::file-selector-button{color:#4d6d64;cursor:pointer;background:#eaf4f1;border:1px solid #b9d4cd;border-radius:9px;margin-right:10px;padding:8px 12px;font-size:12px;font-weight:800}.pattern-photo-preview-wrap{background:#f8fbfa;border:1px solid #dce8e4;border-radius:14px;grid-column:1/-1;justify-items:start;gap:10px;padding:14px;display:grid}.pattern-photo-preview{object-fit:cover;border:1px solid #d6e5e0;border-radius:14px;width:min(300px,100%);max-height:230px;display:block;box-shadow:0 8px 20px #3d5b5214}.pattern-photo-remove{color:#9a5b5b;cursor:pointer;background:#fff7f7;border:1px solid #d9b8b8;border-radius:999px;width:fit-content;min-height:36px;padding:8px 14px;font-family:inherit;font-size:11px;font-weight:800;line-height:1;transition:transform .15s,background .15s,box-shadow .15s}.pattern-photo-remove:hover{background:#fceeee;transform:translateY(-1px);box-shadow:0 4px 10px #784b4b1a}.pattern-photo-remove:active{transform:translateY(0)}.pattern-card-photo{object-fit:cover;border-radius:14px;width:100%;height:190px}@media (width<=650px){.pattern-photo-field{grid-template-columns:1fr}.pattern-card-photo{height:210px}}.pattern-favorite-button,.pattern-library-save-button{cursor:pointer;border-radius:11px;min-height:42px;padding:10px 13px;font-family:inherit;font-size:11px;font-weight:800;transition:transform .15s,background .15s,border-color .15s,box-shadow .15s}.pattern-favorite-button{color:#9a6171;background:#fff8fa;border:1px solid #e2c5cd}.pattern-favorite-button.active{color:#8f5364;background:#fbeef2;border-color:#d7aeba}.pattern-library-save-button{color:#4c746a;background:#f1f8f6;border:1px solid #bfd8d1}.pattern-favorite-button:hover:not(:disabled),.pattern-library-save-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 5px 12px #52796f1a}.pattern-favorite-button:disabled,.pattern-library-save-button:disabled{cursor:default;opacity:.72}.pattern-saved-library-badge,.pattern-source-removed-badge{border-radius:999px;width:fit-content;margin:0;padding:6px 10px;font-size:10px;font-weight:800}.pattern-saved-library-badge{color:#46756a;background:#edf7f4;border:1px solid #c6ddd6}.pattern-source-removed-badge{color:#7c7160;background:#faf7f1;border:1px solid #ddd5c7}@media (width<=650px){.pattern-library-tabs{flex-wrap:wrap}}.my-pattern-subtabs{justify-content:center;gap:10px;margin:-10px 0 22px;display:flex}.my-pattern-subtabs button{color:#687c76;cursor:pointer;background:#f8fbfa;border:1px solid #d5e2de;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:9px 14px;font-family:inherit;font-size:11px;font-weight:800;transition:transform .15s,background .15s,border-color .15s,box-shadow .15s;display:inline-flex}.my-pattern-subtabs button span{min-width:22px;height:22px;color:inherit;background:#52796f17;border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:10px;font-weight:900;display:inline-flex}.my-pattern-subtabs button:hover{background:#f0f7f5;border-color:#b9d1ca;transform:translateY(-1px)}.my-pattern-subtabs button.active{color:#426d62;background:#eaf4f1;border-color:#a9c9c0;box-shadow:0 4px 10px #52796f14}@media (width<=520px){.my-pattern-subtabs{grid-template-columns:1fr 1fr;width:100%;display:grid}.my-pattern-subtabs button{width:100%}}.make-match-unknown{background:#f5f7f7;border:1px solid #d9e1df}.make-match-unknown strong{color:#687873}.make-saved-badge{color:#4b746a;background:#edf7f4;border:1px solid #c7ddd7;border-radius:999px;align-items:center;width:fit-content;padding:4px 8px;font-size:10px;font-weight:800;display:inline-flex}.make-stash-scope{color:#55746b;background:#f6faf9;border:1px solid #d4e4df;border-radius:14px;flex-direction:column;align-items:center;gap:5px;margin-top:18px;padding:14px 18px;display:flex}.make-stash-scope strong{color:#315d52;font-size:13px}.make-stash-scope span{color:#758a84;font-size:11px}.make-results{margin-top:14px}.make-pattern-card{text-align:left}.make-pattern-card-main{grid-template-columns:110px minmax(0,1fr);align-items:start;gap:16px;display:grid}.make-pattern-thumb-wrap{width:110px}.make-pattern-thumb{object-fit:cover;background:#f1f7f5;border:1px solid #d8e5e1;border-radius:13px;width:110px;height:110px;display:block}.make-pattern-thumb-placeholder{justify-content:center;align-items:center;font-size:28px;display:flex}.make-pattern-card-copy{min-width:0}.make-matched-yarn{color:#607a72;background:#f7faf9;border:1px solid #d8e6e2;border-radius:10px;margin-top:9px;padding:8px 10px;line-height:1.45;display:block}@media (width<=600px){.make-pattern-thumb-wrap,.make-pattern-thumb{width:82px}.make-pattern-thumb{height:82px}.make-pattern-card-main{grid-template-columns:1fr;gap:14px}.make-pattern-thumb-wrap{width:100%}.make-pattern-thumb{border-radius:14px;width:100%;height:210px}.make-pattern-card-copy{text-align:center;width:100%}.make-pattern-heading{flex-wrap:wrap;justify-content:center}.make-matched-yarn{text-align:left}}.pattern-price-callout{letter-spacing:.02em;border:1px solid;border-radius:999px;align-items:center;width:fit-content;margin:2px 0 14px;padding:8px 12px;font-size:12px;font-weight:900;display:inline-flex}.pattern-price-free{color:#3f7063;background:#edf7f3;border-color:#bcd8cf}.pattern-price-paid{color:#8a672d;background:#fff8e9;border-color:#d8c8a7}.pattern-price-callout-compact{margin:8px 0 7px;padding:6px 10px;font-size:11px}@media (width<=600px){.pattern-price-callout{margin-left:auto;margin-right:auto}}.web-pattern-search-panel{text-align:center;background:#f8fbfa;border:1px solid #d5e4df;border-radius:16px;margin:26px 0 20px;padding:20px}.web-pattern-search-panel h3{color:#315d52;margin:0 0 7px;font-size:17px;font-weight:900}.web-pattern-search-panel p{color:#71847e;max-width:720px;margin:0 auto 16px;font-size:13px;line-height:1.55}.web-pattern-search-button{width:auto;min-width:230px}.web-pattern-notice{color:#826a43;text-align:center;background:#fff9ef;border:1px solid #e2d2b9;border-radius:12px;max-width:760px;margin:14px auto 18px;padding:11px 14px;font-size:12px;font-weight:700;line-height:1.45}.web-pattern-results{margin-top:18px}.web-pattern-grid{align-items:stretch}.web-pattern-card{text-align:left;flex-direction:column;gap:9px;display:flex;position:relative}.web-pattern-card .pattern-card-image{object-fit:cover;border-radius:14px;width:100%;height:190px}.web-pattern-placeholder{background:linear-gradient(135deg,#f4faf8 0%,#eaf4f1 100%);border:1px solid #d9e6e2;border-radius:14px;justify-content:center;align-items:center;width:100%;height:190px;font-size:42px;display:flex}.web-pattern-card h3{color:#294f46;margin:2px 0 0;line-height:1.3}.web-pattern-meta,.web-pattern-source{color:#71837e;margin:0;font-size:11px;line-height:1.45}.web-pattern-source{margin-top:auto;padding-top:4px}.web-pattern-card .yarn-details{margin:2px 0}.web-pattern-actions{grid-template-columns:1fr;gap:8px;margin-top:6px;display:grid}.web-pattern-actions button{width:100%;min-height:42px}@media (width<=600px){.web-pattern-search-panel{padding:16px 14px}.web-pattern-search-button{width:100%;min-width:0}.web-pattern-card .pattern-card-image,.web-pattern-placeholder{height:210px}}.web-pattern-search-copy{text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex}.web-pattern-search-copy strong{color:#294f46;line-height:1.35;display:block}.web-pattern-search-copy span{max-width:760px;line-height:1.5;display:block}.web-pattern-view-button{color:#315f55;width:100%;min-height:42px;font:inherit;cursor:pointer;background:#f3faf7;border:1px solid #9fc8bd;border-radius:12px;font-weight:700;transition:transform .15s,box-shadow .15s,background .15s}.web-pattern-view-button:hover{background:#e7f4ef;transform:translateY(-1px);box-shadow:0 6px 14px #315f551f}.web-pattern-view-button:focus-visible{outline-offset:2px;outline:3px solid #5b8f8247}.pattern-requirements-editor{background:#f8fcfa;border:1px solid #c9ddd7;border-radius:16px;margin-top:6px;padding:18px}.pattern-requirements-editor-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.pattern-requirements-editor-heading>div{gap:5px;display:grid}.pattern-requirements-editor-heading strong{color:#315f55;font-size:1rem}.pattern-requirements-editor-heading small{color:#6b7f79;max-width:720px;line-height:1.45;display:block}.pattern-requirements-empty{color:#6b7f79;background:#fff;border:1px dashed #bdd4cd;border-radius:12px;padding:14px 16px;font-size:.9rem;line-height:1.45}.pattern-requirements-list{gap:14px;display:grid}.pattern-requirement-row{background:#fff;border:1px solid #bdd4cd;border-radius:14px;padding:16px;box-shadow:0 4px 12px #315f550f}.pattern-requirement-row-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.pattern-requirement-row-heading strong{color:#315f55}.pattern-requirement-remove{color:#9a5149;width:auto;min-height:32px;font:inherit;cursor:pointer;background:#fff8f7;border:1px solid #d9aaa5;border-radius:999px;padding:6px 10px;font-size:.8rem;font-weight:700}.pattern-requirement-remove:hover{background:#fcecea}.pattern-requirement-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.pattern-requirement-grid .full-width{grid-column:1/-1}.pattern-requirement-quantity{grid-template-columns:minmax(0,1fr) minmax(120px,.65fr);gap:8px;display:grid}.pattern-requirement-add{color:#315f55;width:100%;min-height:42px;font:inherit;cursor:pointer;background:#eef8f4;border:1px dashed #7fb2a5;border-radius:12px;margin-top:14px;font-weight:800}.pattern-requirement-add:hover{background:#e3f3ed}.pattern-card-requirements{background:#f8fcfa;border:1px solid #c9ddd7;border-radius:12px;margin-top:10px;overflow:hidden}.pattern-card-requirements-toggle{color:#315f55;width:100%;min-height:40px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;padding:9px 12px;font-size:.88rem;font-weight:800;display:flex}.pattern-card-requirements-toggle:hover{background:#eef8f4}.pattern-card-requirements-list{gap:8px;padding:0 10px 10px;display:grid}.pattern-card-requirement{background:#fff;border:1px solid #dbe9e5;border-radius:10px;gap:3px;padding:10px;display:grid}.pattern-card-requirement strong{color:#315f55;font-size:.88rem}.pattern-card-requirement span,.pattern-card-requirement small{color:#5f716c;line-height:1.35}.pattern-card-requirement-notes{font-style:italic}@media (width<=720px){.pattern-requirement-grid{grid-template-columns:1fr}.pattern-requirement-grid .full-width{grid-column:auto}.pattern-requirement-quantity{grid-template-columns:1fr}}.pattern-yarn-requirements-editor>p,.pattern-yarn-requirements-editor>.pattern-yarn-requirements-help{text-align:center;box-sizing:border-box;width:100%}.pattern-requirements-editor-heading{text-align:center;justify-content:center}.pattern-requirements-editor-heading>div{text-align:center;justify-items:center;width:100%}.pattern-requirements-editor-heading small{text-align:center;width:100%;max-width:720px;margin:0 auto}.pattern-supply-requirements-editor{margin-top:16px}.pattern-requirements-editor .pattern-requirement-add{color:#315f55;width:100%;min-height:44px;font:inherit;cursor:pointer;background:#eaf5f1;border:1px solid #8fbeb2;border-radius:12px;justify-content:center;align-items:center;gap:8px;margin-top:14px;padding:11px 18px;font-size:13px;font-weight:800;transition:transform .15s,background .15s,border-color .15s,box-shadow .15s;display:inline-flex;box-shadow:0 4px 10px #315f5514}.pattern-requirements-editor .pattern-requirement-add:hover{background:#deeee9;border-color:#76aa9d;transform:translateY(-1px);box-shadow:0 6px 14px #315f551f}.pattern-requirements-editor .pattern-requirement-add:active{transform:translateY(0)}.pattern-card-info{margin:10px 0 4px}.pattern-card-info>summary{color:#426d62;cursor:pointer;background:#f3f8f6;border:1px solid #c9ddd7;border-radius:11px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:12px;font-weight:800;list-style:none;display:flex}.pattern-card-info>summary::-webkit-details-marker{display:none}.pattern-card-info>summary:after{content:"▾";font-size:12px}.pattern-card-info[open]>summary:after{content:"▴"}.pattern-card-info[open]>summary{margin-bottom:10px}.tools-page{padding-top:42px}.tools-hero{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px;display:flex}.tools-hero h2{color:#293e38;letter-spacing:-1px;margin:0;font-size:clamp(32px,4vw,44px)}.tools-hero p{color:#71827d;margin:10px 0 0}.tools-stats{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px;display:grid}.tool-stat{border-radius:22px;flex-direction:column;justify-content:center;min-height:110px;padding:20px;display:flex}.tool-stat>span{font-size:22px}.tool-stat strong{color:#355b51;margin-top:6px;font-size:28px}.tool-stat small{color:#788a84;font-weight:700}.tool-form-card{border-radius:24px;margin-bottom:24px;padding:26px}.tool-form-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px;display:flex}.tool-form-heading h3{color:#30463f;margin:0;font-size:24px}.tool-form-heading p{color:#71827d;margin:6px 0 0}.tool-close-button{color:#71827d;cursor:pointer;background:0 0;border:0;font-size:28px}.tool-measure-row{grid-template-columns:1fr 82px;gap:8px;display:grid}.tool-checks{flex-wrap:wrap;gap:18px;display:flex}.tool-checks label{flex-direction:row;align-items:center;font-size:13px}.tool-checks input{accent-color:#52796f;width:17px;height:17px}.tool-photo-preview{background:#f3f8f6;border:1px solid #d8e3df;border-radius:16px;width:140px;height:140px;overflow:hidden}.tool-photo-preview img{object-fit:cover;width:100%;height:100%}.tools-filter-bar{border-radius:24px;grid-template-columns:minmax(240px,2fr) minmax(160px,1fr) minmax(160px,1fr) auto;gap:12px;margin-bottom:22px;padding:18px;display:grid}.tools-filter-bar input,.tools-filter-bar select{color:#2e433d;width:100%;font:inherit;background:#fff;border:1px solid #d8e3df;border-radius:11px;padding:12px 13px}.tools-clear-button{color:#52796f;min-height:44px;font:inherit;white-space:nowrap;cursor:pointer;background:#f5faf8;border:1px solid #cbdcd6;border-radius:11px;align-self:stretch;padding:0 16px;font-weight:800}.tools-clear-button:hover{background:#eaf3f0;border-color:#afc9c1}.tools-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.tools-page .empty-state,.tools-page .empty-card{border-radius:24px}.tool-card{border-radius:24px;min-width:0;overflow:hidden}.tool-card-photo{object-fit:cover;background:#eef5f2;width:100%;height:140px;display:block}.tool-card-photo-empty{place-items:center;font-size:54px;display:grid}.tool-card-body{z-index:2;padding:20px 20px 24px;position:relative}.tool-card-title-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.tool-type-badge{color:#52796f;text-transform:uppercase;letter-spacing:.7px;background:#e7f1ed;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:900;display:inline-block}.tool-card h3{color:#30463f;margin:9px 0 0;font-size:18px}.tool-favorite{color:#8b7750;font-size:22px}.tool-size-line{align-items:baseline;gap:8px;margin:18px 0 12px;display:flex}.tool-size-line strong{color:#355b51;font-size:26px}.tool-size-line span{color:#788a84;font-weight:700}.tool-card-details{color:#60736d;gap:7px;font-size:12px;display:grid}.tool-card-details b{color:#405b54}.tool-wishlist-badge{color:#796b4e;background:#f5f1e8;border-radius:10px;margin-top:14px;padding:7px 10px;font-size:11px;font-weight:800;display:inline-block}.tool-card-notes{color:#71827d;margin:14px 0 0;font-size:12px;line-height:1.5}.tool-card-actions{gap:9px;margin-top:18px;display:flex}.tool-card-actions button{color:#426c61;cursor:pointer;background:#f5faf8;border:1px solid #cbdcd6;border-radius:10px;flex:1;padding:9px 11px;font-weight:800}.tool-card-actions .tool-delete{color:#a85d5d;background:snow;border-color:#e7c9c9}@media (width<=1000px){.tools-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.tools-clear-button{min-height:44px}}@media (width<=900px){.tools-stats{grid-template-columns:repeat(2,1fr)}.tools-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=650px){.tools-hero{flex-direction:column;align-items:stretch}.tools-filter-bar,.tools-grid{grid-template-columns:1fr}.tools-stats{grid-template-columns:repeat(2,1fr)}.tool-form-card{padding:20px}}.tools-hero-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.tools-wishlist-add{color:#52796f;font:inherit;cursor:pointer;background:#f5faf8;border:1px solid #cbdcd6;border-radius:12px;padding:12px 16px;font-weight:800}.tools-wishlist-add:hover{background:#eaf3f0;border-color:#afc9c1}.tools-view-tabs{background:#f5faf8;border:1px solid #d8e3df;border-radius:16px;gap:10px;width:max-content;max-width:100%;margin:0 0 20px;padding:6px;display:flex}.tools-view-tabs button{color:#667b74;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:11px;padding:10px 16px;font-weight:800}.tools-view-tabs button.active{color:#355b51;background:#fff;box-shadow:0 2px 8px #2d4c4317}.tools-view-tabs button span{opacity:.7;margin-left:5px}.tool-move-owned{color:#355f53!important;background:#eef8f4!important;border-color:#b9d7cd!important}@media (width<=650px){.tools-hero-actions{justify-content:stretch;width:100%}.tools-hero-actions>button{flex:1}.tools-view-tabs{box-sizing:border-box;width:100%}.tools-view-tabs button{flex:1}}.tool-owned-match{color:#405b54;background:#f5faf8;border:1px solid #cbdcd6;border-radius:16px;align-items:flex-start;gap:12px;margin:4px 0 18px;padding:14px 16px;display:flex}.tool-owned-match-icon{flex:none;font-size:22px;line-height:1.2}.tool-owned-match strong{color:#355b51;font-size:14px;display:block}.tool-owned-match p{color:#60736d;margin:4px 0 0;font-size:13px}.tool-owned-match small{color:#788a84;margin-top:5px;font-size:11px;line-height:1.45;display:block}.tool-wishlist-match{color:#665d49;background:#faf7f0;border:1px solid #ded4bd;border-radius:16px;align-items:flex-start;gap:12px;margin:4px 0 18px;padding:14px 16px;display:flex}.tool-wishlist-match strong{color:#6f6247;font-size:14px;display:block}.tool-wishlist-match p{color:#746b58;margin:4px 0 0;font-size:13px}.tool-wishlist-match small{color:#8a816f;margin-top:5px;font-size:11px;line-height:1.45;display:block}.tool-missing-sizes{border-radius:24px;margin-bottom:22px;padding:20px}.tool-missing-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:16px;display:flex}.tool-missing-kicker{color:#789089;letter-spacing:.9px;margin-bottom:4px;font-size:10px;font-weight:900;display:block}.tool-missing-heading h3{color:#30463f;margin:0;font-size:19px}.tool-missing-heading p{color:#71827d;max-width:720px;margin:6px 0 0;font-size:12px;line-height:1.5}.tool-missing-count{color:#52796f;background:#e7f1ed;border-radius:999px;flex:none;padding:7px 10px;font-size:11px;font-weight:900}.tool-missing-chips{flex-wrap:wrap;gap:9px;display:flex}.tool-missing-chip{color:#405b54;font:inherit;cursor:pointer;background:#f7fbfa;border:1px solid #cbdcd6;border-radius:12px;align-items:center;gap:8px;padding:9px 11px;display:flex}.tool-missing-chip strong{font-size:12px}.tool-missing-chip span{color:#52796f;font-size:10px;font-weight:800}.tool-missing-chip:hover:not(:disabled){background:#eaf3f0;border-color:#afc9c1}.tool-missing-chip.is-wishlisted{color:#746b58;cursor:default;background:#faf7f0;border-color:#ded4bd}.tool-missing-chip.is-wishlisted span{color:#8a7754}.tool-missing-complete{color:#52796f;background:#f5faf8;border-radius:12px;padding:12px 14px;font-size:13px;font-weight:800}@media (width<=650px){.tool-missing-heading{flex-direction:column}}.tool-collection-gaps{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:22px;display:grid}.tool-gap-panel{border-radius:24px;padding:20px}.tool-gap-panel .tool-missing-heading{margin-bottom:0}.tool-gap-guide{color:#71827d;margin:14px 0 16px;font-size:12px;line-height:1.5}.tool-gap-toggle{color:#52796f;min-width:64px;font:inherit;cursor:pointer;background:#f5faf8;border:1px solid #cbdcd6;border-radius:10px;flex:none;padding:8px 12px;font-size:11px;font-weight:900}.tool-gap-toggle:hover{background:#eaf3f0;border-color:#afc9c1}@media (width<=900px){.tool-collection-gaps{grid-template-columns:1fr}}.tool-card-summary{color:#60736d;gap:7px;font-size:12px;display:grid}.tool-card-summary b{color:#405b54}.tool-details-toggle{color:#52796f;width:100%;font:inherit;cursor:pointer;background:#f5faf8;border:1px solid #cbdcd6;border-radius:10px;margin-top:16px;padding:9px 12px;font-size:11px;font-weight:900}.tool-details-toggle:hover{background:#eaf3f0;border-color:#afc9c1}.tool-expanded-content{margin-top:14px}.supplies-page{padding-top:42px}.supplies-hero{justify-content:space-between;align-items:flex-start;gap:28px;margin-bottom:28px;display:flex}.supplies-hero h2{color:#293e38;letter-spacing:-1.3px;margin:0;font-size:clamp(32px,4vw,46px)}.supplies-hero p{color:#71827d;max-width:650px;margin:12px 0 0;line-height:1.6}.supplies-hero .add-button{flex-shrink:0}.supply-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:28px;display:grid}.supply-summary-card{text-align:left;background:linear-gradient(145deg,#fff,#f6faf8);border:1px solid #dce8e4;border-radius:18px;min-width:0;padding:20px 22px;box-shadow:0 8px 24px #3d5b520f}button.supply-summary-card{width:100%;font:inherit;cursor:pointer;transition:transform .18s,box-shadow .18s,border-color .18s}button.supply-summary-card:hover{border-color:#bfd6cf;transform:translateY(-2px);box-shadow:0 12px 28px #3d5b521a}.supply-summary-card>span{color:#80918c;letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px;font-size:11px;font-weight:800;display:block}.supply-summary-card>strong{color:#355b51;font-size:26px;display:block}.supply-summary-card>small{color:#84938f;margin-top:6px;font-size:11px;line-height:1.4;display:block}.supply-summary-alert.has-low-stock{background:linear-gradient(145deg,#fff,#fff7f7);border-color:#e5cccc}.supply-summary-alert.has-low-stock>span,.supply-summary-alert.has-low-stock>strong{color:#a85d5d}.supply-form-card{background:#fffffff7;border:1px solid #d9e7e2;border-radius:22px;margin-bottom:30px;padding:28px;box-shadow:0 12px 34px #3d5b5214}.supply-form-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px;display:flex}.supply-form-heading h3{color:#304b43;margin:0;font-size:24px}.supply-form-heading p{color:#71827d;margin:7px 0 0;line-height:1.5}.supply-close-button{color:#71827d;cursor:pointer;background:#fbfdfc;border:1px solid #d8e3df;border-radius:11px;flex:none;place-items:center;width:38px;height:38px;padding:0;font-size:24px;line-height:1;display:grid}.supply-close-button:hover{color:#426c61;background:#f0f6f3}.supply-cost-callout{color:#405b54;background:linear-gradient(135deg,#f7fbf9,#edf6f2);border:1px solid #cbdcd6;border-radius:14px;flex-direction:column;gap:4px;padding:15px 17px;display:flex}.supply-cost-callout span{color:#789089;letter-spacing:.09em;font-size:10px;font-weight:900}.supply-cost-callout strong{color:#355b51;font-size:20px}.supply-cost-callout small{color:#71827d;font-size:11px;line-height:1.45}.supply-form-card .form-actions{border-top:1px solid #e4ece9;justify-content:flex-end;gap:12px;margin-top:28px;padding-top:20px;display:flex}.supply-form-card .form-actions button{cursor:pointer;border-radius:12px;width:auto;padding:12px 18px;font-size:13px;font-weight:800}.supply-form-card .cancel-button{color:#61756f;background:#fff;border:1px solid #ccdcd7}.supply-form-card .cancel-button:hover{background:#f5f9f7}.supply-form-card .save-button{color:#fff;background:#52796f;border:1px solid #52796f;box-shadow:0 8px 18px #52796f29}.supply-form-card .save-button:hover:not(:disabled){background:#456b61}.supply-form-card .save-button:disabled{opacity:.6;cursor:wait}.supplies-filter-bar{background:#fffffff0;border:1px solid #dce8e4;border-radius:18px;grid-template-columns:minmax(240px,2fr) minmax(170px,1fr) auto auto;gap:12px;margin-bottom:24px;padding:18px;display:grid;box-shadow:0 8px 24px #3d5b520d}.supplies-filter-bar>input,.supplies-filter-bar>select{color:#2e433d;width:100%;min-width:0;font:inherit;background:#fbfdfc;border:1px solid #d8e3df;border-radius:11px;outline:none;padding:12px 13px}.supplies-filter-bar>input:focus,.supplies-filter-bar>select:focus{border-color:#9fc1b7;box-shadow:0 0 0 3px #52796f17}.supply-low-filter{color:#52796f;white-space:nowrap;cursor:pointer;background:#f5faf8;border:1px solid #cbdcd6;border-radius:11px;flex-direction:row;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 16px;font-size:12px;font-weight:800;display:flex}.supply-low-filter input{accent-color:#52796f;width:17px;height:17px}.supply-clear-filters{color:#52796f;min-height:44px;font:inherit;cursor:pointer;background:#fff;border:1px solid #ccdcd7;border-radius:11px;padding:0 16px;font-size:12px;font-weight:800}.supply-clear-filters:hover:not(:disabled){background:#f0f6f3}.supply-clear-filters:disabled{opacity:.45;cursor:default}.supplies-grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:18px;display:grid}.supply-card{background:radial-gradient(circle at 92% 12%,#b7d8d28c 0 2px,#0000 3px),linear-gradient(145deg,#fff 0%,#f8fbfa 100%);border:1px solid #d7e5e0;border-radius:18px;min-width:0;position:relative;overflow:hidden;box-shadow:0 10px 28px #3d5b5214,inset 0 0 0 4px #eef6f38c}.supply-card.is-low{background:radial-gradient(circle at 92% 12%,#dcb8b86b 0 2px,#0000 3px),linear-gradient(145deg,#fff 0%,#fff9f9 100%);border-color:#e5caca}.supply-card-photo{object-fit:cover;background:#eef5f2;border-bottom:1px solid #e3ece9;width:100%;height:140px;display:block}.supply-card-photo-empty{place-items:center;font-size:48px;display:grid}.supply-card-body{padding:20px}.supply-card-title-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.supply-type-badge{color:#52796f;text-transform:uppercase;letter-spacing:.08em;background:#e7f1ed;border-radius:999px;align-items:center;padding:5px 9px;font-size:9px;font-weight:900;display:inline-flex}.supply-card h3{color:#304b43;margin:8px 0 0;font-size:18px;line-height:1.3}.supply-low-badge{color:#a85d5d;letter-spacing:.08em;background:#fff0f0;border-radius:999px;flex:none;padding:5px 9px;font-size:9px;font-weight:900}.supply-qty-line{align-items:baseline;gap:8px;margin:18px 0 12px;display:flex}.supply-qty-line strong{color:#355b51;font-size:27px;line-height:1}.supply-qty-line span{color:#788a84;font-size:12px;font-weight:800}.supply-card-details{gap:8px;display:grid}.supply-card-details span{color:#647872;background:#f0f5f3;border-radius:10px;padding:7px 10px;font-size:11px;line-height:1.4}.supply-card-details b{color:#45685f;margin-right:4px}.supply-card-notes{color:#6d817b;background:#f7faf9;border-left:3px solid #c6ddd6;border-radius:0 10px 10px 0;margin:15px 0 0;padding:11px 12px;font-size:12px;line-height:1.5}.supply-card-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:18px;display:grid}.supply-card-actions button{color:#426c61;cursor:pointer;background:#f5faf8;border:1px solid #cbdcd6;border-radius:10px;flex:1;padding:9px 11px;font-size:11px;font-weight:800}.supply-card-actions button:hover{background:#eaf4f0}.supply-card-actions .supply-shopping{color:#46756a;background:#edf7f4;border-color:#bfd9d2;grid-column:1/-1}.supply-card-actions .supply-shopping:hover{background:#e1f0eb}.supply-card-actions .supply-delete{color:#a85d5d;background:snow;border-color:#e7c9c9}.supply-card-actions .supply-delete:hover{background:#fff1f1}.supplies-page .empty-state{text-align:center;background:#fbfdfc;border:1px dashed #cddfd9;border-radius:18px;padding:42px 24px}.supplies-page .empty-state h3{color:#3d5d54;margin:10px 0 6px}.supplies-page .empty-state p{color:#84938f;margin:0 0 18px}.supplies-page .empty-icon{font-size:38px}@media (width<=850px){.supplies-hero{flex-direction:column}.supplies-hero .add-button{width:100%}.supply-summary,.supplies-filter-bar{grid-template-columns:1fr}}@media (width<=600px){.supply-form-card{padding:20px}.supply-form-heading{gap:12px}.supply-form-card .form-actions{flex-direction:column-reverse}.supply-form-card .form-actions button{width:100%}.supplies-grid{grid-template-columns:1fr}}.yarncipher-button-icon{vertical-align:-.12em;width:1em;height:1em;color:inherit;display:inline-block}.supply-heading-icon{color:#52796f;align-items:center;font-size:.82em;display:inline-flex}.supply-card-photo-empty .yarncipher-button-icon{color:#7fa398;width:58px;height:58px}.supplies-page .empty-icon .yarncipher-button-icon{color:#7fa398;width:44px;height:44px}.supply-delete-backdrop{z-index:1000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#23373161;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.supply-delete-modal{text-align:center;background:#fff;border:1px solid #d9e7e2;border-radius:20px;width:min(440px,100%);padding:28px;box-shadow:0 22px 60px #23373138}.supply-delete-icon{color:#a85d5d;background:#fff1f1;border-radius:50%;place-items:center;width:44px;height:44px;margin:0 auto 14px;font-size:27px;line-height:1;display:grid}.supply-delete-modal h3{color:#304b43;margin:0;font-size:22px}.supply-delete-modal p{color:#71827d;margin:10px 0 22px;line-height:1.55}.supply-delete-modal p strong{color:#45685f}.supply-delete-modal-actions{justify-content:center;gap:10px;display:flex}.supply-delete-modal-actions button{min-width:130px;font:inherit;cursor:pointer;border-radius:11px;padding:11px 16px;font-size:12px;font-weight:800}.supply-delete-cancel{color:#61756f;background:#fff;border:1px solid #ccdcd7}.supply-delete-cancel:hover:not(:disabled){background:#f5f9f7}.supply-delete-confirm{color:#fff;background:#a85d5d;border:1px solid #d9aaaa;box-shadow:0 7px 16px #a85d5d29}.supply-delete-confirm:hover:not(:disabled){background:#944f4f}.supply-delete-modal-actions button:disabled{opacity:.6;cursor:wait}@media (width<=520px){.supply-delete-modal{padding:24px 20px}.supply-delete-modal-actions{flex-direction:column-reverse}.supply-delete-modal-actions button{width:100%}}.supply-qty-line.supply-qty-breakdown{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:8px;display:grid}.supply-qty-breakdown>span{flex-direction:column;gap:2px;min-width:0;display:flex}.supply-qty-breakdown>span b{opacity:.7;font-size:.72rem;font-weight:700}.supply-qty-breakdown>span strong{font-size:.95rem;line-height:1.2}@media (width<=560px){.supply-qty-line.supply-qty-breakdown{grid-template-columns:1fr}}.supply-card-summary{color:#647872;gap:7px;margin-top:12px;font-size:11px;display:grid}.supply-card-summary b{color:#45685f}.supply-details-toggle{color:#52796f;width:100%;font:inherit;cursor:pointer;background:#f5faf8;border:1px solid #cbdcd6;border-radius:10px;margin-top:16px;padding:9px 12px;font-size:11px;font-weight:900}.supply-details-toggle:hover{background:#eaf3f0;border-color:#afc9c1}.supply-expanded-content{margin-top:14px}.pricing-page{padding-top:42px}.pricing-hero{justify-content:space-between;align-items:flex-start;gap:28px;margin-bottom:28px;display:flex}.pricing-hero h2{color:#293e38;letter-spacing:-1.3px;margin:0;font-size:clamp(32px,4vw,46px)}.pricing-hero p{color:#71827d;max-width:650px;margin:12px 0 0;line-height:1.6}.pricing-project-card{background:#fffffff0;border:1px solid #dce8e4;border-radius:18px;margin-bottom:24px;padding:18px;box-shadow:0 8px 24px #3d5b520d}.pricing-project-card label,.pricing-input-card label{color:#52796f;gap:7px;font-size:12px;font-weight:800;display:grid}.pricing-project-card select,.pricing-input-card input{color:#2e433d;width:100%;min-width:0;font:inherit;background:#fbfdfc;border:1px solid #d8e3df;border-radius:11px;outline:none;padding:12px 13px}.pricing-project-card select:focus,.pricing-input-card input:focus{border-color:#9fc1b7;box-shadow:0 0 0 3px #52796f17}.pricing-empty{text-align:center;background:#fbfdfc;border:1px dashed #cddfd9;border-radius:18px;padding:42px 24px}.pricing-empty>div{font-size:38px}.pricing-empty h3{color:#3d5d54;margin:10px 0 6px}.pricing-empty p{color:#84938f;margin:0}.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:28px;display:grid}.pricing-input-card{background:linear-gradient(145deg,#fff,#f6faf8);border:1px solid #dce8e4;border-radius:18px;min-width:0;padding:20px 22px;box-shadow:0 8px 24px #3d5b520f}.pricing-input-card>span{color:#80918c;letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px;font-size:11px;font-weight:800;display:block}.pricing-input-card h3{color:#304b43;margin:0 0 18px;font-size:20px}.pricing-input-card>small{color:#84938f;margin-top:10px;font-size:11px;line-height:1.4;display:block}.pricing-two-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.pricing-material-row{color:#647872;background:#f0f5f3;border-radius:10px;justify-content:space-between;gap:12px;margin-bottom:8px;padding:7px 10px;font-size:12px;display:flex}.pricing-material-row strong{color:#45685f}.pricing-material-total{color:#405b54;background:linear-gradient(135deg,#f7fbf9,#edf6f2);border:1px solid #cbdcd6;border-radius:14px;justify-content:space-between;gap:12px;margin-top:14px;padding:15px 17px;display:flex}.pricing-material-total span{color:#789089;letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:900}.pricing-material-total strong{color:#355b51;font-size:20px}.pricing-result{background:linear-gradient(145deg,#fff,#f6faf8);border:1px solid #dce8e4;border-radius:18px;grid-template-columns:repeat(2,minmax(0,1fr)) auto;align-items:center;gap:16px;padding:20px 22px;display:grid;box-shadow:0 8px 24px #3d5b520f}.pricing-result>div{min-width:0}.pricing-result>div>span{color:#80918c;letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px;font-size:11px;font-weight:800;display:block}.pricing-result>div>strong{color:#355b51;font-size:26px;display:block}.pricing-result>div>small{color:#84938f;margin-top:6px;font-size:11px;line-height:1.4;display:block}.pricing-suggested{border-left:1px solid #dce8e4;padding-left:18px}.pricing-suggested>strong{font-size:30px!important}.pricing-save-button{color:#fff;width:auto;min-height:44px;font:inherit;cursor:pointer;background:#52796f;border:1px solid #52796f;border-radius:12px;padding:12px 18px;font-size:13px;font-weight:800;box-shadow:0 8px 18px #52796f29}.pricing-save-button:hover:not(:disabled){background:#456b61}.pricing-save-button:disabled{opacity:.6;cursor:wait}@media (width<=850px){.pricing-grid,.pricing-result{grid-template-columns:1fr}.pricing-suggested{border-top:1px solid #dce8e4;border-left:0;padding:16px 0 0}.pricing-save-button{width:100%}}@media (width<=600px){.pricing-two-fields{grid-template-columns:1fr}.pricing-input-card{padding:20px}}.pricing-page>.back-button{color:#52796f;width:fit-content;margin:0 auto 30px;padding:4px 8px;font-size:12px;font-weight:800;display:block;box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important}.pricing-page>.back-button:hover{color:#355b51;text-decoration:underline;background:0 0!important}.pricing-page .pricing-hero{width:100%;text-align:center!important;margin:0 auto 30px!important;padding:0!important;display:block!important}.pricing-page .pricing-hero h2{color:#293e38;letter-spacing:-1.3px;font-size:clamp(32px,4vw,46px);line-height:1.15;display:block;text-align:center!important;margin:0!important}.pricing-page .pricing-hero p{color:#71827d;max-width:650px;line-height:1.6;display:block;text-align:center!important;margin:12px auto 0!important}.pricing-page .pricing-eyebrow,.pricing-page .eyebrow{display:none!important}.pricing-page>.back-button{color:#52796f!important;background:#f3f8f6!important;border:1px solid #c8dad5!important;border-radius:999px!important;width:fit-content!important;margin:0 auto 30px!important;padding:8px 16px!important;font-size:12px!important;font-weight:800!important;line-height:1.2!important;text-decoration:none!important;display:block!important;box-shadow:0 2px 7px #3d5b520d!important}.pricing-page>.back-button:hover{color:#355b51!important;background:#eaf3f0!important;border-color:#a9c5bd!important;text-decoration:none!important}.pricing-page>.back-button,.pricing-page>.back-button:hover,.pricing-page>.back-button:focus,.pricing-page>.back-button:active{box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important;outline:0!important}.pricing-page>.back-button{padding:4px 8px!important}.pricing-page>.back-button:focus-visible{box-shadow:none!important;outline:0!important}.pricing-result-actions{gap:8px;min-width:132px;display:grid}.pricing-clear-button{color:#607a73;width:100%;min-height:40px;font:inherit;cursor:pointer;box-shadow:none;background:#f8fbfa;border:1px solid #c9d9d4;border-radius:12px;padding:10px 16px;font-size:12px;font-weight:800}.pricing-clear-button:hover:not(:disabled){color:#3f655b;background:#eef5f2;border-color:#abc5bd}.pricing-clear-button:disabled{opacity:.55;cursor:wait}.pricing-result-actions .pricing-save-button{width:100%}@media (width<=850px){.pricing-result-actions,.pricing-clear-button,.pricing-result-actions .pricing-save-button{width:100%}}.relocate-page{width:min(1120px,100% - 32px);margin:0 auto;padding:28px 0 64px}.relocate-hero{text-align:center;max-width:720px;margin:34px auto 32px}.relocate-hero h1{color:#244f52;margin:0;font-size:2.35rem;font-weight:600;line-height:1.2}.relocate-title-icon{vertical-align:.06em;font-size:.82em;display:inline-block}.relocate-hero p{color:#687d7b;max-width:700px;margin:12px auto 0;font-size:1.08rem;line-height:1.55}.relocate-card{background:var(--card-bg,#fff);border:1px solid #3e7d7847;border-radius:22px;padding:22px;box-shadow:0 12px 30px #23464414}.relocate-card-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.relocate-card-heading h2{margin:0}.relocate-card-heading span{opacity:.68;font-size:.9rem}.relocate-row{border-top:1px solid #5064641f;grid-template-columns:auto 1.2fr 1fr auto 1fr auto;align-items:end;gap:12px;padding:14px 0;display:grid}.relocate-row:first-of-type{border-top:0}.relocate-row label{gap:6px;font-size:.82rem;font-weight:700;display:grid}.relocate-row input,.relocate-row select{background:inherit;width:100%;min-height:44px;color:inherit;border:1px solid #466e6c47;border-radius:12px;padding:9px 11px}.relocate-number{background:#468c841f;border-radius:50%;align-self:center;place-items:center;width:30px;height:30px;display:grid}.relocate-arrow{align-self:center;font-size:1.4rem}.relocate-remove{color:inherit;opacity:.7;cursor:pointer;background:0 0;border:0;align-self:center;text-decoration:underline}.relocate-actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:22px;display:flex}.relocate-message{text-align:center;background:#468c841f;border-radius:14px;max-width:900px;margin:0 auto 18px;padding:12px 16px}.relocate-review-list{gap:12px;display:grid}.relocate-review-item{border:1px solid #466e6c2e;border-radius:15px;padding:15px 17px}.relocate-review-item h3{margin:0 0 8px}.relocate-review-item p{opacity:.84;margin:5px 0}.relocate-totals{background:#468c841a;border-radius:14px;justify-content:space-between;gap:12px;margin-top:18px;padding:15px 17px;display:flex}@media (width<=760px){.relocate-row{grid-template-columns:auto 1fr 1fr}.relocate-row label:first-of-type{grid-column:2/4}.relocate-arrow{display:none}.relocate-remove{grid-column:2/4;justify-self:start}.relocate-card-heading,.relocate-totals{flex-direction:column;align-items:flex-start}.relocate-actions>*{flex:100%}}
