.portrait{position:relative;overflow:hidden;background:#e8ecdf;border:1px solid #cad3c1;padding:25px 30px 33px;border-radius:7px}.portrait:after{content:'';position:absolute;width:285px;height:285px;border-radius:50%;border:1px solid #c7d0bd;right:-118px;top:65px;pointer-events:none}.portrait-meta{display:flex;justify-content:space-between;gap:15px;color:#62735e;font-size:11px;letter-spacing:1px}.portrait-symbol{margin-top:27px;font-family:Georgia,serif;font-size:60px;color:#819276;line-height:1.2}.portrait-name{font-size:65px;letter-spacing:7px;margin-top:8px;position:relative;z-index:1}.portrait-motto{font-size:19px;margin:16px 0 22px;max-width:510px;position:relative;z-index:1}.tags{display:flex;flex-wrap:wrap;gap:8px}.tags span{border:1px solid #b8c6ad;border-radius:100px;padding:4px 12px;font-size:11px;background:#f4f6ed}.neighbor{font-size:12px;line-height:1.9;color:#52634f;border-top:1px dashed #becbb4;padding-top:15px;margin-top:22px}.section-kicker{font-size:11px;letter-spacing:2px;color:var(--accent);margin-bottom:12px}.overview{padding-top:40px}.overview>p{font-size:16px;line-height:1.95;margin-top:18px}.duo{display:grid;grid-template-columns:1fr 1fr;gap:23px;margin-top:25px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.duo h3{font-size:13px;font-weight:600;margin-bottom:8px;color:var(--accent)}.duo p{font-size:14px;line-height:1.85}.overview>.reunion-note{font-size:14px;color:var(--muted);background:#eeede3;padding:17px 19px;border-radius:4px}.overview>.notice{font-size:12px}.analysis-heading{margin-top:42px;padding-bottom:12px;border-bottom:1px solid var(--line)}.detailed{position:relative;padding:25px 0 28px}.detail-number{font-family:Georgia,serif;font-size:35px;line-height:1;color:#c8cdbf;margin-bottom:13px}.detailed h3{font-size:23px;line-height:1.6;margin-bottom:7px}.detailed .badge{font-size:13px;font-weight:500;color:var(--muted);margin-bottom:17px}.detailed p{font-size:15px;line-height:1.95}.reflection{margin-top:17px;color:var(--muted)}.reflection strong{font-size:11px;display:block;letter-spacing:1px;color:var(--accent);margin-bottom:5px}.takeaway .say{font-size:20px;font-family:Georgia,'Songti SC',serif;line-height:1.9;margin:18px 0}.takeaway>p:not(.say){font-size:14px;color:var(--muted);line-height:1.9}.type-gallery{margin-top:30px;border-top:1px solid var(--line);padding-top:20px}.type-gallery>summary{font-size:13px;cursor:pointer}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.gallery-item{padding:19px 17px;border:1px solid var(--line);border-radius:4px}.gallery-item.active{background:#e8ecdf;border-color:#84927a}.gallery-item>span{font-size:26px;color:#7b8b70}.gallery-item h3{font-size:17px;margin:3px 0}.gallery-item p{font-size:12px;line-height:1.8;color:var(--muted)}@media(max-width:600px){.portrait{padding:21px 22px 27px}.portrait-meta{font-size:9px;letter-spacing:0}.portrait-name{font-size:53px;letter-spacing:5px}.portrait-motto{font-size:17px}.portrait-symbol{font-size:52px;margin-top:22px}.overview{padding-top:31px}.overview>p{font-size:15px;line-height:1.95}.duo{gap:18px}.duo p{font-size:13px}.detailed h3{font-size:21px}.gallery-grid{gap:10px}.gallery-item{padding:15px 13px}.tags span{font-size:10px}.takeaway .say{font-size:18px}}@media print{.portrait{break-inside:avoid}.type-gallery{display:none}.portrait-symbol{font-size:38px}.portrait-name{font-size:42px}.portrait:after{display:none}}

/* Sky-blue portrait cards: eight small emblems, no oversized circles. */
.portrait{background:linear-gradient(120deg,#e7f2fc,#f5f9fc 65%,#fff2e7);border-color:#cfdfeb;padding:27px 30px 31px;border-radius:24px;box-shadow:0 12px 32px #5d88a009;min-height:290px;isolation:isolate}
.portrait:after{display:none}.portrait-meta{color:#607d93;font-size:11px;letter-spacing:.5px;position:relative;z-index:1}.portrait-art{position:absolute;right:23px;top:66px;width:155px;color:#7094ad;z-index:-1}.portrait-art svg{width:100%;height:auto;display:block}.portrait-name{font-size:55px;letter-spacing:1px;margin-top:38px;padding-right:135px;line-height:1.3}.portrait-motto{font-size:18px;max-width:470px;line-height:1.8;margin:15px 0 22px;padding-right:65px}.tags{gap:8px}.tags span{border:0;background:#fffdf7d9;color:#516c80;border-radius:8px;padding:6px 11px;font-size:11px}.neighbor{color:#607d93;border-color:#cbdeec}.overview>.reunion-note{background:#e8f2f9;border-radius:12px;color:#56738b}.detail-number{color:#8faec6}.detailed{padding:26px 0 30px}.takeaway .say{font-family:inherit}.gallery-item{border-radius:16px;background:#fffefb;position:relative;min-height:150px;padding-right:74px}.gallery-item.active{background:#e3f0fa;border-color:#85abc6}.gallery-art{position:absolute;right:8px;top:12px;width:65px;color:#7094ad}.gallery-art svg{display:block;width:100%}.gallery-item h3{font-size:18px;margin:4px 0 10px}.gallery-item p{font-size:12px;line-height:1.9}
@media(max-width:600px){.portrait{padding:22px;min-height:280px;border-radius:20px}.portrait-name{font-size:44px;padding-right:65px;margin-top:35px}.portrait-art{width:98px;right:12px;top:72px;opacity:.85}.portrait-motto{font-size:16px;max-width:260px;padding-right:15px;margin-top:20px}.portrait-meta{font-size:9px;letter-spacing:0}.tags{gap:6px}.tags span{font-size:10px;padding:5px 8px}.gallery-item{padding:15px 13px 17px;min-height:172px}.gallery-art{position:static;width:55px;margin-bottom:6px}.gallery-item h3{margin:3px 0 6px}.duo{grid-template-columns:1fr;gap:20px}}
@media print{.portrait{background:#f3f8fc;box-shadow:none}.portrait-art{width:110px}.portrait-name{font-size:40px}}

.save-dialog{width:min(750px,94vw);max-height:90dvh;border:1px solid #cfdfeb;border-radius:20px;padding:25px;background:#f4f9fd;color:var(--ink);overflow-y:auto;box-shadow:0 25px 80px #29475e30}.save-dialog::backdrop{background:#18364a80}.save-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.save-heading h2{font-size:23px}.save-heading .button{padding:9px 18px;flex:none}.save-help{font-size:14px;line-height:1.9;margin-top:17px}.save-status{font-size:13px;min-height:20px;color:var(--accent);margin-top:9px}.save-pages figure{margin:22px 0 32px}.save-pages figcaption{font-size:14px;font-weight:600}.report-image{width:100%;height:auto;display:block;margin-top:14px;border-radius:8px;border:1px solid #cfdfeb;-webkit-user-select:auto;user-select:auto;-webkit-touch-callout:default}.save-page-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}.save-page-actions .button{padding:10px 16px;font-size:14px}.save-page-actions a{text-decoration:none}.save-dialog[open]:not(:modal){position:fixed;inset:5vh 0 auto;z-index:1000;margin:auto}@media(max-width:600px){.report-actions{gap:10px}.report-actions .button{flex:1 1 calc(50% - 10px);padding:13px 10px;font-size:14px}.save-dialog{padding:18px 14px}.save-heading h2{font-size:21px}.save-help{font-size:13px}}@media print{.save-dialog{display:none!important}}

.whole-report-actions{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0 10px}.whole-report-actions a{text-decoration:none}.image-fallback{margin-top:24px;border-top:1px solid var(--line);padding-top:18px}.image-fallback>summary{cursor:pointer;font-size:14px;color:var(--muted)}
