:root{--pp-glass-bg:#1212248c;--pp-glass-border:#ffffff14;--pp-text-primary:#fff;--pp-text-soft:#ffffffb8;--pp-text-muted:#ffffff73;--pp-text-hint:#ffffff4d;--pp-link:#b39bff;--pp-link-hover:#d2c2ff;--pp-success:#4ade80;--pp-danger:#f87171;--pp-gradient-brand:linear-gradient(135deg, #667eea 0%, #764ba2 50%, #f093fb 100%)}.profile-main{max-width:880px;margin:0 auto;padding:clamp(1.5rem,3vw,2.5rem) clamp(1rem,3vw,1.5rem) 4rem}.profile-container{flex-direction:column;gap:1.25rem;display:flex}.profile-header{background:var(--pp-glass-bg);-webkit-backdrop-filter:blur(20px)saturate(140%);border:1px solid var(--pp-glass-border);border-radius:22px;align-items:center;gap:1.75rem;padding:2rem;display:flex;position:relative;box-shadow:0 18px 44px #00000059}.profile-header:before{content:"";border-radius:inherit;-webkit-mask-composite:xor;pointer-events:none;background:linear-gradient(135deg,#a78bfa73 0%,#fff0 35%,#22d3ee52 100%);padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.avatar{background:var(--pp-gradient-brand);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:96px;height:96px;font-size:2.5rem;font-weight:800;display:flex;box-shadow:0 12px 32px #764ba266,0 0 0 1px #ffffff1a}.profile-info{flex:1;min-width:0}.profile-info h1{color:var(--pp-text-primary);letter-spacing:-.02em;word-break:break-word;margin:0 0 .4rem;font-size:clamp(1.4rem,3vw,1.7rem);font-weight:800;line-height:1.2}.profile-info .username,.profile-info .email{word-break:break-all;font-size:.88rem;line-height:1.5}.profile-info .username{color:var(--pp-text-muted);font-variant-numeric:tabular-nums;margin-bottom:.2rem}.profile-info .email{color:var(--pp-text-soft)}.badges{flex-wrap:wrap;gap:.5rem;margin-top:.85rem;display:flex}.badge{letter-spacing:.04em;border-radius:999px;padding:.28rem .8rem;font-size:.74rem;font-weight:700;line-height:1.4}.badge-christian{color:#c4b5fd;background:#a78bfa2e;border:1px solid #a78bfa59}.badge-role{color:#67e8f9;background:#22d3ee26;border:1px solid #22d3ee59}.profile-section{background:var(--pp-glass-bg);-webkit-backdrop-filter:blur(20px)saturate(140%);border:1px solid var(--pp-glass-border);border-radius:18px;padding:1.5rem;position:relative;box-shadow:0 12px 28px #00000040}.profile-section:before{content:"";border-radius:inherit;-webkit-mask-composite:xor;pointer-events:none;background:linear-gradient(135deg,#a78bfa52 0%,#fff0 40%,#22d3ee38 100%);padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.profile-section h2{color:var(--pp-text-soft);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:.55rem;margin:0 0 1.1rem;font-size:.95rem;font-weight:700;display:flex}.section-head{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.1rem;display:flex}.section-head h2{margin:0}.btn-link{color:var(--pp-link);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:.3rem .6rem;font-size:.84rem;font-weight:600;text-decoration:none;transition:color .2s,background-color .2s}.btn-link:hover{color:var(--pp-link-hover);background:#a78bfa14}.btn-link:focus-visible{outline-offset:2px;outline:2px solid #22d3eeb3}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.85rem;display:grid}.stats-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr));max-width:380px}.stat-item{text-align:center;background:#ffffff08;border:1px solid #ffffff0f;border-radius:14px;padding:1.1rem .85rem;transition:transform .2s,border-color .24s,background-color .24s}.stat-item:hover{background:#a78bfa0f;border-color:#a78bfa59;transform:translateY(-2px)}.stat-item .number{letter-spacing:-.02em;font-variant-numeric:tabular-nums;background:var(--pp-gradient-brand);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text;font-size:1.85rem;font-weight:900;line-height:1}.stat-item .label{color:var(--pp-text-muted);letter-spacing:.1em;text-transform:uppercase;margin-top:.4rem;font-size:.74rem;font-weight:600}.entry-list{flex-direction:column;gap:.55rem;margin:0;padding:0;list-style:none;display:flex}.entry-item{margin:0}.entry-link{text-align:left;cursor:pointer;width:100%;color:inherit;font:inherit;background:#ffffff08;border:1px solid #ffffff0f;border-radius:12px;align-items:center;gap:.9rem;padding:.7rem .9rem;transition:background .2s,transform .16s,border-color .2s;display:flex}.entry-link:hover{background:#a78bfa0f;border-color:#a78bfa52;transform:translateY(-1px)}.entry-link:focus-visible{outline-offset:2px;outline:2px solid #22d3eeb3}.entry-link:disabled,.entry-link[aria-busy=true]{opacity:.5;cursor:wait;background-image:repeating-linear-gradient(45deg,#a78bfa1a 0 6px,#0000 6px 12px)}.entry-thumb{object-fit:cover;background:#ffffff0a;border-radius:10px;flex-shrink:0;width:56px;height:56px}.entry-thumb--placeholder{color:#fff6;justify-content:center;align-items:center;font-size:1.5rem;display:flex}.entry-body{flex:1;min-width:0}.entry-title{color:var(--pp-text-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.92rem;font-weight:600;line-height:1.4;display:-webkit-box;overflow:hidden}.entry-meta{color:var(--pp-text-muted);flex-wrap:wrap;gap:.5rem;margin-top:.3rem;font-size:.74rem;display:flex}.entry-meta-item:not(:last-child):after{content:"·";color:var(--pp-text-hint);margin-left:.5rem}.empty-state{text-align:center;color:var(--pp-text-soft);padding:2rem 1rem 1.5rem;position:relative}.empty-state:before{content:"";background-color:#0000;background-image:radial-gradient(closest-side,#a78bfa33 0%,#a78bfa00 80%),url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='28' height='28' fill='none' stroke='%23a78bfa' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='10'/><polyline points='12 6 12 12 16 14'/></svg>");background-position:50%;background-repeat:no-repeat;background-size:100%,28px 28px;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;border-radius:50%;width:56px;height:56px;margin:0 auto 1rem;display:block}.empty-state .empty-message{color:var(--pp-text-soft);margin:0 0 .4rem;font-size:.95rem}.empty-state .empty-hint{color:var(--pp-text-muted);margin:0;font-size:.8rem;line-height:1.6}.form-group{margin-bottom:1.25rem}.form-group label{color:var(--pp-text-soft);letter-spacing:.05em;text-transform:uppercase;margin-bottom:.5rem;font-size:.78rem;font-weight:600;display:block}.form-group input,.form-group select{width:100%;color:var(--pp-text-primary);background:#ffffff0a;border:1px solid #ffffff1a;border-radius:12px;padding:.85rem 1rem;font-family:inherit;font-size:1rem;transition:background-color .2s,border-color .2s,box-shadow .2s}.form-group input:focus-visible,.form-group select:focus-visible{background:#ffffff12;border-color:#a78bfab3;outline:none;box-shadow:0 0 0 4px #7c3aed2e}.form-group input:disabled,.form-group select:disabled{opacity:.55;border-style:dashed}.form-group select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;cursor:pointer}.checkbox-group{align-items:center;gap:.75rem;display:flex}.checkbox-group input[type=checkbox]{cursor:pointer;accent-color:#a78bfa;width:18px;height:18px}.checkbox-group label{cursor:pointer;text-transform:none;letter-spacing:0;margin-bottom:0;font-size:.92rem}.checkbox-group+.checkbox-group{margin-top:.5rem}.profile-section fieldset{border:none;margin:0 0 1.25rem;padding:0}.profile-section fieldset legend{color:var(--pp-text-soft);letter-spacing:.05em;text-transform:uppercase;margin-bottom:.5rem;padding:0;font-size:.78rem;font-weight:600}.form-group-heading{color:var(--pp-text-soft);letter-spacing:.05em;text-transform:uppercase;margin-bottom:.5rem;font-size:.78rem;font-weight:600;display:block}.checkbox-list{flex-wrap:wrap;gap:.5rem 1.25rem;display:flex}.checkbox-list:empty:after{content:"—";color:var(--pp-text-hint);font-size:.85rem}.btn{cursor:pointer;border:none;border-radius:12px;padding:.85rem 1.6rem;font-family:inherit;font-size:.95rem;font-weight:700;transition:transform .16s,box-shadow .22s,background-color .2s}.btn-primary{background:var(--pp-gradient-brand);color:#fff;background-position:0%;background-size:180% 180%;position:relative;overflow:hidden;box-shadow:0 8px 24px #764ba252}.btn-primary:hover{background-position:100%;transform:translateY(-1px);box-shadow:0 14px 32px #764ba273}.btn-secondary{color:var(--pp-text-primary);background:#ffffff0f;border:1px solid #ffffff24}.btn-secondary:hover{background:#ffffff1f;border-color:#ffffff38}.btn-danger{color:#fca5a5;background:#f871711a;border:1px solid #f8717166}.btn-danger:hover{background:#f8717133;border-color:#f87171a6}.btn-group{flex-wrap:wrap;gap:1rem;margin-top:1rem;display:flex}.message{border-radius:12px;margin-bottom:1rem;padding:.85rem 1rem;font-size:.88rem}.message.success{color:#86efac;background:#4ade801f;border:1px solid #4ade8066}.message.error{color:#fca5a5;background:#f871711f;border:1px solid #f8717166}.message.form-message{margin:.85rem 0 0}.btn.is-pending{opacity:.75;cursor:progress}.access-denied{text-align:center;max-width:480px;margin:2rem auto;padding:4rem 1.5rem}.access-denied h2{color:var(--pp-text-primary);margin-bottom:1rem;font-size:1.5rem;font-weight:800}.btn-login{background:var(--pp-gradient-brand);color:#fff;border-radius:12px;padding:.95rem 2rem;font-weight:700;text-decoration:none;transition:transform .16s,box-shadow .22s;display:inline-block;box-shadow:0 8px 24px #764ba252}.btn-login:hover{transform:translateY(-1px);box-shadow:0 14px 32px #764ba273}@media (max-width:640px){.profile-main{padding:1.25rem .75rem 3rem}.profile-header{text-align:center;flex-direction:column;gap:1rem;padding:1.5rem}.badges{justify-content:center}.profile-info h1{font-size:1.3rem}.avatar{width:80px;height:80px;font-size:2rem}.stats-grid--compact{max-width:none}.entry-thumb{width:48px;height:48px}}
