@import url("https://fonts.googleapis.com/css2?family=Exo+2:wght@400;600;700&family=Nunito:wght@400;600;700&display=swap");:root{--color-primary:#399663;--color-primary-light:#EBF5EE;--color-primary-dark:#2C7A50;--color-accent:#7B4F2E;--color-text-primary:#1A1A1A;--color-text-secondary:#6B7280;--color-error:#DC2626;--color-surface:#FFFFFF;--color-border:#D1D5DB;--color-bg:#EBF5EE;--font-heading:"Exo 2",sans-serif;--font-body:"Nunito",sans-serif;--text-xs:12px;--text-sm:14px;--text-base:16px;--text-lg:18px;--text-xl:20px;--text-2xl:24px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--radius-input:10px;--radius-button:10px;--radius-card:16px;--radius-full:9999px;--shadow-card:0 2px 12px rgba(0,0,0,0.08);--shadow-sm:0 1px 4px rgba(0,0,0,0.06);--max-width:430px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text-primary);background-color:var(--color-bg);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}ul{list-style:none}button{cursor:pointer;border:none;background:none;font-family:var(--font-body)}input,select,textarea{font-family:var(--font-body);font-size:var(--text-base)}.page-wrapper{min-height:100vh;display:flex;flex-direction:column;align-items:center;background-color:var(--color-bg)}.container{width:100%;max-width:var(--max-width);padding:0 var(--space-5);margin:0 auto}h1,h2,h3{font-family:var(--font-heading);color:var(--color-text-primary);line-height:1.2}h1{font-size:var(--text-2xl)}h1,h2{font-weight:700}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg);font-weight:600}p{font-size:var(--text-base);color:var(--color-text-secondary);line-height:1.6}.text-sm{font-size:var(--text-sm)}.text-xs{font-size:var(--text-xs)}.text-center{text-align:center}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-green{color:var(--color-primary)}.text-accent{color:var(--color-accent)}.font-semibold{font-weight:600}.font-bold{font-weight:700}.logo{display:block;width:120px;margin:0 auto var(--space-6)}.card{background:var(--color-surface);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:var(--space-6)}.form-group{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-5)}.form-label{font-size:var(--text-sm);font-weight:600}.form-input,.form-label{color:var(--color-text-primary);font-family:var(--font-body)}.form-input{width:100%;padding:var(--space-3) var(--space-4);border:1.5px solid var(--color-border);border-radius:var(--radius-input);font-size:var(--text-base);background:var(--color-surface);outline:none;transition:border-color .2s ease,box-shadow .2s ease}.form-input::placeholder{color:var(--color-text-secondary)}.form-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(57,150,99,.12)}.form-input.is-error{border-color:var(--color-error);box-shadow:0 0 0 3px rgba(220,38,38,.08)}.form-hint{color:var(--color-text-secondary)}.form-error,.form-hint{font-size:var(--text-xs)}.form-error{color:var(--color-error);font-weight:600;display:none}.form-error.visible{display:block}.input-wrapper{position:relative}.phone-input-row{display:flex;gap:8px;align-items:stretch}.country-code-select{flex-shrink:0;padding:var(--space-3) var(--space-3);border:1.5px solid var(--color-border);border-radius:var(--radius-input);background:var(--color-surface);font-family:var(--font-body);font-size:var(--text-base);font-weight:500;color:var(--color-text-primary);cursor:pointer;outline:none;-moz-appearance:none;appearance:none;-webkit-appearance:none;min-width:88px;text-align:center;transition:border-color .2s ease,box-shadow .2s ease}.country-code-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(57,150,99,.12)}.phone-input-row .phone-input{flex:1 1;min-width:0}.input-wrapper .form-input{padding-right:var(--space-10)}.input-icon{position:absolute;right:var(--space-4);top:50%;transform:translateY(-50%);color:var(--color-text-secondary);display:flex}.btn,.input-icon{cursor:pointer;align-items:center}.btn{display:inline-flex;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:var(--radius-button);font-family:var(--font-body);font-size:var(--text-base);font-weight:600;transition:background-color .2s ease,opacity .2s ease,transform .1s ease;border:none;text-decoration:none;line-height:1.4}.btn:active{transform:scale(.98)}.btn-primary{background-color:var(--color-primary);color:#FFFFFF;width:100%;padding:var(--space-4) var(--space-6)}.btn-primary:hover{background-color:var(--color-primary-dark);text-decoration:none;color:#FFFFFF}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-outline{background-color:transparent;color:var(--color-primary);border:1.5px solid var(--color-primary);width:100%;padding:var(--space-4) var(--space-6)}.btn-outline:hover{background-color:var(--color-primary-light);text-decoration:none}.btn-ghost{background-color:transparent;color:var(--color-text-secondary);padding:var(--space-2) var(--space-4)}.btn-ghost:hover{color:var(--color-text-primary);text-decoration:none}.checkbox-group{display:flex;align-items:center;gap:var(--space-2)}.checkbox-group input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-primary);cursor:pointer;flex-shrink:0}.checkbox-group label{cursor:pointer}.checkbox-group label,.divider{font-size:var(--text-sm);color:var(--color-text-secondary)}.divider{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-5) 0}.divider:after,.divider:before{content:"";flex:1 1;height:1px;background:var(--color-border)}.toast{position:fixed;top:var(--space-5);left:50%;transform:translateX(-50%) translateY(-80px);background:var(--color-text-primary);color:#FFFFFF;padding:var(--space-3) var(--space-5);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:600;z-index:1000;white-space:nowrap;box-shadow:var(--shadow-card);transition:transform .3s cubic-bezier(.34,1.56,.64,1);pointer-events:none}.toast.toast-success{background:var(--color-primary)}.toast.toast-error{background:var(--color-error)}.toast.show{transform:translateX(-50%) translateY(0)}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:var(--max-width);background:var(--color-surface);border-top:1px solid var(--color-border);display:flex;padding:var(--space-2) 0 calc(var(--space-2) + env(safe-area-inset-bottom));z-index:100;box-shadow:0 -2px 12px rgba(0,0,0,.06)}.nav-item{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:var(--space-1);padding:var(--space-2);color:var(--color-text-secondary);text-decoration:none;font-size:var(--text-xs);font-weight:600;transition:color .2s ease}.nav-item svg{width:22px;height:22px;stroke:currentColor}.nav-item.active,.nav-item:hover{color:var(--color-primary)}.nav-item:hover{text-decoration:none}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.gap-2{gap:var(--space-2)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.w-full{width:100%}.hidden{display:none!important}