:root{--slate-blue: #324168;--craftsman-orange: #E06829;--sky-blue: #AFCFE4;--deep-navy: #0A112A;--charcoal: #2C2C2C;--workshop-cream: #F5F1E8;font-family:Rubik,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color:var(--charcoal);background-color:var(--workshop-cream);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}*{box-sizing:border-box}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes checkmark{0%{stroke-dashoffset:50}to{stroke-dashoffset:0}}@keyframes popIn{0%{opacity:0;transform:scale(.8)}70%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.app{max-width:1200px;margin:0 auto;padding:2rem;min-height:100vh;display:flex;flex-direction:column}header{margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--sky-blue)}.header-content{display:flex;justify-content:center;align-items:center;position:relative}.header-logo{height:120px;width:auto}.header-content .header-menu,.dropdown.header-menu{position:absolute;right:0;top:50%;transform:translateY(-50%)}.header-buttons{position:absolute;right:0;top:50%;transform:translateY(-50%);display:flex;gap:.5rem}.help-link,.settings-link{color:var(--slate-blue);text-decoration:none;font-size:.9rem;padding:.5rem 1rem;border:1px solid var(--sky-blue);border-radius:6px;transition:all .2s;background:transparent;cursor:pointer}.help-link:hover,.settings-link:hover{background:var(--sky-blue);color:var(--deep-navy)}.modal-overlay{position:fixed;inset:0;background:#0a112ab3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem;animation:fadeIn .2s ease-out}.modal-content{background:#fff;border-radius:16px;max-width:800px;width:100%;max-height:85vh;overflow-y:auto;animation:fadeInScale .25s ease-out;position:relative;box-shadow:0 16px 48px #0003}.modal-close{position:absolute;top:1rem;right:1rem;background:transparent;border:none;font-size:2rem;color:var(--charcoal);cursor:pointer;padding:.5rem;line-height:1;opacity:.6;transition:opacity .2s;z-index:1}.modal-close:hover{opacity:1}.help-modal{padding:2.5rem}.help-content h2{margin:0 0 1.5rem;color:var(--slate-blue);font-weight:500;font-style:italic;font-size:1.75rem;padding-right:2rem}.help-section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--sky-blue)}.help-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.help-section h3{margin:0 0 1rem;color:var(--slate-blue);font-weight:600;font-size:1.1rem}.help-section h4{margin:1rem 0 .5rem;color:var(--deep-navy);font-weight:600;font-size:.95rem}.help-section p{color:var(--charcoal);margin:0 0 .75rem;line-height:1.6}.help-section ul,.help-section ol{color:var(--charcoal);margin:0 0 .75rem;padding-left:1.5rem;line-height:1.6}.help-section li{margin-bottom:.5rem}.help-section ul ul,.help-section ol ul{margin-top:.5rem;margin-bottom:.5rem}.help-table{width:100%;border-collapse:collapse;margin:.75rem 0;font-size:.9rem}.help-table th,.help-table td{padding:.6rem .75rem;text-align:left;border:1px solid var(--sky-blue)}.help-table th{background:#afcfe44d;color:var(--slate-blue);font-weight:600}.help-table td{color:var(--charcoal)}.help-table tr:nth-child(2n) td{background:#afcfe41a}@media(max-width:600px){.modal-overlay{padding:1rem}.help-modal{padding:1.5rem}.modal-content{max-height:90vh}.help-table{font-size:.8rem}.help-table th,.help-table td{padding:.4rem .5rem}.header-buttons{position:static;transform:none;margin-top:1rem;justify-content:center}}.settings-modal{max-width:500px}.settings-content{padding:2rem}.settings-content h2{margin:0 0 1.5rem;color:var(--slate-blue);font-weight:500;font-style:italic;font-size:1.75rem;padding-right:2rem}.settings-section{margin-bottom:1.5rem}.settings-section h3{margin:0 0 .5rem;color:var(--slate-blue);font-weight:600;font-size:1.1rem}.settings-description{color:var(--charcoal);font-size:.9rem;margin:0 0 1rem;opacity:.8}.settings-content .form-group{margin-bottom:1rem}.settings-content .form-group label{display:block;margin-bottom:.35rem;color:var(--slate-blue);font-weight:500;font-size:.9rem}.settings-content .form-group input,.settings-content .form-group textarea{width:100%;padding:.75rem;border:2px solid var(--sky-blue);border-radius:6px;font-size:1rem;font-family:inherit;box-sizing:border-box}.settings-content .form-group input:focus,.settings-content .form-group textarea:focus{outline:none;border-color:var(--craftsman-orange)}.settings-content .form-group textarea{resize:vertical;min-height:80px}.settings-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--sky-blue)}main{flex:1}footer{text-align:center;padding-top:2rem;margin-top:2rem;border-top:1px solid var(--sky-blue);color:var(--charcoal);font-size:.9rem;opacity:.7}button{cursor:pointer;border:none;border-radius:6px;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;font-family:Rubik,sans-serif;transition:all .2s ease}.btn-primary{background:var(--craftsman-orange);color:#fff}.btn-primary:hover{background:#f57c3d;transform:translateY(-1px)}.btn-primary:active{background:#a84a18;transform:translateY(0)}.btn-secondary{background:var(--slate-blue);color:#fff}.btn-secondary:hover{background:#4a5c8c;transform:translateY(-1px)}.btn-secondary:active{background:#1e2840;transform:translateY(0)}.btn-large{padding:1rem 2rem;font-size:1.2rem}.import-csv-section{display:flex;align-items:center;gap:.75rem;margin:.75rem 0 1rem;padding:.75rem 1rem;background:var(--workshop-cream, #F5F1E8);border:1px dashed var(--sky-blue, #AFCFE4);border-radius:8px}.btn-import-csv{padding:.5rem 1rem;font-size:.9rem;border-radius:6px;cursor:pointer;white-space:nowrap}.btn-download-template{background:none;border:none;color:var(--slate-blue, #324168);font-size:.8rem;cursor:pointer;text-decoration:underline;padding:0;white-space:nowrap}.btn-download-template:hover{color:var(--craftsman-orange, #E06829)}.btn-back{background:transparent;color:var(--slate-blue);padding:.5rem 0;font-weight:500}.btn-back:hover{color:var(--craftsman-orange)}.btn-edit{background:var(--slate-blue);color:#fff;padding:.5rem 1rem;font-size:.875rem}.btn-edit:hover{background:#4a5c8c;transform:translateY(-1px)}.btn-edit:active{background:#1e2840;transform:translateY(0)}.btn-delete{background:#c0392b;color:#fff;padding:.5rem 1rem;font-size:.875rem}.btn-delete:hover{background:#e74c3c;transform:translateY(-1px)}.btn-delete:active{background:#922b21;transform:translateY(0)}.btn-loading{position:relative;pointer-events:none;opacity:.8}.btn-loading:after{content:"";position:absolute;right:12px;top:50%;transform:translateY(-50%);width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}button:disabled{opacity:.7;cursor:not-allowed}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--deep-navy)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:2px solid var(--sky-blue);border-radius:6px;font-size:1rem;font-family:Rubik,sans-serif;background:#fff;transition:all .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--craftsman-orange);box-shadow:0 0 0 3px #e0682926}.form-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.form-actions{display:flex;gap:1rem;margin-top:1.5rem}.error{background:#fdeaea;border:1px solid #c0392b;color:#a33125;padding:.75rem;border-radius:6px;margin-bottom:1rem}.project-selection{max-width:600px;margin:0 auto;text-align:center}.project-form{background:#fff;padding:2rem;border-radius:12px;text-align:left;box-shadow:0 2px 8px #00000014}.project-form h2{margin-top:0;color:var(--slate-blue);font-weight:500;font-style:italic}.workflow-selector{display:flex;flex-direction:column;gap:1rem;margin-top:.5rem}.workflow-option{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem;border:2px solid var(--sky-blue);border-radius:12px;cursor:pointer;transition:all .2s ease;background:#fff}.workflow-option:hover{border-color:var(--slate-blue);background:#afcfe41a}.workflow-option.selected{border-color:var(--craftsman-orange);background:#e068290d}.workflow-icon{font-size:2rem;line-height:1}.workflow-content h4{margin:0 0 .25rem;color:var(--deep-navy);font-weight:600}.workflow-content p{margin:0 0 .5rem;color:var(--charcoal);font-size:.9rem}.workflow-steps{display:inline-block;font-size:.75rem;color:var(--slate-blue);font-weight:500;padding:.25rem .5rem;background:#3241681a;border-radius:4px}.workflow-indicator{text-align:center;padding:.5rem;margin-bottom:.5rem;font-size:.875rem;color:var(--slate-blue);font-weight:500}.project-list{margin-top:3rem;text-align:left}.project-list h2{color:var(--slate-blue);margin-bottom:1rem;font-weight:500;font-style:italic}.project-card{display:flex;justify-content:space-between;align-items:center;background:#fff;padding:1.5rem;border-radius:8px;margin-bottom:1rem;border-left:4px solid var(--craftsman-orange);transition:all .2s ease;cursor:pointer}.project-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px);border-left-color:#c85a22}.project-card:active{transform:translateY(0)}.project-card-info{cursor:pointer;flex:1}.project-card h3{margin:0 0 .5rem;color:var(--slate-blue);font-weight:500}.project-card p{margin:0 0 .5rem;color:var(--charcoal)}.project-meta{font-size:.875rem;color:var(--charcoal);opacity:.7}.project-view{max-width:100%}.project-header{margin-bottom:2rem}.project-header-top{display:flex;justify-content:space-between;align-items:center}.btn-export{background:var(--slate-blue);color:#fff;padding:.5rem 1rem;font-size:.875rem;display:flex;align-items:center;gap:.5rem}.btn-export:hover{background:#273352}.project-title h2{margin:1rem 0 .5rem;color:var(--slate-blue);font-weight:500;font-style:italic}.project-description{color:var(--charcoal);margin:0;opacity:.8}.project-content{display:grid;grid-template-columns:1fr 350px;gap:2rem;align-items:start}.boards-section{min-width:0}.board-form{background:#fff;padding:1.5rem;border-radius:12px;margin-bottom:2rem;box-shadow:0 2px 8px #00000014}.board-form h3{margin-top:0;color:var(--slate-blue);font-weight:500;font-style:italic}.board-list h3{color:var(--slate-blue);margin-bottom:1rem;font-weight:500;font-style:italic}.board-item{display:flex;justify-content:space-between;align-items:center;background:#fff;border:1px solid var(--sky-blue);border-left:4px solid var(--slate-blue);padding:1rem 1.5rem;border-radius:8px;margin-bottom:.75rem}.board-info h4{margin:0 0 .25rem;color:var(--deep-navy);font-weight:500}.board-dimensions{margin:0;color:var(--charcoal);font-size:.875rem}.board-feet{margin:.5rem 0 0;color:var(--craftsman-orange);font-weight:700}.board-quantity{color:var(--slate-blue);font-weight:500}.per-piece{color:var(--charcoal);font-size:.875rem;font-weight:400;opacity:.7}.board-species,.cut-piece-species{margin:.25rem 0 0;color:var(--slate-blue);font-size:.8rem;font-weight:500;font-style:italic}.board-actions{display:flex;gap:.5rem}.drag-handle{cursor:grab;color:var(--charcoal);opacity:.4;font-size:1.2rem;padding-right:.75rem;-webkit-user-select:none;user-select:none;transition:opacity .2s}.drag-handle:hover{opacity:.8}.drag-handle:active{cursor:grabbing}.board-item,.cut-piece-item{transition:transform .15s,box-shadow .15s,border-color .15s,background-color .15s}.board-item.dragging,.cut-piece-item.dragging{opacity:.5;transform:scale(.98);box-shadow:0 4px 12px #00000026}.board-item.drag-over,.cut-piece-item.drag-over{border-color:var(--craftsman-orange);border-left-color:var(--craftsman-orange);background-color:#e068290d}.reorder-hint{font-size:.75rem;color:var(--charcoal);opacity:.6;margin:-.5rem 0 .75rem;font-style:italic}.summary-section{position:sticky;top:2rem}.project-summary{background:var(--deep-navy);color:#fff;padding:1.5rem;border-radius:12px}.project-summary h3{margin-top:0;color:#fff;border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:.75rem;font-weight:500;font-style:italic}.summary-stats{display:flex;gap:1rem;margin-bottom:1.5rem}.stat{text-align:center;flex:1;padding:1rem;background:var(--slate-blue);border-radius:8px}.stat-value{display:block;font-size:2rem;font-weight:700}.stat-label{display:block;font-size:.75rem;text-transform:uppercase;opacity:.8;margin-top:.25rem}.stat.total{background:var(--craftsman-orange)}.board-list-summary h4{margin:0 0 1rem;color:#fff;font-size:.875rem;text-transform:uppercase;font-weight:500}.board-list-summary table{width:100%;border-collapse:collapse;font-size:.875rem}.board-list-summary th,.board-list-summary td{padding:.5rem;text-align:left;border-bottom:1px solid rgba(255,255,255,.1)}.board-list-summary th{font-weight:500;opacity:.8}.board-list-summary tfoot td{border-top:2px solid var(--craftsman-orange);border-bottom:none;padding-top:.75rem}.tab-nav{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:2px solid var(--sky-blue);padding-bottom:0}.tab-btn{background:transparent;color:var(--charcoal);padding:.75rem 1.5rem;border-radius:8px 8px 0 0;border-bottom:3px solid transparent;margin-bottom:-2px;font-weight:500;display:flex;align-items:center;gap:.5rem;transition:background .2s ease,color .2s ease,border-color .2s ease}.tab-btn:hover{background:#afcfe44d}.tab-btn.active{background:#fff;color:var(--slate-blue);border-bottom:3px solid var(--craftsman-orange)}.tab-step{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:50%;background:var(--sky-blue);color:var(--slate-blue);font-size:.75rem;font-weight:700}.tab-btn.active .tab-step{background:var(--craftsman-orange);color:#fff}.workflow-prompt{text-align:center;padding:3rem 2rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.workflow-prompt h3{margin-top:0;color:var(--slate-blue);font-weight:500;font-style:italic}.workflow-prompt p{color:var(--charcoal);margin-bottom:1.5rem}.next-step-prompt{margin-top:2rem;padding:1.5rem;background:#e0682914;border-radius:12px;text-align:center;border:2px dashed var(--craftsman-orange)}.next-step-prompt p{margin:0 0 1rem;color:var(--deep-navy);font-weight:500}.next-step-section{margin-top:2rem}.recalculate-section{margin-top:1.5rem;text-align:center;padding-top:1.5rem;border-top:1px solid var(--sky-blue)}.main-section{min-width:0}.cut-piece-form{background:#fff;padding:1.5rem;border-radius:12px;margin-bottom:2rem;box-shadow:0 2px 8px #00000014}.cut-piece-form h3{margin-top:0;color:var(--slate-blue);font-weight:500;font-style:italic}.cut-piece-list h3{color:var(--slate-blue);margin-bottom:1rem;font-weight:500;font-style:italic}.cut-piece-item{display:flex;justify-content:space-between;align-items:center;background:#fff;border:1px solid var(--sky-blue);border-left:4px solid var(--craftsman-orange);padding:1rem 1.5rem;border-radius:8px;margin-bottom:.75rem}.cut-piece-info h4{margin:0 0 .25rem;color:var(--deep-navy);font-weight:500}.cut-piece-dimensions{margin:0;color:var(--charcoal);font-size:.875rem}.cut-piece-quantity{color:var(--craftsman-orange);font-weight:500}.cut-piece-actions{display:flex;gap:.5rem}.warning{background:#fff3cd;border:1px solid #ffc107;color:#856404;padding:.75rem;border-radius:6px;margin-bottom:1rem}.generate-plan-section{margin-top:2rem;text-align:center;padding:2rem;background:#afcfe433;border-radius:12px;border:2px dashed var(--sky-blue)}.stock-calculator{margin-top:2rem;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.stock-calculator h3{margin-top:0;color:var(--slate-blue);font-weight:500;font-style:italic}.stock-calculator-intro{color:var(--charcoal);margin-bottom:1.5rem}.thickness-selector{margin-bottom:1.5rem}.thickness-selector>label{display:block;font-weight:500;color:var(--deep-navy);margin-bottom:.5rem}.thickness-options{display:flex;flex-wrap:wrap;gap:.5rem}.thickness-btn{padding:.5rem 1rem;background:#fff;border:2px solid var(--sky-blue);border-radius:6px;color:var(--charcoal);font-weight:500;font-size:.875rem}.thickness-btn:hover{border-color:var(--slate-blue)}.thickness-btn.active{background:var(--craftsman-orange);border-color:var(--craftsman-orange);color:#fff}.species-selector{margin-bottom:1.5rem}.species-selector>label{display:block;font-weight:500;color:var(--deep-navy);margin-bottom:.5rem}.species-options{display:flex;flex-wrap:wrap;gap:.5rem}.species-btn{padding:.5rem 1rem;background:#fff;border:2px solid var(--sky-blue);border-radius:6px;color:var(--charcoal);font-weight:500;font-size:.875rem}.species-btn:hover{border-color:var(--slate-blue)}.species-btn.active{background:var(--slate-blue);border-color:var(--slate-blue);color:#fff}.board-types-list{background:#fff;border:2px solid var(--craftsman-orange);border-radius:12px;padding:1rem;margin-bottom:1rem}.board-types-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.board-types-header h4{margin:0;color:var(--slate-blue);font-weight:600;font-size:.95rem}.board-type-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#afcfe426;border-left:3px solid var(--craftsman-orange);border-radius:6px;margin-bottom:.5rem;transition:all .3s ease}.board-type-item:last-of-type{margin-bottom:0}.board-type-item.just-added{background:#e0682926;animation:highlight-fade 2s ease-out}@keyframes highlight-fade{0%{background:#e068294d;transform:scale(1.02)}to{background:#afcfe426;transform:scale(1)}}.board-type-info{display:flex;flex-direction:column;gap:.25rem}.board-type-name{font-weight:600;color:var(--deep-navy);font-size:.95rem}.board-type-details{font-size:.8rem;color:var(--charcoal)}.btn-remove{width:28px;height:28px;padding:0;background:transparent;border:1px solid var(--sky-blue);border-radius:4px;color:var(--charcoal);font-size:1.25rem;line-height:1;display:flex;align-items:center;justify-content:center;flex-shrink:0}.btn-remove:hover{background:#fdeaea;border-color:#c0392b;color:#c0392b}.btn-calculate{width:100%;margin-top:1rem;padding:1rem;font-size:1.1rem}.btn-calculate-anyway{width:100%;margin-top:.5rem;padding:.75rem;font-size:.9rem}.board-type-builder{background:#afcfe426;border-radius:12px;padding:1.5rem;margin-bottom:1rem}.builder-header{margin-bottom:1rem}.builder-title{font-weight:600;color:var(--slate-blue);font-size:1rem}.builder-step{margin-bottom:1.25rem}.builder-step:last-of-type{margin-bottom:1rem}.builder-label{display:block;font-weight:600;color:var(--slate-blue);margin-bottom:.5rem;font-size:.9rem}.size-toggle{display:flex;gap:0;margin-bottom:.75rem;border:2px solid var(--sky-blue);border-radius:6px;overflow:hidden}.size-toggle .toggle-btn{flex:1;padding:.5rem .75rem;font-size:.875rem}.size-options{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.size-btn{display:flex;flex-direction:column;align-items:flex-start;padding:.75rem;background:#fff;border:2px solid var(--sky-blue);border-radius:6px;text-align:left;transition:all .2s ease}.size-btn:hover{border-color:var(--slate-blue)}.size-btn.active{border-color:var(--craftsman-orange);background:#e0682914}.size-name{font-weight:500;color:var(--deep-navy);font-size:.9rem}.size-bf{font-size:.75rem;color:var(--charcoal);opacity:.7}.custom-size-inputs{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.custom-size-inputs .form-group{margin-bottom:0}.custom-size-inputs label{font-size:.8rem}.custom-size-inputs input{padding:.5rem}.btn-add-board-type{width:100%;padding:.75rem 1rem;background:var(--craftsman-orange);color:#fff;font-weight:600;border-radius:6px}.btn-add-board-type:hover:not(:disabled){background:#c85a22}.btn-add-board-type:disabled{opacity:.5;cursor:not-allowed}.stock-template-selector{margin-bottom:1.5rem}.template-toggle{display:flex;gap:0;margin-bottom:1rem;border:2px solid var(--sky-blue);border-radius:8px;overflow:hidden}.toggle-btn{flex:1;padding:.75rem 1rem;background:#fff;color:var(--charcoal);border:none;border-radius:0;font-weight:500}.toggle-btn.active{background:var(--slate-blue);color:#fff}.toggle-btn:hover:not(.active){background:#afcfe44d}.template-options{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.template-option{display:flex;align-items:center;padding:.75rem 1rem;border:2px solid var(--sky-blue);border-radius:8px;cursor:pointer;transition:all .2s ease}.template-option:hover{border-color:var(--slate-blue)}.template-option.selected{border-color:var(--craftsman-orange);background:#e068290d}.template-option input{margin-right:.75rem;accent-color:var(--craftsman-orange)}.template-name{flex:1;font-weight:500;color:var(--deep-navy)}.template-bf{font-size:.875rem;color:var(--charcoal);opacity:.7}.template-hint{font-size:.875rem;color:var(--charcoal);margin-bottom:.75rem}.template-options.multi-select .template-option{cursor:pointer}.multi-select-info{font-size:.875rem;color:var(--slate-blue);font-weight:500;margin-top:.75rem;margin-bottom:0}.stock-breakdown{background:#afcfe433;border-radius:8px;padding:1rem;margin-bottom:1rem}.breakdown-item{display:flex;align-items:center;padding:.5rem 0;border-bottom:1px solid rgba(175,207,228,.5)}.breakdown-item:last-child{border-bottom:none;padding-bottom:0}.breakdown-item:first-child{padding-top:0}.breakdown-count{font-size:1.25rem;font-weight:700;color:var(--craftsman-orange);min-width:3rem}.breakdown-desc{font-weight:500;color:var(--deep-navy)}.breakdown-thickness{font-weight:400;color:var(--charcoal);opacity:.7}.pricing-table{width:100%;border-collapse:collapse;font-size:.9rem}.pricing-table th{text-align:left;padding:.5rem .25rem;border-bottom:2px solid var(--sky-blue);color:var(--slate-blue);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.5px}.pricing-table td{padding:.6rem .25rem;border-bottom:1px solid rgba(175,207,228,.4);vertical-align:top}.pricing-table tbody tr:last-child td{border-bottom:none}.pricing-table .qty-col{font-weight:700;color:var(--craftsman-orange);width:3rem}.pricing-table .desc-col{font-weight:500;color:var(--deep-navy)}.pricing-table .breakdown-details{display:block;font-weight:400;font-size:.8rem;color:var(--charcoal);opacity:.7;margin-top:.15rem}.pricing-table .bf-col,.pricing-table .price-col,.pricing-table .cost-col{text-align:right;white-space:nowrap}.pricing-table .bf-col{width:4rem;color:var(--charcoal)}.pricing-table .price-col{width:4.5rem;color:var(--charcoal);opacity:.8}.pricing-table .cost-col{width:5rem;font-weight:600;color:var(--deep-navy)}.pricing-table tfoot{border-top:2px solid var(--slate-blue)}.pricing-table .total-row td{padding-top:.75rem;border-bottom:none}.pricing-table .total-label{text-align:right;font-weight:600;color:var(--slate-blue)}.pricing-table .total-cost{text-align:right;font-weight:700;font-size:1.1rem;color:var(--craftsman-orange)}.pricing-context{font-size:.9rem;color:var(--slate-blue);margin:0 0 1rem;padding:.75rem 1rem;background:#afcfe433;border-radius:6px;border-left:3px solid var(--slate-blue)}.pricing-context strong{color:var(--craftsman-orange)}.pricing-note{font-size:.8rem;color:var(--charcoal);opacity:.7;margin:.5rem 0 0;font-style:italic}.pricing-disclaimer{font-size:.75rem;color:var(--charcoal);opacity:.6;margin:.75rem 0 0;padding-top:.75rem;border-top:1px dashed rgba(175,207,228,.5);text-align:center}.cut-plan-pricing{margin-top:2rem;padding-top:1.5rem;border-top:2px solid var(--sky-blue)}.cut-plan-pricing h4{margin:0 0 1rem;color:var(--slate-blue);font-weight:500}.cut-plan-stat.highlight{background:var(--craftsman-orange)}.cut-plan-stat.highlight .stat-value{color:#fff}.price-input-wrapper{display:flex;align-items:center;justify-content:flex-end}.price-symbol{color:var(--charcoal);opacity:.6;font-size:.85rem;margin-right:2px}.price-input{width:60px;padding:.25rem .35rem;border:1px solid rgba(175,207,228,.5);border-radius:4px;font-size:.85rem;text-align:right;background:#fff;transition:border-color .2s,box-shadow .2s}.price-input:focus{outline:none;border-color:var(--craftsman-orange);box-shadow:0 0 0 2px #e0682926}.price-input::placeholder{color:var(--charcoal);opacity:.4}.price-input::-webkit-outer-spin-button,.price-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.price-input[type=number]{-moz-appearance:textfield}.pricing-table tr.custom-price{background:#e0682914}.pricing-table tr.custom-price .price-input{border-color:var(--craftsman-orange);font-weight:600}.custom-template-form{margin-bottom:1rem}.custom-template-form .form-row{grid-template-columns:repeat(3,1fr)}.stock-result{margin-top:1.5rem;padding-top:1.5rem;border-top:2px solid var(--sky-blue)}.stock-result-header h4{margin:0 0 1rem;color:var(--slate-blue);font-weight:500}.stock-result-stats{display:flex;gap:1rem;margin-bottom:1.5rem}.result-stat{flex:1;text-align:center;padding:1rem;background:var(--deep-navy);border-radius:8px;color:#fff}.result-value{display:block;font-size:1.75rem;font-weight:700}.result-label{display:block;font-size:.75rem;text-transform:uppercase;opacity:.8;margin-top:.25rem}.stock-result-warnings{margin-bottom:1rem}.stock-result .btn-large{width:100%}.cut-plan-display{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 2px 8px #00000014}.cut-plan-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.cut-plan-header h3{margin:0;color:var(--slate-blue);font-weight:500;font-style:italic}.cut-plan-stats{display:flex;gap:1rem;margin-bottom:1.5rem}.cut-plan-stat{flex:1;text-align:center;padding:1rem;background:var(--deep-navy);border-radius:8px;color:#fff}.cut-plan-stat .stat-value{font-size:1.5rem;font-weight:700;display:block}.cut-plan-stat .stat-label{font-size:.75rem;text-transform:uppercase;opacity:.8}.cut-plan-stat.stat-good{background:#1e7b46}.cut-plan-stat.stat-moderate{background:#b8860b}.cut-plan-stat.stat-poor{background:#c0392b}.cut-plan-stat.stat-highlight{background:var(--craftsman-orange)}.cut-plan-warnings{margin-bottom:1.5rem}.cut-plan-boards{display:flex;flex-direction:column;gap:1.5rem}.cut-plan-board{border:1px solid var(--sky-blue);border-radius:8px;padding:1rem;background:#fafafa}.cut-plan-board-label{font-weight:500;color:var(--deep-navy);margin-bottom:.75rem}.cut-plan-board-dims{font-weight:400;color:var(--charcoal);opacity:.7;margin-left:.5rem;font-size:.875rem}.cut-plan-svg{display:block;max-width:100%;height:auto}.cut-dimensions-list{margin-top:1rem;border-top:1px solid var(--sky-blue);padding-top:1rem}.cut-dimensions-table{width:100%;border-collapse:collapse;font-size:.875rem}.cut-dimensions-table th,.cut-dimensions-table td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid var(--sky-blue)}.cut-dimensions-table th{font-weight:600;color:var(--slate-blue);font-size:.75rem;text-transform:uppercase;background:#afcfe433}.cut-dimensions-table td{color:var(--charcoal)}.cut-dimensions-table td:nth-child(2),.cut-dimensions-table td:nth-child(3){font-weight:600;color:var(--deep-navy)}.cut-color-indicator{display:inline-block;width:12px;height:12px;border-radius:2px;margin-right:.5rem;vertical-align:middle}.cut-plan-empty{text-align:center;color:var(--charcoal);opacity:.7;padding:2rem}.no-plan{text-align:center;padding:3rem 2rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.no-plan p{color:var(--charcoal);margin:0 0 1rem}.summary-section-label{font-size:.75rem;text-transform:uppercase;color:#fff9;margin-bottom:.5rem;margin-top:1rem;font-weight:500}.summary-section-label:first-of-type{margin-top:0}.summary-divider{border-top:1px solid rgba(255,255,255,.15);margin:1rem 0 .5rem}@media(max-width:900px){.project-content{grid-template-columns:1fr}.summary-section{position:static}.form-row{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.form-row{grid-template-columns:1fr}}@media(max-width:600px){.app{padding:1rem}header h1{font-size:1.75rem}.tab-nav{flex-wrap:wrap}.tab-btn{flex:1;min-width:0;padding:.5rem .75rem;font-size:.875rem}.board-item,.cut-piece-item{flex-direction:row;align-items:center;gap:.75rem}.board-actions,.cut-piece-actions{flex-shrink:0}.board-actions button,.cut-piece-actions button{padding:.4rem .6rem;font-size:.75rem}.cut-plan-stats{flex-direction:column}}@media(max-width:480px){.app{padding:.75rem}.header-content{flex-direction:row;justify-content:space-between;position:relative}.header-logo{height:60px}.dropdown.header-menu,.header-content .header-menu{position:static;transform:none}.header-buttons{position:static;transform:none;width:100%;justify-content:center}.help-link,.settings-link{flex:1;text-align:center;padding:.75rem;font-size:.85rem}.user-header{flex-wrap:wrap;gap:.5rem;padding:.5rem}.user-email{width:100%;text-align:center;font-size:.85rem}.sync-status{flex:1}.btn-signout{padding:.4rem .75rem;font-size:.8rem}.project-header-top{flex-direction:column;gap:.75rem;align-items:stretch}.project-header-top .btn-back,.project-header-top .btn-export{width:100%;justify-content:center;padding:.75rem;font-size:.9rem}.project-title h2{font-size:1.35rem;text-align:center}.project-description{text-align:center}.project-quantity-selector{flex-direction:column;align-items:stretch;gap:.5rem;padding:.75rem}.project-quantity-input{width:100%;text-align:center}.tab-nav{flex-direction:column;gap:.5rem}.tab-btn{width:100%;padding:.875rem;font-size:.95rem}.form-group input,.form-group select,.form-group textarea{font-size:16px;padding:.875rem;min-height:48px}.form-group label{font-size:.9rem;margin-bottom:.5rem}.btn-primary,.btn-secondary{min-height:48px;padding:.875rem 1.25rem;font-size:1rem}.board-item,.cut-piece-item{padding:1rem}.board-info h4,.cut-piece-info h4{font-size:1rem}.board-info p,.cut-piece-info p{font-size:.85rem}.board-actions,.cut-piece-actions{flex-direction:row;gap:.35rem}.board-actions button,.cut-piece-actions button{min-height:36px;padding:.35rem .5rem;font-size:.7rem}.stock-calculator{padding:1rem}.stock-calculator h3{font-size:1.1rem}.calculator-section h4{font-size:.95rem}.board-type-item{padding:.75rem}.cut-plan-stats{gap:.5rem}.stat-item{padding:.75rem;min-width:100%}.stat-value{font-size:1.25rem}.stat-label{font-size:.75rem}.cut-diagram{padding:.75rem}.cut-diagram h4{font-size:.9rem}.project-card{padding:1rem}.project-card h3{font-size:1.1rem}.project-card-actions{flex-direction:column}.project-card-actions button{width:100%;min-height:44px}.modal-overlay{padding:2rem .5rem .5rem;align-items:flex-start}.modal-content{max-height:90vh;border-radius:12px}.help-content,.settings-content{padding:1rem}.help-content h2,.settings-content h2{font-size:1.35rem}.help-section h3{font-size:1rem}.help-section p,.help-section li{font-size:.9rem}.purchase-order-modal{max-width:100%}.purchase-order{padding:1rem}.po-header-row{flex-direction:column;gap:1rem}.po-customer-info{text-align:left}.po-table{font-size:.85rem}.po-table th,.po-table td{padding:.5rem .4rem}.summary-panel{padding:1rem}.summary-panel h3{font-size:1.1rem}.auth-container{padding:1rem}.auth-card{padding:1.5rem}.auth-logo{max-height:60px}}@media(min-width:481px)and (max-width:600px){.project-header-top{flex-wrap:wrap;gap:.5rem}.project-header-top .btn-back{order:1}.project-header-top .btn-export{order:2;flex:1}.tab-nav{gap:.25rem}.tab-btn{padding:.625rem .5rem;font-size:.8rem}}@media(min-width:601px)and (max-width:900px){.project-content{grid-template-columns:1fr}.summary-panel{position:static;order:-1}.project-header-top{flex-wrap:wrap;gap:.5rem}}@media(hover:none)and (pointer:coarse){.board-actions button,.cut-piece-actions button{min-height:36px;min-width:36px}}@supports (padding: max(0px)){.app{padding-left:max(.75rem,env(safe-area-inset-left));padding-right:max(.75rem,env(safe-area-inset-right));padding-bottom:max(1rem,env(safe-area-inset-bottom))}}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:linear-gradient(135deg,var(--sky-blue) 0%,#e8f4f8 100%)}.auth-card{background:#fff;padding:2.5rem;border-radius:16px;box-shadow:0 8px 32px #0000001a;width:100%;max-width:420px}.auth-title{margin:0 0 .5rem;color:var(--slate-blue);font-size:2rem;font-weight:500;font-style:italic;text-align:center}.auth-logo{display:block;max-height:70px;width:auto;margin:0 auto 1rem}.auth-subtitle{text-align:center;color:var(--charcoal);margin:0 0 2rem;opacity:.8}.auth-form{display:flex;flex-direction:column}.auth-form .form-group{margin-bottom:1.25rem}.auth-btn{margin-top:.5rem;padding:1rem;font-size:1.1rem}.auth-btn:disabled{opacity:.7;cursor:not-allowed}.auth-error{background:#fdeaea;border:1px solid #c0392b;color:#a33125;padding:.75rem;border-radius:6px;margin-bottom:1rem;text-align:center}.auth-message{background:#e8f5e9;border:1px solid #4caf50;color:#2e7d32;padding:.75rem;border-radius:6px;margin-bottom:1rem;text-align:center}.auth-toggle{text-align:center;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--sky-blue)}.auth-toggle p{margin:0;color:var(--charcoal)}.link-btn{background:none;border:none;color:var(--craftsman-orange);font-weight:600;padding:0;cursor:pointer;font-size:inherit}.link-btn:hover{text-decoration:underline}.user-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--deep-navy);margin:-2rem -2rem 2rem;border-radius:0}.user-email{color:#fff;font-size:.875rem;opacity:.9}.btn-signout{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.3);padding:.5rem 1rem;font-size:.875rem}.btn-signout:hover{background:#ffffff1a;border-color:#ffffff80}.loading-container{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem}.loading-spinner{width:48px;height:48px;border:4px solid var(--sky-blue);border-top-color:var(--craftsman-orange);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg,#e8e8e8 25%,#f5f5f5,#e8e8e8 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px}.skeleton-text{height:1rem;margin-bottom:.5rem}.skeleton-text.short{width:40%}.skeleton-text.medium{width:60%}.skeleton-text.long{width:80%}.skeleton-title{height:1.5rem;width:50%;margin-bottom:.75rem}.skeleton-button{height:44px;width:120px;border-radius:6px}.skeleton-project-card{background:#fff;padding:1.5rem;border-radius:8px;margin-bottom:1rem;border-left:4px solid #e0e0e0}.skeleton-project-card .skeleton-title{width:60%}.skeleton-project-card .skeleton-text{width:80%}.skeleton-project-card .skeleton-meta{height:.75rem;width:30%;margin-top:.5rem}.skeleton-item{display:flex;justify-content:space-between;align-items:center;background:#fff;border:1px solid #e8e8e8;border-left:4px solid #e0e0e0;padding:1rem 1.5rem;border-radius:8px;margin-bottom:.75rem}.skeleton-item-info{flex:1}.skeleton-item-info .skeleton-title{height:1.1rem;width:40%;margin-bottom:.5rem}.skeleton-item-info .skeleton-text{height:.875rem;width:60%}.skeleton-item-actions{display:flex;gap:.5rem}.skeleton-item-actions .skeleton-button{width:60px;height:36px}.skeleton-summary{background:var(--deep-navy);padding:1.5rem;border-radius:12px}.skeleton-summary .skeleton{background:linear-gradient(90deg,#ffffff1a 25%,#fff3,#ffffff1a 75%);background-size:200% 100%}.skeleton-summary .skeleton-title{height:1.25rem;width:50%;margin-bottom:1rem}.skeleton-stats{display:flex;gap:1rem;margin-bottom:1.5rem}.skeleton-stat{flex:1;height:80px;border-radius:8px;background:linear-gradient(90deg,#ffffff0d 25%,#ffffff1a,#ffffff0d 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.skeleton-form{background:#fff;padding:1.5rem;border-radius:12px;margin-bottom:2rem}.skeleton-form .skeleton-title{width:40%;margin-bottom:1.5rem}.skeleton-form-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1rem}.skeleton-input{height:44px;border-radius:6px}.skeleton-label{height:.875rem;width:60%;margin-bottom:.5rem}.skeleton-cut-plan{background:#fff;padding:1.5rem;border-radius:12px}.skeleton-cut-plan .skeleton-title{width:35%;margin-bottom:1.5rem}.skeleton-cut-plan-stats{display:flex;gap:1rem;margin-bottom:1.5rem}.skeleton-cut-plan-stat{flex:1;height:70px;border-radius:8px}.skeleton-diagram{height:120px;border-radius:8px;margin-bottom:1rem}@keyframes shimmerLight{0%{background-position:-200% 0}to{background-position:200% 0}}.sync-status{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:#ffffffb3}.sync-indicator{width:8px;height:8px;border-radius:50%;background:#4caf50}.sync-indicator.syncing{background:#ffc107;animation:pulse 1s ease-in-out infinite}.sync-indicator.error{background:#c0392b}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.quantity-input-row{display:flex;align-items:center;gap:.75rem}.quantity-input{width:80px;padding:.75rem;border:2px solid var(--sky-blue);border-radius:6px;font-size:1rem;text-align:center;font-weight:600}.quantity-input:focus{outline:none;border-color:var(--craftsman-orange)}.quantity-hint{color:var(--charcoal);font-size:.9rem;font-style:italic}.project-quantity-selector{display:flex;align-items:center;gap:.5rem;margin-top:.75rem;padding:.75rem 1rem;background:#afcfe433;border-radius:8px;width:fit-content}.project-quantity-selector label{font-weight:500;color:var(--slate-blue)}.project-quantity-input{width:60px;padding:.4rem .5rem;border:2px solid var(--sky-blue);border-radius:6px;font-size:1rem;text-align:center;font-weight:600;background:#fff}.project-quantity-input:focus{outline:none;border-color:var(--craftsman-orange)}.project-quantity-label{color:var(--charcoal);font-size:.9rem}.project-quantity-notice{background:#e068291a;border:1px solid var(--craftsman-orange);color:var(--deep-navy);padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:.9rem}.summary-quantity-badge{background:var(--craftsman-orange);color:#fff;padding:.5rem 1rem;border-radius:6px;font-weight:600;font-size:.875rem;text-align:center;margin-bottom:1rem}.stat-per-item{display:block;font-size:.65rem;opacity:.8;margin-top:.15rem}.purchase-order-modal{max-width:600px}.purchase-order{padding:2rem}.po-header{border-bottom:2px solid var(--slate-blue);padding-bottom:1rem;margin-bottom:1.5rem}.po-header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem}.po-title-section{flex:1}.po-header h2{margin:0 0 1rem;color:var(--slate-blue);font-weight:500;font-style:italic}.po-meta p{margin:.25rem 0;color:var(--charcoal);font-size:.95rem}.po-customer-info{text-align:right;flex-shrink:0}.po-customer-info p{margin:.15rem 0;color:var(--charcoal);font-size:.9rem}.po-customer-name{font-weight:600;color:var(--deep-navy)!important;font-size:1rem!important}.po-customer-address{white-space:pre-line}.po-customer-hint{background:#afcfe433;padding:.75rem 1rem;border-radius:6px;border:1px dashed var(--sky-blue)}.po-hint-text{color:var(--slate-blue)!important;font-style:italic;font-size:.85rem!important}.po-table{width:100%;border-collapse:collapse;margin-bottom:1.5rem}.po-table th{background:var(--slate-blue);color:#fff;padding:.75rem;text-align:left;font-weight:500;font-size:.9rem}.po-table td{padding:.75rem;border-bottom:1px solid var(--sky-blue);font-size:.95rem}.po-table tbody tr:nth-child(2n){background:#afcfe41a}.po-qty{text-align:center;font-weight:600;color:var(--craftsman-orange);width:50px}.po-species{font-weight:500;color:var(--deep-navy)}.po-dims{color:var(--charcoal)}.po-bf{text-align:right;font-weight:500}.po-total-row td{border-top:2px solid var(--slate-blue);border-bottom:none;background:#3241680d}.po-notes{background:#afcfe426;padding:1rem;border-radius:8px;margin-bottom:1.5rem}.po-notes p{margin:0;color:var(--charcoal);font-size:.9rem}.po-section-title{margin-top:1.5rem;margin-bottom:.5rem;color:var(--slate-blue);font-size:1rem}.po-footer{text-align:center;padding-top:1rem;border-top:1px solid var(--sky-blue)}.po-footer p{margin:0;color:var(--charcoal);font-size:.8rem;opacity:.6}.po-actions{display:flex;gap:1rem;justify-content:center;padding:1rem 2rem 2rem;border-top:1px solid var(--sky-blue)}@media print{body *{visibility:hidden}.purchase-order-modal,.purchase-order-modal *{visibility:visible}.purchase-order-modal{position:absolute;left:0;top:0;width:100%;max-width:none;max-height:none;box-shadow:none;border-radius:0}.modal-overlay{position:absolute;background:#fff}.no-print{display:none!important}.purchase-order{padding:0}.po-table th{background:#324168!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.po-table tbody tr:nth-child(2n){background:#f5f5f5!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}.project-form,.board-form,.cut-piece-form,.stock-calculator,.cut-plan-display{box-shadow:0 1px 2px #0000000a,0 4px 8px #0000000a,0 8px 16px #0000000a}.project-summary,.modal-content{box-shadow:0 2px 4px #0000000f,0 8px 16px #00000014,0 16px 32px #0000000f}.project-card{box-shadow:0 1px 3px #0000000f,0 2px 6px #0000000a}.project-card:hover{box-shadow:0 4px 12px #00000014,0 8px 24px #0000000f}.board-item,.cut-piece-item{box-shadow:0 1px 2px #0000000a,inset 0 1px #fffc}.tab-nav{box-shadow:inset 0 -2px 0 var(--sky-blue)}.tab-btn.active{box-shadow:0 -2px 4px #0000000a,inset 0 1px #fffc}.cut-plan-board{box-shadow:0 1px 3px #0000000f,0 2px 6px #0000000a}.stat,.cut-plan-stat,.result-stat{box-shadow:0 2px 4px #0000001a,inset 0 1px #ffffff1a}.form-group input,.form-group select,.form-group textarea{box-shadow:inset 0 1px 2px #0000000f}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{box-shadow:inset 0 1px 2px #0000000f,0 0 0 3px #e0682926}.btn-primary{box-shadow:0 2px 4px #e068294d,inset 0 1px #ffffff1a}.btn-primary:hover{box-shadow:0 4px 8px #e0682959,inset 0 1px #ffffff1a}.btn-primary:active{box-shadow:0 1px 2px #e068294d,inset 0 1px 2px #0000001a}.btn-secondary{box-shadow:0 2px 4px #32416833,inset 0 1px #ffffff1a}.btn-secondary:hover{box-shadow:0 4px 8px #32416840,inset 0 1px #ffffff1a}.btn-secondary:active{box-shadow:0 1px 2px #32416833,inset 0 1px 2px #0000001a}header{position:relative}header:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--sky-blue) 20%,var(--sky-blue) 80%,transparent)}.user-header{background:linear-gradient(135deg,var(--deep-navy) 0%,#1e2840 100%);box-shadow:0 2px 8px #00000026}.workflow-option{box-shadow:0 1px 2px #0000000a,0 2px 4px #00000005}.workflow-option:hover{box-shadow:0 2px 8px #00000014,0 4px 12px #0000000a}.workflow-option.selected{box-shadow:0 2px 8px #e0682926,0 4px 12px #e0682914}.board-type-builder{box-shadow:inset 0 2px 4px #0000000a}.stock-breakdown{box-shadow:inset 0 1px 3px #0000000a}.modal-overlay{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.auth-card{box-shadow:0 4px 8px #0000000f,0 12px 24px #00000014,0 24px 48px #0000000f}.settings-modal,.help-modal{box-shadow:0 8px 16px #0000001a,0 24px 48px #00000026}.error,.warning{box-shadow:0 1px 2px #0000000f,inset 0 1px #ffffff80}.auth-message,.auth-error{box-shadow:0 1px 3px #00000014}.next-step-prompt{box-shadow:0 0 0 1px #e068291a,0 2px 8px #e0682914}.generate-plan-section{box-shadow:inset 0 2px 4px #00000005}.help-section{border-bottom-color:transparent;background-image:linear-gradient(to right,transparent,var(--sky-blue) 10%,var(--sky-blue) 90%,transparent);background-size:100% 1px;background-position:bottom;background-repeat:no-repeat}.help-section:last-child{background-image:none}.dropdown{position:relative;display:inline-block}.dropdown-toggle{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:transparent;border:1px solid var(--sky-blue);border-radius:6px;color:var(--slate-blue);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.dropdown-toggle:hover,.dropdown-toggle.open{background:var(--sky-blue);color:var(--deep-navy)}.dropdown-icon{font-size:1.1rem;line-height:1}.dropdown-arrow{font-size:.7rem;transition:transform .2s ease}.dropdown-toggle.open .dropdown-arrow{transform:rotate(180deg)}.dropdown-menu{position:absolute;top:calc(100% + 4px);right:0;min-width:180px;background:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a,0 8px 24px #00000014;z-index:100;opacity:0;visibility:hidden;transform:translateY(-8px);transition:all .2s ease}.dropdown-menu.open{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-menu-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;background:transparent;border:none;color:var(--charcoal);font-size:.9rem;font-weight:500;text-align:left;cursor:pointer;transition:all .15s ease}.dropdown-menu-item:first-child{border-radius:8px 8px 0 0}.dropdown-menu-item:last-child{border-radius:0 0 8px 8px}.dropdown-menu-item:only-child{border-radius:8px}.dropdown-menu-item:hover{background:#afcfe44d;color:var(--slate-blue)}.dropdown-menu-item-icon{font-size:1rem;width:1.25rem;text-align:center}.dropdown-divider{height:1px;background:var(--sky-blue);margin:.25rem 0}.project-actions-dropdown{margin-left:auto}.project-actions-dropdown .dropdown-toggle{background:var(--slate-blue);border-color:var(--slate-blue);color:#fff}.project-actions-dropdown .dropdown-toggle:hover,.project-actions-dropdown .dropdown-toggle.open{background:#273352;border-color:#273352;color:#fff}.header-menu .dropdown-toggle{padding:.5rem .75rem}.header-menu .dropdown-menu{min-width:160px}.dropdown-backdrop{position:fixed;inset:0;z-index:99}@media(max-width:480px){.dropdown-menu{min-width:200px}.dropdown-menu-item{padding:1rem;font-size:1rem}.project-header-top{flex-direction:row;flex-wrap:wrap}.project-actions-dropdown{flex:0 0 auto}}.empty-state{text-align:center;padding:3rem 2rem;background:#fff;border-radius:12px;border:2px dashed var(--sky-blue)}.empty-state-icon{font-size:3rem;margin-bottom:1rem;opacity:.8}.empty-state h3{margin:0 0 .5rem;color:var(--slate-blue);font-weight:500;font-style:italic}.empty-state p{margin:0 0 1.5rem;color:var(--charcoal);opacity:.8;max-width:300px;margin-left:auto;margin-right:auto}.empty-state .btn-primary{display:inline-flex;align-items:center;gap:.5rem}.empty-state-projects{margin-top:2rem;background:#afcfe41a}.empty-state-projects .empty-state-icon{color:var(--craftsman-orange)}.empty-state-inline{padding:2rem 1.5rem;margin-bottom:1rem}.empty-state-inline .empty-state-icon{font-size:2.5rem}.empty-state-inline h3{font-size:1.1rem}.empty-state-inline p{font-size:.9rem;margin-bottom:1rem}@media(max-width:480px){.empty-state{padding:2rem 1rem}.empty-state-icon{font-size:2.5rem}.empty-state h3{font-size:1.1rem}.empty-state p{font-size:.9rem}}.confirm-dialog{max-width:400px;padding:1.5rem;text-align:center}.confirm-dialog h3{margin:0 0 .75rem;color:var(--slate-blue);font-weight:500;font-size:1.25rem}.confirm-dialog p{margin:0 0 1.5rem;color:var(--charcoal);line-height:1.5}.confirm-dialog-actions{display:flex;gap:1rem;justify-content:center}.confirm-dialog-actions button{min-width:100px}.species-color-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .5rem;border-radius:4px;font-size:.8rem;font-weight:500}.species-color-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;display:inline-block}.cut-plan-board-species{display:inline-flex;align-items:center;gap:.35rem;margin-left:.75rem;padding:.15rem .5rem;background:#ffffffe6;border-radius:4px;font-size:.8rem;font-weight:500;color:var(--charcoal)}.material-type-toggle{display:flex;justify-content:center;gap:.5rem;margin-bottom:1rem;padding:.25rem;background:var(--light-gray);border-radius:8px;width:fit-content;margin-left:auto;margin-right:auto}.material-type-btn{padding:.5rem 1.25rem;border:none;background:transparent;color:var(--charcoal);font-size:.9rem;font-weight:500;border-radius:6px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.material-type-btn:hover{background:#ffffff80}.material-type-btn.active{background:#fff;color:var(--forest-green);box-shadow:0 1px 3px #0000001a}.material-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;margin-left:4px;background-color:var(--craftsman-orange);color:#fff;border-radius:10px;font-size:.7rem;font-weight:600}.material-type-btn:not(.active) .material-badge{background-color:#999;color:#fff}.sheet-goods-form,.sheet-cut-piece-form{animation:fadeIn .3s ease}.grain-direction-group{flex:1.5}.grain-select{width:100%}.grain-hint{display:block;font-size:.75rem;color:var(--gray);margin-top:.25rem;font-style:italic}.grain-badge{display:inline-block;padding:.15rem .5rem;background:var(--sky-blue);color:var(--forest-green);border-radius:4px;font-size:.7rem;font-weight:600;margin-left:.5rem;text-transform:uppercase}.sheet-item,.sheet-cut-item{border-left:4px solid var(--sky-blue)}.sheet-item .board-info h4,.sheet-cut-item .cut-piece-info h4{color:var(--forest-green)}.sheet-goods-section,.sheet-cut-list-section,.sheet-cut-plan-section{animation:fadeIn .3s ease}.sheet-list h3,.sheet-cut-piece-list h3{color:var(--forest-green);display:flex;align-items:center;gap:.5rem}.sheet-list h3:before{content:"📦"}.sheet-cut-piece-list h3:before{content:"✂️"}.piece-details{font-size:.85rem;color:var(--gray);display:flex;align-items:center;flex-wrap:wrap;gap:.25rem}
