:root{--apple-grey-1:#f5f5f7;--apple-grey-2:#e5e5ea;--apple-grey-3:#86868b;--apple-grey-4:#424245;--apple-grey-5:#1d1d1f;--apple-black:#000000;--apple-white:#ffffff;--apple-blue:#007aff;--apple-green:#34c759;--apple-orange:#ff9500;--apple-red:#ff3b30}body{font-family:-apple-system,BlinkMacSystemFont,Inter,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:linear-gradient(135deg,#f5f7fa 0,#c3cfe2 100%);background-attachment:fixed;color:#1d1d1f;line-height:1.6;font-weight:400;min-height:100vh}.header{background:hsla(0,0%,100%,.85);backdrop-filter:blur(25px) saturate(180%);-webkit-backdrop-filter:blur(25px) saturate(180%);border:1px solid hsla(0,0%,100%,.18);color:#1d1d1f;padding:1rem 0 .5rem 0;border-bottom:1px solid hsla(0,0%,100%,.18);margin-bottom:2.5rem;box-shadow:0 8px 32px rgba(0,0,0,.1),0 2px 8px rgba(0,0,0,.06),inset 0 1px 0 hsla(0,0%,100%,.5);top:0;z-index:1000}.header h1{color:#1d1d1f;font-weight:700;text-shadow:0 1px 2px hsla(0,0%,100%,.5)}.header .lead{color:#424245}.card{background:hsla(0,0%,100%,.75);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid hsla(0,0%,100%,.18);border-radius:16px;box-shadow:0 8px 32px rgba(0,0,0,.1),0 2px 8px rgba(0,0,0,.06),inset 0 1px 0 hsla(0,0%,100%,.5);margin-bottom:1.5rem;transition:all .3s ease}.card:hover{box-shadow:0 12px 24px rgba(0,0,0,.12),0 2px 8px rgba(0,0,0,.06);transform:translateY(-2px)}.card{overflow:hidden}.card-header{background:linear-gradient(180deg,rgba(255,255,255,.8) 0,rgba(255,255,255,.4) 100%);color:#1d1d1f;border-bottom:1px solid hsla(0,0%,100%,.18);border-radius:16px 16px 0 0!important;padding:1.25rem 1.5rem;font-weight:600;font-size:1.1rem;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.scenario-card{border-left:3px solid rgba(134,134,139,.3);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .3s ease}.scenario-card.selected{border-left:3px solid #007aff;background:linear-gradient(90deg,rgba(0,122,255,.08) 0,rgba(255,255,255,.4) 100%);box-shadow:0 4px 16px rgba(0,122,255,.15)}.scenario-card.optimized{border-left:3px solid #ff9500;background:linear-gradient(90deg,rgba(255,149,0,.08) 0,rgba(255,255,255,.4) 100%);box-shadow:0 4px 16px rgba(255,149,0,.15)}.btn-primary{background:linear-gradient(135deg,#007aff 0,#0056cc 100%);border:1px solid hsla(0,0%,100%,.2);padding:.75rem 1.5rem;border-radius:10px;font-weight:500;transition:all .2s ease}.btn-primary:hover{transform:translateY(-1px)}.btn-primary{box-shadow:0 4px 12px rgba(0,122,255,.3),0 1px 3px rgba(0,0,0,.1);color:#fff}.btn-primary:hover{background:linear-gradient(135deg,#0056cc 0,#003d99 100%);box-shadow:0 6px 20px rgba(0,122,255,.4),0 2px 6px rgba(0,0,0,.15)}.btn-primary:disabled{background:rgba(229,229,234,.6);color:#86868b;cursor:not-allowed;transform:none;box-shadow:none;border:1px solid hsla(0,0%,100%,.18)}.btn-success{background:linear-gradient(135deg,#34c759 0,#28a745 100%);border:1px solid hsla(0,0%,100%,.2);box-shadow:0 4px 12px rgba(52,199,89,.3)}.btn-success:hover{box-shadow:0 6px 20px rgba(52,199,89,.4)}.btn-warning{background:linear-gradient(135deg,#ff9500 0,#e68900 100%);border:1px solid hsla(0,0%,100%,.2);color:#fff;box-shadow:0 4px 12px rgba(255,149,0,.3)}.btn-warning:hover{box-shadow:0 6px 20px rgba(255,149,0,.4)}.btn-danger{background:linear-gradient(135deg,#ff3b30 0,#cc2f27 100%);border:1px solid hsla(0,0%,100%,.2);box-shadow:0 4px 12px rgba(255,59,48,.3)}.btn-danger:hover{box-shadow:0 6px 20px rgba(255,59,48,.4)}.btn-outline-secondary{background:hsla(0,0%,100%,.6);backdrop-filter:blur(10px) saturate(180%);-webkit-backdrop-filter:blur(10px) saturate(180%);border:1px solid hsla(0,0%,100%,.18);border:1px solid hsla(0,0%,100%,.18);color:#1d1d1f;box-shadow:0 2px 8px rgba(0,0,0,.05)}.btn-outline-secondary:hover{background:hsla(0,0%,100%,.8);border-color:rgba(134,134,139,.3);color:#1d1d1f;box-shadow:0 4px 12px rgba(0,0,0,.1)}.btn-optimize{background:linear-gradient(135deg,#ff9500 0,#ff6900 50%,#ff8c00 100%);color:#fff;border:1px solid hsla(0,0%,100%,.2);box-shadow:0 6px 16px rgba(255,149,0,.35)}.btn-optimize:hover{box-shadow:0 8px 24px rgba(255,149,0,.45)}.result-box{background:hsla(0,0%,100%,.65);backdrop-filter:blur(15px) saturate(180%);-webkit-backdrop-filter:blur(15px) saturate(180%);border:1px solid hsla(0,0%,100%,.18);border-radius:12px;padding:1.5rem;margin-bottom:1rem;border-left:3px solid #007aff;box-shadow:0 4px 16px rgba(0,122,255,.15),inset 0 1px 0 hsla(0,0%,100%,.5)}.optimization-result{background:hsla(0,0%,100%,.7);backdrop-filter:blur(15px) saturate(180%);-webkit-backdrop-filter:blur(15px) saturate(180%);border:1px solid hsla(0,0%,100%,.18);background:linear-gradient(135deg,rgba(255,249,240,.8),rgba(255,240,224,.6));border-left:3px solid #ff9500;border-radius:12px;padding:1.5rem;margin-bottom:1rem;box-shadow:0 4px 16px rgba(255,149,0,.15),inset 0 1px 0 hsla(0,0%,100%,.5)}.positive{color:#34c759;font-weight:600}.negative{color:#ff3b30;font-weight:600}.history-item{border-left:3px solid rgba(134,134,139,.4);margin-bottom:.75rem;padding:.75rem 1rem;background:hsla(0,0%,100%,.6);backdrop-filter:blur(10px) saturate(180%);-webkit-backdrop-filter:blur(10px) saturate(180%);border:1px solid hsla(0,0%,100%,.18);border-radius:0 10px 10px 0;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px rgba(0,0,0,.06)}.history-item:hover{background:hsla(0,0%,100%,.85);transform:translateX(5px);border-left-color:#007aff;box-shadow:0 4px 12px rgba(0,122,255,.15)}.form-control,.form-select{background:hsla(0,0%,100%,.6);backdrop-filter:blur(10px) saturate(180%);-webkit-backdrop-filter:blur(10px) saturate(180%);border:1px solid hsla(0,0%,100%,.18);border:1px solid hsla(0,0%,100%,.18);border-radius:10px;padding:.75rem 1rem;font-size:1rem;color:#1d1d1f;box-shadow:0 2px 8px rgba(0,0,0,.04),inset 0 1px 2px rgba(0,0,0,.03)}.form-control:focus,.form-select:focus{border-color:#007aff;box-shadow:0 0 0 3px rgba(0,122,255,.1);outline:0;background:hsla(0,0%,100%,.75);box-shadow:0 0 0 3px rgba(0,122,255,.15),0 4px 12px rgba(0,0,0,.08)}.form-control:disabled,.form-select:disabled{background:rgba(229,229,234,.4);color:#86868b;cursor:not-allowed}.footer{background:hsla(0,0%,100%,.8);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid hsla(0,0%,100%,.18);color:#1d1d1f;padding:2rem 0;margin-top:3rem;border-top:1px solid hsla(0,0%,100%,.18);box-shadow:0 8px 32px rgba(0,0,0,.1),0 2px 8px rgba(0,0,0,.06),inset 0 1px 0 hsla(0,0%,100%,.5)}.footer a{color:#007aff;text-decoration:none;transition:all .2s ease}.footer a:hover{color:rgb(0,97.6,204);text-decoration:underline}.calculation-formula{background:hsla(0,0%,100%,.65);backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);border:1px solid hsla(0,0%,100%,.18);background:linear-gradient(135deg,rgba(248,249,255,.8),rgba(240,245,255,.6));padding:1.25rem;border-radius:10px;font-family:"SF Mono",Monaco,Inconsolata,"Fira Code",monospace;font-size:.9rem;margin-top:1rem;border:1px solid rgba(0,122,255,.15);box-shadow:0 2px 8px rgba(0,122,255,.08)}.info-badge{background-color:#e5e5ea;color:#1d1d1f;border-radius:50%;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;margin-left:.5rem;cursor:help}.guide-step{counter-increment:step-counter;margin-bottom:1.5rem;padding-left:3rem;position:relative}.guide-step:before{content:counter(step-counter);background-color:#007aff;color:#fff;font-weight:600;border-radius:50%;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;position:absolute;left:0;top:0}.example-box{background:hsla(0,0%,100%,.65);backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);border:1px solid hsla(0,0%,100%,.18);background:linear-gradient(135deg,rgba(240,247,255,.8),rgba(230,240,255,.6));border-left:3px solid #007aff;padding:1rem;border-radius:0 10px 10px 0;margin:1rem 0;box-shadow:0 2px 8px rgba(0,122,255,.1)}.warning-box{background:hsla(0,0%,100%,.65);backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);border:1px solid hsla(0,0%,100%,.18);background:linear-gradient(135deg,rgba(255,248,240,.8),rgba(255,240,220,.6));border-left:3px solid #ff9500;padding:1rem;border-radius:0 10px 10px 0;margin:1rem 0;box-shadow:0 2px 8px rgba(255,149,0,.1)}.tip-box{background:hsla(0,0%,100%,.65);backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);border:1px solid hsla(0,0%,100%,.18);background:linear-gradient(135deg,rgba(240,255,248,.8),rgba(230,250,240,.6));border-left:3px solid #34c759;padding:1rem;border-radius:0 10px 10px 0;margin:1rem 0;box-shadow:0 2px 8px rgba(52,199,89,.1)}.analogy-box{background:hsla(0,0%,100%,.6);backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);border:1px solid hsla(0,0%,100%,.18);border:1px dashed rgba(134,134,139,.4);padding:1rem;border-radius:10px;margin:1rem 0;font-style:italic;box-shadow:0 2px 8px rgba(0,0,0,.05)}.guide-tabs .nav-link{color:#1d1d1f;font-weight:500;border:none;border-bottom:2px solid transparent;padding:.75rem 1rem;margin:0 .25rem}.guide-tabs .nav-link.active{color:#007aff;border-bottom:2px solid #007aff;background-color:rgba(0,0,0,0)}.accordion-button{background:hsla(0,0%,100%,.7);backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);border:1px solid hsla(0,0%,100%,.18);color:#1d1d1f;font-weight:500;border:1px solid hsla(0,0%,100%,.18);box-shadow:0 2px 8px rgba(0,0,0,.04)}.accordion-button:not(.collapsed){background:linear-gradient(135deg,rgba(255,255,255,.85),rgba(240,247,255,.7));color:#007aff;box-shadow:0 4px 12px rgba(0,122,255,.12)}.accordion-button:focus{box-shadow:0 0 0 3px rgba(0,122,255,.15);border-color:#007aff}.optimization-badge{background-color:#ff9500;color:#fff;font-size:.7rem;padding:.2rem .6rem;border-radius:12px;margin-left:.5rem;font-weight:500}.disclaimer-modal .modal-content{background:hsla(0,0%,100%,.9);backdrop-filter:blur(25px) saturate(180%);-webkit-backdrop-filter:blur(25px) saturate(180%);border:1px solid hsla(0,0%,100%,.18);border-radius:16px;border:1px solid hsla(0,0%,100%,.18);overflow:hidden;box-shadow:0 16px 48px rgba(0,0,0,.15),0 4px 16px rgba(0,0,0,.08),inset 0 1px 0 hsla(0,0%,100%,.5)}.disclaimer-modal .modal-header{background:linear-gradient(135deg,rgba(0,0,0,.7),rgba(29,29,31,.8));backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);color:#fff;border-bottom:1px solid hsla(0,0%,100%,.1);padding:1rem 1.5rem}.terms-content{max-height:400px;overflow-y:auto;padding:1rem 1.5rem;background:hsla(0,0%,100%,.5);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.terms-section{margin-bottom:1.5rem}.terms-section h5{color:#000;border-bottom:1px solid #e5e5ea;padding-bottom:.5rem;margin-bottom:1rem;font-weight:600}.terms-list{padding-left:1.5rem}.terms-list li{margin-bottom:.5rem;line-height:1.5}.signature-section{border-top:1px dashed #e5e5ea;padding-top:1.5rem;margin-top:1.5rem}.view-terms-link{color:#007aff;cursor:pointer;text-decoration:none;font-size:.9rem;font-weight:500}.view-terms-link:hover{text-decoration:underline}.amount-in-words{font-size:.85rem;color:#424245;margin-top:.25rem;font-style:italic;min-height:1.2rem}.formatted-number{font-family:"SF Mono",Monaco,Inconsolata,"Fira Code",monospace;letter-spacing:-.5px}.app-controls-disabled{position:relative}.app-controls-disabled::after{content:"Vui lòng đồng ý điều khoản để sử dụng tính năng này";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background-color:rgba(0,0,0,.8);color:#fff;padding:.75rem 1.5rem;border-radius:8px;font-size:.9rem;opacity:0;pointer-events:none;transition:opacity .3s ease;z-index:1000;white-space:nowrap}.app-controls-disabled:hover::after{opacity:1}.disabled-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:hsla(0,0%,100%,.5);backdrop-filter:blur(15px) saturate(180%);-webkit-backdrop-filter:blur(15px) saturate(180%);border:1px solid hsla(0,0%,100%,.18);border-radius:16px;z-index:100;display:none}.agreement-required{border:2px dashed rgba(134,134,139,.4)!important;background:rgba(242,242,247,.4)!important;backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important}.terms-notice{background:hsla(0,0%,100%,.7);backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);border:1px solid hsla(0,0%,100%,.18);background:linear-gradient(135deg,rgba(255,248,240,.8),rgba(255,240,220,.6));border:1px solid rgba(255,149,0,.3);border-radius:10px;padding:1rem;margin-bottom:1.5rem;display:flex;align-items:center;box-shadow:0 2px 8px rgba(255,149,0,.1)}.terms-notice i{color:#ff9500;font-size:1.5rem;margin-right:1rem}@media(max-width:768px){.header h1{font-size:1.75rem}.guide-step{padding-left:2.5rem}.guide-step:before{width:2rem;height:2rem;font-size:.9rem}.terms-content{max-height:300px}}