/* AIPHOTO legal / support pages */
.legal-shell .new-chat-btn{display:flex;align-items:center;text-decoration:none}
.legal-main{grid-template-rows:76px minmax(0,1fr)}
.legal-main .topbar{padding:11px 7px 8px}
.legal-topbar-left{display:flex;align-items:center;gap:12px;min-width:0}
.legal-title small{display:block;color:#c1aeb7;font-size:8px;font-weight:900;letter-spacing:.14em}
.legal-title strong{display:block;margin-top:2px;font-size:15px;letter-spacing:-.02em}
.legal-back{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border:1px solid var(--line);border-radius:13px;background:#fff;color:#786871;font-size:10px;font-weight:900;text-decoration:none;box-shadow:0 7px 20px rgba(93,52,67,.05)}
.legal-back:hover{border-color:#f7c9d5;color:var(--pink-dark)}
.legal-content{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:42px 28px 72px;background:radial-gradient(circle at 48% 0%,rgba(255,111,145,.09),transparent 35%),linear-gradient(180deg,#fffafb 0%,#fff8f7 100%)}
.legal-container{width:min(900px,100%);margin:0 auto}
.legal-heading{display:flex;align-items:flex-start;gap:16px;margin-bottom:24px}
.legal-heading-icon{display:grid;place-items:center;flex:0 0 54px;width:54px;height:54px;border-radius:18px;background:linear-gradient(135deg,var(--pink),#ff7897 58%,var(--peach));color:#fff;font-size:22px;font-weight:900;box-shadow:0 14px 30px rgba(255,111,145,.23)}
.legal-kicker{display:block;margin-bottom:3px;color:#b59ca8;font-size:9px;font-weight:900;letter-spacing:.16em}
.legal-heading h1{margin:0;color:var(--ink);font-size:clamp(27px,3vw,38px);line-height:1.18;letter-spacing:-.045em}
.legal-heading p{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:1.75}
.legal-card{padding:34px 36px;border:1px solid var(--line);border-radius:28px;background:rgba(255,255,255,.96);box-shadow:0 18px 50px rgba(113,70,84,.10)}
.legal-lead{margin:0;padding:0 0 27px;border-bottom:1px solid #f5e9ed;color:#6e6068;font-size:13px;line-height:2}
.legal-section{padding-top:28px}
.legal-section+.legal-section{margin-top:28px;border-top:1px solid #f5e9ed}
.legal-section h2{margin:0 0 13px;color:#43363e;font-size:17px;line-height:1.5;letter-spacing:-.02em}
.legal-section p,.legal-section li{color:#6d6068;font-size:12px;line-height:1.95}
.legal-section p{margin:0}.legal-section ol,.legal-section ul{margin:0;padding-left:1.55em}.legal-section li+li{margin-top:7px}
.legal-section a{color:var(--pink-dark);font-weight:900;text-decoration:none}.legal-section a:hover{text-decoration:underline}
.legal-price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:15px 0 18px}
.legal-price-item{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border:1px solid #f1dde4;border-radius:15px;background:#fff8fa}
.legal-price-item strong{color:#4d3e47;font-size:15px}.legal-price-item span{color:#9a8892;font-size:11px;font-weight:800}
.legal-active{background:#fff0f4!important;color:var(--pink-dark)!important}

/* Contact */
.contact-form{padding:30px;border:1px solid var(--line);border-radius:28px;background:rgba(255,255,255,.96);box-shadow:0 18px 50px rgba(113,70,84,.10)}
.contact-field+.contact-field{margin-top:20px}
.contact-field label{display:flex;align-items:center;gap:7px;margin-bottom:8px;color:#5e5059;font-size:12px;font-weight:900}
.contact-field label span{padding:2px 6px;border-radius:6px;color:var(--pink-dark);background:#fff0f5;font-size:9px;line-height:1.4}
.contact-field input,.contact-field select,.contact-field textarea{width:100%;border:1px solid #edd9e0;border-radius:15px;outline:0;color:var(--ink);background:#fffafb;box-shadow:0 1px 2px rgba(113,70,84,.03);transition:border-color .15s,box-shadow .15s,background .15s}
.contact-field input,.contact-field select{height:50px;padding:0 14px}.contact-field textarea{min-height:190px;padding:13px 14px;line-height:1.75;resize:vertical}
.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:#ff9fba;background:#fff;box-shadow:0 0 0 4px rgba(255,95,143,.09)}
.contact-field input[readonly]{color:#958892;background:#faf5f7}
.contact-field small{display:block;margin-top:7px;color:#af9ca6;font-size:10px;line-height:1.6}
.contact-select-wrap{position:relative}.contact-select-wrap:after{content:"";position:absolute;right:16px;top:50%;width:7px;height:7px;border-right:2px solid #a28e99;border-bottom:2px solid #a28e99;transform:translateY(-70%) rotate(45deg);pointer-events:none}.contact-select-wrap select{appearance:none;-webkit-appearance:none;padding-right:40px}
.contact-count{margin-top:6px;color:#b19fa8;font-size:10px;text-align:right}
.contact-submit-row{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:26px;padding-top:22px;border-top:1px solid #f5e9ed}
.contact-submit-row p{margin:0;color:#aa98a2;font-size:10px;line-height:1.65}
.contact-submit{min-width:190px;min-height:50px;border:0;border-radius:15px;padding:11px 20px;color:#fff;background:linear-gradient(135deg,var(--pink),#ff7897 58%,var(--peach));box-shadow:0 12px 28px rgba(255,95,143,.23);font-size:12px;font-weight:900;cursor:pointer;transition:transform .15s,box-shadow .15s}.contact-submit:hover{transform:translateY(-1px);box-shadow:0 15px 31px rgba(255,95,143,.28)}
.contact-alert{display:flex;align-items:flex-start;gap:11px;margin-bottom:18px;padding:13px 15px;border:1px solid;border-radius:15px}.contact-alert>span{display:grid;place-items:center;flex:0 0 23px;width:23px;height:23px;border-radius:50%;font-size:11px;font-weight:900}.contact-alert strong{display:block;margin-bottom:2px;font-size:12px}.contact-alert p{margin:0;font-size:11px;line-height:1.6}.contact-alert.success{color:#2d8050;border-color:#cfead9;background:#effaf3}.contact-alert.success>span{color:#fff;background:#67b985}.contact-alert.error{color:#bd3454;border-color:#ffd1db;background:#fff1f4}.contact-alert.error>span{color:#fff;background:#d84a5f}.contact-hp{position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;overflow:hidden!important}

@media(max-width:820px){
  .legal-content{padding:26px 15px 46px}.legal-heading{gap:12px;margin-bottom:19px}.legal-heading-icon{flex-basis:46px;width:46px;height:46px;border-radius:15px;font-size:19px}.legal-heading h1{font-size:27px}.legal-heading p{font-size:11.5px}.legal-card,.contact-form{padding:22px 18px;border-radius:21px}.legal-lead,.legal-section p,.legal-section li{font-size:11.5px;line-height:1.9}.legal-section{padding-top:23px}.legal-section+.legal-section{margin-top:23px}.legal-section h2{font-size:15px}.legal-price-grid{grid-template-columns:1fr}.contact-submit-row{display:block;margin-top:22px;padding-top:19px}.contact-submit-row p{margin-bottom:12px}.contact-submit{width:100%;min-width:0}
}
@media(max-width:720px){
  .legal-main{grid-template-rows:64px minmax(0,1fr)}.legal-main .topbar{padding:8px 3px}.legal-back{min-height:38px;padding:0 10px;font-size:9px}
}

/* FAQ */
.faq-container{width:min(920px,100%)}
.faq-content{padding-top:34px}
.faq-tools{position:sticky;top:0;z-index:4;margin:0 0 24px;padding:14px;border:1px solid rgba(241,221,228,.9);border-radius:22px;background:rgba(255,255,255,.94);box-shadow:0 12px 32px rgba(113,70,84,.08);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.faq-search{display:flex;align-items:center;gap:10px;height:52px;padding:0 15px;border:1px solid #edd9e0;border-radius:15px;background:#fffafb}
.faq-search>span{color:#c29daa;font-size:22px;line-height:1;transform:rotate(-18deg)}
.faq-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font:inherit;font-size:13px}
.faq-search input::placeholder{color:#b5a4ad}
.faq-filters{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.faq-filters button{min-height:34px;padding:0 11px;border:1px solid #f0dfe5;border-radius:999px;background:#fff;color:#8f7c86;font-size:10px;font-weight:900;cursor:pointer;transition:.15s}
.faq-filters button:hover,.faq-filters button.active{border-color:#ffc3d3;background:#fff0f4;color:var(--pink-dark)}
.faq-group+.faq-group{margin-top:28px}
.faq-group-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;padding:0 3px}
.faq-group-head>span{color:#4d3e47;font-size:15px;font-weight:900}
.faq-group-head small{color:#beaab4;font-size:8px;font-weight:900;letter-spacing:.12em}
.faq-list{display:grid;gap:9px}
.faq-item{overflow:hidden;border:1px solid #efdee4;border-radius:18px;background:#fff;box-shadow:0 8px 22px rgba(113,70,84,.055)}
.faq-item[hidden],.faq-group[hidden]{display:none!important}
.faq-item summary{display:flex;align-items:center;gap:12px;min-height:65px;padding:13px 16px;list-style:none;cursor:pointer;user-select:none}
.faq-item summary::-webkit-details-marker{display:none}
.faq-q,.faq-a{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:10px;font-size:12px;font-weight:1000}
.faq-q{background:#fff0f4;color:var(--pink-dark)}
.faq-a{margin-top:1px;background:#f8f3f5;color:#8c7480}
.faq-item summary strong{flex:1;color:#564650;font-size:12.5px;line-height:1.65}
.faq-item summary i{position:relative;flex:0 0 18px;width:18px;height:18px;border-radius:50%;background:#fff5f7}
.faq-item summary i:before,.faq-item summary i:after{content:"";position:absolute;left:5px;top:8px;width:8px;height:1.5px;border-radius:2px;background:#cf8498}
.faq-item summary i:after{transform:rotate(90deg);transition:transform .15s}
.faq-item[open] summary{background:#fffafb}
.faq-item[open] summary i:after{transform:rotate(0)}
.faq-answer{display:flex;align-items:flex-start;gap:12px;padding:0 16px 17px;border-top:1px solid #f7ecef;background:#fff}
.faq-answer>.faq-a{margin-top:15px}
.faq-answer>div{padding-top:14px}
.faq-answer p{margin:0;color:#75666e;font-size:11.5px;line-height:1.95}
.faq-cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:42px;margin-top:13px;padding:0 14px;border-radius:12px;background:#fff0f4;color:var(--pink-dark);font-size:10.5px;font-weight:900;text-decoration:none}
.faq-cta:hover{background:#ffe6ed}
.faq-empty{padding:34px 20px;border:1px dashed #ebd6dd;border-radius:18px;background:#fff;color:#a18f98;font-size:12px;text-align:center}
.faq-contact-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;margin-top:30px;padding:22px 24px;border:1px solid #f0dce3;border-radius:22px;background:linear-gradient(135deg,#fff,#fff5f7);box-shadow:0 13px 30px rgba(113,70,84,.07)}
.faq-contact-card>span{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,var(--pink),#ff7897);color:#fff;font-size:18px;font-weight:900}
.faq-contact-card small{display:block;color:#beaab4;font-size:8px;font-weight:900;letter-spacing:.13em}
.faq-contact-card h2{margin:3px 0 2px;color:#4f4149;font-size:16px}
.faq-contact-card p{margin:0;color:#9a8791;font-size:10.5px;line-height:1.65}
.faq-contact-card>a{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 15px;border:1px solid #f2d8e0;border-radius:12px;background:#fff;color:var(--pink-dark);font-size:10px;font-weight:900;text-decoration:none}

/* Withdrawal contact */
.contact-withdrawal-note{margin-top:10px;padding:12px 13px;border:1px solid #f5d7df;border-radius:13px;background:#fff5f7}
.contact-withdrawal-note[hidden]{display:none}
.contact-withdrawal-note strong{display:block;margin-bottom:4px;color:#c94d6c;font-size:10.5px}
.contact-withdrawal-note p{margin:0;color:#8c7781;font-size:10px;line-height:1.7}

@media(max-width:820px){
  .faq-content{padding-top:20px}.faq-tools{position:relative;margin-bottom:20px;padding:10px;border-radius:17px}.faq-search{height:47px;padding:0 12px;border-radius:13px}.faq-search input{font-size:11.5px}.faq-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.faq-filters::-webkit-scrollbar{display:none}.faq-filters button{flex:0 0 auto;min-height:32px;padding:0 10px}.faq-group+.faq-group{margin-top:23px}.faq-group-head>span{font-size:13.5px}.faq-item{border-radius:15px}.faq-item summary{min-height:60px;padding:12px 13px;gap:10px}.faq-q,.faq-a{flex-basis:28px;width:28px;height:28px;border-radius:9px;font-size:11px}.faq-item summary strong{font-size:11.5px}.faq-answer{gap:10px;padding:0 13px 15px}.faq-answer p{font-size:11px;line-height:1.85}.faq-contact-card{grid-template-columns:auto 1fr;gap:12px;padding:18px;border-radius:18px}.faq-contact-card>a{grid-column:1/-1;width:100%;justify-content:center}.faq-contact-card>span{width:40px;height:40px}.faq-contact-card h2{font-size:14px}
}

/* Privacy / commercial disclosure */
.legal-definition{overflow:hidden;border:1px solid #f0dce3;border-radius:18px;background:#fff}
.legal-definition>div{display:grid;grid-template-columns:190px minmax(0,1fr);border-bottom:1px solid #f5e9ed}
.legal-definition>div:last-child{border-bottom:0}
.legal-definition dt{margin:0;padding:16px 17px;background:#fff8fa;color:#6a5862;font-size:11px;font-weight:900;line-height:1.7}
.legal-definition dd{margin:0;padding:16px 18px;color:#6f6068;font-size:11.5px;line-height:1.85;overflow-wrap:anywhere}
.legal-definition dd a{color:var(--pink-dark);font-weight:900}
.legal-inline-plan{display:block;margin-bottom:4px;font-weight:850;color:#51434b}
@media(max-width:620px){
  .legal-definition>div{grid-template-columns:1fr}
  .legal-definition dt{padding:11px 13px;border-bottom:1px solid #f7ecef}
  .legal-definition dd{padding:13px 14px;font-size:11px}
}

/* Account history */
.history-container{width:min(980px,100%)}
.history-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}
.history-metrics>div{padding:18px;border:1px solid #f0dce3;border-radius:18px;background:linear-gradient(145deg,#fff,#fff7f9);box-shadow:0 10px 28px rgba(113,70,84,.06)}
.history-metrics span{display:block;color:#a28e99;font-size:9px;font-weight:900;letter-spacing:.08em}
.history-metrics strong{display:block;margin-top:7px;color:#4d3e47;font-size:23px;letter-spacing:-.04em}
.history-panel{margin-top:16px;padding:22px;border:1px solid #f0dce3;border-radius:22px;background:#fff;box-shadow:0 12px 34px rgba(113,70,84,.06)}
.history-panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}
.history-panel-head small{display:block;color:#beaab4;font-size:8px;font-weight:900;letter-spacing:.14em}
.history-panel-head h2{margin:3px 0 0;color:#4d3e47;font-size:16px}
.history-panel-head>a{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 12px;border-radius:10px;background:#fff0f4;color:var(--pink-dark);font-size:10px;font-weight:900;text-decoration:none}
.history-panel-head>span{color:#b2a0a9;font-size:9px;font-weight:800}
.history-table-wrap{overflow:auto}
.history-table{width:100%;border-collapse:collapse;font-size:11px}
.history-table th{padding:10px;border-bottom:1px solid #f1e5e9;color:#a28e99;font-size:9px;font-weight:900;text-align:left;white-space:nowrap}
.history-table td{padding:12px 10px;border-bottom:1px solid #f8eef1;color:#71636b;vertical-align:top;white-space:nowrap}
.history-table tr:last-child td{border-bottom:0}
.history-table td strong{display:block;color:#51434b;font-size:11px}
.history-table td small{display:block;max-width:320px;margin-top:3px;color:#a9959f;font-size:9.5px;white-space:normal;line-height:1.6}
.history-amount{font-weight:900}.history-amount.plus{color:#2d8050}.history-amount.minus{color:#c94d6c}
.history-status{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:900}.history-status.status-paid{background:#effaf3;color:#2d8050}.history-status.status-pending{background:#fff8e7;color:#a87113}.history-status.status-failed{background:#fff1f4;color:#bd3454}
.history-empty{padding:28px 15px;border:1px dashed #efdce3;border-radius:14px;color:#a9959f;font-size:11px;text-align:center;background:#fffafb}
@media(max-width:720px){.history-metrics{grid-template-columns:1fr}.history-panel{padding:16px 13px;border-radius:18px}.history-panel-head{align-items:flex-start}.history-table{font-size:10px}.history-table th,.history-table td{padding:10px 8px}.history-metrics>div{padding:15px}.history-metrics strong{font-size:20px}}


/* User announcements */
.announcement-container{max-width:900px}.announcement-read-note{margin:0 0 14px;padding:11px 13px;border-radius:12px;background:#fff0f7;color:#b22b69;font-size:12px;font-weight:700}.announcement-user-list{display:grid;gap:14px}.announcement-user-card{padding:22px;border:1px solid #ece7e9;border-radius:18px;background:#fff;box-shadow:0 8px 30px rgba(31,18,25,.04)}.announcement-user-card.is-unread{border-color:#ffc6de;box-shadow:0 8px 30px rgba(255,47,146,.08)}.announcement-user-card.is-pinned{background:linear-gradient(180deg,#fff8fb,#fff)}.announcement-card-meta{display:flex;align-items:center;gap:7px;margin-bottom:9px}.announcement-card-meta span{font-size:10px;color:#9a8c93;font-weight:700}.announcement-card-meta b,.announcement-card-meta em{padding:4px 7px;border-radius:999px;font-size:9px;font-style:normal}.announcement-card-meta b{background:#fff0f5;color:#c52c70}.announcement-card-meta em{background:#ff2f92;color:#fff}.announcement-user-card h2{margin:0 0 12px;font-size:18px;line-height:1.45}.announcement-card-body{font-size:13px;line-height:1.9;color:#51464b;overflow-wrap:anywhere}.announcement-empty{padding:44px 20px;text-align:center;border:1px dashed #ded7da;border-radius:18px;color:#9b8f95;background:#fff}
@media(max-width:640px){.announcement-user-card{padding:17px;border-radius:15px}.announcement-user-card h2{font-size:16px}.announcement-card-body{font-size:12px;line-height:1.85}}
