.cra-wrap{max-width:1100px;margin:0 auto}.cra-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:22px;margin:18px 0;box-shadow:0 2px 10px rgba(0,0,0,.04)}.cra-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.cra-account-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cra-form label{display:block;font-weight:700;margin-bottom:6px}.cra-form input[type=text],.cra-form input[type=email],.cra-form input[type=password],.cra-form input[type=number],.cra-form textarea,.cra-form select{width:100%;max-width:100%;border:1px solid #d1d5db;border-radius:8px;padding:10px 12px}.cra-form-section{border-top:1px solid #eef2f7;margin-top:18px;padding-top:18px}.cra-form-section-title{margin:0 0 10px}.cra-form-note{color:#6b7280}.cra-submit-button,.cra-approve-button,.cra-pay-button{font-weight:700}.cra-notice{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46;border-radius:10px;padding:12px 14px;margin:15px 0}.cra-login-note{background:#eff6ff;border-color:#bfdbfe;color:#1e40af}.cra-request-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.cra-status{display:inline-block;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:700;background:#f3f4f6}.cra-status-new{background:#dbeafe;color:#1e40af}.cra-status-in_review{background:#fef3c7;color:#92400e}.cra-status-mockup_sent{background:#ede9fe;color:#5b21b6}.cra-status-changes_requested{background:#fee2e2;color:#991b1b}.cra-status-approved,.cra-status-order_created,.cra-status-paid{background:#dcfce7;color:#166534}.cra-file-grid{display:flex;flex-wrap:wrap;gap:14px;margin:8px 0 18px}.cra-file-card{width:150px;border:1px solid #e5e7eb;border-radius:10px;padding:8px;text-align:center;text-decoration:none;background:#fafafa;color:#000000}.cra-file-thumb{width:132px!important;height:100px!important;object-fit:cover;border-radius:8px;display:block;margin:0 auto 8px}.cra-file-icon{display:flex;width:132px;height:100px;background:#f3f4f6;border-radius:8px;align-items:center;justify-content:center;font-weight:800;margin:0 auto 8px}.cra-file-name{display:block;font-size:12px;line-height:1.3;word-break:break-word}.cra-conversation{margin-top:8px}.cra-message{border-radius:10px;padding:12px;margin:10px 0}.cra-message-admin{background:#eff6ff}.cra-message-customer{background:#f9fafb}.cra-message span,.cra-timeline-time{font-size:12px;color:#6b7280}.cra-timeline{margin:10px 0 0 20px}.cra-timeline li{margin-bottom:8px}.cra-actions{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap}.cra-inline-form{display:inline-block}.cra-change-form{min-width:280px;flex:1}.cra-change-request-textarea{margin-bottom:8px}.cra-admin-thumb{width:60px;height:60px;object-fit:cover;border-radius:6px}.cra-admin-filters a{text-decoration:none}.cra-price{font-size:18px}.cra-settings-form .regular-text{max-width:420px}@media(max-width:768px){.cra-grid,.cra-account-grid{grid-template-columns:1fr}.cra-request-head{align-items:flex-start;flex-direction:column}.cra-file-card{width:46%}.cra-file-thumb,.cra-file-icon{width:100%!important}}

/* Transparent portal fields with white text and placeholders */
#cra-rug-portal input[type=text],
#cra-rug-portal input[type=email],
#cra-rug-portal input[type=password],
#cra-rug-portal input[type=number],
#cra-rug-portal input[type=tel],
#cra-rug-portal input[type=file],
#cra-rug-portal textarea,
#cra-rug-portal select,
#cra-rug-portal .woocommerce-Input,
#cra-rug-portal .input-text{
    background:transparent!important;
    color:#fff!important;
    border-color:rgba(255,255,255,.65)!important;
    box-shadow:none!important;
}
#cra-rug-portal input::placeholder,
#cra-rug-portal textarea::placeholder,
#cra-rug-portal .woocommerce-Input::placeholder,
#cra-rug-portal .input-text::placeholder{
    color:rgba(255,255,255,.88)!important;
    opacity:1!important;
}
#cra-rug-portal select option{color:#000000;background:#fff}
#cra-rug-portal input[type=file]::file-selector-button{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.45);border-radius:6px;padding:8px 12px;margin-right:10px;cursor:pointer}

/* Current and previous request tabs */
.cra-tab-buttons{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0 4px}
.cra-tab-button{appearance:none;border:1px solid #d1d5db;background:transparent;color:inherit;border-radius:999px;padding:10px 18px;font-weight:700;cursor:pointer;transition:.2s ease}
.cra-tab-button:hover,.cra-tab-button.is-active{background:#fdc123;border-color:#fdc123;color:#fff}
.cra-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;margin-left:6px;padding:0 6px;border-radius:999px;background:#000!important;color:#fff!important;font-size:12px}
.cra-tab-panel[hidden]{display:none!important}
.cra-tab-panel{margin-top:4px}

/* Dark form surfaces ensure white transparent fields remain readable */
#cra-rug-portal .cra-submit-card,
#cra-rug-portal .cra-request-card,
#cra-rug-portal form.woocommerce-form-login,
#cra-rug-portal form.woocommerce-form-register{
    background:rgba(17,24,39,.94);
    color:#fff;
    border-color:rgba(255,255,255,.18);
}
#cra-rug-portal .cra-form-note,
#cra-rug-portal .cra-request-card .cra-message span,
#cra-rug-portal .cra-request-card .cra-timeline-time{color:rgba(255,255,255,.72)}
#cra-rug-portal .cra-request-card .cra-message-admin{background:rgba(37,99,235,.22)}
#cra-rug-portal .cra-request-card .cra-message-customer{background:rgba(255,255,255,.08)}

/* v1.4 configurable portal and WooCommerce account styling */
#cra-rug-portal,.woocommerce-account .woocommerce{color:var(--cra-text)}
#cra-rug-portal .cra-card,.woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content,.woocommerce-account form.login,.woocommerce-account form.register{background:var(--cra-surface)!important;color:var(--cra-text)!important;border-radius:var(--cra-radius)!important;border:1px solid var(--cra-field-border)!important;padding:20px}
#cra-rug-portal input,#cra-rug-portal textarea,#cra-rug-portal select,.woocommerce-account input.input-text,.woocommerce-account textarea,.woocommerce-account select{background:transparent!important;color:var(--cra-text)!important;border:1px solid var(--cra-field-border)!important;border-radius:var(--cra-radius)!important}
#cra-rug-portal input::placeholder,#cra-rug-portal textarea::placeholder,.woocommerce-account input::placeholder,.woocommerce-account textarea::placeholder{color:var(--cra-placeholder)!important;opacity:1}
#cra-rug-portal .button,.woocommerce-account .button,.cra-tab-button{border-radius:var(--cra-radius)!important}
#cra-rug-portal .button-primary,.woocommerce-account .button,.cra-chat-form .button{background:var(--cra-button)!important;color:#fff!important;border-color:var(--cra-button)!important}
.cra-tab-button.is-active,.cra-tab-button:hover{background:var(--cra-tab)!important;border-color:var(--cra-tab)!important;color:#fff!important}
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0}.woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;padding:10px 12px;color:var(--cra-text);text-decoration:none;border-radius:var(--cra-radius)}.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{background:var(--cra-tab);color:#fff}
.cra-chat{margin-top:10px}.cra-chat-messages{height:var(--cra-chat-height);max-height:70vh;overflow-y:auto;padding:14px;background:rgba(0,0,0,.18);border:1px solid var(--cra-field-border);border-radius:var(--cra-radius);scroll-behavior:smooth}.cra-chat-row{display:flex;margin:8px 0}.cra-chat-incoming{justify-content:flex-start}.cra-chat-outgoing{justify-content:flex-end}.cra-chat-bubble{max-width:78%;padding:10px 12px;border-radius:var(--cra-radius);color:#fff;box-shadow:0 1px 2px rgba(0,0,0,.15)}.cra-chat-bubble-admin{background:var(--cra-admin-bubble)}.cra-chat-bubble-customer{background:var(--cra-customer-bubble)}.cra-chat-sender{font-size:11px;font-weight:700;opacity:.8;margin-bottom:3px}.cra-chat-time{font-size:10px;opacity:.7;text-align:right;margin-top:5px}.cra-chat-form{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:10px;align-items:end}.cra-chat-form textarea{min-height:54px;resize:vertical}.cra-chat-status{grid-column:1/-1;font-size:12px;color:var(--cra-muted)}.cra-unread-badge{display:inline-block;background:#dc2626;color:#fff;border-radius:999px;padding:3px 8px;font-size:12px}.cra-request-tools{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}.cra-final-grid{display:flex;flex-wrap:wrap;gap:12px}.cra-final-option{display:flex!important;flex-direction:column;gap:6px;border:1px solid #d1d5db;padding:8px;border-radius:8px}.cra-final-option img{width:100px;height:100px;object-fit:cover}.cra-status-cancelled{background:#fee2e2;color:#991b1b}.cra-status-in_production,.cra-status-quality_check,.cra-status-ready_to_ship,.cra-status-shipped{background:#fef3c7;color:#92400e}
@media(max-width:600px){.cra-chat-bubble{max-width:90%}.cra-chat-form{grid-template-columns:1fr}.woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content{padding:14px}}

/* v1.4.4 unified buttons and chat attachments */
#cra-rug-portal .button,
#cra-rug-portal button,
.woocommerce-account .button,
.cra-tab-button,
.cra-chat-upload,
.wrap.cra-wrap .button{
    min-width:140px!important;
    min-height:44px!important;
    padding:10px 18px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
    line-height:1.2!important;
    font-weight:700!important;
    text-align:center!important;
    color:#000!important;
}
#cra-rug-portal .button-primary,
#cra-rug-portal button,
.woocommerce-account .button,
.cra-chat-form .button,
.cra-tab-button.is-active,
.cra-tab-button:hover,
.wrap.cra-wrap .button-primary{
    color:#000!important;
}
.cra-chat-bubble,
.cra-chat-bubble-admin,
.cra-chat-bubble-customer{
    background:#fdc123!important;
    color:#000!important;
}
.cra-chat-bubble a,.cra-chat-bubble .cra-chat-sender,.cra-chat-bubble .cra-chat-time,.cra-chat-bubble .cra-chat-text{color:#000!important}
.cra-chat-form{grid-template-columns:minmax(0,1fr) auto;align-items:end}
.cra-chat-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.cra-chat-upload{position:relative;overflow:hidden;cursor:pointer;margin:0!important;background:var(--cra-button)!important;border-color:var(--cra-button)!important}
.cra-chat-upload input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.cra-chat-file-list{grid-column:1/-1;font-size:12px;color:var(--cra-muted);min-height:0}
.cra-chat-attachments{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.cra-chat-attachment{display:flex;flex-direction:column;gap:4px;width:110px;padding:6px;border:1px solid rgba(0,0,0,.25);border-radius:8px;text-decoration:none!important;background:rgba(255,255,255,.28);word-break:break-word;font-size:11px}
.cra-chat-attachment-image{width:96px!important;height:72px!important;object-fit:cover;border-radius:6px}
.cra-chat-attachment-icon{display:flex;width:96px;height:72px;align-items:center;justify-content:center;background:rgba(0,0,0,.08);border-radius:6px;font-weight:800}
@media(max-width:600px){.cra-chat-actions{width:100%}.cra-chat-actions .button,.cra-chat-upload{flex:1;min-width:120px!important}}

/* v1.4.5 chat final-design action */
.cra-chat-attachment-wrap{display:flex;flex-direction:column;gap:6px;width:110px}
.cra-chat-attachment-wrap .cra-chat-attachment{width:100%;box-sizing:border-box}
.cra-chat-final-image{width:100%!important;min-width:0!important;height:auto!important;min-height:34px!important;padding:6px 8px!important;font-size:11px!important;line-height:1.2!important;white-space:normal!important}
.cra-chat-final-image.is-final,.cra-chat-final-image:disabled{background:#000!important;border-color:#000!important;color:#fdc123!important;opacity:1!important;cursor:default!important}
