:root{--react-pdf-annotation-layer:1;--annotation-unfocused-field-background:url("data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>");--input-focus-border-color:Highlight;--input-focus-outline:1px solid Canvas;--input-unfocused-border-color:transparent;--input-disabled-border-color:transparent;--input-hover-border-color:black;--link-outline:none}@media screen and (forced-colors:active){:root{--input-focus-border-color:CanvasText;--input-unfocused-border-color:ActiveText;--input-disabled-border-color:GrayText;--input-hover-border-color:Highlight;--link-outline:1.5px solid LinkText}.annotationLayer .choiceWidgetAnnotation select:required{outline:1.5px solid selecteditem}.annotationLayer .textWidgetAnnotation :-webkit-any(input,textarea):required{outline:1.5px solid selecteditem}.annotationLayer .textWidgetAnnotation :-moz-any(input,textarea):required{outline:1.5px solid selecteditem}.annotationLayer .textWidgetAnnotation :is(input,textarea):required{outline:1.5px solid selecteditem}.annotationLayer .buttonWidgetAnnotation:-webkit-any(.checkBox,.radioButton) input:required{outline:1.5px solid selecteditem}.annotationLayer .buttonWidgetAnnotation:-moz-any(.checkBox,.radioButton) input:required{outline:1.5px solid selecteditem}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid selecteditem}.annotationLayer .linkAnnotation:hover{backdrop-filter:invert(100%)}}.annotationLayer{position:absolute;pointer-events:none;transform-origin:0 0;z-index:3;top:0;left:0}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg)translate(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg)translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg)translateY(-100%)}.annotationLayer canvas{position:absolute;width:100%;height:100%}.annotationLayer section{position:absolute;text-align:initial;pointer-events:auto;box-sizing:border-box;transform-origin:0 0;margin:0}.annotationLayer section .overlaidText{position:absolute;display:inline-block;overflow:hidden;width:0;height:0;top:0;left:0}.annotationLayer .linkAnnotation{outline:var(--link-outline)}.textLayer.selecting~.annotationLayer section{pointer-events:none}.annotationLayer :-webkit-any(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{position:absolute;width:100%;height:100%;font-size:1em;top:0;left:0}.annotationLayer :-moz-any(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{position:absolute;width:100%;height:100%;font-size:1em;top:0;left:0}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{position:absolute;width:100%;height:100%;font-size:1em;top:0;left:0}.annotationLayer :-webkit-any(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{opacity:.2;background:#ff0;box-shadow:0 2px 10px #ff0}.annotationLayer :-moz-any(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{opacity:.2;background:#ff0;box-shadow:0 2px 10px #ff0}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{opacity:.2;background:#ff0;box-shadow:0 2px 10px #ff0}.annotationLayer .textAnnotation img{position:absolute;cursor:pointer;width:100%;height:100%;top:0;left:0}.annotationLayer .choiceWidgetAnnotation select{background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px*var(--total-scale-factor))sans-serif;vertical-align:top;width:100%;height:100%;margin:0}.annotationLayer .textWidgetAnnotation :-webkit-any(input,textarea){background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px*var(--total-scale-factor))sans-serif;vertical-align:top;width:100%;height:100%;margin:0}.annotationLayer .textWidgetAnnotation :-moz-any(input,textarea){background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px*var(--total-scale-factor))sans-serif;vertical-align:top;width:100%;height:100%;margin:0}.annotationLayer .textWidgetAnnotation :is(input,textarea){background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px*var(--total-scale-factor))sans-serif;vertical-align:top;width:100%;height:100%;margin:0}.annotationLayer .buttonWidgetAnnotation:-webkit-any(.checkBox,.radioButton) input{background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px*var(--total-scale-factor))sans-serif;vertical-align:top;width:100%;height:100%;margin:0}.annotationLayer .buttonWidgetAnnotation:-moz-any(.checkBox,.radioButton) input{background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px*var(--total-scale-factor))sans-serif;vertical-align:top;width:100%;height:100%;margin:0}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px*var(--total-scale-factor))sans-serif;vertical-align:top;width:100%;height:100%;margin:0}.annotationLayer .choiceWidgetAnnotation select:required{outline:1.5px solid red}.annotationLayer .textWidgetAnnotation :-webkit-any(input,textarea):required{outline:1.5px solid red}.annotationLayer .textWidgetAnnotation :-moz-any(input,textarea):required{outline:1.5px solid red}.annotationLayer .textWidgetAnnotation :is(input,textarea):required{outline:1.5px solid red}.annotationLayer .buttonWidgetAnnotation:-webkit-any(.checkBox,.radioButton) input:required{outline:1.5px solid red}.annotationLayer .buttonWidgetAnnotation:-moz-any(.checkBox,.radioButton) input:required{outline:1.5px solid red}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .choiceWidgetAnnotation select[disabled]{border:2px solid var(--input-disabled-border-color);cursor:not-allowed;background:0 0}.annotationLayer .textWidgetAnnotation :-webkit-any(input,textarea)[disabled]{border:2px solid var(--input-disabled-border-color);cursor:not-allowed;background:0 0}.annotationLayer .textWidgetAnnotation :-moz-any(input,textarea)[disabled]{border:2px solid var(--input-disabled-border-color);cursor:not-allowed;background:0 0}.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled]{border:2px solid var(--input-disabled-border-color);cursor:not-allowed;background:0 0}.annotationLayer .buttonWidgetAnnotation:-webkit-any(.checkBox,.radioButton) input[disabled]{border:2px solid var(--input-disabled-border-color);cursor:not-allowed;background:0 0}.annotationLayer .buttonWidgetAnnotation:-moz-any(.checkBox,.radioButton) input[disabled]{border:2px solid var(--input-disabled-border-color);cursor:not-allowed;background:0 0}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled]{border:2px solid var(--input-disabled-border-color);cursor:not-allowed;background:0 0}.annotationLayer .choiceWidgetAnnotation select:hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .textWidgetAnnotation :-webkit-any(input,textarea):hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .textWidgetAnnotation :-moz-any(input,textarea):hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .buttonWidgetAnnotation:-webkit-any(.checkBox,.radioButton) input:hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .buttonWidgetAnnotation:-moz-any(.checkBox,.radioButton) input:hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation.checkBox input:hover{border-radius:2px}.annotationLayer .textWidgetAnnotation :-webkit-any(input,textarea):hover{border-radius:2px}.annotationLayer .textWidgetAnnotation :-moz-any(input,textarea):hover{border-radius:2px}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover{border-radius:2px}.annotationLayer .choiceWidgetAnnotation select:focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline);background:0 0;border-radius:2px}.annotationLayer .textWidgetAnnotation :-webkit-any(input,textarea):focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline);background:0 0;border-radius:2px}.annotationLayer .textWidgetAnnotation :-moz-any(input,textarea):focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline);background:0 0;border-radius:2px}.annotationLayer .textWidgetAnnotation :is(input,textarea):focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline);background:0 0;border-radius:2px}.annotationLayer .buttonWidgetAnnotation:-webkit-any(.checkBox,.radioButton) :focus{background-color:#0000;background-image:none}.annotationLayer .buttonWidgetAnnotation:-moz-any(.checkBox,.radioButton) :focus{background-color:#0000;background-image:none}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-color:#0000;background-image:none}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline);border-radius:2px}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{content:"";display:block;position:absolute;background-color:canvastext}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{width:1px;height:80%;left:45%}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;width:50%;height:50%;top:20%;left:30%}.annotationLayer .textWidgetAnnotation input.comb{padding-left:2px;padding-right:0;font-family:monospace}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:-webkit-any(.checkBox,.radioButton) input{appearance:none}.annotationLayer .buttonWidgetAnnotation:-moz-any(.checkBox,.radioButton) input{appearance:none}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{appearance:none}.annotationLayer .popupTriggerArea{width:100%;height:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{position:absolute;font-size:calc(9px*var(--total-scale-factor));min-width:calc(180px*var(--total-scale-factor));pointer-events:none;width:100%}.annotationLayer .popup{position:absolute;max-width:calc(180px*var(--total-scale-factor));box-shadow:0 calc(2px*var(--total-scale-factor))calc(5px*var(--total-scale-factor))#888;border-radius:calc(2px*var(--total-scale-factor));padding:calc(6px*var(--total-scale-factor));margin-left:calc(5px*var(--total-scale-factor));cursor:pointer;font:message-box;white-space:normal;word-wrap:break-word;pointer-events:auto;background-color:#ff9}.annotationLayer .popup>*{font-size:calc(9px*var(--total-scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{display:inline-block;margin-left:calc(5px*var(--total-scale-factor))}.annotationLayer .popupContent{margin-top:calc(2px*var(--total-scale-factor));padding-top:calc(2px*var(--total-scale-factor));border-top:1px solid #333}.annotationLayer .richText>*{white-space:pre-wrap;font-size:calc(9px*var(--total-scale-factor))}.annotationLayer .highlightAnnotation,.annotationLayer .underlineAnnotation,.annotationLayer .squigglyAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .lineAnnotation svg line,.annotationLayer .squareAnnotation svg rect,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .caretAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .stampAnnotation,.annotationLayer .fileAttachmentAnnotation{cursor:pointer}.annotationLayer section svg{position:absolute;width:100%;height:100%;top:0;left:0}.annotationLayer .annotationTextContent{position:absolute;opacity:0;color:#0000;user-select:none;pointer-events:none;width:100%;height:100%}.annotationLayer .annotationTextContent span{display:inline-block;width:100%}:root{--react-pdf-text-layer:1}[data-main-rotation="90"]{transform:rotate(90deg)translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg)translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg)translate(-100%)}.textLayer{--buncss-light:initial;--buncss-dark: ;color-scheme:light only;position:absolute;text-align:initial;overflow:clip;opacity:1;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;caret-color:CanvasText;z-index:0;--min-font-size:1;--text-scale-factor:calc(var(--total-scale-factor)*var(--min-font-size));--min-font-size-inv:calc(1/var(--min-font-size));line-height:1;inset:0}.textLayer :-webkit-any(span,br){color:#0000;position:absolute;white-space:pre;cursor:text;transform-origin:0 0;margin:0}.textLayer :-moz-any(span,br){color:#0000;position:absolute;white-space:pre;cursor:text;transform-origin:0 0;margin:0}.textLayer :is(span,br){color:#0000;position:absolute;white-space:pre;cursor:text;transform-origin:0 0;margin:0}.textLayer>:not(.markedContent),.textLayer .markedContent span:not(.markedContent){z-index:1;--font-height:0;font-size:calc(var(--text-scale-factor)*var(--font-height));--scale-x:1;--rotate:0deg;transform:rotate(var(--rotate))scaleX(var(--scale-x))scale(var(--min-font-size-inv))}.textLayer .markedContent{display:contents}.textLayer span[role=img]{user-select:none;cursor:default}.textLayer .highlight{--highlight-bg-color:#b400aa40;--highlight-selected-bg-color:#00640040;--highlight-backdrop-filter:none;--highlight-selected-backdrop-filter:none;background-color:var(--highlight-bg-color);backdrop-filter:var(--highlight-backdrop-filter);border-radius:4px;margin:-1px;padding:1px}@media screen and (forced-colors:active){.textLayer .highlight{--highlight-bg-color:Highlight;--highlight-selected-bg-color:ButtonText}}.textLayer .highlight.appended{position:initial}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:var(--highlight-selected-bg-color);backdrop-filter:var(--highlight-selected-backdrop-filter)}.textLayer ::selection{background:#0000ff40}@supports (background: color-mix(in srgb, AccentColor, transparent 75%)){.textLayer ::selection{background:color-mix(in srgb,AccentColor,transparent 75%)}}.textLayer br::selection{background:0 0}.textLayer .endOfContent{display:block;position:absolute;z-index:0;cursor:default;user-select:none;inset:100% 0 0}.textLayer.selecting .endOfContent{top:0}.hiddenCanvasElement{position:absolute;display:none;width:0;height:0;top:0;left:0}:root{color:#17231f;background:#e9efe8;font-family:Georgia,Times New Roman,serif}body{min-width:320px;min-height:100vh;margin:0}.app{display:grid;box-sizing:border-box;background:radial-gradient(circle at 15% 15%,#f6f4e9 0 12%,#0000 40%),#e9efe8;place-items: center;min-height:100vh;padding:24px}.auth-panel{background:#fffdf7;border:1px solid #c8d3c8;width:min(100%,440px);padding:48px;box-shadow:12px 12px #c4d2c4}.eyebrow{color:#41705a;letter-spacing:.14em;text-transform:uppercase;margin:0 0 56px;font:700 .75rem/1.2 Arial,sans-serif}h1{margin:0;font-size:clamp(2.2rem,8vw,3.5rem);font-weight:500;line-height:.98}.subtitle{color:#617067;margin:18px 0 32px;font:1rem/1.5 Arial,sans-serif}.google-button{display:flex;color:#fffdf7;cursor:pointer;background:#17231f;border:1px solid #17231f;justify-content:center;align-items: center;gap:12px;width:100%;padding:14px 18px;transition:transform .16s,background .16s;font:700 .95rem Arial,sans-serif}.google-button:hover{background:#41705a;transform:translateY(-2px)}.google-mark{display:grid;color:#4285f4;background:#fffdf7;border-radius:50%;place-items: center;width:24px;height:24px;font:700 1rem Arial,sans-serif}.status{margin:22px 0 0;font:.85rem/1.4 Arial,sans-serif}.success{color:#2f7049}.error{color:#a0443c}@media (max-width:520px){.auth-panel{padding:32px 24px}.eyebrow{margin-bottom:40px}}.profile-header{display:flex;justify-content:space-between;align-items: flex-start;gap:16px}.profile-header h2{margin:0}.logout-button{color:#17231f;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #c8d3c8;padding:8px 16px;transition:background .16s;font:600 .85rem Arial,sans-serif}.logout-button:hover{background:#f0f0f0}.user-id{color:#999;margin-left:4px}.ebook-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin:20px 0}.ebook-card{cursor:pointer;position:relative;border:1px solid #c8d3c8;padding:16px;transition:border-color .16s,box-shadow .16s}.ebook-card:hover{border-color:#41705a}.ebook-card.selected{border-color:#41705a;box-shadow:0 0 0 2px #41705a33}.ebook-cover{object-fit:cover;width:100%;height:120px;margin-bottom:12px}.ebook-info h3{margin:0 0 4px;font-size:1rem}.ebook-info p{color:#617067;margin:0;font-size:.85rem}.ebook-price{font-weight:700;color:#17231f!important;margin-top:8px!important;font-size:1rem!important}.ebook-price s{color:#999;margin-right:6px;font-weight:400}.ebook-check{position:absolute;display:grid;color:#fff;background:0 0;border:2px solid #c8d3c8;place-items: center;width:24px;height:24px;font-size:.8rem;top:12px;right:12px}.ebook-card.selected .ebook-check{background:#41705a;border-color:#41705a}.buy-button{display:block;color:#fffdf7;cursor:pointer;background:#17231f;border:1px solid #17231f;width:100%;max-width:300px;margin:20px auto 0;padding:14px 18px;transition:background .16s;font:700 .95rem Arial,sans-serif}.buy-button:hover{background:#41705a}.checkout-container{margin-top:20px}.back-button{color:#17231f;cursor:pointer;background:0 0;border:1px solid #c8d3c8;margin-bottom:16px;padding:8px 16px;transition:background .16s;font:600 .85rem Arial,sans-serif}.back-button:hover{background:#f0f0f0}.pay-button{display:block;color:#fffdf7;cursor:pointer;background:#17231f;border:1px solid #17231f;width:100%;max-width:300px;margin:20px auto 0;padding:14px 18px;transition:background .16s;font:700 .95rem Arial,sans-serif}.pay-button:hover:not(:disabled){background:#41705a}.pay-button:disabled{opacity:.6;cursor:not-allowed}.phone-input-group{margin:20px 0}.phone-input-group label{display:block;color:#17231f;margin-bottom:6px;font:600 .85rem Arial,sans-serif}.phone-input{display:block;box-sizing:border-box;border:1px solid #c8d3c8;width:100%;max-width:300px;margin-bottom:12px;padding:12px 14px;font:1rem Arial,sans-serif}.phone-input:focus{outline:none;border-color:#41705a}.save-phone-button{display:block;color:#fffdf7;cursor:pointer;background:#17231f;border:1px solid #17231f;width:100%;max-width:300px;padding:14px 18px;transition:background .16s;font:700 .95rem Arial,sans-serif}.save-phone-button:hover:not(:disabled){background:#41705a}.save-phone-button:disabled{opacity:.6;cursor:not-allowed}.success-container{text-align:center;margin-top:40px}.header-actions{display:flex;align-items: center;gap:8px}.read-button{color:#fffdf7;cursor:pointer;background:#41705a;border:1px solid #41705a;padding:6px 14px;transition:background .16s;font:600 .8rem Arial,sans-serif}.read-button:hover{background:#2f5a44}.ebook-actions{display:flex;justify-content:space-between;align-items: center;margin-top:10px}.reader-container{width:100%}.reader-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items: center;gap:12px;margin-bottom:16px}.reader-title{font:600 .9rem Arial,sans-serif}.reader-nav{display:flex;gap:6px}.reader-nav-btn{color:#17231f;cursor:pointer;background:#fffdf7;border:1px solid #c8d3c8;padding:8px 14px;transition:background .16s;font:600 .85rem Arial,sans-serif}.reader-nav-btn:hover:not(:disabled){background:#f0f0f0}.reader-nav-btn:disabled{opacity:.4;cursor:not-allowed}.reader-document{display:flex;justify-content:center}.admin-upload{margin-top:20px}.admin-upload h3{margin:0 0 16px}.admin-upload form{display:flex;flex-direction:column;gap:14px;max-width:400px}.admin-upload label{display:flex;color:#17231f;flex-direction:column;gap:4px;font:600 .85rem Arial,sans-serif}.admin-upload input[type=text],.admin-upload input[type=number],.admin-upload textarea{border:1px solid #c8d3c8;padding:10px 12px;font:1rem Arial,sans-serif}.admin-upload input:focus,.admin-upload textarea:focus{outline:none;border-color:#41705a}.admin-upload input[type=file]{padding:8px 0}.file-name{color:#617067;margin-top:2px;font:400 .8rem Arial,sans-serif}.card{background:#fffdf7;border:1px solid #c8d3c8;margin:16px 0;padding:20px}.card h3{margin:0 0 14px;font-size:1.1rem}.primary-button,.secondary-button,.load-more-button{cursor:pointer;border:1px solid #17231f;padding:10px 16px;transition:background .16s,transform .16s;font:700 .85rem Arial,sans-serif}.primary-button{color:#fffdf7;background:#17231f}.primary-button:hover:not(:disabled){background:#41705a}.secondary-button,.load-more-button{color:#17231f;background:0 0;border-color:#c8d3c8}.secondary-button:hover:not(:disabled),.load-more-button:hover:not(:disabled){background:#f0f0f0}.primary-button:disabled,.secondary-button:disabled,.load-more-button:disabled{opacity:.55;cursor:not-allowed}.alert{display:flex;background:#fffdf7;border:1px solid #c8d3c8;flex-wrap:wrap;align-items: center;gap:10px;margin:12px 0;padding:12px 14px;font:.85rem/1.4 Arial,sans-serif}.alert.error{color:#a0443c;background:#fdf3f1;border-color:#a0443c}.alert.success{color:#2f7049;background:#f1f8f3;border-color:#2f7049}.alert.warning{color:#8a6516;background:#fdf8ec;border-color:#b98a2e}.empty{color:#617067;font:.9rem/1.5 Arial,sans-serif}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.form-group.full-width{grid-column:1/-1}.form-group label{color:#17231f;font:600 .85rem Arial,sans-serif}.form-group input,.form-group textarea{box-sizing:border-box;background:#fffdf7;border:1px solid #c8d3c8;padding:11px 13px;font:1rem Arial,sans-serif}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#41705a}.form-group input.invalid{border-color:#a0443c}.form-group input.valid{border-color:#2f7049}small{color:#617067;font:.78rem Arial,sans-serif}.success-text{color:#2f7049}.modal-overlay{position:fixed;display:grid;z-index:50;background:#17231f8c;place-items: center;padding:20px;inset:0}.modal{overflow-y:auto;background:#fffdf7;border:1px solid #17231f;width:min(100%,460px);max-height:90vh;box-shadow:12px 12px #c4d2c4}.modal-large{width:min(100%,640px)}.modal-header{display:flex;border-bottom:1px solid #c8d3c8;justify-content:space-between;align-items: center;gap:12px;padding:16px 20px}.modal-header h3{margin:0;font-size:1.1rem}.close-button{cursor:pointer;color:#17231f;background:0 0;border:none;font-size:1.5rem;line-height:1}.modal-body{padding:20px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.tier-info{color:#617067;margin-bottom:12px;font:.9rem Arial,sans-serif}.upi-input-group{display:flex;gap:8px}.upi-input-group input{background:#fffdf7;border:1px solid #c8d3c8;flex:1;padding:11px 13px;font:1rem Arial,sans-serif}.upi-input-group input:focus{outline:none;border-color:#41705a}.verify-button{color:#fffdf7;cursor:pointer;white-space:nowrap;background:#41705a;border:1px solid #41705a;padding:10px 16px;font:700 .85rem Arial,sans-serif}.verify-button:disabled{opacity:.6;cursor:not-allowed}.verified-name{color:#2f7049}.status,.source{display:inline-block;white-space:nowrap;background:#f2f5f2;border:1px solid #c8d3c8;padding:2px 8px;font:600 .72rem Arial,sans-serif}.status.completed,.status.confirmed,.status.processed,.status.active{color:#2f7049;background:#f1f8f3;border-color:#2f7049}.status.pending{color:#8a6516;background:#fdf8ec;border-color:#b98a2e}.status.processing{color:#2f7049;background:#f1f6f2;border-color:#41705a}.status.shipped{color:#2f5b88;background:#f1f6fc;border-color:#3b6ea5}.status.delivered{color:#2f7049;background:#eaf6ee;border-color:#2f7049}.status.revoked,.status.rejected,.status.failed,.status.expired,.status.cancelled{color:#a0443c;background:#fdf3f1;border-color:#a0443c}.source.referral-reward,.source.referral_reward{color:#41705a;background:#f1f6f2;border-color:#41705a}.source.cash-out,.source.cash_out{color:#a0443c;background:#fdf3f1;border-color:#a0443c}.positive{color:#2f7049;font-weight:700}.negative{color:#a0443c;font-weight:700}.history-table{overflow-x:auto}.history-table table{border-collapse:collapse;width:100%;font:.85rem Arial,sans-serif}.history-table th,.history-table td{text-align:left;border-bottom:1px solid #e2e8e2;padding:10px 12px}.history-table th{color:#617067;text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:700}.history-table tr:hover td{background:#f7faf7}.history-section h3,.swag-section h3{margin:0 0 14px}.rewards-container{margin-top:8px}.rewards-loading{text-align:center;color:#617067;padding:32px;font:.9rem Arial,sans-serif}.rewards-tabs{display:flex;border-bottom:1px solid #c8d3c8;flex-wrap:wrap;gap:8px;margin-bottom:20px;padding-bottom:12px}.rewards-tabs button{color:#17231f;cursor:pointer;background:0 0;border:1px solid #c8d3c8;padding:8px 16px;transition:background .16s;font:600 .85rem Arial,sans-serif}.rewards-tabs button:hover{background:#f0f0f0}.rewards-tabs button.active{color:#fffdf7;background:#17231f;border-color:#17231f}.overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.balance-card{background:#fffdf7;border:1px solid #c8d3c8;padding:24px;box-shadow:12px 12px #c4d2c4}.balance-card h3{color:#617067;margin:0 0 10px;font-size:1rem}.balance-value{margin-bottom:6px;font-size:2.4rem;font-weight:500;line-height:1}.balance-card.bp .balance-value{color:#41705a}.balance-card.rp .balance-value{color:#17231f}.cash-value{color:#617067;margin-bottom:18px;font:.9rem Arial,sans-serif}.balance-card .primary-button{width:100%}.swag-tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.swag-card{display:flex;background:#fffdf7;border:1px solid #c8d3c8;flex-direction:column;gap:12px;padding:20px}.swag-card.current{border-color:#41705a;box-shadow:0 0 0 2px #41705a33}.swag-card.locked{opacity:.7}.swag-header{display:flex;justify-content:space-between;align-items: center;gap:10px}.swag-header h4{margin:0;font-size:1rem}.swag-header .unlocked{color:#2f7049;text-transform:uppercase;letter-spacing:.06em;font:700 .72rem Arial,sans-serif}.swag-header .locked{color:#a0443c;text-transform:uppercase;letter-spacing:.06em;font:700 .72rem Arial,sans-serif}.swag-header .redeemed{color:#41705a;text-transform:uppercase;letter-spacing:.06em;font:700 .72rem Arial,sans-serif}.redeemed-badge{color:#2f7049;background:#f1f8f3;border:1px solid #2f7049;padding:6px 12px;font:700 .82rem Arial,sans-serif}.swag-details p{color:#617067;margin:4px 0;font:.85rem Arial,sans-serif}.swag-actions{display:flex;align-items: center;gap:8px;margin-top:auto}.current-badge,.locked-notice{color:#617067;font:600 .78rem Arial,sans-serif}.current-badge{color:#41705a}.redemption-list{display:flex;flex-direction:column;gap:16px}.redemption-card{background:#fff;border:1px solid #e2e8e2;padding:16px 18px}.redemption-head{display:flex;justify-content:space-between;align-items: flex-start;gap:12px}.redemption-title h4{margin:0 0 4px;font-size:1rem}.redemption-title small{color:#617067;font:.78rem Arial,sans-serif}.order-timeline{display:flex;align-items: center;gap:0;margin:16px 0}.timeline-step{display:flex;position:relative;color:#9aa79f;flex-direction:column;flex:1;align-items: center;font:600 .74rem Arial,sans-serif}.timeline-step:before{content:"";position:absolute;background:#e2e8e2;width:100%;height:2px;top:5px;left:-50%}.timeline-step:first-child:before{display:none}.timeline-dot{position:relative;z-index:1;background:#e2e8e2;border:2px solid #fff;border-radius:50%;width:12px;height:12px;box-shadow:0 0 0 1px #e2e8e2}.timeline-step.done,.timeline-step.active{color:#2f7049}.timeline-step.done .timeline-dot,.timeline-step.active .timeline-dot{background:#2f7049;box-shadow:0 0 0 1px #2f7049}.timeline-step.done:before,.timeline-step.active:before{background:#2f7049}.redemption-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));border-top:1px solid #e2e8e2;gap:14px;padding-top:14px}.meta-item label{display:block;text-transform:uppercase;letter-spacing:.06em;color:#8a968f;margin-bottom:6px;font:700 .7rem Arial,sans-serif}.meta-item span{color:#3d4a42;font:.84rem/1.5 Arial,sans-serif}.meta-item .muted{color:#9aa79f}.tracking-value{display:flex;align-items: center;gap:8px}.mono{color:#2f5b88;font-family:Consolas,Menlo,monospace;font-weight:700}.copy-btn{padding:3px 8px!important;font-size:.7rem!important}.referral-container{margin-top:8px}.referral-loading{text-align:center;color:#617067;padding:32px;font:.9rem Arial,sans-serif}.eligibility-warning .warning-icon{font-size:1.1rem}.referral-code-display{display:flex;flex-direction:column;gap:12px}.code-value{letter-spacing:.08em;color:#17231f;text-align:center;background:#f1f6f2;border:1px dashed #41705a;padding:14px 16px;font:700 1.6rem Courier New,monospace}.code-meta{display:flex;color:#617067;flex-wrap:wrap;gap:16px;font:.82rem Arial,sans-serif}.code-meta .active{color:#2f7049;font-weight:700}.code-meta .expired{color:#a0443c;font-weight:700}.progress-bar{overflow:hidden;background:#e2e8e2;border:1px solid #c8d3c8;height:8px}.progress-fill{background:#41705a;height:100%;transition:width .2s}.progress-fill.exhausted{background:#a0443c}.referee-list{display:flex;flex-direction:column;gap:12px}.referee-row{display:grid;grid-template-columns:minmax(160px,1.2fr)2fr minmax(120px,auto);background:#fff;border:1px solid #e2e8e2;align-items: center;gap:16px;padding:14px 16px}.referee-row.exhausted{background:#fdf6f4;border-color:#e8c4be}.referee-info strong{display:block;font-size:.95rem}.referee-info small{color:#617067;font:.78rem Arial,sans-serif}.referee-progress .progress-bar{margin-bottom:6px}.progress-labels{display:flex;color:#3d4a42;justify-content:space-between;font:700 .78rem Arial,sans-serif}.progress-labels .remaining{color:#2f7049}.progress-labels .limit-reached{color:#a0443c}.referee-meta{text-align:right;display:flex;flex-direction:column;align-items: flex-end;gap:4px}.referee-meta small{color:#617067;font:.75rem Arial,sans-serif}.validator-limit .progress-bar{margin:8px 0 6px}.validator-limit p{color:#3d4a42;margin:0;font:.85rem Arial,sans-serif}.validator-error.exhausted{color:#a0443c;background:#fdf3f1;border-color:#e8c4be}.validator-error .exhausted-note{display:block;color:#a0443c;margin-top:4px;font-weight:700}.code-actions{display:flex;flex-wrap:wrap;gap:10px}.no-code-state p{color:#617067;font:.9rem/1.5 Arial,sans-serif}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}.stat{background:#f7faf7;border:1px solid #c8d3c8;padding:14px}.stat-value{display:block;color:#17231f;font-size:1.4rem;font-weight:700}.stat-label{display:block;color:#617067;text-transform:uppercase;letter-spacing:.05em;margin-top:4px;font:.75rem Arial,sans-serif}.load-more-button{margin-top:14px}.referral-validator{background:#fffdf7;border:1px solid #c8d3c8;margin:18px 0;padding:16px}.validator-header{display:flex;justify-content:space-between;align-items: center;margin-bottom:10px}.validator-header label{color:#17231f;font:600 .85rem Arial,sans-serif}.validator-badge{color:#2f7049;text-transform:uppercase;letter-spacing:.05em;background:#f1f8f3;border:1px solid #2f7049;padding:3px 10px;font:700 .72rem Arial,sans-serif}.validator-input-group{display:flex;gap:8px}.validator-input-group input{text-transform:uppercase;background:#fffdf7;border:1px solid #c8d3c8;flex:1;padding:11px 13px;font:1rem Courier New,monospace}.validator-input-group input:focus{outline:none;border-color:#41705a}.validator-input-group input.valid{border-color:#2f7049}.validator-input-group input.invalid{border-color:#a0443c}.validator-success{background:#f1f8f3;border:1px solid #2f7049;margin-top:12px;padding:12px}.validator-success p{color:#17231f;margin:4px 0;font:.85rem Arial,sans-serif}.validator-error{display:flex;color:#a0443c;background:#fdf3f1;border:1px solid #a0443c;flex-wrap:wrap;align-items: center;gap:8px;margin-top:12px;padding:10px 12px;font:.85rem Arial,sans-serif}.validator-error .remaining{font-weight:700}.saved-codes{margin-top:14px}.saved-codes label{color:#617067;text-transform:uppercase;letter-spacing:.05em;font:600 .78rem Arial,sans-serif}.saved-codes-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.saved-code-button{color:#17231f;cursor:pointer;background:#f7faf7;border:1px solid #c8d3c8;padding:5px 10px;font:600 .78rem Courier New,monospace}.saved-code-button:hover{border-color:#41705a}.admin-panel{margin-top:8px}.admin-panel-header{display:flex;justify-content:space-between;align-items: center;gap:12px;margin-bottom:14px}.admin-panel-header h3{margin:0}.admin-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.filter-chip{color:#17231f;cursor:pointer;background:#fffdf7;border:1px solid #c8d3c8;padding:6px 14px;transition:background .16s;font:600 .8rem Arial,sans-serif}.filter-chip:hover{background:#f0f0f0}.filter-chip.active{color:#fffdf7;background:#17231f;border-color:#17231f}.user-cell{display:flex;flex-direction:column}.user-cell small{color:#617067}.mono{word-break:break-all;font-family:Courier New,monospace;font-size:.8rem}.row-actions{display:flex;flex-wrap:wrap;gap:6px}.row-actions .primary-button,.row-actions .secondary-button{padding:6px 12px;font-size:.78rem}.row-btn{white-space:nowrap;padding:6px 12px;font-size:.78rem}.admin-shell .admin-panel-header h3{margin:0}.secondary-button.danger{color:#a0443c;border-color:#a0443c}.secondary-button.danger:hover:not(:disabled){background:#fdf3f1}.reject-form input{box-sizing:border-box;border:1px solid #a0443c;width:100%;max-width:220px;margin-bottom:6px;padding:8px 10px;font:.85rem Arial,sans-serif}.reject-form input:focus{outline:none;border-color:#a0443c}.reject-actions{display:flex;gap:6px}.reject-actions .primary-button,.reject-actions .secondary-button{padding:6px 12px;font-size:.78rem}
